112 lines
2.6 KiB
C#
112 lines
2.6 KiB
C#
using Types.Items;
|
|
using UnityEngine;
|
|
|
|
namespace Data.ScriptableObjects.Items
|
|
{
|
|
// [CreateAssetMenu(fileName = "GameItem", menuName = "Game Data/Game Item")]
|
|
// public enum ItemType
|
|
// {
|
|
// Key,
|
|
// Weapon,
|
|
// Consumable,
|
|
// Resource,
|
|
// Seed,
|
|
// Equipment,
|
|
// Crop,
|
|
// Tool
|
|
// }
|
|
//
|
|
// public enum ItemRarity
|
|
// {
|
|
// Common,
|
|
// Uncommon,
|
|
// Rare,
|
|
// Epic,
|
|
// Legendary,
|
|
// Mythic
|
|
// }
|
|
|
|
public class GameItemSo : ScriptableObject
|
|
{
|
|
public Sprite icon;
|
|
|
|
public int id;
|
|
public bool isConsumable;
|
|
public bool isCraftable;
|
|
public bool isDestroyable;
|
|
public bool isDroppable;
|
|
public bool isEquippable;
|
|
public bool isKeyItem;
|
|
public bool isQuestItem;
|
|
public bool isSellable;
|
|
|
|
public bool isStackable;
|
|
public bool isTradeable;
|
|
public bool isUsable;
|
|
|
|
public string itemName;
|
|
public int itemValue;
|
|
public int quantity;
|
|
public ItemRarity rarity;
|
|
public int sellValue;
|
|
public string spritePath;
|
|
public int stackSize;
|
|
|
|
public ItemType type;
|
|
|
|
|
|
public GameItem Clone()
|
|
{
|
|
var clone = new GameItem
|
|
{
|
|
ID = id,
|
|
ItemName = itemName,
|
|
Icon = icon,
|
|
ItemValue = itemValue,
|
|
Rarity = rarity,
|
|
Quantity = quantity,
|
|
StackSize = stackSize,
|
|
SellValue = sellValue,
|
|
IsStackable = isStackable,
|
|
IsEquippable = isEquippable,
|
|
IsConsumable = isConsumable,
|
|
IsQuestItem = isQuestItem,
|
|
IsKeyItem = isKeyItem,
|
|
IsCraftable = isCraftable,
|
|
IsTradeable = isTradeable,
|
|
IsSellable = isSellable,
|
|
IsDroppable = isDroppable,
|
|
IsDestroyable = isDestroyable,
|
|
IsUsable = isUsable,
|
|
SpritePath = spritePath,
|
|
Type = type
|
|
};
|
|
return clone;
|
|
}
|
|
|
|
public int GetId()
|
|
{
|
|
return id;
|
|
}
|
|
|
|
public string GetItemName()
|
|
{
|
|
return itemName;
|
|
}
|
|
|
|
public Sprite GetIcon()
|
|
{
|
|
return icon;
|
|
}
|
|
|
|
public int GetItemValue()
|
|
{
|
|
return itemValue;
|
|
}
|
|
|
|
public int GetQuantity()
|
|
{
|
|
return quantity;
|
|
}
|
|
}
|
|
} |