Entity Damaged By Entity Event

Discussion in 'Plugin Development' started by BurnerDiamond, Jan 25, 2015.

Thread Status:
Not open for further replies.
  1. Offline

    BurnerDiamond

    How can I check who the shooter of the entity is?

    Code:
    @EventHandler
        public void onSnowBallHitEvent(EntityDamageByEntityEvent e) {
                if(e.getDamager() instanceof Snowball) {
                    if(e.getEntity() instanceof Zombie) {
                        Player shooter = e.getDamager().get
                        e.setCancelled(true);
                       
                    }
                }
           
            }
    }
     
  2. Offline

    Skionz

  3. Offline

    BurnerDiamond

    Changed the code to this:

    Code:
    package torax.events;
    
    import org.bukkit.entity.Player;
    import org.bukkit.entity.Snowball;
    import org.bukkit.entity.Zombie;
    import org.bukkit.event.EventHandler;
    import org.bukkit.event.Listener;
    import org.bukkit.event.entity.EntityDamageByEntityEvent;
    
    public class Health implements Listener {
      
        @EventHandler
        public void onSnowBallHitEvent(EntityDamageByEntityEvent e) {
            org.bukkit.entity.Entity snowball = e.getEntity();
                if(snowball instanceof Snowball) {
                    if(e.getEntity() instanceof Zombie) {
                        Player shooter = (Player) ((Snowball) snowball).getShooter();
                        shooter.sendMessage("Hi");
                        e.setCancelled(true);
                      
                    }
                }
          
            }
    }
        
    @Skionz
     
  4. Offline

    Skionz

  5. Offline

    BurnerDiamond

    @Skionz

    It doesn't send the shooter a message and it doesn't cancel the event!
     
  6. Offline

    Skionz

  7. Offline

    BurnerDiamond

    @Skionz

    There is not problem no stack-traces, no errors.

    It should be working.

    Found one problem which was Snowball was e.getEntity instead of e.getDamager
     
  8. Offline

    Skionz

     
  9. Offline

    BurnerDiamond

    It's working now!

    @Skionz

    I'm sorry I wasn't sure what a debug line is.
     
Thread Status:
Not open for further replies.

Share This Page