49 lines
1.2 KiB
C#
49 lines
1.2 KiB
C#
// PlayerInventory.cs
|
|
using System.Collections.Generic;
|
|
using UnityEngine;
|
|
|
|
public class PlayerInventory : MonoBehaviour
|
|
{
|
|
[Header("재화")]
|
|
public int gold = 0;
|
|
public int gem = 0;
|
|
|
|
[Header("인벤토리")]
|
|
public List<ItemData> items = new List<ItemData>();
|
|
|
|
public void AddItem(ItemData item)
|
|
{
|
|
switch (item.itemType)
|
|
{
|
|
case ItemData.ItemType.Currency:
|
|
HandleCurrency(item);
|
|
break;
|
|
|
|
case ItemData.ItemType.Potion:
|
|
case ItemData.ItemType.Equipment:
|
|
items.Add(item);
|
|
Debug.Log($"[인벤토리] {item.itemName} 획득!");
|
|
break;
|
|
}
|
|
|
|
// UI 업데이트 이벤트 (필요 시 연결)
|
|
OnInventoryChanged?.Invoke();
|
|
}
|
|
|
|
private void HandleCurrency(ItemData item)
|
|
{
|
|
if (item.itemTag == "Item_Coin")
|
|
{
|
|
gold += item.value;
|
|
Debug.Log($"[재화] 골드 +{item.value} | 현재: {gold}");
|
|
}
|
|
else if (item.itemTag == "Item_Gem")
|
|
{
|
|
gem += item.value;
|
|
Debug.Log($"[재화] 젬 +{item.value} | 현재: {gem}");
|
|
}
|
|
}
|
|
|
|
// UI 연결용 이벤트
|
|
public System.Action OnInventoryChanged;
|
|
} |