public MessagingHandler(GameConfiguration gameConfiguration, ICommunicationClient communicationCommunicationClient, Action hostNewGame, IGameMasterMessageFactory gameMasterMessageFactory) { _actionCosts = gameConfiguration.ActionCosts; _hostNewGame = hostNewGame; _gameMasterMessageFactory = gameMasterMessageFactory; CommunicationClient = communicationCommunicationClient; new Thread(() => CommunicationClient.Connect(HandleConnectionError, HandleMessagesFromClient)).Start(); }
public GameMaster(GameConfiguration gameConfiguration, ICommunicationClient communicationClient, string gameName, IErrorsMessagesFactory errorsMessagesFactory, LoggingMode loggingMode, IGameMasterMessageFactory gameMasterMessageFactory) { _gameHost = new GameHost(gameName, gameConfiguration, StartGame); _errorsMessagesFactory = errorsMessagesFactory; VerboseLogger = new VerboseLogger(LogManager.GetCurrentClassLogger(), loggingMode); _messagingHandler = new MessagingHandler(gameConfiguration, communicationClient, HostNewGame, gameMasterMessageFactory); _messagingHandler.MessageReceived += (sender, args) => MessageHandler(args); HostNewGame(); }