EntityDamageEvent and EntityDamageByEntityEvent are being fired twice.
Code to reproduce the issue:
@EventHandler public void onEntityDamage(EntityDamageEvent event) { if (event.getEntity() instanceof Player) { Bukkit.broadcastMessage("Damage: " + event.getDamage() + " FinalDamage: " + event.getFinalDamage() + " Cause: " + event.getCause().toString()); event.setCancelled(true); } }