using System;
using System.Collections.Generic;
using Sirenix.OdinInspector;
using UnityEngine;
using VOID.Generic.Requirement;
using VOID.Generic.Status.Effect;

namespace VOID.Generic.Objects.Wearable
{
    [Serializable]
    public class WearableObjectData : ObjectComponent<WearableObject>
    {
        #region Initialize

        protected override void SelfInitialize()
        {
            parent.itemData.stackable = false;
            parent.itemData.stackSize = 1;
            parent.itemData.stackSizeMax = 1;
        }

        #endregion

        [Title("Equip Effects")]
        [SerializeReference] public List<BasicEffect> effects = new();
        
        [Title("Equip Requirements")]
        [SerializeReference]
        public List<IUnitRequirement> requirements = new();
    }
}
