Ejemplo n.º 1
0
 public override void HandleWindowClick(net.minecraft.src.Packet102WindowClick packet102windowclick)
 {
     if (this.playerEntity.isDead)
     {
         return;                           // CRAFTBUKKIT
     }
     if (playerEntity.currentCraftingInventory.windowId == packet102windowclick.window_Id &&
         playerEntity.currentCraftingInventory.GetCanCraft(playerEntity))
     {
         net.minecraft.src.ItemStack itemstack = playerEntity.currentCraftingInventory.Func_27085_a
                                                     (packet102windowclick.inventorySlot, packet102windowclick.mouseClick, packet102windowclick
                                                     .field_27039_f, playerEntity);
         if (net.minecraft.src.ItemStack.AreItemStacksEqual(packet102windowclick.itemStack
                                                            , itemstack))
         {
             playerEntity.netServerHandler.SendPacket(new net.minecraft.src.Packet106Transaction
                                                          (packet102windowclick.window_Id, packet102windowclick.action, true));
             playerEntity.isChangingQuantityOnly = true;
             playerEntity.currentCraftingInventory.UpdateCraftingMatrix();
             playerEntity.UpdateHeldItem();
             playerEntity.isChangingQuantityOnly = false;
         }
         else
         {
             field_10_k[playerEntity.currentCraftingInventory.windowId] = packet102windowclick.action;
             playerEntity.netServerHandler.SendPacket(new net.minecraft.src.Packet106Transaction
                                                          (packet102windowclick.window_Id, packet102windowclick.action, false));
             playerEntity.currentCraftingInventory.SetCanCraft(playerEntity, false);
             List <ItemStack> arraylist = new List <ItemStack>();
             for (int i = 0; i < playerEntity.currentCraftingInventory.inventorySlots.Count; i
                  ++)
             {
                 arraylist.Add(((net.minecraft.src.Slot)playerEntity.currentCraftingInventory.inventorySlots
                                [i]).GetStack());
             }
             playerEntity.UpdateCraftingInventory(playerEntity.currentCraftingInventory, arraylist
                                                  );
         }
     }
 }
Ejemplo n.º 2
0
 public virtual void HandleWindowClick(net.minecraft.src.Packet102WindowClick packet102windowclick)
 {
     RegisterPacket(packet102windowclick);
 }