summaryrefslogtreecommitdiffstats
path: root/src/main/java/net/minecraft/server
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/net/minecraft/server')
-rw-r--r--src/main/java/net/minecraft/server/ContainerEnchantTable.java4
-rw-r--r--src/main/java/net/minecraft/server/DispenseBehaviorBoat.java8
-rw-r--r--src/main/java/net/minecraft/server/DispenseBehaviorEmptyBucket.java8
-rw-r--r--src/main/java/net/minecraft/server/DispenseBehaviorFilledBucket.java10
-rw-r--r--src/main/java/net/minecraft/server/DispenseBehaviorFireball.java8
-rw-r--r--src/main/java/net/minecraft/server/DispenseBehaviorItem.java10
-rw-r--r--src/main/java/net/minecraft/server/DispenseBehaviorMinecart.java10
-rw-r--r--src/main/java/net/minecraft/server/DispenseBehaviorMonsterEgg.java10
-rw-r--r--src/main/java/net/minecraft/server/DispenseBehaviorProjectile.java10
-rw-r--r--src/main/java/net/minecraft/server/EntityCow.java4
-rw-r--r--src/main/java/net/minecraft/server/EntityGhast.java4
-rw-r--r--src/main/java/net/minecraft/server/EntityIronGolem.java4
-rw-r--r--src/main/java/net/minecraft/server/EntityLiving.java2
-rw-r--r--src/main/java/net/minecraft/server/EntityMinecart.java2
-rw-r--r--src/main/java/net/minecraft/server/EntityPigZombie.java6
-rw-r--r--src/main/java/net/minecraft/server/EntityPlayer.java4
-rw-r--r--src/main/java/net/minecraft/server/EntitySkeleton.java2
-rw-r--r--src/main/java/net/minecraft/server/ItemBucket.java14
-rw-r--r--src/main/java/net/minecraft/server/ItemStack.java15
-rw-r--r--src/main/java/net/minecraft/server/NBTTagCompound.java6
-rw-r--r--src/main/java/net/minecraft/server/NetServerHandler.java10
-rw-r--r--src/main/java/net/minecraft/server/ShapedRecipes.java2
-rw-r--r--src/main/java/net/minecraft/server/ShapelessRecipes.java2
-rw-r--r--src/main/java/net/minecraft/server/TileEntityFurnace.java8
24 files changed, 72 insertions, 91 deletions
diff --git a/src/main/java/net/minecraft/server/ContainerEnchantTable.java b/src/main/java/net/minecraft/server/ContainerEnchantTable.java
index bb5f1079..9f660607 100644
--- a/src/main/java/net/minecraft/server/ContainerEnchantTable.java
+++ b/src/main/java/net/minecraft/server/ContainerEnchantTable.java
@@ -124,7 +124,7 @@ public class ContainerEnchantTable extends Container {
}
// CraftBukkit start
- CraftItemStack item = new CraftItemStack(itemstack);
+ CraftItemStack item = CraftItemStack.asCraftMirror(itemstack);
PrepareItemEnchantEvent event = new PrepareItemEnchantEvent(player, this.getBukkitView(), this.world.getWorld().getBlockAt(this.x, this.y, this.z), item, this.costs, i);
this.world.getServer().getPluginManager().callEvent(event);
@@ -160,7 +160,7 @@ public class ContainerEnchantTable extends Container {
EnchantmentInstance instance = (EnchantmentInstance) obj;
enchants.put(org.bukkit.enchantments.Enchantment.getById(instance.enchantment.id), instance.level);
}
- CraftItemStack item = new CraftItemStack(itemstack);
+ CraftItemStack item = CraftItemStack.asCraftMirror(itemstack);
EnchantItemEvent event = new EnchantItemEvent((Player) entityhuman.getBukkitEntity(), this.getBukkitView(), this.world.getWorld().getBlockAt(this.x, this.y, this.z), item, this.costs[i], enchants, i);
this.world.getServer().getPluginManager().callEvent(event);
diff --git a/src/main/java/net/minecraft/server/DispenseBehaviorBoat.java b/src/main/java/net/minecraft/server/DispenseBehaviorBoat.java
index dfaf09ed..2840aa3e 100644
--- a/src/main/java/net/minecraft/server/DispenseBehaviorBoat.java
+++ b/src/main/java/net/minecraft/server/DispenseBehaviorBoat.java
@@ -41,9 +41,9 @@ public class DispenseBehaviorBoat extends DispenseBehaviorItem {
// CraftBukkit start
ItemStack itemstack1 = itemstack.a(1);
org.bukkit.block.Block block = world.getWorld().getBlockAt(isourceblock.getBlockX(), isourceblock.getBlockY(), isourceblock.getBlockZ());
- org.bukkit.inventory.ItemStack bukkitItem = new CraftItemStack(itemstack1).clone();
+ CraftItemStack craftItem = CraftItemStack.asCraftMirror(itemstack1);
- BlockDispenseEvent event = new BlockDispenseEvent(block, bukkitItem, new org.bukkit.util.Vector(d0, d1 + d3, d2));
+ BlockDispenseEvent event = new BlockDispenseEvent(block, craftItem.clone(), new org.bukkit.util.Vector(d0, d1 + d3, d2));
if (!BlockDispenser.eventFired) {
world.getServer().getPluginManager().callEvent(event);
}
@@ -53,10 +53,10 @@ public class DispenseBehaviorBoat extends DispenseBehaviorItem {
return itemstack;
}
- if (!event.getItem().equals(bukkitItem)) {
+ if (!event.getItem().equals(craftItem)) {
itemstack.count++;
// Chain to handler for new item
- ItemStack eventStack = CraftItemStack.createNMSItemStack(event.getItem());
+ ItemStack eventStack = CraftItemStack.asNMSCopy(event.getItem());
IDispenseBehavior idispensebehavior = (IDispenseBehavior) BlockDispenser.a.a(eventStack.getItem());
if (idispensebehavior != IDispenseBehavior.a && idispensebehavior != this) {
idispensebehavior.a(isourceblock, eventStack);
diff --git a/src/main/java/net/minecraft/server/DispenseBehaviorEmptyBucket.java b/src/main/java/net/minecraft/server/DispenseBehaviorEmptyBucket.java
index 31348bd6..b381e223 100644
--- a/src/main/java/net/minecraft/server/DispenseBehaviorEmptyBucket.java
+++ b/src/main/java/net/minecraft/server/DispenseBehaviorEmptyBucket.java
@@ -38,9 +38,9 @@ public class DispenseBehaviorEmptyBucket extends DispenseBehaviorItem {
// CraftBukkit start
org.bukkit.block.Block block = world.getWorld().getBlockAt(i, j, k);
- org.bukkit.inventory.ItemStack bukkitItem = new CraftItemStack(itemstack).clone();
+ CraftItemStack craftItem = CraftItemStack.asCraftMirror(itemstack);
- BlockDispenseEvent event = new BlockDispenseEvent(block, bukkitItem, new org.bukkit.util.Vector(0, 0, 0));
+ BlockDispenseEvent event = new BlockDispenseEvent(block, craftItem.clone(), new org.bukkit.util.Vector(0, 0, 0));
if (!BlockDispenser.eventFired) {
world.getServer().getPluginManager().callEvent(event);
}
@@ -49,9 +49,9 @@ public class DispenseBehaviorEmptyBucket extends DispenseBehaviorItem {
return itemstack;
}
- if (!event.getItem().equals(bukkitItem)) {
+ if (!event.getItem().equals(craftItem)) {
// Chain to handler for new item
- ItemStack eventStack = CraftItemStack.createNMSItemStack(event.getItem());
+ ItemStack eventStack = CraftItemStack.asNMSCopy(event.getItem());
IDispenseBehavior idispensebehavior = (IDispenseBehavior) BlockDispenser.a.a(eventStack.getItem());
if (idispensebehavior != IDispenseBehavior.a && idispensebehavior != this) {
idispensebehavior.a(isourceblock, eventStack);
diff --git a/src/main/java/net/minecraft/server/DispenseBehaviorFilledBucket.java b/src/main/java/net/minecraft/server/DispenseBehaviorFilledBucket.java
index 8f1d9a84..309c1e62 100644
--- a/src/main/java/net/minecraft/server/DispenseBehaviorFilledBucket.java
+++ b/src/main/java/net/minecraft/server/DispenseBehaviorFilledBucket.java
@@ -29,9 +29,9 @@ public class DispenseBehaviorFilledBucket extends DispenseBehaviorItem {
int k2 = k + enumfacing.e();
if (world.isEmpty(i2, j, k2) || world.getMaterial(i2, j, k2).isBuildable()) {
org.bukkit.block.Block block = world.getWorld().getBlockAt(i, j, k);
- org.bukkit.inventory.ItemStack bukkitItem = new CraftItemStack(itemstack).clone();
+ CraftItemStack craftItem = CraftItemStack.asCraftMirror(itemstack);
- BlockDispenseEvent event = new BlockDispenseEvent(block, bukkitItem, new org.bukkit.util.Vector(0, 0, 0));
+ BlockDispenseEvent event = new BlockDispenseEvent(block, craftItem.clone(), new org.bukkit.util.Vector(0, 0, 0));
if (!BlockDispenser.eventFired) {
world.getServer().getPluginManager().callEvent(event);
}
@@ -40,9 +40,9 @@ public class DispenseBehaviorFilledBucket extends DispenseBehaviorItem {
return itemstack;
}
- if (!event.getItem().equals(bukkitItem)) {
+ if (!event.getItem().equals(craftItem)) {
// Chain to handler for new item
- ItemStack eventStack = CraftItemStack.createNMSItemStack(event.getItem());
+ ItemStack eventStack = CraftItemStack.asNMSCopy(event.getItem());
IDispenseBehavior idispensebehavior = (IDispenseBehavior) BlockDispenser.a.a(eventStack.getItem());
if (idispensebehavior != IDispenseBehavior.a && idispensebehavior != this) {
idispensebehavior.a(isourceblock, eventStack);
@@ -50,7 +50,7 @@ public class DispenseBehaviorFilledBucket extends DispenseBehaviorItem {
}
}
- itembucket = (ItemBucket) CraftItemStack.createNMSItemStack(event.getItem()).getItem();
+ itembucket = (ItemBucket) CraftItemStack.asNMSCopy(event.getItem()).getItem();
}
// CraftBukkit end
diff --git a/src/main/java/net/minecraft/server/DispenseBehaviorFireball.java b/src/main/java/net/minecraft/server/DispenseBehaviorFireball.java
index cc0bf8bb..9eb4ca2b 100644
--- a/src/main/java/net/minecraft/server/DispenseBehaviorFireball.java
+++ b/src/main/java/net/minecraft/server/DispenseBehaviorFireball.java
@@ -30,9 +30,9 @@ public class DispenseBehaviorFireball extends DispenseBehaviorItem {
// CraftBukkit start
ItemStack itemstack1 = itemstack.a(1);
org.bukkit.block.Block block = world.getWorld().getBlockAt(isourceblock.getBlockX(), isourceblock.getBlockY(), isourceblock.getBlockZ());
- org.bukkit.inventory.ItemStack bukkitItem = new CraftItemStack(itemstack1).clone();
+ CraftItemStack craftItem = CraftItemStack.asCraftMirror(itemstack1);
- BlockDispenseEvent event = new BlockDispenseEvent(block, bukkitItem, new org.bukkit.util.Vector(d3, d4, d5));
+ BlockDispenseEvent event = new BlockDispenseEvent(block, craftItem.clone(), new org.bukkit.util.Vector(d3, d4, d5));
if (!BlockDispenser.eventFired) {
world.getServer().getPluginManager().callEvent(event);
}
@@ -42,10 +42,10 @@ public class DispenseBehaviorFireball extends DispenseBehaviorItem {
return itemstack;
}
- if (!event.getItem().equals(bukkitItem)) {
+ if (!event.getItem().equals(craftItem)) {
itemstack.count++;
// Chain to handler for new item
- ItemStack eventStack = CraftItemStack.createNMSItemStack(event.getItem());
+ ItemStack eventStack = CraftItemStack.asNMSCopy(event.getItem());
IDispenseBehavior idispensebehavior = (IDispenseBehavior) BlockDispenser.a.a(eventStack.getItem());
if (idispensebehavior != IDispenseBehavior.a && idispensebehavior != this) {
idispensebehavior.a(isourceblock, eventStack);
diff --git a/src/main/java/net/minecraft/server/DispenseBehaviorItem.java b/src/main/java/net/minecraft/server/DispenseBehaviorItem.java
index 1337fefe..1e7161ac 100644
--- a/src/main/java/net/minecraft/server/DispenseBehaviorItem.java
+++ b/src/main/java/net/minecraft/server/DispenseBehaviorItem.java
@@ -50,9 +50,9 @@ public class DispenseBehaviorItem implements IDispenseBehavior {
// CraftBukkit start
org.bukkit.block.Block block = world.getWorld().getBlockAt(isourceblock.getBlockX(), isourceblock.getBlockY(), isourceblock.getBlockZ());
- org.bukkit.inventory.ItemStack bukkitItem = new CraftItemStack(itemstack).clone();
+ CraftItemStack craftItem = CraftItemStack.asCraftMirror(itemstack);
- BlockDispenseEvent event = new BlockDispenseEvent(block, bukkitItem, new org.bukkit.util.Vector(entityitem.motX, entityitem.motY, entityitem.motZ));
+ BlockDispenseEvent event = new BlockDispenseEvent(block, craftItem.clone(), new org.bukkit.util.Vector(entityitem.motX, entityitem.motY, entityitem.motZ));
if (!BlockDispenser.eventFired) {
world.getServer().getPluginManager().callEvent(event);
}
@@ -61,14 +61,14 @@ public class DispenseBehaviorItem implements IDispenseBehavior {
return false;
}
- entityitem.itemStack = CraftItemStack.createNMSItemStack(event.getItem());
+ entityitem.itemStack = CraftItemStack.asNMSCopy(event.getItem());
entityitem.motX = event.getVelocity().getX();
entityitem.motY = event.getVelocity().getY();
entityitem.motZ = event.getVelocity().getZ();
- if (!event.getItem().equals(bukkitItem)) {
+ if (!event.getItem().equals(craftItem)) {
// Chain to handler for new item
- ItemStack eventStack = CraftItemStack.createNMSItemStack(event.getItem());
+ ItemStack eventStack = CraftItemStack.asNMSCopy(event.getItem());
IDispenseBehavior idispensebehavior = (IDispenseBehavior) BlockDispenser.a.a(eventStack.getItem());
if (idispensebehavior != IDispenseBehavior.a && idispensebehavior.getClass() != DispenseBehaviorItem.class) {
idispensebehavior.a(isourceblock, eventStack);
diff --git a/src/main/java/net/minecraft/server/DispenseBehaviorMinecart.java b/src/main/java/net/minecraft/server/DispenseBehaviorMinecart.java
index cc92846e..1ec5310e 100644
--- a/src/main/java/net/minecraft/server/DispenseBehaviorMinecart.java
+++ b/src/main/java/net/minecraft/server/DispenseBehaviorMinecart.java
@@ -41,9 +41,9 @@ public class DispenseBehaviorMinecart extends DispenseBehaviorItem {
// CraftBukkit start
ItemStack itemstack1 = itemstack.a(1);
org.bukkit.block.Block block = world.getWorld().getBlockAt(isourceblock.getBlockX(), isourceblock.getBlockY(), isourceblock.getBlockZ());
- org.bukkit.inventory.ItemStack bukkitItem = new CraftItemStack(itemstack1).clone();
+ CraftItemStack craftItem = CraftItemStack.asCraftMirror(itemstack1);
- BlockDispenseEvent event = new BlockDispenseEvent(block, bukkitItem, new org.bukkit.util.Vector(d0, d1 + d3, d2));
+ BlockDispenseEvent event = new BlockDispenseEvent(block, craftItem.clone(), new org.bukkit.util.Vector(d0, d1 + d3, d2));
if (!BlockDispenser.eventFired) {
world.getServer().getPluginManager().callEvent(event);
}
@@ -53,10 +53,10 @@ public class DispenseBehaviorMinecart extends DispenseBehaviorItem {
return itemstack;
}
- if (!event.getItem().equals(bukkitItem)) {
+ if (!event.getItem().equals(craftItem)) {
itemstack.count++;
// Chain to handler for new item
- ItemStack eventStack = CraftItemStack.createNMSItemStack(event.getItem());
+ ItemStack eventStack = CraftItemStack.asNMSCopy(event.getItem());
IDispenseBehavior idispensebehavior = (IDispenseBehavior) BlockDispenser.a.a(eventStack.getItem());
if (idispensebehavior != IDispenseBehavior.a && idispensebehavior != this) {
idispensebehavior.a(isourceblock, eventStack);
@@ -64,7 +64,7 @@ public class DispenseBehaviorMinecart extends DispenseBehaviorItem {
}
}
- itemstack1 = CraftItemStack.createNMSItemStack(event.getItem());
+ itemstack1 = CraftItemStack.asNMSCopy(event.getItem());
EntityMinecart entityminecart = new EntityMinecart(world, event.getVelocity().getX(), event.getVelocity().getY(), event.getVelocity().getZ(), ((ItemMinecart) itemstack1.getItem()).a);
// CraftBukkit end
diff --git a/src/main/java/net/minecraft/server/DispenseBehaviorMonsterEgg.java b/src/main/java/net/minecraft/server/DispenseBehaviorMonsterEgg.java
index 25e21d25..66ad86ec 100644
--- a/src/main/java/net/minecraft/server/DispenseBehaviorMonsterEgg.java
+++ b/src/main/java/net/minecraft/server/DispenseBehaviorMonsterEgg.java
@@ -23,9 +23,9 @@ public class DispenseBehaviorMonsterEgg extends DispenseBehaviorItem {
World world = isourceblock.k();
ItemStack itemstack1 = itemstack.a(1);
org.bukkit.block.Block block = world.getWorld().getBlockAt(isourceblock.getBlockX(), isourceblock.getBlockY(), isourceblock.getBlockZ());
- org.bukkit.inventory.ItemStack bukkitItem = new CraftItemStack(itemstack1).clone();
+ CraftItemStack craftItem = CraftItemStack.asCraftMirror(itemstack1);
- BlockDispenseEvent event = new BlockDispenseEvent(block, bukkitItem, new org.bukkit.util.Vector(d0, d1, d2));
+ BlockDispenseEvent event = new BlockDispenseEvent(block, craftItem.clone(), new org.bukkit.util.Vector(d0, d1, d2));
if (!BlockDispenser.eventFired) {
world.getServer().getPluginManager().callEvent(event);
}
@@ -35,10 +35,10 @@ public class DispenseBehaviorMonsterEgg extends DispenseBehaviorItem {
return itemstack;
}
- if (!event.getItem().equals(bukkitItem)) {
+ if (!event.getItem().equals(craftItem)) {
itemstack.count++;
// Chain to handler for new item
- ItemStack eventStack = CraftItemStack.createNMSItemStack(event.getItem());
+ ItemStack eventStack = CraftItemStack.asNMSCopy(event.getItem());
IDispenseBehavior idispensebehavior = (IDispenseBehavior) BlockDispenser.a.a(eventStack.getItem());
if (idispensebehavior != IDispenseBehavior.a && idispensebehavior != this) {
idispensebehavior.a(isourceblock, eventStack);
@@ -46,7 +46,7 @@ public class DispenseBehaviorMonsterEgg extends DispenseBehaviorItem {
}
}
- itemstack1 = CraftItemStack.createNMSItemStack(event.getItem());
+ itemstack1 = CraftItemStack.asNMSCopy(event.getItem());
ItemMonsterEgg.a(isourceblock.k(), itemstack1.getData(), event.getVelocity().getX(), event.getVelocity().getY(), event.getVelocity().getZ());
// itemstack.a(1); // Handled during event processing
// CraftBukkit end
diff --git a/src/main/java/net/minecraft/server/DispenseBehaviorProjectile.java b/src/main/java/net/minecraft/server/DispenseBehaviorProjectile.java
index 3968dd0c..984b1fc0 100644
--- a/src/main/java/net/minecraft/server/DispenseBehaviorProjectile.java
+++ b/src/main/java/net/minecraft/server/DispenseBehaviorProjectile.java
@@ -18,9 +18,9 @@ public abstract class DispenseBehaviorProjectile extends DispenseBehaviorItem {
// CraftBukkit start
ItemStack itemstack1 = itemstack.a(1);
org.bukkit.block.Block block = world.getWorld().getBlockAt(isourceblock.getBlockX(), isourceblock.getBlockY(), isourceblock.getBlockZ());
- org.bukkit.inventory.ItemStack bukkitItem = new CraftItemStack(itemstack1).clone();
+ CraftItemStack craftItem = CraftItemStack.asCraftMirror(itemstack1);
- BlockDispenseEvent event = new BlockDispenseEvent(block, bukkitItem, new org.bukkit.util.Vector((double) enumfacing.c(), 0.10000000149011612D, (double) enumfacing.e()));
+ BlockDispenseEvent event = new BlockDispenseEvent(block, craftItem.clone(), new org.bukkit.util.Vector((double) enumfacing.c(), 0.10000000149011612D, (double) enumfacing.e()));
if (!BlockDispenser.eventFired) {
world.getServer().getPluginManager().callEvent(event);
}
@@ -30,13 +30,13 @@ public abstract class DispenseBehaviorProjectile extends DispenseBehaviorItem {
return itemstack;
}
- if (!event.getItem().equals(bukkitItem)) {
+ if (!event.getItem().equals(craftItem)) {
itemstack.count++;
// Chain to handler for new item
- ItemStack eventStack = CraftItemStack.createNMSItemStack(event.getItem());
+ ItemStack eventStack = CraftItemStack.asNMSCopy(event.getItem());
IDispenseBehavior idispensebehavior = (IDispenseBehavior) BlockDispenser.a.a(eventStack.getItem());
if (idispensebehavior != IDispenseBehavior.a && idispensebehavior != this) {
- idispensebehavior.a(isourceblock, CraftItemStack.createNMSItemStack(event.getItem()));
+ idispensebehavior.a(isourceblock, eventStack);
return itemstack;
}
}
diff --git a/src/main/java/net/minecraft/server/EntityCow.java b/src/main/java/net/minecraft/server/EntityCow.java
index cc512b1b..3bbdb2fa 100644
--- a/src/main/java/net/minecraft/server/EntityCow.java
+++ b/src/main/java/net/minecraft/server/EntityCow.java
@@ -88,9 +88,9 @@ public class EntityCow extends EntityAnimal {
}
if (--itemstack.count <= 0) {
- entityhuman.inventory.setItem(entityhuman.inventory.itemInHandIndex, CraftItemStack.createNMSItemStack(event.getItemStack()));
+ entityhuman.inventory.setItem(entityhuman.inventory.itemInHandIndex, CraftItemStack.asNMSCopy(event.getItemStack()));
} else if (!entityhuman.inventory.pickup(new ItemStack(Item.MILK_BUCKET))) {
- entityhuman.drop(CraftItemStack.createNMSItemStack(event.getItemStack()));
+ entityhuman.drop(CraftItemStack.asNMSCopy(event.getItemStack()));
}
// CraftBukkit end
diff --git a/src/main/java/net/minecraft/server/EntityGhast.java b/src/main/java/net/minecraft/server/EntityGhast.java
index 031ebb0e..3dc67c08 100644
--- a/src/main/java/net/minecraft/server/EntityGhast.java
+++ b/src/main/java/net/minecraft/server/EntityGhast.java
@@ -208,13 +208,13 @@ public class EntityGhast extends EntityFlying implements IMonster {
int k;
if (j > 0) {
- loot.add(new CraftItemStack(Item.GHAST_TEAR.id, j));
+ loot.add(CraftItemStack.asNewCraftStack(Item.GHAST_TEAR, j));
}
j = this.random.nextInt(3) + this.random.nextInt(1 + i);
if (j > 0) {
- loot.add(new CraftItemStack(Item.SULPHUR.id, j));
+ loot.add(CraftItemStack.asNewCraftStack(Item.SULPHUR, j));
}
org.bukkit.craftbukkit.event.CraftEventFactory.callEntityDeathEvent(this, loot);
diff --git a/src/main/java/net/minecraft/server/EntityIronGolem.java b/src/main/java/net/minecraft/server/EntityIronGolem.java
index 5b6ab93d..e6e260fa 100644
--- a/src/main/java/net/minecraft/server/EntityIronGolem.java
+++ b/src/main/java/net/minecraft/server/EntityIronGolem.java
@@ -150,13 +150,13 @@ public class EntityIronGolem extends EntityGolem {
int k;
if (j > 0) {
- loot.add(new CraftItemStack(Block.RED_ROSE.id, j));
+ loot.add(CraftItemStack.asNewCraftStack(Item.byId[Block.RED_ROSE.id], j));
}
k = 3 + this.random.nextInt(3);
if (k > 0) {
- loot.add(new CraftItemStack(Item.IRON_INGOT.id, k));
+ loot.add(CraftItemStack.asNewCraftStack(Item.IRON_INGOT, k));
}
org.bukkit.craftbukkit.event.CraftEventFactory.callEntityDeathEvent(this, loot);
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index 5f6a40bb..08ffc62c 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -894,7 +894,7 @@ public abstract class EntityLiving extends Entity {
if (k < 5) {
ItemStack itemstack = this.l(k <= 0 ? 1 : 0);
if (itemstack != null) {
- loot.add(new org.bukkit.craftbukkit.inventory.CraftItemStack(itemstack));
+ loot.add(org.bukkit.craftbukkit.inventory.CraftItemStack.asCraftMirror(itemstack));
}
}
}
diff --git a/src/main/java/net/minecraft/server/EntityMinecart.java b/src/main/java/net/minecraft/server/EntityMinecart.java
index 54c3584a..29edbc3d 100644
--- a/src/main/java/net/minecraft/server/EntityMinecart.java
+++ b/src/main/java/net/minecraft/server/EntityMinecart.java
@@ -188,7 +188,7 @@ public class EntityMinecart extends Entity implements IInventory {
itemstack.count -= k;
// CraftBukkit - include enchantments in the new itemstack
- EntityItem entityitem = new EntityItem(this.world, this.locX + (double) f, this.locY + (double) f1, this.locZ + (double) f2, new ItemStack(itemstack.id, k, itemstack.getData(), itemstack.getEnchantments()));
+ EntityItem entityitem = new EntityItem(this.world, this.locX + (double) f, this.locY + (double) f1, this.locZ + (double) f2, org.bukkit.craftbukkit.inventory.CraftItemStack.copyNMSStack(itemstack, k));
float f3 = 0.05F;
entityitem.motX = (double) ((float) this.random.nextGaussian() * f3);
diff --git a/src/main/java/net/minecraft/server/EntityPigZombie.java b/src/main/java/net/minecraft/server/EntityPigZombie.java
index 94c7ac00..d3bd681e 100644
--- a/src/main/java/net/minecraft/server/EntityPigZombie.java
+++ b/src/main/java/net/minecraft/server/EntityPigZombie.java
@@ -117,13 +117,13 @@ public class EntityPigZombie extends EntityZombie {
int j = this.random.nextInt(2 + i);
if (j > 0) {
- loot.add(new CraftItemStack(Item.ROTTEN_FLESH.id, j));
+ loot.add(CraftItemStack.asNewCraftStack(Item.ROTTEN_FLESH, j));
}
j = this.random.nextInt(2 + i);
if (j > 0) {
- loot.add(new CraftItemStack(Item.GOLD_NUGGET.id, j));
+ loot.add(CraftItemStack.asNewCraftStack(Item.GOLD_NUGGET, j));
}
// Determine rare item drops and add them to the loot
@@ -133,7 +133,7 @@ public class EntityPigZombie extends EntityZombie {
if (k < 5) {
ItemStack itemstack = this.l(k <= 0 ? 1 : 0);
if (itemstack != null) {
- loot.add(new CraftItemStack(itemstack));
+ loot.add(CraftItemStack.asCraftMirror(itemstack));
}
}
}
diff --git a/src/main/java/net/minecraft/server/EntityPlayer.java b/src/main/java/net/minecraft/server/EntityPlayer.java
index 35a679ad..775e988b 100644
--- a/src/main/java/net/minecraft/server/EntityPlayer.java
+++ b/src/main/java/net/minecraft/server/EntityPlayer.java
@@ -240,13 +240,13 @@ public class EntityPlayer extends EntityHuman implements ICrafting {
if (!keepInventory) {
for (int i = 0; i < this.inventory.items.length; ++i) {
if (this.inventory.items[i] != null) {
- loot.add(new CraftItemStack(this.inventory.items[i]));
+ loot.add(CraftItemStack.asCraftMirror(this.inventory.items[i]));
}
}
for (int i = 0; i < this.inventory.armor.length; ++i) {
if (this.inventory.armor[i] != null) {
- loot.add(new CraftItemStack(this.inventory.armor[i]));
+ loot.add(CraftItemStack.asCraftMirror(this.inventory.armor[i]));
}
}
}
diff --git a/src/main/java/net/minecraft/server/EntitySkeleton.java b/src/main/java/net/minecraft/server/EntitySkeleton.java
index 39296ae3..aba1e88c 100644
--- a/src/main/java/net/minecraft/server/EntitySkeleton.java
+++ b/src/main/java/net/minecraft/server/EntitySkeleton.java
@@ -167,7 +167,7 @@ public class EntitySkeleton extends EntityMonster implements IRangedEntity {
if (k < 5) {
ItemStack itemstack = this.l(k <= 0 ? 1 : 0);
if (itemstack != null) {
- loot.add(new org.bukkit.craftbukkit.inventory.CraftItemStack(itemstack));
+ loot.add(org.bukkit.craftbukkit.inventory.CraftItemStack.asCraftMirror(itemstack));
}
}
}
diff --git a/src/main/java/net/minecraft/server/ItemBucket.java b/src/main/java/net/minecraft/server/ItemBucket.java
index 5aa39216..9a1ee774 100644
--- a/src/main/java/net/minecraft/server/ItemBucket.java
+++ b/src/main/java/net/minecraft/server/ItemBucket.java
@@ -56,13 +56,13 @@ public class ItemBucket extends Item {
return itemstack;
}
- ItemStack result = CraftItemStack.createNMSItemStack(event.getItemStack()); // CraftBukkit - TODO: Check this stuff later... Not sure how this behavior should work
+ ItemStack result = CraftItemStack.asNMSCopy(event.getItemStack()); // CraftBukkit - TODO: Check this stuff later... Not sure how this behavior should work
if (--itemstack.count <= 0) {
return result; // CraftBukkit
}
if (!entityhuman.inventory.pickup(result)) { // CraftBukkit
- entityhuman.drop(CraftItemStack.createNMSItemStack(event.getItemStack())); // CraftBukkit
+ entityhuman.drop(CraftItemStack.asNMSCopy(event.getItemStack())); // CraftBukkit
}
return itemstack;
@@ -81,13 +81,13 @@ public class ItemBucket extends Item {
return itemstack;
}
- ItemStack result = CraftItemStack.createNMSItemStack(event.getItemStack()); // CraftBukkit - TODO: Check this stuff later... Not sure how this behavior should work
+ ItemStack result = CraftItemStack.asNMSCopy(event.getItemStack()); // CraftBukkit - TODO: Check this stuff later... Not sure how this behavior should work
if (--itemstack.count <= 0) {
return result; // CraftBukkit
}
if (!entityhuman.inventory.pickup(result)) { // CraftBukkit
- entityhuman.drop(CraftItemStack.createNMSItemStack(event.getItemStack())); // CraftBukkit
+ entityhuman.drop(CraftItemStack.asNMSCopy(event.getItemStack())); // CraftBukkit
}
return itemstack;
@@ -101,7 +101,7 @@ public class ItemBucket extends Item {
return itemstack;
}
- return CraftItemStack.createNMSItemStack(event.getItemStack());
+ return CraftItemStack.asNMSCopy(event.getItemStack());
}
int clickedX = i, clickedY = j, clickedZ = k;
@@ -144,7 +144,7 @@ public class ItemBucket extends Item {
// CraftBukkit end
if (this.a(world, d0, d1, d2, i, j, k) && !entityhuman.abilities.canInstantlyBuild) {
- return CraftItemStack.createNMSItemStack(event.getItemStack()); // CraftBukkit
+ return CraftItemStack.asNMSCopy(event.getItemStack()); // CraftBukkit
}
}
} else if (this.a == 0 && movingobjectposition.entity instanceof EntityCow) {
@@ -156,7 +156,7 @@ public class ItemBucket extends Item {
return itemstack;
}
- return CraftItemStack.createNMSItemStack(event.getItemStack());
+ return CraftItemStack.asNMSCopy(event.getItemStack());
// CraftBukkit end
}
diff --git a/src/main/java/net/minecraft/server/ItemStack.java b/src/main/java/net/minecraft/server/ItemStack.java
index ac6bc3c1..d0a60c2d 100644
--- a/src/main/java/net/minecraft/server/ItemStack.java
+++ b/src/main/java/net/minecraft/server/ItemStack.java
@@ -41,21 +41,6 @@ public final class ItemStack {
this.setData(k); // CraftBukkit
}
- // CraftBukkit start - used to create a new ItemStack, specifying the enchantments at time of creation.
- public ItemStack(int id, int count, int data, NBTTagList enchantments) {
- this(id, count, data);
- // taken from .addEnchantment
- if (enchantments != null && Item.byId[this.id].getMaxStackSize() == 1) {
- if (this.tag == null) {
- this.setTag(new NBTTagCompound());
- }
-
- this.tag.set("ench", enchantments.clone()); // modify this part to use passed in enchantments list
- // TODO Books, Skulls, Item Names, Item Lore
- }
- }
- // CraftBukkit end
-
public static ItemStack a(NBTTagCompound nbttagcompound) {
ItemStack itemstack = new ItemStack();
diff --git a/src/main/java/net/minecraft/server/NBTTagCompound.java b/src/main/java/net/minecraft/server/NBTTagCompound.java
index 0b9beb7d..0e021c66 100644
--- a/src/main/java/net/minecraft/server/NBTTagCompound.java
+++ b/src/main/java/net/minecraft/server/NBTTagCompound.java
@@ -35,13 +35,9 @@ public class NBTTagCompound extends NBTBase {
} catch (java.io.IOException ex) {
ex.printStackTrace();
}
+ // CraftBukkit end
}
- public void remove(String name) {
- map.remove(name);
- }
- // CraftBukkit end
-
void load(DataInput datainput) {
this.map.clear();
diff --git a/src/main/java/net/minecraft/server/NetServerHandler.java b/src/main/java/net/minecraft/server/NetServerHandler.java
index 084d0aff..88afae43 100644
--- a/src/main/java/net/minecraft/server/NetServerHandler.java
+++ b/src/main/java/net/minecraft/server/NetServerHandler.java
@@ -1230,11 +1230,11 @@ public class NetServerHandler extends NetHandler {
if (cursor == null) {
this.player.inventory.setCarried((ItemStack) null);
} else {
- this.player.inventory.setCarried(CraftItemStack.createNMSItemStack(cursor));
+ this.player.inventory.setCarried(CraftItemStack.asNMSCopy(cursor));
}
org.bukkit.inventory.ItemStack item = event.getCurrentItem();
if (item != null) {
- itemstack = CraftItemStack.createNMSItemStack(item);
+ itemstack = CraftItemStack.asNMSCopy(item);
if (packet102windowclick.slot == -999) {
this.player.drop(itemstack);
} else {
@@ -1307,16 +1307,16 @@ public class NetServerHandler extends NetHandler {
if (item == null) {
this.player.defaultContainer.setItem(packet107setcreativeslot.slot, (ItemStack) null);
} else {
- this.player.defaultContainer.setItem(packet107setcreativeslot.slot, CraftItemStack.createNMSItemStack(item));
+ this.player.defaultContainer.setItem(packet107setcreativeslot.slot, CraftItemStack.asNMSCopy(item));
}
} else if (item != null) {
- this.player.drop(CraftItemStack.createNMSItemStack(item));
+ this.player.drop(CraftItemStack.asNMSCopy(item));
}
return;
case DENY:
// TODO: Will this actually work?
if (packet107setcreativeslot.slot > -1) {
- this.player.netServerHandler.sendPacket(new Packet103SetSlot(this.player.defaultContainer.windowId, packet107setcreativeslot.slot, CraftItemStack.createNMSItemStack(item)));
+ this.player.netServerHandler.sendPacket(new Packet103SetSlot(this.player.defaultContainer.windowId, packet107setcreativeslot.slot, CraftItemStack.asNMSCopy(item)));
}
return;
case DEFAULT:
diff --git a/src/main/java/net/minecraft/server/ShapedRecipes.java b/src/main/java/net/minecraft/server/ShapedRecipes.java
index 0a48d45b..e3126b6b 100644
--- a/src/main/java/net/minecraft/server/ShapedRecipes.java
+++ b/src/main/java/net/minecraft/server/ShapedRecipes.java
@@ -23,7 +23,7 @@ public class ShapedRecipes implements IRecipe {
// CraftBukkit start
public org.bukkit.inventory.ShapedRecipe toBukkitRecipe() {
- CraftItemStack result = new CraftItemStack(this.result);
+ CraftItemStack result = CraftItemStack.asCraftMirror(this.result);
CraftShapedRecipe recipe = new CraftShapedRecipe(result, this);
switch (this.height) {
case 1:
diff --git a/src/main/java/net/minecraft/server/ShapelessRecipes.java b/src/main/java/net/minecraft/server/ShapelessRecipes.java
index f14d78be..3c08c2a6 100644
--- a/src/main/java/net/minecraft/server/ShapelessRecipes.java
+++ b/src/main/java/net/minecraft/server/ShapelessRecipes.java
@@ -22,7 +22,7 @@ public class ShapelessRecipes implements IRecipe {
// CraftBukkit start
@SuppressWarnings("unchecked")
public org.bukkit.inventory.ShapelessRecipe toBukkitRecipe() {
- CraftItemStack result = new CraftItemStack(this.result);
+ CraftItemStack result = CraftItemStack.asCraftMirror(this.result);
CraftShapelessRecipe recipe = new CraftShapelessRecipe(result, this);
for (ItemStack stack : (List<ItemStack>) this.ingredients) {
if (stack != null) {
diff --git a/src/main/java/net/minecraft/server/TileEntityFurnace.java b/src/main/java/net/minecraft/server/TileEntityFurnace.java
index bf4ed58d..17b9611a 100644
--- a/src/main/java/net/minecraft/server/TileEntityFurnace.java
+++ b/src/main/java/net/minecraft/server/TileEntityFurnace.java
@@ -172,7 +172,7 @@ public class TileEntityFurnace extends TileEntity implements IInventory {
if (!this.world.isStatic) {
// CraftBukkit start - handle multiple elapsed ticks
if (this.burnTime <= 0 && this.canBurn() && this.items[1] != null) { // CraftBukkit - == to <=
- CraftItemStack fuel = new CraftItemStack(this.items[1]);
+ CraftItemStack fuel = CraftItemStack.asCraftMirror(this.items[1]);
FurnaceBurnEvent furnaceBurnEvent = new FurnaceBurnEvent(this.world.getWorld().getBlockAt(this.x, this.y, this.z), fuel, fuelTime(this.items[1]));
this.world.getServer().getPluginManager().callEvent(furnaceBurnEvent);
@@ -237,8 +237,8 @@ public class TileEntityFurnace extends TileEntity implements IInventory {
ItemStack itemstack = RecipesFurnace.getInstance().getResult(this.items[0].getItem().id);
// CraftBukkit start
- CraftItemStack source = new CraftItemStack(this.items[0]);
- CraftItemStack result = new CraftItemStack(itemstack.cloneItemStack());
+ CraftItemStack source = CraftItemStack.asCraftMirror(this.items[0]);
+ CraftItemStack result = CraftItemStack.asCraftMirror(itemstack.cloneItemStack());
FurnaceSmeltEvent furnaceSmeltEvent = new FurnaceSmeltEvent(this.world.getWorld().getBlockAt(this.x, this.y, this.z), source, result);
this.world.getServer().getPluginManager().callEvent(furnaceSmeltEvent);
@@ -247,7 +247,7 @@ public class TileEntityFurnace extends TileEntity implements IInventory {
return;
}
- itemstack = CraftItemStack.createNMSItemStack(furnaceSmeltEvent.getResult());
+ itemstack = CraftItemStack.asNMSCopy(furnaceSmeltEvent.getResult());
if (this.items[2] == null) {
this.items[2] = itemstack.cloneItemStack();