using UnityEngine; namespace EerieVillage.Skills { /// /// 모든 스킬 데이터 asset의 공통 base. /// BT12-Dev v1 §2-2 정합. /// public abstract class SkillDataAsset : ScriptableObject { [Header("공통")] /// 카드 식별자 — "A01"·"P12"·"AW19" (CSV v0.3 ID 컬럼) public string CardId; /// 플레이어 표시 이름 (한글) — "진언부(眞言符)" public string DisplayName; /// 영문 표시명 — CSV 2번째 컬럼 public string EnglishName; /// UI용 아이콘 public Sprite Icon; /// 플레이어 표시 툴팁 [TextArea(2, 4)] public string Description; /// 속성 태그 (Flags) — [물리]·[화염] 등 public AttributeTag AttributeTags; /// 타입 태그 (Flags) — [근접]·[원거리] 등 public TypeTag TypeTags; /// 최대 스택 레벨. 기본 5. Upgrade() 상한 기준. [Tooltip("최대 스택 레벨 (1~5). 기본값 5.")] public int maxLevel = 5; } /// /// 속성 태그 (Flags enum). BT12-Dev v1 §2-2 정합. /// [System.Flags] public enum AttributeTag { None = 0, Physical = 1 << 0, Fire = 1 << 1, Frost = 1 << 2, Lightning = 1 << 3, Dark = 1 << 4 } /// /// 타입 태그 (Flags enum). BT12-Dev v1 §2-2 정합. /// [System.Flags] public enum TypeTag { None = 0, Melee = 1 << 0, Ranged = 1 << 1, Area = 1 << 2, Persistent = 1 << 3, Recovery = 1 << 4, Defense = 1 << 5 } }