summaryrefslogtreecommitdiffstats
path: root/nms-patches
diff options
context:
space:
mode:
authorDemonWav <demonwav@gmail.com>2014-12-13 23:59:49 -0600
committerThinkofdeath <thinkofdeath@spigotmc.org>2014-12-15 13:54:01 +0000
commit55e592e542b6a0fd20e46987b7f4870bb7e85814 (patch)
tree965da33d9861e611c9280a68b5e3e712351bea30 /nms-patches
parent28f37a113c57b56f3b6340712b74af6be0959ebc (diff)
downloadcraftbukkit-55e592e542b6a0fd20e46987b7f4870bb7e85814.tar
craftbukkit-55e592e542b6a0fd20e46987b7f4870bb7e85814.tar.gz
craftbukkit-55e592e542b6a0fd20e46987b7f4870bb7e85814.tar.lz
craftbukkit-55e592e542b6a0fd20e46987b7f4870bb7e85814.tar.xz
craftbukkit-55e592e542b6a0fd20e46987b7f4870bb7e85814.zip
Don't decrement ItemStack when CreatureSpawnEvent is canceled - addresses SPIGOT-87
Diffstat (limited to 'nms-patches')
-rw-r--r--nms-patches/ItemMonsterEgg.patch17
1 files changed, 12 insertions, 5 deletions
diff --git a/nms-patches/ItemMonsterEgg.patch b/nms-patches/ItemMonsterEgg.patch
index a53df16b..39d62af2 100644
--- a/nms-patches/ItemMonsterEgg.patch
+++ b/nms-patches/ItemMonsterEgg.patch
@@ -1,5 +1,5 @@
---- ../work/decompile-8eb82bde//net/minecraft/server/ItemMonsterEgg.java 2014-12-03 10:52:09.804159084 +0000
-+++ src/main/java/net/minecraft/server/ItemMonsterEgg.java 2014-12-03 10:51:53.380159449 +0000
+--- ../work/decompile-8eb82bde/net/minecraft/server/ItemMonsterEgg.java 2014-12-15 13:53:30.086979118 +0000
++++ src/main/java/net/minecraft/server/ItemMonsterEgg.java 2014-12-15 13:53:30.086979118 +0000
@@ -19,7 +19,8 @@
}
@@ -23,12 +23,19 @@
if (!EntityTypes.eggInfo.containsKey(Integer.valueOf(i))) {
return null;
} else {
-@@ -123,7 +130,7 @@
+@@ -123,8 +130,13 @@
entityinsentient.aI = entityinsentient.yaw;
entityinsentient.aG = entityinsentient.yaw;
entityinsentient.prepare(world.E(new BlockPosition(entityinsentient)), (GroupDataEntity) null);
- world.addEntity(entity);
-+ world.addEntity(entity, spawnReason); // CraftBukkit
- entityinsentient.x();
+- entityinsentient.x();
++ // CraftBukkit start - don't return an entity when CreatureSpawnEvent is canceled
++ if (!world.addEntity(entity, spawnReason)) {
++ entity = null;
++ } else {
++ entityinsentient.x();
++ }
++ // CraftBukkit end
}
}
+