Legacy Documentation: Version 2018.2 (Go to current version)
LanguageEnglish
  • C#

NetworkMatch.ListMatches

Suggest a change

Success!

Thank you for helping us improve the quality of Unity Documentation. Although we cannot accept all submissions, we do read each suggested change from our users and will make updates where applicable.

Close

Submission failed

For some reason your suggested change could not be submitted. Please <a>try again</a> in a few minutes. And thank you for taking the time to help us improve the quality of Unity Documentation.

Close

Cancel

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) { // ... } }
对文档有任何疑问,请移步至开发者社区提问,我们将尽快为您解答