public void OpenItemsScreen() { SetSlotMenuReferences(); playerRenderInUiObject.SetActive(true); currScreenIndex = 1; screens[currScreenIndex].SetActive(true); Dictionary <ItemConfig, int> inventory = objectCollector.GetInventory(); int lastSetKeyIndex = 0; ItemConfig itemToSet = null; foreach (ItemConfig item in inventory.Keys) { for (int j = 0; j < inventory[item]; j++) { itemSlotsArray[lastSetKeyIndex].SetItem(item); lastSetKeyIndex++; } } for (; lastSetKeyIndex < itemSlotsArray.Length; lastSetKeyIndex++) { itemSlotsArray[lastSetKeyIndex].SetItem(itemToSet); } if (playerNotActingState.canDefend) { skillSlotsArray[0].SetItem(shieldConfig); } eventSystem.SetSelectedGameObject(itemScreenFirstElement); }