public ContainerFurnace(net.minecraft.src.InventoryPlayer inventoryplayer, net.minecraft.src.TileEntityFurnace
                         tileentityfurnace)
 {
     // Referenced classes of package net.minecraft.src:
     //            Container, Slot, SlotFurnace, InventoryPlayer,
     //            TileEntityFurnace, ICrafting, ItemStack, EntityPlayer
     lastCookTime     = 0;
     lastBurnTime     = 0;
     lastItemBurnTime = 0;
     furnace          = tileentityfurnace;
     AddSlot(new net.minecraft.src.Slot(tileentityfurnace, 0, 56, 17));
     AddSlot(new net.minecraft.src.Slot(tileentityfurnace, 1, 56, 53));
     AddSlot(new net.minecraft.src.SlotFurnace(inventoryplayer.player, tileentityfurnace
                                               , 2, 116, 35));
     for (int i = 0; i < 3; i++)
     {
         for (int k = 0; k < 9; k++)
         {
             AddSlot(new net.minecraft.src.Slot(inventoryplayer, k + i * 9 + 9, 8 + k * 18, 84
                                                + i * 18));
         }
     }
     for (int j = 0; j < 9; j++)
     {
         AddSlot(new net.minecraft.src.Slot(inventoryplayer, j, 8 + j * 18, 142));
     }
 }
示例#2
0
 public override void DisplayGUIFurnace(net.minecraft.src.TileEntityFurnace tileentityfurnace
                                        )
 {
     GetNextWidowId();
     netServerHandler.SendPacket(new net.minecraft.src.Packet100OpenWindow(currentWindowId
                                                                           , 2, tileentityfurnace.GetInvName(), tileentityfurnace.GetSizeInventory()));
     currentCraftingInventory = new net.minecraft.src.ContainerFurnace(inventory, tileentityfurnace
                                                                       );
     currentCraftingInventory.windowId = currentWindowId;
     currentCraftingInventory.OnCraftGuiOpened(this);
 }
示例#3
0
 public override bool BlockActivated(net.minecraft.src.World world, int i, int j,
                                     int k, net.minecraft.src.EntityPlayer entityplayer)
 {
     if (world.singleplayerWorld)
     {
         return(true);
     }
     else
     {
         net.minecraft.src.TileEntityFurnace tileentityfurnace = (net.minecraft.src.TileEntityFurnace
                                                                  )world.GetBlockTileEntity(i, j, k);
         entityplayer.DisplayGUIFurnace(tileentityfurnace);
         return(true);
     }
 }
示例#4
0
 public override void OnBlockRemoval(net.minecraft.src.World world, int i, int j,
                                     int k)
 {
     if (!field_28034_c)
     {
         net.minecraft.src.TileEntityFurnace tileentityfurnace = (net.minecraft.src.TileEntityFurnace)world.GetBlockTileEntity(i, j, k);
         if (tileentityfurnace == null)
         {
             return;                                            // CRAFTBUKKIT
         }
         for (int l = 0; l < tileentityfurnace.GetSizeInventory(); l++)
         {
             net.minecraft.src.ItemStack itemstack = tileentityfurnace.GetStackInSlot(l);
             if (itemstack == null)
             {
                 continue;
             }
             float f  = field_28033_a.NextFloat() * 0.8F + 0.1F;
             float f1 = field_28033_a.NextFloat() * 0.8F + 0.1F;
             float f2 = field_28033_a.NextFloat() * 0.8F + 0.1F;
             do
             {
                 if (itemstack.stackSize <= 0)
                 {
                     goto label0_continue;
                 }
                 int i1 = field_28033_a.Next(21) + 10;
                 if (i1 > itemstack.stackSize)
                 {
                     i1 = itemstack.stackSize;
                 }
                 itemstack.stackSize -= i1;
                 net.minecraft.src.EntityItem entityitem = new net.minecraft.src.EntityItem(world,
                                                                                            (float)i + f, (float)j + f1, (float)k + f2, new net.minecraft.src.ItemStack(itemstack
                                                                                                                                                                        .itemID, i1, itemstack.GetItemDamage()));
                 float f3 = 0.05F;
                 entityitem.motionX = (float)field_28033_a.NextGaussian() * f3;
                 entityitem.motionY = (float)field_28033_a.NextGaussian() * f3 + 0.2F;
                 entityitem.motionZ = (float)field_28033_a.NextGaussian() * f3;
                 world.AddEntity(entityitem);
             }while (true);
             label0_continue :;
         }
         label0_break :;
     }
     base.OnBlockRemoval(world, i, j, k);
 }
示例#5
0
 public virtual void DisplayGUIFurnace(net.minecraft.src.TileEntityFurnace tileentityfurnace
                                       )
 {
 }