EerieVillage/Assets/Scripts/Skills/Interfaces/ISkillRuntime.cs

28 lines
918 B
C#

using UnityEngine;
namespace EerieVillage.Skills
{
/// <summary>
/// 모든 스킬 런타임의 공통 계약.
/// PlayerSkillInventory가 보유 스킬을 이 인터페이스 배열로 관리.
/// BT12-Dev v1 §2-1 정합.
/// </summary>
public interface ISkillRuntime
{
/// <summary>참조하는 정적 데이터 (ScriptableObject)</summary>
SkillDataAsset Data { get; }
/// <summary>현재 스택 레벨 (1~5). 5 도달 시 각성 조건 1 충족</summary>
int StackLevel { get; }
/// <summary>스킬 장착·Lv 업 시 1회 호출 (런타임 초기화)</summary>
void OnEquip(PlayerSkillInventory inventory);
/// <summary>스킬 해제 시 1회 호출 (각성 대체 등)</summary>
void OnUnequip();
/// <summary>동일 카드 재픽으로 Lv N→N+1 업그레이드</summary>
void Upgrade();
}
}