public bool AddItemTileToBackpack(ItemInventoryTile itemTile) { GD.Print("BackPackSlotManager - AddItemTileToBackpack"); BackPackSlot slot = GetEmptySlot(); // There aren't any open slots :'( if (slot == null) { return(false); } slot.AddItemTile(itemTile); return(true); }
/// <summary> /// Scan and register all inventory slots /// </summary> private void RegisterSlots() { for (int row = 0; row < 4; row++) { for (int col = 0; col < 4; col++) { BackPackSlot slot = GetNode <BackPackSlot>($"Container/Rows/{row}/{col}"); slot.Init(row, col); slot.OnDropItemOnGround += HandleOnDropItemOnGround; slot.OnShowContextMenu += HandleOnShowContextMenu; backPackSlots[row, col] = slot; } } }