OldBlueWater/BlueWater/Assets/02.Scripts/Item/Item.cs

51 lines
1.2 KiB
C#

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;
}
}
}