Clean entity.damage functions. Fixes BUKKIT-1822

This commit is contained in:
feildmaster
2012-07-01 05:00:48 -05:00
parent ff09ff07f9
commit 0a0d5ebf20
2 changed files with 7 additions and 22 deletions

View File

@@ -8,6 +8,7 @@ import java.util.List;
import net.minecraft.server.DamageSource;
import net.minecraft.server.EntityArrow;
import net.minecraft.server.EntityComplex;
import net.minecraft.server.EntityEgg;
import net.minecraft.server.EntityEnderPearl;
import net.minecraft.server.EntityFireball;
@@ -147,7 +148,7 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
}
public void damage(int amount) {
entity.damageEntity(DamageSource.GENERIC, amount);
damage(amount, null);
}
public void damage(int amount, org.bukkit.entity.Entity source) {
@@ -159,7 +160,11 @@ public class CraftLivingEntity extends CraftEntity implements LivingEntity {
reason = DamageSource.mobAttack(((CraftLivingEntity) source).getHandle());
}
entity.damageEntity(reason, amount);
if (entity instanceof EntityComplex) {
((EntityComplex) entity).dealDamage(reason, amount);
} else {
entity.damageEntity(reason, amount);
}
}
public Location getEyeLocation() {