diff options
author | md_5 <git@md-5.net> | 2016-03-06 12:34:51 +1100 |
---|---|---|
committer | md_5 <git@md-5.net> | 2016-03-06 12:34:51 +1100 |
commit | 50b4cb8e723eb5b0a05fc5113ea3e9c5121bc6ea (patch) | |
tree | e100b4620909d604c05880e4508b73541730c929 /nms-patches/ItemStack.patch | |
parent | 92494d7dba6f49d95b7f5753c72fc3d831a4c0cf (diff) | |
download | craftbukkit-50b4cb8e723eb5b0a05fc5113ea3e9c5121bc6ea.tar craftbukkit-50b4cb8e723eb5b0a05fc5113ea3e9c5121bc6ea.tar.gz craftbukkit-50b4cb8e723eb5b0a05fc5113ea3e9c5121bc6ea.tar.lz craftbukkit-50b4cb8e723eb5b0a05fc5113ea3e9c5121bc6ea.tar.xz craftbukkit-50b4cb8e723eb5b0a05fc5113ea3e9c5121bc6ea.zip |
SPIGOT-1749 / MC-99075: Call updateInventory as a temporary workaround for cancelled BlockPlaceEvent
Diffstat (limited to 'nms-patches/ItemStack.patch')
-rw-r--r-- | nms-patches/ItemStack.patch | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/nms-patches/ItemStack.patch b/nms-patches/ItemStack.patch index b271b49b..422f1c2a 100644 --- a/nms-patches/ItemStack.patch +++ b/nms-patches/ItemStack.patch @@ -39,7 +39,7 @@ } -@@ -84,11 +101,129 @@ +@@ -84,11 +101,131 @@ } public EnumInteractionResult placeItem(EntityHuman entityhuman, World world, BlockPosition blockposition, EnumHand enumhand, EnumDirection enumdirection, float f, float f1, float f2) { @@ -104,6 +104,8 @@ + + if (placeEvent != null && (placeEvent.isCancelled() || !placeEvent.canBuild())) { + enuminteractionresult = EnumInteractionResult.FAIL; // cancel placement ++ // PAIL: Remove this when MC-99075 fixed ++ placeEvent.getPlayer().updateInventory(); + // revert back all captured blocks + for (BlockState blockstate : blocks) { + blockstate.update(true, false); @@ -170,7 +172,7 @@ return enuminteractionresult; } -@@ -112,7 +247,7 @@ +@@ -112,7 +249,7 @@ nbttagcompound.setByte("Count", (byte) this.count); nbttagcompound.setShort("Damage", (short) this.damage); if (this.tag != null) { @@ -179,7 +181,7 @@ } return nbttagcompound; -@@ -121,13 +256,18 @@ +@@ -121,13 +258,18 @@ public void c(NBTTagCompound nbttagcompound) { this.item = Item.d(nbttagcompound.getString("id")); this.count = nbttagcompound.getByte("Count"); @@ -199,7 +201,7 @@ if (this.item != null) { this.item.a(this.tag); } -@@ -164,9 +304,29 @@ +@@ -164,9 +306,29 @@ } public void setData(int i) { @@ -230,7 +232,7 @@ } } -@@ -216,6 +376,12 @@ +@@ -216,6 +378,12 @@ this.count = 0; } @@ -243,7 +245,7 @@ this.damage = 0; } -@@ -513,6 +679,7 @@ +@@ -513,6 +681,7 @@ public void setItem(Item item) { this.item = item; |