9987 Commits

Author SHA1 Message Date
Dylan K. Taylor
2cb6fda286 Moved network chunk serializing code to network\mcpe namespace 2019-06-14 18:25:06 +01:00
Dylan K. Taylor
08de657c8d Extract FastChunkSerializer unit from Chunk
this functionality doesn't directly pertain to Chunk functionality.
2019-06-14 18:19:46 +01:00
Dylan K. Taylor
92035ac2ec Chunk: drop premature optimizations 2019-06-14 18:07:13 +01:00
Dylan K. Taylor
722da5e88d Simplify hasChanged handling for chunk init
we always want chunks to be saved if they have tiles or entities
2019-06-14 18:00:37 +01:00
Dylan K. Taylor
c8eefddfc0 Chunk: fix tiles not being loaded from NBT in some cases 2019-06-14 17:59:00 +01:00
Dylan K. Taylor
211836274f World: remove redundant checks
when entities are added and removed which are savable, the dirty flag is set anyway, so these checks aren't needed.
2019-06-14 17:47:39 +01:00
Dylan K. Taylor
5d531b56db travis.sh: lock down PHPUnit at 7.5.11
7.5.12 makes changes which assume libxml is present, which isn't the case with our PHP builds.
2019-06-14 16:58:56 +01:00
Dylan K. Taylor
9e9de1e8ba Log a debug message when receiving a mismatch transaction 2019-06-13 19:52:53 +01:00
Dylan K. Taylor
da4c646d27 Simplify InventoryAction implementation
none of these action types are able to fail now.
2019-06-13 18:35:05 +01:00
Dylan K. Taylor
44be2179c4 SlotChangeAction: fix feedback loop 2019-06-13 18:31:25 +01:00
Dylan K. Taylor
8551d1e282 Remove Inventory->sendSlot() and Inventory->sendContents()
the plan is to remove this from inventory entirely and use listeners for this.
2019-06-13 18:14:11 +01:00
Dylan K. Taylor
7ba1dd3242 BaseInventory: remove setSize()
no inventory is designed to deal with this. Changing this can break transactions, specialized logic like double chest / furnace and more.
2019-06-13 17:24:17 +01:00
Dylan K. Taylor
f128fc1849 Merge branch 'stable' 2019-06-13 16:07:00 +01:00
Dylan K. Taylor
3568c7b1c7 Merge branch 'stable' of https://github.com/pmmp/PocketMine-MP into stable 2019-06-13 16:05:18 +01:00
Dylan K. Taylor
862c844759 Write PID into lock file 2019-06-13 15:11:59 +01:00
Dylan K. Taylor
6bd67730eb AsyncWorker: use a shorter name on logs 2019-06-13 14:00:26 +01:00
Dylan K. Taylor
e95d81e04b Server: fix possible comparison bug in load orders 2019-06-12 19:50:27 +01:00
Dylan K. Taylor
31f0576725 Server: remove useless constructor assignment 2019-06-12 19:47:51 +01:00
Dylan K. Taylor
8afea36919 Clean up some internal commands protocol handling 2019-06-12 19:35:14 +01:00
Dylan K. Taylor
4364d2a942 AvailableCommandsPacket: Clean up internals
this is still disgusting, but it's a little more bearable now.
2019-06-12 16:54:30 +01:00
Dylan K. Taylor
42954c1d72 Server: document the crazy behaviour of some innocent looking functions 2019-06-12 10:14:29 +01:00
Dylan K. Taylor
9765d78a5d Merge branch 'stable' 2019-06-11 19:19:32 +01:00
Dylan K. Taylor
4c5f6eb1b7 Moved preprocessor submodule to build/ directory 2019-06-11 17:56:13 +01:00
Dylan K. Taylor
02bc43b440 missed a bit 2019-06-11 16:48:24 +01:00
Dylan K. Taylor
5832f42783 added changelogs as mdfiles 2019-06-11 16:44:05 +01:00
Dylan K. Taylor
858f440bcf TimingsHandler: return the result of $closure() for easier usage
this isn't type safe, but it doesn't matter a whole lot, and there's nothing we can do about it without generics.
2019-06-11 15:04:30 +01:00
Dylan K. Taylor
de6053de11 TimingsHandler: use a try/finally block in time() 2019-06-11 14:54:54 +01:00
Dylan K. Taylor
f349a58f2b TimingsHandler: added time(Closure) function
I find myself often using try/finally blocks to avoid accidentally forgetting to stop a timer. This allows a cleaner more concise way of doing it.
2019-06-11 14:46:19 +01:00
Dylan K. Taylor
1c69226187 NetworkSession: add an extra debug 2019-06-11 09:55:32 +01:00
Dylan K. Taylor
8e6f21afad clean up gamemode net sync 2019-06-10 19:58:14 +01:00
Dylan K. Taylor
f0d56f25b6 Moved creative inventory sync to NetworkSession 2019-06-10 19:54:24 +01:00
Dylan K. Taylor
dd45753fa9 NetworkSession: add some more debug 2019-06-10 19:47:02 +01:00
Dylan K. Taylor
3ac0c98199 De-spaghettify spawn notification handling 2019-06-10 19:31:54 +01:00
Dylan K. Taylor
714393820f MainLogger: Use millisecond precision on log timestamps 2019-06-10 19:14:08 +01:00
Dylan K. Taylor
3175a319a2 Merge branch 'stable'
# Conflicts:
#	resources/vanilla
#	src/pocketmine/VersionInfo.php
2019-06-10 18:20:01 +01:00
Dylan K. Taylor
7c1f038f20 3.8.5 is next 2019-06-10 17:56:23 +01:00
Dylan K. Taylor
a42f68d3cf Release 3.8.4 3.8.4 2019-06-10 17:55:50 +01:00
Dylan K. Taylor
b6f3f6120b InventoryTransaction: Shuffle actions on execution to prevent plugins relying on the order
closes #2955
2019-06-10 17:24:16 +01:00
Dylan K. Taylor
96d3f4f78b Updated documentation for transaction classes 2019-06-10 17:19:03 +01:00
Dylan K. Taylor
6756203aec InventoryTransaction: Added a warning about ordering 2019-06-10 16:54:45 +01:00
Dylan K. Taylor
419fc418fe SubChunk: reduce memory usage on fast-deserialized chunks
this saves about 25MB RAM on an idle server on HEAD commit with 856 chunks loaded.
2019-06-10 15:52:21 +01:00
SOFe
261ba017a6
Merge branch 'stable' 2019-06-10 11:15:17 +08:00
SOFe
adb78679c5
Added link to docker image 2019-06-09 18:47:04 +08:00
Dylan K. Taylor
c1f900ab18 Start using transactions for block placement 2019-06-08 18:56:27 +01:00
Dylan K. Taylor
f84040a7ad FlowerPot (tile): Allow BlockFactory to determine id/data validity 2019-06-08 17:55:50 +01:00
Dylan K. Taylor
1b629d7ac0 implement daylight sensor power recalculation 2019-06-08 17:52:47 +01:00
Dylan K. Taylor
73964e6e2f Always do chunk relighting for unlit chunks on load
this is necessary because we stopped saving light info some time ago, so it has to be calculated on load for things to work properly.
2019-06-08 17:47:55 +01:00
Dylan K. Taylor
ad1b9e5cdd fix item pickup animation 2019-06-08 17:35:56 +01:00
Dylan K. Taylor
43dfc8ae0f Remove update mechanism for tiles, delegate to block instead
block handles triggering tile update on furnace for now.
2019-06-08 15:44:38 +01:00
Dylan K. Taylor
fefc9b5278 wtf PhpStorm 2019-06-07 19:36:56 +01:00