diff --git a/src/com/projectkorra/projectkorra/GeneralMethods.java b/src/com/projectkorra/projectkorra/GeneralMethods.java index 89fbe296..05cd13e9 100644 --- a/src/com/projectkorra/projectkorra/GeneralMethods.java +++ b/src/com/projectkorra/projectkorra/GeneralMethods.java @@ -372,12 +372,15 @@ public class GeneralMethods { EntityBendingDeathEvent event = new EntityBendingDeathEvent(entity, player, damage, ability); Bukkit.getServer().getPluginManager().callEvent(event); } - BendingDamageEvent event = new BendingDamageEvent(); + BendingDamageEvent event = new BendingDamageEvent(damage); Bukkit.getServer().getPluginManager().callEvent(event); - ((LivingEntity) entity).damage(damage, player); - entity.setLastDamageCause(new EntityDamageByEntityEvent(player, entity, DamageCause.CUSTOM, damage)); - if (Bukkit.getPluginManager().isPluginEnabled("NoCheatPlus")) { - NCPExemptionManager.unexempt(player); + + if(!event.isCancelled()) { + ((LivingEntity) entity).damage(damage, player); + entity.setLastDamageCause(new EntityDamageByEntityEvent(player, entity, DamageCause.CUSTOM, damage)); + if (Bukkit.getPluginManager().isPluginEnabled("NoCheatPlus")) { + NCPExemptionManager.unexempt(player); + } } } } diff --git a/src/com/projectkorra/projectkorra/event/BendingDamageEvent.java b/src/com/projectkorra/projectkorra/event/BendingDamageEvent.java index 8c4adf72..aed20743 100644 --- a/src/com/projectkorra/projectkorra/event/BendingDamageEvent.java +++ b/src/com/projectkorra/projectkorra/event/BendingDamageEvent.java @@ -8,9 +8,19 @@ public class BendingDamageEvent extends Event implements Cancellable { private static final HandlerList handlers = new HandlerList(); private boolean cancelled; + private double damage; - public BendingDamageEvent() { + public BendingDamageEvent(double damage) { this.cancelled = false; + this.damage = damage; + } + + public double getDamage() { + return damage; + } + + public void setDamage(double damage) { + this.damage = damage; } @Override