public function onPrimeTnT(ExplosionPrimeEvent $event)
 {
     if ($event->getEntity() instanceof Player) {
         $player = $event->getEntity();
         if ($player->getLevel()->getName() === $this->plugin->hubLevelName) {
             if (!$player->isOp()) {
                 $event->setCancelled(true);
             }
         }
     }
 }
Exemple #2
0
 public function readyToExplode(ExplosionPrimeEvent $e)
 {
     if ($e->isCancelled()) {
         return;
     }
     $g = $e->getEntity();
     if (!$g->namedtag) {
         return;
     }
     if ($g->namedtag->getName() != "Scorched") {
         return;
     }
     if (mt_rand() / mt_getrandmax() < $this->cfg["rpg-noexplode"]) {
         $e->setCancelled();
         return;
     }
     $e->setForce($this->cfg["rpg-yield"]);
     if ($this->cfg["rpg-magic"]) {
         $ev->setBlockBreaking(false);
     }
 }
Exemple #3
0
 public function onExplode(ExplosionPrimeEvent $event)
 {
     if ($event->getEntity() instanceof Entity) {
         foreach ($event->getEntity()->getLevel()->getEntities() as $entity) {
             if (isset($event->getEntity()->shootingEntity)) {
                 if ($entity == $event->getEntity()->shootingEntity) {
                     continue;
                 }
             }
             if ($entity instanceof Player) {
                 if ($event->getEntity()->distance($entity) <= 6) {
                     if (!$this->purgeStarted) {
                         $event->setCancelled();
                     }
                     break;
                 }
             }
         }
     }
 }
Exemple #4
0
 public function onExplode(ExplosionPrimeEvent $event)
 {
     if ($this->checkSpawn($event->getEntity(), 5)) {
         $event->setCancelled();
     }
 }