Commit Graph

11527 Commits

Author SHA1 Message Date
6f38031121 Liquid: do not schedule delayed blockupdate when hardening occurs on nearby blockupdate
fix #3390
fix #3392
2020-04-30 09:35:55 +01:00
b74f177958 ChunkCache: destroy cache when world is unloaded 2020-04-29 18:50:33 +01:00
3ce9a4801f World: allow registering unload hooks
this will be used for cache management when worlds get unloaded.
2020-04-29 18:48:16 +01:00
bb11cbd89c World: relocate packet stuff for time and difficulty behind NetworkSession API 2020-04-29 18:31:54 +01:00
c8c0a1533c NetworkSession: seal up actor removal behind API 2020-04-29 17:00:47 +01:00
adadd5423d move force-close crafting grid hack to InGamePacketHandler
the crafting transaction implementation has no business caring about this
2020-04-29 16:54:23 +01:00
4ce6525065 NetworkSession: incomplete abstraction of SetActorDataPacket handling
this needs to have the metadata properties separated too, but that's a job that's going to get VERY messy.
2020-04-29 16:50:52 +01:00
d1b28ce17a NetworkSession: allow sending an arbitrary set of attributes for an entity 2020-04-29 16:45:09 +01:00
f6f714c158 NetworkSession: do not mark shared attributes as synchronized, they don't necessarily belong to us
if we decided to start sending entity attribute changes to viewers too, this would have caused some unexpected behaviour.
2020-04-29 16:38:10 +01:00
f35b7bf80b NetworkBinaryStream: remove stale @throws from getAttributeList() 2020-04-29 16:32:56 +01:00
ad70a9e3dc NetworkSession: allow provision of a custom list of players to syncPlayerList() 2020-04-29 16:27:34 +01:00
d8968e9e40 box up TakeItemActorPacket sending behind NetworkSession API
we need to start thinking about moving this into interfaces.
2020-04-29 16:24:04 +01:00
1122f2a29f phpstorm can't infer these types :( 2020-04-29 13:26:49 +01:00
549940d8a7 remove NullPacketHandler
this is a waste of LOC
2020-04-29 13:14:23 +01:00
b6214744d5 NetworkSession: inject PacketPool instead of hardcoding it
this will make it slightly easier for multi version implementations, but handlers are still quite a big problem.
2020-04-29 12:48:28 +01:00
09e994a026 NetworkBinaryStream: swap BadPacketException for PacketDecodeException 2020-04-29 11:39:44 +01:00
098a5518a6 phpstan: ignore another trait override bug 2020-04-29 11:35:12 +01:00
f6f1d31112 do not mess with cached data directly in packets 2020-04-29 11:34:25 +01:00
aa57d05e12 update to a non-broken build of RakLib 2020-04-29 10:36:28 +01:00
8093a94e5d do not hardcode data deserialization into CraftingManager 2020-04-28 18:56:27 +01:00
f9a587d40e imports cleanup 2020-04-28 17:27:38 +01:00
81044d6aea updated to latest RakLib 2020-04-28 16:30:29 +01:00
3be9548b1e net: compressors are now fully dynamic (or at least the potential to be)
the compressor used by RakLibInterface when opening a session is still
hardcoded, but that's because we have no way to select the correct
compressor at that point in the login sequence, since we aren't
propagating the protocol information up from RakLib right now.
2020-04-28 16:21:18 +01:00
d9e4783b24 start making network compressors dynamic
this will facilitate future multi version support where compression types are different between versions
2020-04-28 14:47:01 +01:00
fe258740e3 SingletonTrait: added setInstance() 2020-04-28 14:31:56 +01:00
a97cafd4f6 moving serializers into protocol namespace 2020-04-27 13:54:39 +01:00
0397204c68 network/mcpe: imports cleanup 2020-04-27 12:56:28 +01:00
15c744b0d7 protocol: specialize exception used for bad packets 2020-04-27 12:55:00 +01:00
f91e2f41e0 move SendUsageTask to stats namespace
maybe separate this out into a library?
2020-04-26 11:42:48 +01:00
ac5cf2443e convert TileFactory to singleton 2020-04-26 01:11:30 +01:00
2d55b2db1b Merge branch 'next-minor' 2020-04-26 00:38:20 +01:00
f87e96026c Merge branch 'stable' into next-minor 2020-04-26 00:28:09 +01:00
b63ad032a9 phpstan 0.12.19 2020-04-26 00:08:41 +01:00
d9b0e373bb Populator: fix return type of populate() 2020-04-26 00:04:17 +01:00
2a4d936fd4 Merge branch 'master' of https://github.com/pmmp/pocketmine-mp 2020-04-25 12:36:24 +01:00
040fdc2875 Merge commit '8e1b3ed'
# Conflicts:
#	phpstan.neon.dist
#	resources/vanilla
#	tests/phpstan/configs/phpstan-bugs.neon
#	tests/phpstan/configs/phpunit-wiring-tests.neon
#	tests/phpstan/configs/pthreads-bugs.neon
#	tests/phpstan/configs/runtime-type-checks.neon
2020-04-25 12:35:30 +01:00
bb8ef3ff6d Merge commit 'da9731e'
# Conflicts:
#	phpstan.neon.dist
#	resources/vanilla
#	src/PocketMine.php
2020-04-25 12:20:23 +01:00
45bed454f2 Merge commit '3d2ca45' 2020-04-25 12:14:45 +01:00
a178a14732 Merge commit '34a3e0d' 2020-04-25 12:13:03 +01:00
8e1b3edd2c Merge branch 'stable' into next-minor 2020-04-25 12:06:52 +01:00
32262d9bb5 Merge branch 'stable' of https://github.com/pmmp/pocketmine-mp into stable 2020-04-25 11:59:35 +01:00
4c1b10b24b restructure ignoreErrors to allow regenerating them file by file 2020-04-25 11:59:06 +01:00
61dc9d7f6b phpstan: split up phpstan-bugs and phpstan-bugs-generated configs 2020-04-25 11:26:54 +01:00
da9731ef59 phpstan: add stub defines to improve analysis 2020-04-25 11:07:05 +01:00
e6f64c609e bootstrap: avoid making COMPOSER_AUTOLOADER_PATH having a possible false type 2020-04-25 11:04:09 +01:00
d3da485278 fix phpstan analyze failure 2020-04-25 10:43:06 +01:00
b1eff87ad1 fix incorrect conversion of CreateItemAction, close #3436 (#3437) 2020-04-25 10:21:40 +01:00
1f7f33d35d NetworkSession: privatise setAuthenticationStatus()
this is accessed via a closure proxy, so it doesn't need to be exported anymore.
2020-04-25 03:33:44 +01:00
80680f15f4 seal up resource pack completion callback visibility 2020-04-25 03:31:13 +01:00
6dd31cc3f5 break cycle between block and inventory packages 2020-04-24 23:53:49 +01:00