From 2a40c0d82cb28366f2dd42de0420b3d7074f84ff Mon Sep 17 00:00:00 2001 From: "Dylan K. Taylor" Date: Sat, 20 Oct 2018 19:13:34 +0100 Subject: [PATCH] Make use of isInLoadedTerrain() --- src/pocketmine/Player.php | 11 +++-------- src/pocketmine/tile/Chest.php | 3 ++- 2 files changed, 5 insertions(+), 9 deletions(-) diff --git a/src/pocketmine/Player.php b/src/pocketmine/Player.php index f80a91dd7..b32342f35 100644 --- a/src/pocketmine/Player.php +++ b/src/pocketmine/Player.php @@ -1541,14 +1541,9 @@ class Player extends Human implements CommandSender, ChunkLoader, IPlayer{ $this->server->getLogger()->warning($this->getName() . " moved too fast, reverting movement"); $this->server->getLogger()->debug("Old position: " . $this->asVector3() . ", new position: " . $this->newPosition); $revert = true; - }else{ - $chunkX = $newPos->getFloorX() >> 4; - $chunkZ = $newPos->getFloorZ() >> 4; - - if(!$this->level->isChunkLoaded($chunkX, $chunkZ) or !$this->level->isChunkGenerated($chunkX, $chunkZ)){ - $revert = true; - $this->nextChunkOrderRun = 0; - } + }elseif(!$this->level->isInLoadedTerrain($newPos) or !$this->level->isChunkGenerated($newPos->getFloorX() >> 4, $newPos->getFloorZ() >> 4)){ + $revert = true; + $this->nextChunkOrderRun = 0; } if(!$revert and $distanceSquared != 0){ diff --git a/src/pocketmine/tile/Chest.php b/src/pocketmine/tile/Chest.php index beb6d1214..6c0dd4f19 100644 --- a/src/pocketmine/tile/Chest.php +++ b/src/pocketmine/tile/Chest.php @@ -26,6 +26,7 @@ namespace pocketmine\tile; use pocketmine\inventory\ChestInventory; use pocketmine\inventory\DoubleChestInventory; use pocketmine\inventory\InventoryHolder; +use pocketmine\math\Vector3; use pocketmine\nbt\tag\CompoundTag; use pocketmine\nbt\tag\IntTag; @@ -103,7 +104,7 @@ class Chest extends Spawnable implements InventoryHolder, Container, Nameable{ } protected function checkPairing(){ - if($this->isPaired() and !$this->getLevel()->isChunkLoaded($this->pairX >> 4, $this->pairZ >> 4)){ + if($this->isPaired() and !$this->getLevel()->isInLoadedTerrain(new Vector3($this->pairX, $this->y, $this->pairZ))){ //paired to a tile in an unloaded chunk $this->doubleInventory = null;