namespace EerieVillage.Skills
{
///
/// 각성 스킬 런타임 계약. 원 액티브를 대체(또는 강화)하여 진화.
/// BT12-Dev v1 §2-1 정합.
///
public interface IAwakeningSkill : ISkillRuntime
{
/// 진화 대상 원 액티브 데이터
ActiveSkillData OriginalActive { get; }
/// 필요 패시브 후보 (1개 이상 보유로 조건 충족)
PassiveSkillData[] RequiredPassives { get; }
///
/// 각성 발동 시 1회 호출. 원 액티브 슬롯 점유 유지하며 진화 형태로 대체.
/// 진화 패턴 4종 중 하나의 효과를 적용.
///
void Awaken(PlayerSkillInventory inventory);
/// 진화 패턴 (1 스케일업 · 2 새효과 · 3 다중 발동 · 4 광역 확산)
AwakeningPattern Pattern { get; }
}
///
/// 각성 진화 패턴 (기획서 §4-2 4종). BT12-Dev v1 §2-1 정합.
///
public enum AwakeningPattern
{
/// 1. 대미지·범위·속도 대폭 증가
ScaleUp,
/// 2. 새 효과 추가 (기존 유지 + 부가)
AddEffect,
/// 3. 발동 수 2배+
MultiFire,
/// 4. 화면 전체 확산
GlobalSpread
}
}