From 00c42078746386c3b9ca8c7f9f721aaf7ace31ec Mon Sep 17 00:00:00 2001 From: Thinkofdeath Date: Fri, 13 Feb 2015 21:51:02 +0000 Subject: [PATCH] Fix entity activation range for fireworks and items --- .../0015-Entity-Activation-Range.patch | 35 ++++++++++++++++++- 1 file changed, 34 insertions(+), 1 deletion(-) diff --git a/CraftBukkit-Patches/0015-Entity-Activation-Range.patch b/CraftBukkit-Patches/0015-Entity-Activation-Range.patch index 9476aeb49..51e745aef 100644 --- a/CraftBukkit-Patches/0015-Entity-Activation-Range.patch +++ b/CraftBukkit-Patches/0015-Entity-Activation-Range.patch @@ -136,7 +136,7 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000 + @Override + public void inactiveTick() + { -+ this.ticksFlown += 19; ++ this.ticksFlown += 1; + super.inactiveTick(); + } + // Spigot End @@ -144,6 +144,39 @@ index 0000000000000000000000000000000000000000..00000000000000000000000000000000 public EntityFireworks(World world) { super(world); this.a(0.25F, 0.25F); +diff --git a/src/main/java/net/minecraft/server/EntityItem.java b/src/main/java/net/minecraft/server/EntityItem.java +index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 +--- a/src/main/java/net/minecraft/server/EntityItem.java ++++ b/src/main/java/net/minecraft/server/EntityItem.java +@@ -0,0 +0,0 @@ public class EntityItem extends Entity { + } + } + ++ // Spigot start - copied from above ++ @Override ++ public void inactiveTick() { ++ // CraftBukkit start - Use wall time for pickup and despawn timers ++ int elapsedTicks = MinecraftServer.currentTick - this.lastTick; ++ this.pickupDelay -= elapsedTicks; ++ this.age += elapsedTicks; ++ this.lastTick = MinecraftServer.currentTick; ++ // CraftBukkit end ++ ++ if (!this.world.isStatic && this.age >= world.spigotConfig.itemDespawnRate) { // Spigot ++ // CraftBukkit start - fire ItemDespawnEvent ++ if (org.bukkit.craftbukkit.event.CraftEventFactory.callItemDespawnEvent(this).isCancelled()) { ++ this.age = 0; ++ return; ++ } ++ // CraftBukkit end ++ this.die(); ++ } ++ } ++ // Spigot end ++ + private void w() { + // Spigot start + double radius = world.spigotConfig.itemMerge; diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644 --- a/src/main/java/net/minecraft/server/EntityLiving.java