Example #1
0
        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();
        }
Example #2
0
 private void Transfer(BattlePhase phase)
 {
     Current.Exit();
     Current = phase;
     Current.Enter();
 }