Exemplo n.º 1
0
        public void StartGame()
        {
            _messagingHandler.StartListeningToRequests(_playerGuidToId.Keys);
            KnowledgeExchangeManager = new KnowledgeExchangeManager(_messagingHandler.KnowledgeExchangeDelay);
            _actionHandler           = new ActionHandlerDispatcher(Board, KnowledgeExchangeManager);

            _messagingHandler.SendGameStartedMessage(_gameHost.GameId);

            var boardInfo     = new BoardInfo(Board.Width, Board.TaskAreaSize, Board.GoalAreaSize);
            var playersInGame = Board.Players.Values;

            foreach (var(_, id) in _playerGuidToId)
            {
                var playerLocation = Board.Players.Values.Single(x => x.Id == id).Location;
                _messagingHandler.SendGameStartedToPlayerMessage(id, playersInGame, playerLocation, boardInfo);
            }
        }
Exemplo n.º 2
0
 /// <summary>
 ///     Only for tests
 /// </summary>
 public GameMaster(GameMasterBoard board, Dictionary <Guid, int> playerGuidToId)
 {
     _gameHost       = new GameHost(board);
     _playerGuidToId = playerGuidToId;
     _actionHandler  = new ActionHandlerDispatcher(Board, new KnowledgeExchangeManager());
 }