Синтаксис:
Используется csharp
RoomOptions roomOptions = new RoomOptions() { IsVisible = true, IsOpen = true, MaxPlayers = (byte)_maxPlayers};
roomOptions.CustomRoomProperties = new ExitGames.Client.Photon.Hashtable();
roomOptions.CustomRoomProperties["BA"] = _botsAmount.ToString();
if (PhotonNetwork.CreateRoom(_serverName, roomOptions, TypedLobby.Default))
{
print("room created succesfully");
}
else
{
print("OnClick_CreateRoom failed");
}
roomOptions.CustomRoomProperties = new ExitGames.Client.Photon.Hashtable();
roomOptions.CustomRoomProperties["BA"] = _botsAmount.ToString();
if (PhotonNetwork.CreateRoom(_serverName, roomOptions, TypedLobby.Default))
{
print("room created succesfully");
}
else
{
print("OnClick_CreateRoom failed");
}
И затем в другом скрипте уже беру оттуда данные, получив RoomInfo(единичный элемент которого будет называться room внутри цикла) из PhotonNetwork.GetRoomList() внутри OnReceivedRoomListUpdate():
Синтаксис:
Используется csharp
string botsAmount = (string)room.CustomProperties["BA"]; // проблемная строка
ServerListItem serverListItem = _serversListingButtons[index];
serverListItem.SetRoomDescription(room.Name, room.PlayerCount.ToString(), room.MaxPlayers.ToString(), botsAmount); // здесь задаются характеристики самому "показчику" комнаты в листинге комнат
ServerListItem serverListItem = _serversListingButtons[index];
serverListItem.SetRoomDescription(room.Name, room.PlayerCount.ToString(), room.MaxPlayers.ToString(), botsAmount); // здесь задаются характеристики самому "показчику" комнаты в листинге комнат
Но юнити почему-то ругается на проблемную строку со словами: "NullReferenceException: Object reference not set to an instance of an object"
Без этой проблемной строки все работает идеально. Только данных о ботах никаких.
Буду очень рад, если поможете.