6a93eb8361
Merge branch 'stable'
2019-07-13 18:08:45 +01:00
c58a1bf9b7
Protocol changes for 1.12.0.28
2019-07-12 19:00:15 +01:00
c07396442c
Merge branch 'stable'
2019-07-09 15:57:02 +01:00
1cf4cf8614
Fixed decoding entries in SetScorePacket
...
closes #3000
2019-07-09 15:49:24 +01:00
e07523056d
Merge branch 'stable'
2019-07-03 16:35:29 +01:00
ab4b1be363
add constants for boat action of AnimatePacket
...
closes #2991
2019-07-03 16:30:45 +01:00
7aa4d974ef
move crafting stuff to pocketmine\crafting namespace
2019-07-01 18:47:09 +01:00
e7733718b6
divide network\mcpe namespace into more subnamespaces
2019-06-27 19:39:59 +01:00
6838a1e07a
BossEventPacket: fix crash in ::unknown6()
2019-06-27 15:16:06 +01:00
7f56f27505
some cleanup to held item handling
2019-06-26 19:40:40 +01:00
44b7239847
SetDefaultGameTypePacket: added ::create()
...
not using this yet, but it was in my workspace and it might come in useful
2019-06-25 19:28:30 +01:00
6bbae4b2df
SetDifficultyPacket: added create()
2019-06-25 18:34:12 +01:00
d15284e638
work on moving inventory network functionality to network layer
2019-06-25 13:28:01 +01:00
3103579ba6
Merge branch 'stable'
2019-06-22 20:26:21 +01:00
6925451f3f
StartGamePacket: added rogue field
...
this was added after 1.11.0 without a protocol version bump.
2019-06-22 20:25:50 +01:00
2559f5ec2b
Moved Player-related classes to pocketmine\player namespace
2019-06-18 18:51:36 +01:00
b18bd4f33c
rename SessionHandler -> PacketHandler
2019-06-18 16:02:46 +01:00
9df2ca3655
fixup some formatting issues
2019-06-18 14:12:37 +01:00
c45c1c930e
SetEntityMotionPacket: Mark as garbage serverbound
2019-06-17 14:22:08 +01:00
b344427a30
Added a hack to allow dropping garbage serverbound packets sent by a buggy client
2019-06-17 14:20:29 +01:00
4e734989bc
fixing add/remove items from anvil & enchanting table
...
the functionality of these don't work yet, but the inventories work more correctly now.
2019-06-15 18:56:42 +01:00
a94541c531
Split CreativeInventoryAction into two new action types
2019-06-15 14:40:15 +01:00
4bbf1d56dc
NetworkInventoryAction: shorten exception message
...
This is logged with the network session's logger, which provides context information already.
2019-06-15 14:27:11 +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
ad1b9e5cdd
fix item pickup animation
2019-06-08 17:35:56 +01:00
cc6296b019
Furnace: give some properties clearer names
2019-06-07 15:41:32 +01:00
e07f3e8e65
fine, variadics are annoying and this is easy to break ...
2019-06-06 15:12:46 +01:00
5c5fbf9b78
fixed oopses in 287c8c2dd4
2019-06-06 15:09:35 +01:00
9f0a184a5d
Packet: Remove mayHaveUnreadBytes()
...
this was an old hack to prevent debug spam being emitted when we halted decoding of logins over breaking protocol changes. Since then, we've gone back to trying to decode the packet regardless, so this property is useless.
2019-06-05 15:37:35 +01:00
3b5df90b0b
BossEventPacket: add some functions to ease creation
2019-06-05 15:14:37 +01:00
287c8c2dd4
Added static create() functions for many packets
...
There are a few motivations here:
1) Less boilerplate code (this can be written inline)
2) It's possible to provide multiple constructors for different packet variations to reduce the chance of errors.
3) It makes things catch fire on updates in ways that static analysers can understand.
2019-06-05 15:00:08 +01:00
cda565ba8c
Merge branch 'stable'
...
# Conflicts:
# resources/vanilla
# src/pocketmine/inventory/ArmorInventory.php
2019-06-04 18:19:47 +01:00
80f8a27094
Fixed implicit dependency on MobArmorEquipmentPacket field ordering
...
the order of the slots is entirely dependent on Mojang whims, so we shouldn't let our internals rely on it.
2019-06-04 18:16:56 +01:00
7a05c46ff6
Merge branch 'stable'
...
# Conflicts:
# resources/vanilla
2019-06-03 18:21:49 +01:00
341c480e13
ContainerSetDataPacket: added missing furnace property ID
2019-06-03 18:21:29 +01:00
efe30ffb07
Merge branch 'stable'
...
# Conflicts:
# resources/vanilla
2019-05-31 15:31:32 +01:00
cf538afb84
LevelEventPacket: added two extra IDs
2019-05-31 15:31:03 +01:00
77ace57985
BlockEventPacket: added a ::create() method
2019-05-30 19:44:29 +01:00
89242543b9
Clean up Skin error handling, close #2926
...
Skin->__construct() now does all the validation.
2019-05-27 16:20:46 +01:00
0a891f5408
Move some things out of LoginPacket and into the handler
2019-05-27 16:06:53 +01:00
b11d3b0401
CraftingDataPacket: Fixed uncaught exception in decode
...
this is not exploitable because it's not a serverbound packet, but it should be fixed nonetheless.
2019-05-18 17:19:44 +01:00
6de0b48c1f
PacketBatch: Always encode packets freshly, never reuse buffers
...
this causes bugs when a packet is modified during events and then re-sent to a player. Since we can't control this, we can't allow this kind of buffer reuse.
The only notable case where this will cause loss of performance is when broadcasting a series of packet(s) which accumulate to less than 256 bytes, which is reasonably cheap to encode anyway.
In addition, removing this caching is one roadblock to moving this serialization to native code, which will make it vastly faster.
2019-05-17 18:04:51 +01:00
a331c5e13f
Player: reduce SetTitlePacket creation boilerplate
...
it's better to encapsulate all this logic in one place so that third party developers can more easily understand this, and also to reduce the amount of crap we have in Player.
2019-05-08 16:43:05 +01:00
7ae84944ca
protocol: add some missing interfaces for new packets
2019-05-02 17:35:54 +01:00
67e75d6c0a
Moved DataPropertyManager to network namespace
...
this is _extremely_ network-focused code.
2019-04-26 18:57:44 +01:00
854a2f5135
Move a giant heap of network garbage out of Entity
2019-04-26 18:52:38 +01:00
00644dd529
Fixed an edge-case in AvailableCommandsPacket decoding
2019-04-26 12:32:42 +01:00
7d712d68c4
Merge branch 'stable'
2019-04-25 18:31:22 +01:00
3c941dd992
Move more stuff to BedrockData submodule
2019-04-25 18:23:31 +01:00