Photon Unity的GetRoomList()总是空的

本文关键字:Unity GetRoomList Photon | 更新日期: 2023-09-27 18:11:26

目前我正在尝试为我的游戏与光子网络系统配对系统。我已经可以创建房间并加入其中,但是如果我尝试使用PhotonNetwork.getRoomList()函数,数组总是空的。根据网络状态字符串,我知道我在标准大厅。

我代码:

void fillBrowser()
{
    Debug.Log("Checking for Rooms");
    if(PhotonNetwork.insideLobby)
    {
        Debug.Log("Inside a Lobby");
        Debug.Log(PhotonNetwork.GetRoomList().ToString());
    }
}

的回报:

检查房间

Inside a Lobby

RoomInfo []

Photon Unity的GetRoomList()总是空的

输出RoomInfo[]表示它返回了RoomInfo s的数组。你得到这个输出是因为你在一个数组上调用了ToString()。将返回的RoomInfo[]保存到一个变量中,循环它们,并查看它们包含什么信息。

void fillBrowser()
{
    Debug.Log("Checking for Rooms");
    if(PhotonNetwork.insideLobby)
    {
        Debug.Log("Inside a Lobby");
        var rooms = PhotonNetwork.GetRoomList();
        foreach(var room in rooms) 
             Debug.Log("Found room: " + room.ToString());
    }
}
using System.Linq;
Debug.Log(string.Concat(GetRoomList().Select(x => x.name + "'n'r").ToArray()));

using System.Linq;
GetRoomList().ToList().ForEach(x => { Debug.Log(x.name); });

对不起,我回复晚了一点。只需添加PhotonNetwork "。autoJoinLobby = true;" in the void Awake()功能和一切都会顺利运行;)