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