mirror of
https://github.com/PaperMC/Paper.git
synced 2025-01-23 00:42:05 +01:00
fixed double firing of EntityDamageByEntityEvent
This commit is contained in:
parent
5adcf526ab
commit
066a95769c
2 changed files with 8 additions and 2 deletions
|
@ -17,6 +17,10 @@ public class EntityDamageSourceIndirect extends EntityDamageSource {
|
||||||
// CraftBukkit start
|
// CraftBukkit start
|
||||||
String source = (this.n == null) ? "Herobrine" : this.n.ad();
|
String source = (this.n == null) ? "Herobrine" : this.n.ad();
|
||||||
return LocaleI18n.a("death." + this.m, new Object[] { entityhuman.name, source});
|
return LocaleI18n.a("death." + this.m, new Object[] { entityhuman.name, source});
|
||||||
|
}
|
||||||
|
|
||||||
|
public Entity getProximateDamageSource() {
|
||||||
|
return super.getEntity();
|
||||||
// CraftBukkit end
|
// CraftBukkit end
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -587,7 +587,9 @@ public abstract class EntityHuman extends EntityLiving {
|
||||||
// also damage the player in this way. For example, EntitySlime.
|
// also damage the player in this way. For example, EntitySlime.
|
||||||
|
|
||||||
// We handle projectiles in their individual classes!
|
// We handle projectiles in their individual classes!
|
||||||
if (!(entity.getBukkitEntity() instanceof Projectile)) {
|
boolean isProjectile = damagesource instanceof EntityDamageSourceIndirect && ((EntityDamageSourceIndirect) damagesource).getProximateDamageSource().getBukkitEntity() instanceof Projectile;
|
||||||
|
|
||||||
|
if (!isProjectile) {
|
||||||
org.bukkit.entity.Entity damager = ((Entity) entity1).getBukkitEntity();
|
org.bukkit.entity.Entity damager = ((Entity) entity1).getBukkitEntity();
|
||||||
org.bukkit.entity.Entity damagee = this.getBukkitEntity();
|
org.bukkit.entity.Entity damagee = this.getBukkitEntity();
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue