From b3d8d10bec8f592f2534b0735939559c96cc7c43 Mon Sep 17 00:00:00 2001 From: "Dylan K. Taylor" Date: Tue, 14 Aug 2018 19:21:13 +0100 Subject: [PATCH] Player: move flight toggling to its own method --- src/pocketmine/Player.php | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/src/pocketmine/Player.php b/src/pocketmine/Player.php index 7c1edd21d..65ced448a 100644 --- a/src/pocketmine/Player.php +++ b/src/pocketmine/Player.php @@ -2411,6 +2411,16 @@ class Player extends Human implements CommandSender, ChunkLoader, IPlayer{ } } + public function toggleFlight(bool $fly) : void{ + $ev = new PlayerToggleFlightEvent($this, $fly); + $this->server->getPluginManager()->callEvent($ev); + if($ev->isCancelled()){ + $this->sendSettings(); + }else{ + $this->setFlying($fly); + } + } + public function animate(int $action) : bool{ $this->server->getPluginManager()->callEvent($ev = new PlayerAnimationEvent($this, $action)); if($ev->isCancelled()){ @@ -2442,13 +2452,7 @@ class Player extends Human implements CommandSender, ChunkLoader, IPlayer{ $this->kick($this->server->getLanguage()->translateString("kick.reason.cheat", ["%ability.flight"])); return true; }elseif($isFlying !== $this->isFlying()){ - $this->server->getPluginManager()->callEvent($ev = new PlayerToggleFlightEvent($this, $isFlying)); - if($ev->isCancelled()){ - $this->sendSettings(); - }else{ - $this->flying = $ev->isFlying(); - } - + $this->toggleFlight($isFlying); $handled = true; }