From 7c192f85e24f124bcbad13531dc78a5caba804b1 Mon Sep 17 00:00:00 2001 From: "Dylan K. Taylor" Date: Fri, 25 Sep 2020 17:41:12 +0100 Subject: [PATCH] protocol: remove final remaining Vector3 mutations this really should be replaced with a network layer BlockPos structure in the absence of a general int-vector structure in math. --- .../mcpe/protocol/types/entity/BlockPosMetadataProperty.php | 6 +++--- .../protocol/types/inventory/UseItemTransactionData.php | 5 +++-- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/src/network/mcpe/protocol/types/entity/BlockPosMetadataProperty.php b/src/network/mcpe/protocol/types/entity/BlockPosMetadataProperty.php index 628b545be..0770f0bd5 100644 --- a/src/network/mcpe/protocol/types/entity/BlockPosMetadataProperty.php +++ b/src/network/mcpe/protocol/types/entity/BlockPosMetadataProperty.php @@ -44,9 +44,9 @@ final class BlockPosMetadataProperty implements MetadataProperty{ } public static function read(PacketSerializer $in) : self{ - $vec = new Vector3(0, 0, 0); - $in->getSignedBlockPosition($vec->x, $vec->y, $vec->z); - return new self($vec); + $x = $y = $z = 0; + $in->getSignedBlockPosition($x, $y, $z); + return new self(new Vector3($x, $y, $z)); } public function write(PacketSerializer $out) : void{ diff --git a/src/network/mcpe/protocol/types/inventory/UseItemTransactionData.php b/src/network/mcpe/protocol/types/inventory/UseItemTransactionData.php index 6b59c403c..0ef87c032 100644 --- a/src/network/mcpe/protocol/types/inventory/UseItemTransactionData.php +++ b/src/network/mcpe/protocol/types/inventory/UseItemTransactionData.php @@ -87,8 +87,9 @@ class UseItemTransactionData extends TransactionData{ protected function decodeData(PacketSerializer $stream) : void{ $this->actionType = $stream->getUnsignedVarInt(); - $this->blockPos = new Vector3(0, 0, 0); - $stream->getBlockPosition($this->blockPos->x, $this->blockPos->y, $this->blockPos->z); + $x = $y = $z = 0; + $stream->getBlockPosition($x, $y, $z); + $this->blockPos = new Vector3($x, $y, $z); $this->face = $stream->getVarInt(); $this->hotbarSlot = $stream->getVarInt(); $this->itemInHand = $stream->getSlot();