diff --git a/src/pocketmine/Player.php b/src/pocketmine/Player.php index e460dd5c3..71fbb29fe 100644 --- a/src/pocketmine/Player.php +++ b/src/pocketmine/Player.php @@ -1292,8 +1292,10 @@ class Player extends Human implements CommandSender, ChunkLoader, IPlayer{ $this->allowFlight = $this->isCreative(); if($this->isSpectator()){ $this->flying = true; + $this->keepMovement = true; $this->despawnFromAll(); }else{ + $this->keepMovement = $this->allowMovementCheats; if($this->isSurvival()){ $this->flying = false; } @@ -1902,6 +1904,7 @@ class Player extends Human implements CommandSender, ChunkLoader, IPlayer{ } $this->allowFlight = $this->isCreative(); + $this->keepMovement = $this->isSpectator() || $this->allowMovementCheats(); if(($level = $this->server->getLevelByName($this->namedtag->getString("Level", "", true))) === null){ $this->setLevel($this->server->getDefaultLevel());