using System;
using Sirenix.OdinInspector;
using UnityEngine;
using VOID.Generic.Dict;
using VOID.Generic.Objects.Unit;

namespace VOID.Generic.Requirement
{
    [TypeRegistryItem("Sub Attribute")]
    [Serializable]
    public class RequirementSubAttribute : IUnitRequirement
    {
        [SerializeField]
        [Required]
        private SubAttributeType _attributeType;
        
        [SerializeField]
        [MinValue(1)]
        private int _attributeValue;
        
        public bool Check(UnitObject unit)
        {
            return unit.unitData.subAttributes.Get(_attributeType) >= _attributeValue;
        }
    }
}