Version: 2018.2
public Coroutine ListMatches (int startPageNumber, int resultPageSize, string matchNameFilter, bool filterOutPrivateMatchesFromResults, int eloScoreTarget, int requestDomain, DataResponseDelegate<List<MatchInfoSnapshot>> callback);

Parameters

startPageNumberThe current page to list in the return results.
resultPageSizeThe size of the page requested. This determines the maximum number of matches contained in the list of matches passed into the callback.
matchNameFilterThe text string name filter. This is a partial wildcard search against match names that are currently active, and can be thought of as matching equivalent to *<matchNameFilter>* where any result containing the entire string supplied here will be in the result set.
filterOutPrivateMatchesFromResultsBoolean that indicates if the response should contain matches that are private (meaning matches that are password protected).
eloScoreTargetThe Elo score target for the match list results to be grouped around. If used, this should be set to the Elo level of the client listing the matches so results will more closely match that player's skill level. If not used this can be set to 0 along with all other Elo refereces in funcitons like NetworkMatch.CreateMatch or NetworkMatch.JoinMatch.
requestDomainThe request domain for this request. Only requests in the same domain can interface with each other. For example if a NetworkMatch.CreateMatch is made with domain 1, only ListMatches that also specify domain 1 will find that match. Use this value to silo different (possibly incompatible) client versions.
callbackThe callback invoked when this call completes on the MatchMaker.

Returns

Coroutine This function is asynchronous and will complete at some point in the future, when the coroutine has finished communicating with the service backend.

Description

The function to list ongoing matches in the MatchMaker.

The NetworkMatch.ListMatches function returns page-based results of the currently active matches that agree with the supplied parameter to this function.

You should call this initially with a page number starting at zero, and a reasonable page size (for example, 10). Too large a page will slow down the time required to download the information related to these matches. The callback will be invoked with data containing up to the resultPageSize as the number of matches (for example, if startPageNumber is currently 3 and resultPageSize is 5, the data passed into the callback will be the matches that correspond to results 15-20 in the list of results). Then you can call this function repeatedly, incrementing the startPageNumber and keeping the resultPageSize and matchNameFilter fixed in order to keep the results semi stable (matches may be created or destroyed as you call into this and the results will reflect that).

using UnityEngine;
using UnityEngine.Networking;
using UnityEngine.Networking.Match;
using System.Collections.Generic;

public class ExampleScript : MonoBehaviour { void Start() { NetworkManager.singleton.StartMatchMaker(); NetworkManager.singleton.matchMaker.ListMatches(0, 10, "", true, 0, 0, OnMatchList); }

public void OnMatchList(bool success, string extendedInfo, List<MatchInfoSnapshot> matches) { // ... } }
Copyright © 2023 Unity Technologies
优美缔软件(上海)有限公司 版权所有
"Unity"、Unity 徽标及其他 Unity 商标是 Unity Technologies 或其附属机构在美国及其他地区的商标或注册商标。其他名称或品牌是其各自所有者的商标。
公安部备案号:
31010902002961