diff --git a/TwosideKeeper.jar b/TwosideKeeper.jar index a9d5e30..86265a2 100644 Binary files a/TwosideKeeper.jar and b/TwosideKeeper.jar differ diff --git a/src/sig/plugin/TwosideKeeper/TwosideKeeper.java b/src/sig/plugin/TwosideKeeper/TwosideKeeper.java index 5387688..4ce4603 100644 --- a/src/sig/plugin/TwosideKeeper/TwosideKeeper.java +++ b/src/sig/plugin/TwosideKeeper/TwosideKeeper.java @@ -3591,8 +3591,7 @@ public class TwosideKeeper extends JavaPlugin implements Listener { ,1); } - if (ev.getCause()==DamageCause.ENTITY_EXPLOSION || - ev.getCause()==DamageCause.BLOCK_EXPLOSION) { + if (ev.getCause()==DamageCause.BLOCK_EXPLOSION) { //Calculate new damage based on armor worn. //Remove all other damage modifiers since we will calculate it manually. ev.setDamage(DamageModifier.BLOCKING,0); @@ -3612,6 +3611,7 @@ public class TwosideKeeper extends JavaPlugin implements Listener { } } + ev.setDamage(DamageModifier.BASE,NewCombat.CalculateDamageReduction(ev.getDamage()*EXPLOSION_DMG_MULT*((100-protectionlevel)*0.01),p,null)); ev.setDamage(NewCombat.CalculateDamageReduction(ev.getDamage()*EXPLOSION_DMG_MULT*((100-protectionlevel)*0.01),p,null)); log("Explosion Damage is "+ev.getDamage(),2); //ev.setDamage(CalculateDamageReduction(ev.getDamage()*EXPLOSION_DMG_MULT,p,null)); @@ -3925,14 +3925,14 @@ public class TwosideKeeper extends JavaPlugin implements Listener { if (ev.getEntity() instanceof LivingEntity) { ((LivingEntity)ev.getEntity()).setNoDamageTicks(10); final double oldhp=((LivingEntity)ev.getEntity()).getHealth(); + ev.setDamage(DamageModifier.BASE,dmg); + ev.setDamage(dmg); if (NewCombat.getDamagerEntity(ev.getDamager()) instanceof Player) { if (ev.getDamager() instanceof Projectile) { ev.getDamager().remove(); } GenericFunctions.subtractHealth((LivingEntity)ev.getEntity(), NewCombat.getDamagerEntity(ev.getDamager()), dmg); ev.setCancelled(true); - } else { - ev.setDamage(dmg); } Bukkit.getScheduler().scheduleSyncDelayedTask(this, new Runnable() { public void run() {