public GameStateMachine(Guid gameId, IGameRules gameRules, PlanetWarsServer planetWarsServer) { GameId = gameId; CreatedAt = DateTimeOffset.Now; InternalLogger = new InternalLogger(); this.gameRules = gameRules; this.planetWarsServer = planetWarsServer; attacker = new GameStateMachinePlayer(planetWarsServer.Settings, playerId: 0, ApiPlayerRole.Attacker, InternalLogger, cts.Token); defender = new GameStateMachinePlayer(planetWarsServer.Settings, playerId: 1, ApiPlayerRole.Defender, InternalLogger, cts.Token); players = new[] { attacker, defender }; gameStats = new ApiGameStats { GameType = gameRules.GameType, GameId = GameId, Status = ApiGameStatus.New, Tick = -1, Players = new[] { defender.Stats, attacker.Stats }, }; }
public ApiGameResults(ApiGameStats gameStats, string?fatalException, string[]?internalLog) { GameStats = gameStats; FatalException = fatalException; InternalLog = internalLog; }