Пример #1
0
 public void GameInfo(GameInfoEvent gameInfoEvent)
 {
     //TODO revisit what info we are sending
     game.GameSettings = gameInfoEvent.GameSettings;
     foreach (var player in gameInfoEvent.Players)
     {
         game.Players.Add(player.PlayerId, new Player {
             Name = player.Name
         });
     }
 }
Пример #2
0
        public void AddPlayer(Guid gameId, string playerConnectionId)
        {
            var player            = _playerRepository.GetPlayer(playerConnectionId);
            var playerJoinedEvent = new PlayerJoinedEvent
            {
                Name     = player.Name,
                PlayerId = player.ConnectionId
            };

            _updater.PlayerJoinedGameLobbyEvent(gameId.ToString(), playerJoinedEvent);
            var game = _gameRepository.GetGame(gameId);

            game.Players.Add(player);
            var players       = game.Players.Select(p => (p.ConnectionId, p.Name)).ToList();
            var gameInfoEvent = new GameInfoEvent
            {
                Players      = players,
                GameSettings = game.GameSettings
            };

            _updater.GameInfoEvent(player.ConnectionId, gameInfoEvent);
        }
Пример #3
0
 public void GameInfoEvent(string connectionId, GameInfoEvent payload)
 {
     _hubContext.Clients.Client(connectionId).SendAsync(nameof(IGameActions.GameInfoEvent), payload);
 }