Photonエンジンを使ってランダムマッチメイキングゲームを作っています。一定の時間内に、プレーヤーをさまざまなユーザーと一致させたいと考えています。PlayerA が PlayerB とプレイした場合、30 分間は再度プレイできません。この種のシステムを実行する最善の方法は何ですか?
いくつかのアルゴリズムを試しますが、うまく適合しません。
public override void OnJoinedRoom()
{
if(PhotonNetwork.isMasterClient)
StartCoroutine("StartWaiting");
theSameGame = false;
var photonPlayer = PhotonNetwork.Instantiate("PhotonPlayerKO", Vector3.zero, Quaternion.identity, 0) as GameObject;
photonPlayer.name = "Local Player";
if(PhotonNetwork.playerList.Count() > 1 && !PhotonNetwork.isMasterClient)
photonViewOfManager.RPC("MyNameIs", PhotonTargets.Others, PlayerInfos.thePlayersName);
//Sending player name to other player to check whether this name is playable or not ?
if(!PhotonNetwork.isMasterClient)
StartCoroutine("CheckError");
}
動作しますが、時間がかかるなどの欠点があります。より良い解決策のアイデアはありますか?