using UnityEngine; // ReSharper disable once CheckNamespace namespace BlueWaterProject { public enum ItemRarity { COMMON, UNCOMMON, RARE, LEGENDARY } [CreateAssetMenu(fileName = "Item", menuName = "ScriptableObjects/Item/BaseItem")] public abstract class Item : ScriptableObject { [Tooltip("고유 식별 ID")] public string id; [Tooltip("이름")] public string name; [Tooltip("아이콘")] public Sprite icon; [Tooltip("설명"), TextArea(3, 10)] public string description; [Tooltip("가격")] public int price; [Tooltip("무게")] public int weight; [Tooltip("등급")] public ItemRarity rarity; public abstract void Use(); public void Acquire(int count) { DataManager.Inst.PlayerInventory.AddItem(this, count); } public GameObject InstantiateItem(GameObject prefab, Vector3 position, Quaternion rotation = default) { var instantiateItem = Instantiate(prefab, position, rotation); return instantiateItem; } } }