Commit Graph

747 Commits

Author SHA1 Message Date
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
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
95eddbdd74 InventoryManager: move add/remove logic to separate functions 2020-02-12 17:36:29 +00:00
55e3b9ed91 InventoryManager: avoid feedback loop when closing inventory 2020-02-12 16:35:57 +00:00
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
7ad44d8403 ChunkRequestTask: do not copy light information when sending chunks 2020-02-09 17:49:15 +00:00
ce42ca958e InGamePacketHandler: do not execute use-item action if already using item, fixes #3246
the useHeldItem() sets the using-item flag back to true immediately after consumeHeldItem() sets it to false, which caused this bug.
stable has the same problem, but the effects don't show due to a well timed MobEquipmentPacket (a happy accident).
2020-02-09 12:13:15 +00:00
bfdfa4184b Merge branch 'stable' 2020-02-08 09:33:56 +00:00
04a3e71047 ChunkSerializer: avoid using loop vars outside loop scope 2020-02-07 22:10:23 +00:00
ee36ac9875 ProcessLoginTask: use strict base64_decode() 2020-02-07 22:09:46 +00:00
d2aca6023b add native return types to closures (for phpstan) 2020-02-07 22:05:15 +00:00
aac7da6c96 eliminate remaining empty() usages 2020-02-07 21:51:50 +00:00
fb1126797a Merge branch 'stable' 2020-02-07 18:13:55 +00:00
ff63f6d055 fill in more iterable types (master) 2020-02-01 20:19:57 +00:00
cb16f5c142 Merge commit '260ac47588c76a2e6814cfba46773a990fb8c5da'
# Conflicts:
#	resources/vanilla
#	src/Server.php
#	src/lang/Language.php
#	src/network/mcpe/protocol/AddItemActorPacket.php
#	src/network/mcpe/protocol/AddPlayerPacket.php
#	src/network/mcpe/protocol/SetActorDataPacket.php
#	src/network/mcpe/serializer/NetworkBinaryStream.php
#	src/permission/Permission.php
#	src/pocketmine/block/Leaves.php
#	src/pocketmine/entity/DataPropertyManager.php
#	src/pocketmine/entity/Entity.php
#	src/pocketmine/item/Banner.php
#	src/pocketmine/item/Item.php
#	src/pocketmine/level/format/io/LevelProvider.php
#	src/pocketmine/level/format/io/LevelProviderManager.php
#	src/pocketmine/network/mcpe/protocol/AddActorPacket.php
#	src/pocketmine/network/mcpe/protocol/LoginPacket.php
#	src/pocketmine/tile/Banner.php
#	src/scheduler/BulkCurlTask.php
#	src/updater/AutoUpdater.php
#	src/utils/Config.php
#	src/utils/Utils.php
#	src/world/generator/Flat.php
#	src/world/generator/Generator.php
2020-01-31 21:07:34 +00:00
20d39846b7 Merge commit 'fc0619ee6e4fa08aba2719e58a9289edd11f0b6e'
# Conflicts:
#	resources/vanilla
#	src/network/mcpe/protocol/AddItemActorPacket.php
#	src/network/mcpe/protocol/AddPlayerPacket.php
#	src/network/mcpe/protocol/SetActorDataPacket.php
#	src/network/mcpe/serializer/NetworkBinaryStream.php
#	src/pocketmine/network/mcpe/protocol/AddActorPacket.php
#	src/pocketmine/network/mcpe/protocol/LoginPacket.php
2020-01-31 19:42:07 +00:00
5be45dd793 Merge commit '259f0425a9657befcc8ef5f474ecc24ec78042fa' 2020-01-31 18:43:47 +00:00
5c4487c980 added some callable prototypes for phpstan 2020-01-29 19:56:16 +00:00
68bea6d4aa ChunkRequestTask: fix @var for error hook fetch 2020-01-29 19:36:52 +00:00
ded0f5c80e network: added some missing native closure return types 2020-01-28 11:10:01 +00:00
e66197036d InGamePacketHandler: drop transactions with 0 actions without trying to execute them
often we throw out actions that have no value, which can lead to an empty transaction and re-syncing the inventory. This happens every time we interact with the creative inventory in 1.13+, which causes items to appear to vanish when taking them from the creative menu.
The correct fix for this is to resend only the slots affected by SlotChangeActions, but this fix will suffice for now without rewriting everything.
2020-01-25 18:10:37 +00:00
0b423c5b96 Merge branch 'stable' 2020-01-22 15:16:10 +00:00
055b13a6cf strip extra blank lines (php-cs-fixer) 2020-01-22 15:14:10 +00:00
7f06002027 Merge commit 'bff5bf25aea5cf56bbbfaeaa89f5e1f0ac920c90' 2020-01-22 15:00:13 +00:00
67bcc1c0fb phpdoc armageddon for master, pass 1 2020-01-22 11:55:03 +00:00
ccdf003c8d ResourcePacksPacketHandler: fixed chemistry being applied to top of stack instead of bottom
it seems like the stack order is reversed, so all 'regular' in-memory stack behaviour goes out of the window.
2020-01-22 08:26:44 +00:00
3ee6887792 populate remaining missing return types, using native returns where possible
this is done separately to stable so that stable changes can be integrated easily using an empty merge.
2020-01-19 10:26:35 +00:00
df2551ed4d NetworkSession: add missing return type for syncAttributes() 2020-01-18 20:00:05 +00:00
c0a45083b6 Packet: specify void return type in phpdoc (native return type not possible yet) 2020-01-18 19:58:14 +00:00
2b4ce3ea6d Merge branch 'stable' 2020-01-18 19:41:17 +00:00
886ac4b788 Merge commit 'ab57914322d8e93790a88604b9bb3046a759da22' 2020-01-18 18:22:57 +00:00
00869e81ba NetworkBinaryStream: fix server crash on wrong skindata size, close #3276 2020-01-15 19:48:25 +00:00
9c06c1a06f Merge branch 'stable' 2020-01-11 22:36:57 +00:00
96b91af66a Merge branch 'stable' 2020-01-11 21:41:38 +00:00
aba71762e9 master-specific @var annotations 2020-01-09 17:50:01 +00:00
cda1143a79 Merge branch 'stable' 2020-01-09 17:17:42 +00:00
e76cc8eb33 RakLibPacketSender: fixed session leak on server-side disconnect 2020-01-07 11:32:23 +00:00
fde888bf59 Merge commit 'f3550446267f975b33219bdde6aec8fbea614cb2' 2020-01-04 16:36:33 +00:00
27fa73a4d2 Merge commit '216138a37e52e545abdba5a3600eabbcced867be'
# Conflicts:
#	resources/vanilla
2019-12-25 13:53:25 +00:00
b6071bff36 Merge commit '911b6feaf927a7dd9f54240d9bf6b0f7684df692' 2019-12-25 13:52:21 +00:00
bfc2a9107c Merge commit 'f7d66613df87f5bd3586daf02922af0a64efdce5' 2019-12-25 13:41:31 +00:00
7c15fd6b00 Merge commit '9e1f6a24868823ad06edb6a79d0cb391e637bcb8' 2019-12-13 18:21:57 +00:00
81620441a4 CompoundTagMetadataProperty: fix unhandled exception when decoding 2019-12-12 20:27:40 +00:00
6ace4733ce DataPacket: fixed var_dump() buffer bin2hex not working
in BinaryUtils new versions, BinaryStream->buffer is private.
detected by phpstan level 4
2019-12-12 15:02:42 +00:00
9a31cbf5ef ChunkCache: fixed possible undefined offset crash in restartPendingRequest() 2019-12-12 13:55:30 +00:00
80917692c1 Merge branch 'stable' 2019-12-11 23:37:36 +00:00
a1610500e9 Merge tag '3.11.1' 2019-12-11 23:35:20 +00:00
c926674d07 Merge commit '95683642774b1896c5de6f09dd528c1d3766d04d' 2019-12-11 23:26:40 +00:00
4651bcf8c3 master: imports cleanup
it was easier to make an empty merge and re-run php-cs-fixer afterwards.
2019-12-11 23:23:03 +00:00
19f75768ed Merge commit '1a99938e4b5af0295e449379dbdb0a3ffe703efd' 2019-12-11 23:15:48 +00:00