예제 #1
0
        // searching/getting
        public List <Lobby> GetLobbies(LobbyFilter lobbyFilter)
        {
            var filteredLobbies = lobbies
                                  .Where(lobby => lobby.Value.IsPublic == true)
                                  .Where(lobby => lobby.Value.HasGameInProgress == lobbyFilter.HasGameInProgress)
                                  .AsQueryable();

            if (lobbyFilter.Region == RegionEnum.Unspecified)
            {
                filteredLobbies = filteredLobbies.Where(lobby => lobby.Value.Region == lobbyFilter.Region);
            }

            if (lobbyFilter.IsNotFull)
            {
                filteredLobbies = filteredLobbies.Where(x => x.Value.Players.Count < x.Value.MaximumSize);
            }

            return(filteredLobbies
                   .Select(x => x.Value)
                   .ToList());
        }
예제 #2
0
 public IEnumerable <Lobby> Get(LobbyFilter lobbyfilter)
 {
     return(lobbyService.GetLobbies(lobbyfilter));
 }