示例#1
0
 public void OnEnable()
 {
     m_ServerListResponse = new ISteamMatchmakingServerListResponse(OnServerResponded, OnServerFailedToRespond, OnRefreshComplete);
     m_PingResponse       = new ISteamMatchmakingPingResponse(OnServerRespondedPing, OnServerFailedToRespondPing);
     m_PlayersResponse    = new ISteamMatchmakingPlayersResponse(OnAddPlayerToList, OnPlayersFailedToRespond, OnPlayersRefreshComplete);
     m_RulesResponse      = new ISteamMatchmakingRulesResponse(OnRulesResponded, OnRulesFailedToRespond, OnRulesRefreshComplete);
 }
    public void OnEnable()
    {
        m_ServerListRequest = HServerListRequest.Invalid;
        m_ServerQuery       = HServerQuery.Invalid;

        m_ServerListResponse = new ISteamMatchmakingServerListResponse(OnServerResponded, OnServerFailedToRespond, OnRefreshComplete);
        m_PingResponse       = new ISteamMatchmakingPingResponse(OnServerResponded, OnServerFailedToRespond);
        m_PlayersResponse    = new ISteamMatchmakingPlayersResponse(OnAddPlayerToList, OnPlayersFailedToRespond, OnPlayersRefreshComplete);
        m_RulesResponse      = new ISteamMatchmakingRulesResponse(OnRulesResponded, OnRulesFailedToRespond, OnRulesRefreshComplete);
    }
示例#3
0
        public void RefreshHistoryServers()
        {
            ReleaseRequest();
            searchType = SearchType.History;

            if (m_ServerListResponse == null)
            {
                m_ServerListResponse = new ISteamMatchmakingServerListResponse(OnServerResponded, OnServerFailedToRespond, OnRefreshComplete);
            }

            m_ServerListRequest = SteamMatchmakingServers.RequestHistoryServerList(steamSettings.applicationId, filter.ToArray(), System.Convert.ToUInt32(filter.Count), m_ServerListResponse);
        }
示例#4
0
        public void RefreshLANServers()
        {
            ReleaseRequest();
            searchType = SearchType.LAN;

            if (m_ServerListResponse == null)
            {
                m_ServerListResponse = new ISteamMatchmakingServerListResponse(OnServerResponded, OnServerFailedToRespond, OnRefreshComplete);
            }

            m_ServerListRequest = SteamMatchmakingServers.RequestLANServerList(steamSettings.applicationId, m_ServerListResponse);
        }
示例#5
0
        public void Request(RequestType type, ResponseDelegate onResponse)
        {
            if (!SteamService.IsInitialized)
            {
                return;
            }

            if (_responder == null)
            {
                _responder = new ISteamMatchmakingServerListResponse(OnResponded, OnFailedToRespond, OnRefreshComplete);
            }

            CancelRequest();

            _onResponse = onResponse;

            var  filters     = _filters.ToArray();
            uint filterCount = (uint)_filters.Count;

            var appid = SteamService.SteamAppid;

            switch (type)
            {
            case RequestType.Favourites:
                _handle = SteamMatchmakingServers.RequestFavoritesServerList(appid, filters, filterCount, _responder);
                break;

            case RequestType.Friends:
                _handle = SteamMatchmakingServers.RequestFriendsServerList(appid, filters, filterCount, _responder);
                break;

            case RequestType.History:
                _handle = SteamMatchmakingServers.RequestHistoryServerList(appid, filters, filterCount, _responder);
                break;

            case RequestType.Internet:
                _handle = SteamMatchmakingServers.RequestInternetServerList(appid, filters, filterCount, _responder);
                break;

            case RequestType.LAN:
                _handle = SteamMatchmakingServers.RequestLANServerList(appid, _responder);
                break;
            }
        }
示例#6
0
 public ServerBrowser(ISteamSession session)
 {
     _session             = session;
     _mServerListResponse = new ISteamMatchmakingServerListResponse(OnServerResponded,
                                                                    OnServerFailedToRespond, OnRefreshComplete);
 }
示例#7
0
 public override uint RequestSpectatorServerList(uint iApp,MatchMakingKeyValuePair_t  [] ppchFilters,ISteamMatchmakingServerListResponse pRequestServersResponse)
 {
     CheckIfUsable();
     uint result = NativeEntrypoints.SteamAPI_ISteamMatchmakingServers_RequestSpectatorServerList(m_pSteamMatchmakingServers,iApp,ppchFilters,(uint) ppchFilters.Length,pRequestServersResponse.GetIntPtr());
     return result;
 }
示例#8
0
 public override uint RequestLANServerList(uint iApp,ISteamMatchmakingServerListResponse pRequestServersResponse)
 {
     CheckIfUsable();
     uint result = NativeEntrypoints.SteamAPI_ISteamMatchmakingServers_RequestLANServerList(m_pSteamMatchmakingServers,iApp,pRequestServersResponse.GetIntPtr());
     return result;
 }
示例#9
0
 public abstract uint RequestSpectatorServerList(uint iApp,MatchMakingKeyValuePair_t  [] ppchFilters,ISteamMatchmakingServerListResponse pRequestServersResponse);
示例#10
0
 public abstract uint RequestLANServerList(uint iApp,ISteamMatchmakingServerListResponse pRequestServersResponse);
 public abstract uint RequestSpectatorServerList(uint iApp,IntPtr [] ppchFilters,ISteamMatchmakingServerListResponse pRequestServersResponse);