Pedro Gomes 74a9c2b940 Major rework on items
- Refactor items from predefined scriptables only, to template based into item instances
- Added equipped item tooltip to facilitate comparing items
- Added modular craftable items
2025-01-03 19:40:35 +00:00

36 lines
955 B
C#

using UnityEngine;
namespace Kryz.CharacterStats.Examples
{
[CreateAssetMenu]
public class Item : ScriptableObject
{
public string ItemName;
public Sprite Icon;
public int sellPricePlayer;
public int sellPriceVendor;
public string description;
public static ItemInstance ConvertTemplateIntoInstance(Item template, bool randomizeStats = false)
{
if(template is EquippableItem item)
{
return new EquippableItemInstance(item, item.CraftableBase);
}
else if(template is HiddenMap map)
{
return new HiddenMapInstance(map);
}
return new ItemInstance(template);
}
public static ItemInstance ConvertTemplateIntoInstance(Item template, int templateIndex, bool randomizeStats = false)
{
if (template is EquippableItem item)
{
return new EquippableItemInstance(item, randomizeStats);
}
return new ItemInstance(template, templateIndex);
}
}
}