diff --git a/src/pocketmine/level/Level.php b/src/pocketmine/level/Level.php index 764d8c619..bded220e6 100644 --- a/src/pocketmine/level/Level.php +++ b/src/pocketmine/level/Level.php @@ -1801,13 +1801,10 @@ class Level implements ChunkManager, Metadatable{ if($player !== null){ $ev = new BlockPlaceEvent($player, $hand, $blockReplace, $blockClicked, $item); - if(!$player->hasPermission("pocketmine.spawnprotect.bypass") and ($distance = $this->server->getSpawnRadius()) > -1){ - $t = new Vector2($blockClicked->x, $blockClicked->z); - $s = new Vector2($this->getSpawnLocation()->x, $this->getSpawnLocation()->z); - if(count($this->server->getOps()->getAll()) > 0 and $t->distance($s) <= $distance){ //set it to cancelled so plugins can bypass this - $ev->setCancelled(); - } + if($this->checkSpawnProtection($player, $blockClicked)){ + $ev->setCancelled(); } + $this->server->getPluginManager()->callEvent($ev); if($ev->isCancelled()){ return false;