Beispiel #1
0
        public List <Outcome> TakeTurn(DungeonMaster DM)
        {
            var outcomes = new List <Outcome>();

            if (DM.currentSide.ID != PlayingAs)
            {
                throw new ArgumentException("Its not my turn, I am" + PlayingAs);
            }

            var randomGuy = DM.Characters.First(c => c.SideID == PlayingAs && !c.HasBeenActivated);
            var outcome   = DM.Activate(randomGuy);

            outcomes.Add(outcome);

            outcome = DM.MoveCharacter(randomGuy, Map.Direction.S);
            outcomes.Add(outcome);
            outcome = DM.MoveCharacter(randomGuy, Map.Direction.S);
            outcomes.Add(outcome);
            outcome = DM.MoveCharacter(randomGuy, Map.Direction.S);
            outcomes.Add(outcome);
            outcome = DM.MoveCharacter(randomGuy, Map.Direction.S);
            outcomes.Add(outcome);

            outcome = DM.EndTurn(PlayingAs);
            outcomes.Add(outcome);

            return(outcomes);
        }
        static void Move(MoveOptions opt)
        {
            if (DM.activatedCharacter == null)
            {
                output.AppendLine("No active character");
                return;
            }
            var outcome = DM.MoveCharacter(DM.activatedCharacter.Name, opt.Directions);

            output.Append(outcome.Message.ToString());
        }