2015-05-25 12:37:24 +02:00
|
|
|
--- a/net/minecraft/server/EntityProjectile.java
|
|
|
|
+++ b/net/minecraft/server/EntityProjectile.java
|
2019-04-23 04:00:00 +02:00
|
|
|
@@ -32,6 +32,7 @@
|
2018-07-15 02:00:00 +02:00
|
|
|
this(entitytypes, entityliving.locX, entityliving.locY + (double) entityliving.getHeadHeight() - 0.10000000149011612D, entityliving.locZ, world);
|
2014-11-25 22:32:16 +01:00
|
|
|
this.shooter = entityliving;
|
2018-07-15 02:00:00 +02:00
|
|
|
this.shooterId = entityliving.getUniqueID();
|
2014-11-25 22:32:16 +01:00
|
|
|
+ this.projectileSource = (org.bukkit.entity.LivingEntity) entityliving.getBukkitEntity(); // CraftBukkit
|
2016-02-29 22:32:46 +01:00
|
|
|
}
|
|
|
|
|
2019-04-23 04:00:00 +02:00
|
|
|
public void a(Entity entity, float f, float f1, float f2, float f3, float f4) {
|
|
|
|
@@ -86,7 +87,7 @@
|
|
|
|
break;
|
|
|
|
}
|
|
|
|
|
|
|
|
- if (this.shooter != null && this.ticksLived < 2 && this.as == null) {
|
|
|
|
+ if (this.shooter != null && this.ticksLived < 2 && this.as == null && this.shooter == entity) { // CraftBukkit - MC-88491
|
|
|
|
this.as = entity;
|
|
|
|
this.at = 3;
|
|
|
|
break;
|
|
|
|
@@ -106,6 +107,11 @@
|
|
|
|
this.c(((MovingObjectPositionBlock) movingobjectposition).getBlockPosition());
|
2014-11-25 22:32:16 +01:00
|
|
|
} else {
|
|
|
|
this.a(movingobjectposition);
|
|
|
|
+ // CraftBukkit start
|
|
|
|
+ if (this.dead) {
|
2016-11-28 02:47:01 +01:00
|
|
|
+ org.bukkit.craftbukkit.event.CraftEventFactory.callProjectileHitEvent(this, movingobjectposition);
|
2014-11-25 22:32:16 +01:00
|
|
|
+ }
|
|
|
|
+ // CraftBukkit end
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|