示例#1
0
 public ActionResult Index(Models.GameBoard gameBoard)
 {
     if (TempData["gameBoard"] != null)
     {
         gameBoard = TempData["gameBoard"] as GameBoard;
     }
     return(View(gameBoard));
 }
示例#2
0
 public ActionResult Index(GameOfLife.Models.GameBoard gameBoard)
 {
     if (gameBoard == null)
     {
         gameBoard = new Models.GameBoard();
     }
     return(PartialView(gameBoard));
 }
        public static GameBoard ToGameBoard(this Models.GameBoard gameBoard)
        {
            var g = new GameBoard()
            {
                InitialSetup = gameBoard.InitialSetup.ToInitialSetup(),
            };

            foreach (var pieces in gameBoard.Pieces)
            {
                var list = new ListOfPieces();
                list.Items.AddRange(pieces.Select(p => p.ToPiece()));
                g.Pieces.Add(list);
            }
            return(g);
        }
示例#4
0
        public IActionResult GetGameBoard([FromServices] ApplicationDbContext appContext, string clientState)
        {
            var startedGame = appContext.GameBoards.Where(game => game.State != GameState.Finished).OrderByDescending(game => game.CreatedOn).FirstOrDefault();

            if (startedGame == null)
            {
                startedGame = new Models.GameBoard()
                {
                    CreatedOn = DateTime.Now,
                    State     = GameState.New,
                    Data      = "GGGGGGGGGGGGGGGGGGGGGGGGGGG" // Empty board
                };

                appContext.GameBoards.Add(startedGame);
            }
            else if (!string.IsNullOrWhiteSpace(clientState))
            {
                startedGame.Data = clientState;
            }
            appContext.SaveChanges();

            return(Content(startedGame.Data));
        }