da4c646d27
Simplify InventoryAction implementation
...
none of these action types are able to fail now.
2019-06-13 18:35:05 +01:00
44be2179c4
SlotChangeAction: fix feedback loop
2019-06-13 18:31:25 +01:00
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
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
f128fc1849
Merge branch 'stable'
2019-06-13 16:07:00 +01:00
3568c7b1c7
Merge branch 'stable' of https://github.com/pmmp/PocketMine-MP into stable
2019-06-13 16:05:18 +01:00
862c844759
Write PID into lock file
2019-06-13 15:11:59 +01:00
6bd67730eb
AsyncWorker: use a shorter name on logs
2019-06-13 14:00:26 +01:00
e95d81e04b
Server: fix possible comparison bug in load orders
2019-06-12 19:50:27 +01:00
31f0576725
Server: remove useless constructor assignment
2019-06-12 19:47:51 +01:00
8afea36919
Clean up some internal commands protocol handling
2019-06-12 19:35:14 +01:00
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
42954c1d72
Server: document the crazy behaviour of some innocent looking functions
2019-06-12 10:14:29 +01:00
9765d78a5d
Merge branch 'stable'
2019-06-11 19:19:32 +01:00
4c5f6eb1b7
Moved preprocessor submodule to build/ directory
2019-06-11 17:56:13 +01:00
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
de6053de11
TimingsHandler: use a try/finally block in time()
2019-06-11 14:54:54 +01:00
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
1c69226187
NetworkSession: add an extra debug
2019-06-11 09:55:32 +01:00
8e6f21afad
clean up gamemode net sync
2019-06-10 19:58:14 +01:00
f0d56f25b6
Moved creative inventory sync to NetworkSession
2019-06-10 19:54:24 +01:00
dd45753fa9
NetworkSession: add some more debug
2019-06-10 19:47:02 +01:00
3ac0c98199
De-spaghettify spawn notification handling
2019-06-10 19:31:54 +01:00
714393820f
MainLogger: Use millisecond precision on log timestamps
2019-06-10 19:14:08 +01:00
3175a319a2
Merge branch 'stable'
...
# Conflicts:
# resources/vanilla
# src/pocketmine/VersionInfo.php
2019-06-10 18:20:01 +01:00
7c1f038f20
3.8.5 is next
2019-06-10 17:56:23 +01:00
a42f68d3cf
Release 3.8.4
3.8.4
2019-06-10 17:55:50 +01:00
b6f3f6120b
InventoryTransaction: Shuffle actions on execution to prevent plugins relying on the order
...
closes #2955
2019-06-10 17:24:16 +01:00
96d3f4f78b
Updated documentation for transaction classes
2019-06-10 17:19:03 +01:00
6756203aec
InventoryTransaction: Added a warning about ordering
2019-06-10 16:54:45 +01:00
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
261ba017a6
Merge branch 'stable'
2019-06-10 11:15:17 +08:00
adb78679c5
Added link to docker image
2019-06-09 18:47:04 +08:00
c1f900ab18
Start using transactions for block placement
2019-06-08 18:56:27 +01:00
f84040a7ad
FlowerPot (tile): Allow BlockFactory to determine id/data validity
2019-06-08 17:55:50 +01:00
1b629d7ac0
implement daylight sensor power recalculation
2019-06-08 17:52:47 +01:00
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
ad1b9e5cdd
fix item pickup animation
2019-06-08 17:35:56 +01:00
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
fefc9b5278
wtf PhpStorm
2019-06-07 19:36:56 +01:00
5e88fda824
added BrewingStand tile (implementation incomplete)
...
since we already have a partial implementation of brewing stand, we should also have the corresponding tile so that PM doesn't create any more busted blocks.
2019-06-07 19:29:26 +01:00
3bc8244673
proper remapping for the old all-sided-log bug block
2019-06-07 19:25:44 +01:00
659cad0eff
BlockFactory: added a hacky method to allow block state remapping
...
we need this for fixing old data in some cases
2019-06-07 18:31:37 +01:00
f30cee15ca
added Dried Kelp block
2019-06-07 18:03:17 +01:00
a2274429ab
Chest: constrain pair positions to immediately horizontally adjacent blocks
...
under normal circumstances a chest will never pair with a chest which isn't directly next to it anyway.
2019-06-07 17:24:59 +01:00
cc6296b019
Furnace: give some properties clearer names
2019-06-07 15:41:32 +01:00
7eb9b33fd6
Extract a CreativeInventory unit from Item
...
this will probably undergo further changes, but I'm primarily interested in just encapsulating the existing functionality for now.
2019-06-07 14:24:03 +01:00
41039cecc1
Furnace: remove redundant network properties
...
these properties are continuously updating when the furnace is active, but they never trigger cache destruction, which means this is sending outdated garbage over the network, which is entirely unnecessary anyway.
2019-06-07 14:15:47 +01:00
857092cf65
Furnace: Use the correct method to sync furnace fuel max burn time to the client
2019-06-07 14:06:17 +01:00
741d2a7380
devtools rollback
2019-06-07 10:49:58 +01:00