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
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
f6f1d31112
do not mess with cached data directly in packets
2020-04-29 11:34:25 +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
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
2a4d936fd4
Merge branch 'master' of https://github.com/pmmp/pocketmine-mp
2020-04-25 12:36:24 +01:00
45bed454f2
Merge commit '3d2ca45'
2020-04-25 12:14:45 +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
c869a7f099
HandshakePacketHandler no longer depends on NetworkSession
2020-04-24 23:18:29 +01:00
a75241ef03
RuntimeBlockMapping: use SingletonTrait
2020-04-24 21:32:47 +01:00
3a42c21cc1
wrap up block_id_map in a class
2020-04-24 21:28:27 +01:00
ff915b829c
StartGamePacket: remove hardcoded cache, move to RuntimeBlockMapping
2020-04-24 20:50:56 +01:00
287bf4274f
move RuntimeBlockMapping to convert package
2020-04-24 12:42:43 +01:00
08ac6a3c43
Convert CreativeInventory to singleton
2020-04-24 00:38:18 +01:00
5a94af40e2
Convert ItemFactory to singleton
2020-04-24 00:18:31 +01:00
aa1828aa98
RuntimeBlockMapping is now a singleton instead of static class
...
this prepares for a fully dynamic block mapper, as well as allowing a small performance improvement to chunk encoding by eliding the constant lazy-init checks.
2020-04-23 21:09:58 +01:00
f3fed60d57
crafting: ditch MultiRecipe, it's a network-only thing
...
MultiRecipes are really nothing more than feature toggles at the network layer, and they don't belong in the main core code.
2020-04-23 19:45:59 +01:00
b2636161f7
PrepareEncryptionTask: move a bunch of stuff out of the AsyncTask class
2020-04-23 16:27:49 +01:00
095a21ea5a
PacketPool is now non-static
...
this allows greater flexibility for customisation, and will facilitate future multi version support.
2020-04-23 16:11:47 +01:00
f3d7c320a1
move SkinAdapter stuff to convert package
2020-04-23 15:46:37 +01:00
ebcfab4b61
NetworkInventoryAction: move type translation to TypeConverter
2020-04-23 15:40:23 +01:00
33f899f2fc
protocol: imports cleanup
2020-04-23 15:38:17 +01:00
1b26cf1df9
break the hard cycle between mcpe\handler and mcpe\protocol
...
preparing to move mcpe\protocol to a separate library
2020-04-23 15:38:11 +01:00
18d48869a0
the great airgapping of recipes and itemstacks
2020-04-23 14:11:48 +01:00
843993f02b
Throw a specific exception for zlib decompression failure
2020-04-22 13:45:29 +01:00
35d656c6e5
ProcessLoginTask no longer depends on NetworkSession
2020-04-22 13:30:37 +01:00
dd37d286f0
use a dedicated exception class for throwing exceptions on decrypt failure
2020-04-22 09:40:26 +01:00
c6d6afe65e
bring RakLibInterface up to speed with latest RakLib
2020-04-19 12:27:44 +01:00
86e051b7bf
Merge commit 'a2543ff80d2906bccda1a4e2fdbd9d8e7d147fb3'
2020-04-18 17:33:05 +01:00
49a71ff4f8
Merge commit '6422ed7'
...
# Conflicts:
# resources/vanilla
# src/pocketmine/network/mcpe/RakLibInterface.php
2020-04-18 13:55:35 +01:00
9bfc1df486
Merge branch 'stable'
2020-04-18 13:19:31 +01:00
ab62a792e1
Merge commit '7a072931d'
2020-04-18 12:10:02 +01:00
3d3a487422
PrepareEncryptionTask: remove cyclic dependency on NetworkSession
2020-04-18 11:25:29 +01:00
e86c243db5
NetworkSession: do not expose setPlayerInfo()
2020-04-16 01:55:52 +01:00
9ba47f90d1
LoginPacketHandler: account for failure to correctly parse UUID
...
this will still crash in some circumstances, pending merging bug fixes from stable.
2020-04-16 01:45:00 +01:00
d3a6da1b3a
NetworkSession->getPing() now returns null when no measurement of ping has yet been completed
2020-04-04 23:33:30 +01:00
f5bf93455a
update to latest RakLib
2020-04-01 20:16:21 +01:00
64d5320ac9
update for pthreads-free raklib
2020-03-31 19:41:37 +01:00
00cc2ee092
one more RakLib update for the day ...
2020-03-30 00:22:45 +01:00
927872ce08
Updated to latest bleeding-edge RakLib
2020-03-29 23:53:00 +01:00