Dylan K. Taylor
df65f1009c
Merge branch 'stable' into next-minor
2020-03-09 14:33:37 +00:00
DaPigGuy
12e4e92894
Inventory: Pass old item(s) to inventory change listeners, closes #3323 ( #3337 )
2020-03-09 13:52:15 +00:00
Andrés Arias
a6ca37429c
Player: do not set held item post block-break if changed ( #3345 )
...
this usually happens when a plugin replaces the held item during BlockBreakEvent.
closes #2010
2020-03-09 13:45:58 +00:00
Dylan K. Taylor
15d81154e6
PluginDescription: drop unenforceable type constraint on array keys
...
the data that comes through here isn't validated, and there's also no guarantee that all the keys will be strings in spite of our best efforts even if it was validated, because PHP is fucking stupid and casts int-like string keys to int keys.
2020-03-05 19:53:01 +00:00
Dylan K. Taylor
995309424e
updated pocketmine/nbt dependency
...
this is going to need work on exception handling, but right now it's so inconsistent that it doesn't matter anyway.
2020-03-04 17:53:37 +00:00
Dylan K. Taylor
6e39e34c1e
Merge branch 'stable'
2020-03-03 12:35:11 +00:00
Dylan K. Taylor
93e5c80962
MultiplayerSettingsPacket is bothways, close #3331
2020-03-03 12:32:57 +00:00
Dylan K. Taylor
c19ab97610
AddActorPacket: move BC hack to higher level
...
we shouldn't hack the protocol impl for BC.
2020-02-27 17:37:45 +00:00
Dylan K. Taylor
dbaf851be7
Merge branch 'stable' into next-minor
2020-02-27 16:51:06 +00:00
Dylan K. Taylor
78394a336c
Merge branch 'stable'
2020-02-25 20:45:39 +00:00
Dylan K. Taylor
7aa8bd18d3
Revert "Item: restrict bounds of count to 0-255"
...
This reverts commit 10317527e4012fb1dbb1661f2f7fc33b05a7a6d1.
this breaks user code which exceeds stack limits in legitimate
circumstances. For example, it should be OK to add 6000x diamond to a
player's inventory without being forced to manually split the count up
for addItem().
2020-02-25 20:42:03 +00:00
Dylan K. Taylor
53067c26d7
BaseInventory: stop mutating item for no reason in canAddItem()
2020-02-25 20:30:37 +00:00
Dylan K. Taylor
5c2ae0257c
DataPacket: inject buffer via parameter instead of class field (packet & stream separation, step 2)
...
this is not complete yet, but the final change (having the binarystream actually come from outside) is a little more disruptive, and some extra changes need to be made. This will grant some sanity in the meantime without breaking too much stuff.
2020-02-25 16:19:11 +00:00
Dylan K. Taylor
a633e415ef
FastChunkSerializer: use machine endianness for pack() (thanks @Frago9876543210)
...
this is faster due to not having to reverse bytes. Since we don't use this format for persistence, it's OK to use machine byte order for this.
2020-02-25 15:08:53 +00:00
Dylan K. Taylor
bd00ee5038
Merge branch 'stable'
2020-02-24 22:11:13 +00:00
Dylan K. Taylor
04581e2700
DataPacket: account for splitscreen header when decoding
2020-02-24 21:20:25 +00:00
Dylan K. Taylor
93597dcd50
SkinData: fixed loss of data from packet decode
2020-02-24 20:48:03 +00:00
Dylan K. Taylor
8a770d837e
Merge branch 'stable'
2020-02-24 20:32:43 +00:00
Dylan K. Taylor
3cd1da196a
UpdateTradePacket: fix order of fields, closes #3327
2020-02-24 20:16:07 +00:00
Dylan K. Taylor
ce0af8b040
DataPacket now encapsulates NetworkBinaryStream instead of extending it
...
ultimately the goal is to remove the NetworkBinaryStream crap entirely, but this change has most of the same benefits and is less disruptive.
2020-02-24 18:59:54 +00:00
Dylan K. Taylor
7c2741e4f5
Inventory: eliminate remaining $send parameters
2020-02-23 21:59:51 +00:00
Dylan K. Taylor
36685001bd
ContainerOpenPacket: fixed entityInv() not initializing x/y/z fields
...
these are written even when not used, so they have to be initialized.
2020-02-23 20:59:53 +00:00
Dylan K. Taylor
365d4a1592
better fix for 1.14.30 movement bug
2020-02-23 19:31:32 +00:00
Dylan K. Taylor
2d7f37ac47
avoid direct mutation of Item->count field, use Item->pop() instead
...
I think this change was already applied on the master branch, but I don't remember for sure.
2020-02-23 17:37:25 +00:00
Dylan K. Taylor
50fcdd6e7e
Item: fixed documentation of pop() return type (it's not fluent)
2020-02-23 17:32:50 +00:00
Dylan K. Taylor
10317527e4
Item: restrict bounds of count to 0-255
2020-02-23 17:23:53 +00:00
Dylan K. Taylor
46ac4cbca1
3.11.7 is next
2020-02-21 19:18:48 +00:00
Dylan K. Taylor
cb9e79b398
Release 3.11.6
2020-02-21 19:18:48 +00:00
Dylan K. Taylor
2f1fad2745
Bucket: implement MaybeConsumable, fixes #3306
...
this is a nauseating fix, but it's only needed for stable.
2020-02-21 17:49:55 +00:00
Dylan K. Taylor
44182dccbd
Human: an additional hack for MoveActor(Absolute|Delta)Packet on 1.14.30+
...
before anyone asks, we still can't use this for regular player movement, because it would cause the player to receive their own movement. This was OK with MoveActor, but isn't OK with MovePlayer.
2020-02-21 12:35:17 +00:00
Dylan K. Taylor
8ac7f7f11f
Level: fix type of randomTickBlocks and friends
2020-02-17 15:13:40 +00:00
Dylan K. Taylor
7b7dfc36d1
Living: fixed broken @var tag
2020-02-14 08:17:51 +00:00
Dylan K. Taylor
d63d6b73f6
Player: workaround 1.14.30 movement bug
...
I can understand why this bug happened, but it doesn't mean I like it.
Fix it pls mojang, this sucks.
2020-02-13 19:40:31 +00:00
Dylan K. Taylor
95eddbdd74
InventoryManager: move add/remove logic to separate functions
2020-02-12 17:36:29 +00:00
Dylan K. Taylor
55e3b9ed91
InventoryManager: avoid feedback loop when closing inventory
2020-02-12 16:35:57 +00:00
Dylan K. Taylor
b108fb61bf
Inventory: drop $send params from setItem() and clear()
2020-02-12 13:34:35 +00:00
Dylan K. Taylor
1c06438cbb
Inventory: remove final usage of $send parameter of setItem() and clear()
2020-02-12 13:33:23 +00:00
Dylan K. Taylor
4014f9a4f2
InventoryManager: be aware of client-side state when syncing slots
...
this eliminates feedback loops during client-initiated slot changes, and also makes it possible to have a SlotChangeAction anonymous from its initiator.
2020-02-11 21:12:18 +00:00
Dylan K. Taylor
cd71a6204f
Revert "PopulationTask: do not populate light in chunks out of the gate"
...
This reverts commit 42148f0d15949faecfbbef8f09ef4355d3dd3899.
2020-02-11 19:43:25 +00:00
Dylan K. Taylor
42148f0d15
PopulationTask: do not populate light in chunks out of the gate
...
this is a relic from when we needed to store light on disk. Now we can just calculate lighting as-needed instead.
2020-02-11 19:14:01 +00:00
Dylan K. Taylor
9b6fa8c25b
Merge branch 'stable'
2020-02-11 19:12:39 +00:00
Dylan K. Taylor
2bb497b716
Chunk: flag hasChanged when changing generated/populated/light-populated flags
2020-02-11 08:26:12 +00:00
Dylan K. Taylor
613bd40601
PopulationTask: move setPopulated() call to make it more obvious what is going on
2020-02-10 18:22:19 +00:00
Dylan K. Taylor
398b636759
PopulationTask: fixed chunks being generated empty in flat worlds
...
the flat generator just clones a pregenerated chunk instead of modifying the provided chunks, which means that the references that population task has would be the outdated ones.
2020-02-10 18:21:08 +00:00
Dylan K. Taylor
19bd283807
Process: drop a blank line
2020-02-10 12:23:11 +00:00
Dylan K. Taylor
20d1a048dd
fixup imports
2020-02-10 12:21:56 +00:00
Dylan K. Taylor
15b76a24b7
scrub useless phpdoc
2020-02-10 12:21:07 +00:00
Dylan K. Taylor
e8bb6b8625
Command: fix output translation regression caused by 4c51f1dda348d9d1c53c89185ceeb909a1cad21a
2020-02-10 11:42:21 +00:00
Dylan K. Taylor
2d51971b84
Revert "ClosureTask: drop requirement for void return type"
...
This reverts commit 9e993aa83fafe8434c5aef1ec7e0e0190bd2f9d3.
apparently PHPStan isn't cool with this ...
2020-02-10 11:40:47 +00:00
Dylan K. Taylor
f08e411cad
Merge branch 'stable' into next-minor
2020-02-10 11:40:08 +00:00