public void remove(World world, int i, int j, int k) { TileEntityChest tileentitychest = (TileEntityChest) world.getTileEntity(i, j, k); if (tileentitychest != null) { for (int l = 0; l < tileentitychest.getSize(); ++l) { ItemStack itemstack = tileentitychest.getItem(l); if (itemstack != null) { float f = this.a.nextFloat() * 0.8F + 0.1F; float f1 = this.a.nextFloat() * 0.8F + 0.1F; EntityItem entityitem; for (float f2 = this.a.nextFloat() * 0.8F + 0.1F; itemstack.count > 0; world.addEntity(entityitem)) { int i1 = this.a.nextInt(21) + 10; if (i1 > itemstack.count) { i1 = itemstack.count; } itemstack.count -= i1; entityitem = new EntityItem( world, (double) ((float) i + f), (double) ((float) j + f1), (double) ((float) k + f2), new ItemStack(itemstack.id, i1, itemstack.getData())); float f3 = 0.05F; entityitem.motX = (double) ((float) this.a.nextGaussian() * f3); entityitem.motY = (double) ((float) this.a.nextGaussian() * f3 + 0.2F); entityitem.motZ = (double) ((float) this.a.nextGaussian() * f3); if (itemstack.n()) { entityitem.itemStack.d((NBTTagCompound) itemstack.o().b()); } } } } } super.remove(world, i, j, k); }