summaryrefslogtreecommitdiffstats
path: root/nms-patches/EntityEnderDragon.patch
diff options
context:
space:
mode:
Diffstat (limited to 'nms-patches/EntityEnderDragon.patch')
-rw-r--r--nms-patches/EntityEnderDragon.patch14
1 files changed, 5 insertions, 9 deletions
diff --git a/nms-patches/EntityEnderDragon.patch b/nms-patches/EntityEnderDragon.patch
index 2e15e194..9572a005 100644
--- a/nms-patches/EntityEnderDragon.patch
+++ b/nms-patches/EntityEnderDragon.patch
@@ -18,12 +18,8 @@
public class EntityEnderDragon extends EntityInsentient implements IComplex, IMonster {
public double a;
-@@ -24,9 +35,10 @@
- public float bv;
- public boolean bw;
- public boolean bx;
-- private Entity bA;
-+ public Entity bA; // CraftBukkit - public // PAIL: Target
+@@ -27,6 +38,7 @@
+ public Entity target;
public int by;
public EntityEnderCrystal bz;
+ private Explosion explosionSource = new Explosion(null, this, Double.NaN, Double.NaN, Double.NaN, Float.NaN, true, true); // CraftBukkit - reusable source for CraftTNTPrimed.getSource()
@@ -57,7 +53,7 @@
}
if (this.random.nextInt(2) == 0 && !arraylist.isEmpty()) {
-- this.bA = (Entity) arraylist.get(this.random.nextInt(arraylist.size()));
+- this.target = (Entity) arraylist.get(this.random.nextInt(arraylist.size()));
+ // CraftBukkit start
+ Entity target = (Entity) this.world.players.get(this.random.nextInt(this.world.players.size()));
+ EntityTargetEvent event = new EntityTargetEvent(this.getBukkitEntity(), target.getBukkitEntity(), EntityTargetEvent.TargetReason.RANDOM_TARGET);
@@ -65,9 +61,9 @@
+
+ if (!event.isCancelled()) {
+ if (event.getTarget() == null) {
-+ this.bA = null;
++ this.target = null;
+ } else {
-+ this.bA = ((org.bukkit.craftbukkit.entity.CraftEntity) event.getTarget()).getHandle();
++ this.target = ((org.bukkit.craftbukkit.entity.CraftEntity) event.getTarget()).getHandle();
+ }
+ }
+ // CraftBukkit end