コード例 #1
0
ファイル: LobbyManager.cs プロジェクト: alekszalata/7-wonders
        public void OnStartLobby(string lobbyId)
        {
            // EXAMPLE
            //var lobbyId = "321";

            if (NetworkEntity.FindEntityById(_lobbies, lobbyId, out var lobbyToStart))
            {
                GameManager.Instance.CreateGameSession(lobbyToStart);
            }

            Events.OnStartLobby.TriggerEvents();
        }
コード例 #2
0
ファイル: LobbyManager.cs プロジェクト: alekszalata/7-wonders
        public void OnDeleteLobby(string lobbyId)
        {
            // EXAMPLE
            //var lobbyId = "321";
            if (NetworkEntity.FindEntityById(_lobbies, lobbyId, out var lobbyToDelete))
            {
                _lobbies.Remove(lobbyToDelete);
                logger.Log($"Lobby {lobbyToDelete.GetFullName()} deleted.", Logger.LogLevel.INFO);
            }

            Events.OnDeleteLobby.TriggerEvents();
        }
コード例 #3
0
        private Dictionary <PlayerData, WonderCard> CreatePlayerWonderCardsData(
            Dictionary <string, string> rawPlayersCardsData)
        {
            var playersCardsData = new Dictionary <PlayerData, WonderCard>();

            foreach (var playerId in rawPlayersCardsData.Keys)
            {
                NetworkEntity.FindEntityById(CurrentSession.Players, playerId, out var player);
                var card = CardsStack.Instance.GetWonderCard(rawPlayersCardsData[playerId]);

                playersCardsData.Add(player, card);
            }

            return(playersCardsData);
        }
コード例 #4
0
        private Dictionary <PlayerData, IEnumerable <CommonCard> > CreatePlayerCardsData(
            Dictionary <string, IEnumerable <string> > rawPlayersCardsData)
        {
            var playersCardsData = new Dictionary <PlayerData, IEnumerable <CommonCard> >();

            foreach (var playerId in rawPlayersCardsData.Keys)
            {
                NetworkEntity.FindEntityById(CurrentSession.Players, playerId, out var player);
                var cards = CardsStack.Instance.GetCards(rawPlayersCardsData[playerId]);

                playersCardsData.Add(player, cards);
            }

            return(playersCardsData);
        }
コード例 #5
0
ファイル: Lobby.cs プロジェクト: LucasMbele/7-wonders
 public bool FindUserById(string userId, out UserData user) =>
 NetworkEntity.FindEntityById(ConnectedUsers, userId, out user);
コード例 #6
0
 private bool FindCardById(IEnumerable <CommonCard> cardsStack, string cardId, out CommonCard foundCard) =>
 NetworkEntity.FindEntityById(cardsStack, cardId, out foundCard);
コード例 #7
0
 private bool FindLobbyById(string lobbyId, out Lobby lobby)
 => NetworkEntity.FindEntityById(_lobbies, lobbyId, out lobby);
コード例 #8
0
 public bool FindPlayerById(string id, out PlayerData player) =>
 NetworkEntity.FindEntityById(Players, id, out player);
コード例 #9
0
ファイル: CardsStack.cs プロジェクト: LucasMbele/7-wonders
 public CommonCard GetCard(string id)
 {
     NetworkEntity.FindEntityById(_cards, id, out var card);
     return(card);
 }
コード例 #10
0
ファイル: CardsStack.cs プロジェクト: LucasMbele/7-wonders
 public WonderCard GetWonderCard(string id)
 {
     NetworkEntity.FindEntityById(_wonderCards, id, out var card);
     return(card);
 }