public JsonResult Play(List<Dictionary<string, string>> players) { // simulate the game being played currently var characterBuilder = new CharacterBuilder(); var gamePlayers = players.Select(player => characterBuilder.BuildCharacter(player["PClass"], player["Name"])).ToList(); for (var i = 0; i < players.Count; i++) { var monster = characterBuilder.BuildCharacter("monster", "monster_" + (i + 1)); gamePlayers.Add(monster); } var boardGame = new BoardGame(gamePlayers, false); var gameResults = boardGame.StartGame(); return Json(new { results = gameResults}, JsonRequestBehavior.AllowGet); }
static void Main(string[] args) { // want to get in a state where two users are taking turns to do something var builder = new CharacterBuilder(); var users = new List<Player> { builder.BuildCharacter("cleric", "mike"), builder.BuildCharacter("wizard", "jeff"), builder.BuildCharacter("monster", "monster_1"), builder.BuildCharacter("monster", "monster_2")}; var boardGame = new BoardGame(users); var logs = boardGame.StartGame(); foreach (var log in logs) { Console.WriteLine(log); } Console.ReadLine(); }