public GameSession Add(string name, GameSessionStates state, Player creator) { var gameField = new GameField(); var cells = new List <Cell>(); for (int i = 0; i < 9; i++) { cells.Add(new Cell() { PlaceId = i + 1, CellState = Enums.CellState.Empty }); } gameField.Cells = cells; var gameSession = new GameSession() { Id = Guid.NewGuid(), Name = name, CountOfPlayers = 1, GameField = gameField, Players = new List <Player>() { creator }, State = state }; _gameSessionRepository.Add(gameSession); return(gameSession); }
private SessionCookieData CreateSession(int gameId, DateTime now) { var sessionCookieData = new SessionCookieData { GameId = gameId, StartTime = now, TotalPenaltySeconds = 0, LastResponseCheck = DateTime.MinValue }; var gameSession = new GameSession(sessionCookieData.Id) { StartTime = sessionCookieData.StartTime, TotalPenaltySeconds = sessionCookieData.TotalPenaltySeconds, GameId = gameId }; var ipAddressDetails = IpAddressHelper.GetIpAddressDetails(HttpContext.Connection.RemoteIpAddress.ToString()); gameSession.IpAddressDetails = ipAddressDetails; _gameSessionRepository.Add(gameSession); return(sessionCookieData); }