45 lines
1.2 KiB
C#
45 lines
1.2 KiB
C#
using System.Linq;
|
|
using UnityEngine;
|
|
|
|
public class ContainerItemsUI : MonoBehaviour
|
|
{
|
|
|
|
[SerializeField]
|
|
private Transform _container;
|
|
[SerializeField]
|
|
private Transform _itemsList;
|
|
[SerializeField]
|
|
private Transform _itemUITemplate;
|
|
|
|
private void Awake()
|
|
{
|
|
_container.gameObject.SetActive(false);
|
|
}
|
|
|
|
private void Update()
|
|
{
|
|
if (Player.Instance.IsHoldContainerItem())
|
|
{
|
|
_container.gameObject.SetActive(true);
|
|
|
|
var playerContainer = Player.Instance.GetContainerItem();
|
|
if (playerContainer.GetItems().Any())
|
|
{
|
|
foreach (Transform child in _itemsList)
|
|
{
|
|
if (child == _itemUITemplate) continue;
|
|
Destroy(child.gameObject);
|
|
}
|
|
|
|
var playerItemsList = playerContainer.GetItems();
|
|
for (int count = 0; count < playerItemsList.Count; count++)
|
|
{
|
|
var itemUI = Instantiate(_itemUITemplate, _itemsList);
|
|
itemUI.gameObject.SetActive(true);
|
|
itemUI.GetComponent<ItemDescriptionUI>().SetItem(playerItemsList[count]);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|