Add remaining missing setLastDamageCause's

This commit is contained in:
Steve Anton 2012-07-13 21:14:56 -07:00 committed by feildmaster
parent 79189c1c13
commit 8b9aad8c2b
4 changed files with 6 additions and 3 deletions

View File

@ -804,6 +804,7 @@ public abstract class Entity {
}
i = event.getDamage();
event.getEntity().setLastDamageCause(event);
}
// CraftBukkit end
this.damageEntity(DamageSource.FIRE, i);
@ -1449,6 +1450,7 @@ public abstract class Entity {
return;
}
thisBukkitEntity.setLastDamageCause(event);
this.burn(event.getDamage());
// CraftBukkit end

View File

@ -402,6 +402,7 @@ public class EntityEnderDragon extends EntityComplex {
Bukkit.getPluginManager().callEvent(damageEvent);
if (!damageEvent.isCancelled()) {
entity.getBukkitEntity().setLastDamageCause(damageEvent);
entity.damageEntity(DamageSource.mobAttack(this), damageEvent.getDamage());
}
} else {

View File

@ -67,6 +67,7 @@ public class EntityEnderPearl extends EntityProjectile {
if (!damageEvent.isCancelled()) {
org.bukkit.entity.Player bPlayer = Bukkit.getPlayerExact(((EntityPlayer) this.shooter).name);
((CraftPlayer) bPlayer).getHandle().invulnerableTicks = -1; // Remove spawning invulnerability.
bPlayer.setLastDamageCause(damageEvent);
((CraftPlayer) bPlayer).getHandle().damageEntity(DamageSource.FALL, damageEvent.getDamage()); // Damage the new player instead of the old
}
}

View File

@ -137,9 +137,7 @@ public class Explosion {
if (damagee == null) {
// nothing was hurt
} else if (this.source == null) { // Block explosion
// TODO: get the x/y/z of the tnt block?
// does this even get called ever? @see EntityTNTPrimed - not BlockTNT or whatever
} else if (this.source == null) { // Block explosion (without an entity source; bed etc.)
EntityDamageByBlockEvent event = new EntityDamageByBlockEvent(null, damagee, EntityDamageEvent.DamageCause.BLOCK_EXPLOSION, damageDone);
Bukkit.getPluginManager().callEvent(event);
@ -162,6 +160,7 @@ public class Explosion {
Bukkit.getPluginManager().callEvent(event);
if (!event.isCancelled()) {
entity.getBukkitEntity().setLastDamageCause(event);
entity.damageEntity(DamageSource.EXPLOSION, event.getDamage());
entity.motX += d0 * d10;