From 306bf7be5febc6fa696c62c913f42471a8adfe92 Mon Sep 17 00:00:00 2001 From: "Dylan K. Taylor" Date: Mon, 31 Jul 2017 16:38:01 +0100 Subject: [PATCH] Moved dimension id constants to their own interface (PHP needs enums) --- src/pocketmine/Player.php | 3 +- .../mcpe/protocol/ChangeDimensionPacket.php | 8 +++-- .../mcpe/protocol/types/DimensionIds.php | 32 +++++++++++++++++++ 3 files changed, 39 insertions(+), 4 deletions(-) create mode 100644 src/pocketmine/network/mcpe/protocol/types/DimensionIds.php diff --git a/src/pocketmine/Player.php b/src/pocketmine/Player.php index 7216f082d..558356bc9 100644 --- a/src/pocketmine/Player.php +++ b/src/pocketmine/Player.php @@ -155,6 +155,7 @@ use pocketmine\network\mcpe\protocol\TakeItemEntityPacket; use pocketmine\network\mcpe\protocol\TextPacket; use pocketmine\network\mcpe\protocol\TransferPacket; use pocketmine\network\mcpe\protocol\types\ContainerIds; +use pocketmine\network\mcpe\protocol\types\DimensionIds; use pocketmine\network\mcpe\protocol\UpdateAttributesPacket; use pocketmine\network\mcpe\protocol\UpdateBlockPacket; use pocketmine\network\mcpe\protocol\UseItemPacket; @@ -1856,7 +1857,7 @@ class Player extends Human implements CommandSender, ChunkLoader, IPlayer{ $pk->pitch = $this->pitch; $pk->yaw = $this->yaw; $pk->seed = -1; - $pk->dimension = 0; //TODO: implement this properly + $pk->dimension = DimensionIds::OVERWORLD; //TODO: implement this properly $pk->worldGamemode = Player::getClientFriendlyGamemode($this->server->getGamemode()); $pk->difficulty = $this->server->getDifficulty(); $pk->spawnX = $spawnPosition->getFloorX(); diff --git a/src/pocketmine/network/mcpe/protocol/ChangeDimensionPacket.php b/src/pocketmine/network/mcpe/protocol/ChangeDimensionPacket.php index 37f0950b7..41baac579 100644 --- a/src/pocketmine/network/mcpe/protocol/ChangeDimensionPacket.php +++ b/src/pocketmine/network/mcpe/protocol/ChangeDimensionPacket.php @@ -31,13 +31,15 @@ use pocketmine\network\mcpe\NetworkSession; class ChangeDimensionPacket extends DataPacket{ const NETWORK_ID = ProtocolInfo::CHANGE_DIMENSION_PACKET; - const DIMENSION_OVERWORLD = 0; - const DIMENSION_NETHER = 1; - + /** @var int */ public $dimension; + /** @var float */ public $x; + /** @var float */ public $y; + /** @var float */ public $z; + /** @var bool */ public $respawn = false; public function decodePayload(){ diff --git a/src/pocketmine/network/mcpe/protocol/types/DimensionIds.php b/src/pocketmine/network/mcpe/protocol/types/DimensionIds.php new file mode 100644 index 000000000..2567deada --- /dev/null +++ b/src/pocketmine/network/mcpe/protocol/types/DimensionIds.php @@ -0,0 +1,32 @@ +