Example #1
0
        /**
         *  Draw the inventory in a draggable window
         **/
        public void OnInventoryWindow(int windowId)
        {
            Vector2 position = itemOffset;

            GUI.depth = InventoryLayer.MID;

            for (int x = 0; x < inventory.GetLength(0); x++)
            {
                for (int y = 0; y < inventory.GetLength(1); y++)
                {
                    if (inventory[x, y] != null)
                    {
                        //	create a UI.Draggable element
                        InventoryItem             item             = inventory[x, y].GetComponent <InventoryItem>();
                        InventoryDraggableHandler draggableHandler = new InventoryDraggableHandler(gameObject, new InventoryPosition(x, y), inventory, item);
                        UI.Draggable(new Rect(position.x, position.y, tilesize, tilesize), item.GetGUIContent(), new GUIStyle("button"), draggableHandler);
                    }
                    else
                    {
                        //	create a UI.Slot
                        InventorySlotHandler slotHandler = new InventorySlotHandler(gameObject, new InventoryPosition(x, y), inventory);
                        UI.Slot(new Rect(position.x, position.y, tilesize, tilesize), new GUIStyle("button"), slotHandler);
                    }
                    position.x += tilesize;
                }
                position.y += tilesize;
                position.x  = itemOffset.x;
            }
            //	if there is no dragged item,
            //	this window is draggable
            if (draggedItem.item == null)
            {
                GUI.DragWindow(draggableArea);
            }
        }
Example #2
0
 public void SetEquippedSlot(LootItem item, InventorySlotHandler equippedSlot)
 {
     foreach (var groupedItem in items)
     {
         if (groupedItem.id == item.id)
         {
             groupedItem.equiptedSlots.Add(equippedSlot);
         }
     }
 }