    001package net.minecraft.item;
    002
    003import net.minecraft.creativetab.CreativeTabs;
    004import net.minecraft.entity.player.EntityPlayer;
    005import net.minecraft.world.World;
    006import net.minecraft.world.storage.MapData;
    007
    008public class ItemEmptyMap extends ItemMapBase
    009{
    010    protected ItemEmptyMap(int par1)
    011    {
    012        super(par1);
    013        this.setCreativeTab(CreativeTabs.tabMisc);
    014    }
    015
    016    /**
    017     * Called whenever this item is equipped and the right mouse button is pressed. Args: itemStack, world, entityPlayer
    018     */
    019    public ItemStack onItemRightClick(ItemStack par1ItemStack, World par2World, EntityPlayer par3EntityPlayer)
    020    {
    021        ItemStack var4 = new ItemStack(Item.map, 1, par2World.getUniqueDataId("map"));
    022        String var5 = "map_" + var4.getItemDamage();
    023        MapData var6 = new MapData(var5);
    024        par2World.setItemData(var5, var6);
    025        var6.scale = 0;
    026        int var7 = 128 * (1 << var6.scale);
    027        var6.xCenter = (int)(Math.round(par3EntityPlayer.posX / (double)var7) * (long)var7);
    028        var6.zCenter = (int)(Math.round(par3EntityPlayer.posZ / (double)var7) * (long)var7);
    029        var6.dimension = (byte)par2World.provider.dimensionId;
    030        var6.markDirty();
    031        --par1ItemStack.stackSize;
    032
    033        if (par1ItemStack.stackSize <= 0)
    034        {
    035            return var4;
    036        }
    037        else
    038        {
    039            if (!par3EntityPlayer.inventory.addItemStackToInventory(var4.copy()))
    040            {
    041                par3EntityPlayer.dropPlayerItem(var4);
    042            }
    043
    044            return par1ItemStack;
    045        }
    046    }
    047}