public BattleFsm(Battle context) { _context = context; Idle = new BattlePhase(context, BattleState.Idle); BeforeTurn = new BeforeTurnPhase(context); AfterTurn = new AfterTurnPhase(context); Input = new InputPhase(context); PlayerPassive = new PlayerPassivePhase(context); BossPassive = new BossPassivePhase(context); PlayerSkill = new BattlePhase(context, BattleState.PlayerSkill); BossSkill = new BossSkillPhase(context); ResultWon = new ResultWonPhase(context); ResultLost = new ResultLostPhase(context); Current = Idle; Current.Enter(); }
private void Transfer(BattlePhase phase) { Current.Exit(); Current = phase; Current.Enter(); }