Fixed Enchantments being lost on inventory.setItem

Dieser Commit ist enthalten in:
Nathan Adams 2011-11-28 05:17:05 +00:00
Ursprung 99771b7b72
Commit fe3756f7a0
2 geänderte Dateien mit 6 neuen und 2 gelöschten Zeilen

Datei anzeigen

@ -53,13 +53,13 @@ public class CraftInventory implements org.bukkit.inventory.Inventory {
if (item == null || item.getTypeId() <= 0) { if (item == null || item.getTypeId() <= 0) {
mcItems[i] = null; mcItems[i] = null;
} else { } else {
mcItems[i] = new net.minecraft.server.ItemStack(item.getTypeId(), item.getAmount(), item.getDurability()); mcItems[i] = CraftItemStack.createNMSItemStack(item);
} }
} }
} }
public void setItem(int index, ItemStack item) { public void setItem(int index, ItemStack item) {
getInventory().setItem(index, (item == null ? null : new net.minecraft.server.ItemStack(item.getTypeId(), item.getAmount(), item.getDurability()))); getInventory().setItem(index, (item == null ? null : CraftItemStack.createNMSItemStack(item)));
} }
public boolean contains(int materialId) { public boolean contains(int materialId) {

Datei anzeigen

@ -207,4 +207,8 @@ public class CraftItemStack extends ItemStack {
public net.minecraft.server.ItemStack getHandle() { public net.minecraft.server.ItemStack getHandle() {
return item; return item;
} }
public static net.minecraft.server.ItemStack createNMSItemStack(ItemStack original) {
return new CraftItemStack(original).getHandle();
}
} }