diff options
author | Andrew Ardill <andrew.ardill@gmail.com> | 2011-12-13 01:40:35 +1100 |
---|---|---|
committer | Andrew Ardill <andrew.ardill@gmail.com> | 2011-12-13 01:46:55 +1100 |
commit | 82965eb10f66b84273f61e29b7548c215ebd4fc6 (patch) | |
tree | 098d994a875c754275f60e17fe3f22c47378ff78 /src/main/java/net/minecraft/server/ItemBucket.java | |
parent | d34e2894347f780ed6f27f745a88688000dc3615 (diff) | |
download | craftbukkit-82965eb10f66b84273f61e29b7548c215ebd4fc6.tar craftbukkit-82965eb10f66b84273f61e29b7548c215ebd4fc6.tar.gz craftbukkit-82965eb10f66b84273f61e29b7548c215ebd4fc6.tar.lz craftbukkit-82965eb10f66b84273f61e29b7548c215ebd4fc6.tar.xz craftbukkit-82965eb10f66b84273f61e29b7548c215ebd4fc6.zip |
Stop converting ItemStack to nms ItemStack by hand
This should fix many issues with enchantments being lost, as the method used takes care of enchantments.
Additionally, use the new nms ItemStack constructor in places where appropriate.
Fixes (at least part of) BUKKIT-7. Need to identify any further places to fix.
Diffstat (limited to 'src/main/java/net/minecraft/server/ItemBucket.java')
-rw-r--r-- | src/main/java/net/minecraft/server/ItemBucket.java | 23 |
1 files changed, 5 insertions, 18 deletions
diff --git a/src/main/java/net/minecraft/server/ItemBucket.java b/src/main/java/net/minecraft/server/ItemBucket.java index 2eb6104d..4b6a2422 100644 --- a/src/main/java/net/minecraft/server/ItemBucket.java +++ b/src/main/java/net/minecraft/server/ItemBucket.java @@ -54,13 +54,10 @@ public class ItemBucket extends Item { if (entityhuman.abilities.canInstantlyBuild) { return itemstack; } - - CraftItemStack itemInHand = (CraftItemStack) event.getItemStack(); - byte data = itemInHand.getData() == null ? (byte) 0 : itemInHand.getData().getData(); // CraftBukkit end world.setTypeId(i, j, k, 0); - return new ItemStack(itemInHand.getTypeId(), itemInHand.getAmount(), data); // CraftBukkit + return CraftItemStack.createNMSItemStack(event.getItemStack()); // CraftBukkit } if (world.getMaterial(i, j, k) == Material.LAVA && world.getData(i, j, k) == 0) { @@ -74,13 +71,10 @@ public class ItemBucket extends Item { if (entityhuman.abilities.canInstantlyBuild) { return itemstack; } - - CraftItemStack itemInHand = (CraftItemStack) event.getItemStack(); - byte data = itemInHand.getData() == null ? (byte) 0 : itemInHand.getData().getData(); // CraftBukkit end world.setTypeId(i, j, k, 0); - return new ItemStack(itemInHand.getTypeId(), itemInHand.getAmount(), data); // CraftBukkit + return CraftItemStack.createNMSItemStack(event.getItemStack()); // CraftBukkit } } else { if (this.a < 0) { @@ -91,9 +85,7 @@ public class ItemBucket extends Item { return itemstack; } - CraftItemStack itemInHand = (CraftItemStack) event.getItemStack(); - byte data = itemInHand.getData() == null ? (byte) 0 : itemInHand.getData().getData(); - return new ItemStack(itemInHand.getTypeId(), itemInHand.getAmount(), data); + return CraftItemStack.createNMSItemStack(event.getItemStack()); } int clickedX = i, clickedY = j, clickedZ = k; @@ -151,10 +143,7 @@ public class ItemBucket extends Item { } // CraftBukkit start - CraftItemStack itemInHand = (CraftItemStack) event.getItemStack(); - byte data = itemInHand.getData() == null ? (byte) 0 : itemInHand.getData().getData(); - - return new ItemStack(itemInHand.getTypeId(), itemInHand.getAmount(), data); + return CraftItemStack.createNMSItemStack(event.getItemStack()); // CraftBukkit end } } @@ -167,9 +156,7 @@ public class ItemBucket extends Item { return itemstack; } - CraftItemStack itemInHand = (CraftItemStack) event.getItemStack(); - byte data = itemInHand.getData() == null ? (byte) 0 : itemInHand.getData().getData(); - return new ItemStack(itemInHand.getTypeId(), itemInHand.getAmount(), data); + return CraftItemStack.createNMSItemStack(event.getItemStack()); // CraftBukkit end } |