public Game(GameNetwork Network, int NeededNumberOfPlayersForGameToStart, UniqueIDGenerator gamesIDGenerator) { GamesIDGenerator = gamesIDGenerator; GameID = GamesIDGenerator.GetID(); Logger.GameID = GameID; Logger.GameLog("Initialising a new Game with " + Convert.ToString(NeededNumberOfPlayersForGameToStart) + " Players"); this.Network = Network; this.Network.ClientLost += OnClientLost; GameState = GameStates.Initializing; GameStructure = new GameStructure(NeededNumberOfPlayersForGameToStart); GameEngine = new GameEngine(GameStructure); NumberOfPlayers = NeededNumberOfPlayersForGameToStart; GameEngine.TeamScoredHandler += OnTeamScored; GameEngine.OnGameFinished += HandleFinishedGame; }