示例#1
0
        public async Task <PhaseResult <string> > DoTargetSelectionAsync(TargetSelectionPhase phase, IBattlePhases handler)
        {
            Console.Write($"ターゲットを選択 >");
            var input = Console.ReadLine();

            if (input == "cancel" || input == null)
            {
                return(new Cancelled <string>());
            }

            var targetId = int.Parse(input);
            var result   = $"{phase.ActorId} は {targetId} に {phase.SkillId} を使った";

            return(new Finished <string>(result));
        }
        public async Task <PhaseResult <string> > TargetSelection(SkillSelectionPhase phase, int skillId)
        {
            var __phase = new TargetSelectionPhase(phase, skillId);

            return(await HandlePhaseFlowAsync(() => _logic.DoTargetSelectionAsync(__phase, this)));
        }