startPageNumber | The current page to list in the return results. |
resultPageSize | The size of the page requested. This determines the maximum number of matches contained in the list of matches passed into the callback. |
matchNameFilter | The 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. |
filterOutPrivateMatchesFromResults | Boolean that indicates if the response should contain matches that are private (meaning matches that are password protected). |
eloScoreTarget | The 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. |
requestDomain | The 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. |
callback | The callback invoked when this call completes on the MatchMaker. |
Coroutine This function is asynchronous and will complete at some point in the future, when the coroutine has finished communicating with the service backend.
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) { // ... } }