1. The forums will be archived and moved to a read only mode in about 2 weeks (mid march).

Cancel the death event?

Discussion in 'Development' started by TheTrollArtz, Aug 18, 2018.

  1. TheTrollArtz

    TheTrollArtz Spider

    Messages:
    13
    GitHub:
    ithetrollidk
    PHP:
    public function onDamage(EntityDamageEvent $event){
         if(
    $event->getEntity() instanceof Player && $event->getDamager() instanceof Player){
             
    $player $event->getEntity();
             
    $damager $event->getDamager();
           if(
    $event->getFinalDamage() >= $player->getHealth()){
               
    $event->setCancelled(true);
               
    $player->setGamemode(3);
               
    $message T::GRAY $player->getName() . T::YELLOW " Fue asesinado por " T::GOLD $d->getName();
               foreach(
    $player->getLevel()->getPlayers() as $p){
                 
    $p->getLevel()->addSound(new AnvilUseSound($p));
               
    $p->sendMessage(T::BLUE "[SkyWars] ".$message);
               }
               
    $player->setHealth($player->getMaxHealth());
           }
      }
     }
    MY SKYWARS HAS SPECTATOR MODE, BUT ON DYING THE TELEPORT TO THE DEFAULT WORLD, AND I WANT TO CANCEL THAT: /
     
  2. corytortoise

    corytortoise Skeleton

    Messages:
    825
    GitHub:
    corytortoise
    Is your class registered as a listener properly? Also, you need to check if the event is an instanceof EntityDamageByEntityEvent if you want to do event->getDamager(), or you'll have a lot of errors.
     
  3. TheTrollArtz

    TheTrollArtz Spider

    Messages:
    13
    GitHub:
    ithetrollidk
    If that already implements that, and I think it already serves
     
  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.