Страница 1 из 1

Photon Network не может прочитать CustomProperties

СообщениеДобавлено: 21 сен 2018, 15:12
infiane
В общем проблема такова. Я при создании комнаты пытаюсь задать количество ботов через CustomRoomProperties:
Синтаксис:
Используется 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");
}
 


И затем в другом скрипте уже беру оттуда данные, получив 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); // здесь задаются характеристики самому "показчику" комнаты в листинге комнат
 


Но юнити почему-то ругается на проблемную строку со словами: "NullReferenceException: Object reference not set to an instance of an object"
Без этой проблемной строки все работает идеально. Только данных о ботах никаких.

Буду очень рад, если поможете.

Re: Photon Network не может прочитать CustomProperties

СообщениеДобавлено: 21 сен 2018, 17:16
IDoNotExist
Синтаксис:
Используется csharp
roomOptions.CustomRoomProperties["BA"] = _botsAmount.ToString();
roomOptions.CustomRoomPropertiesForLobby = new string[] { "BA" };
 

Re: Photon Network не может прочитать CustomProperties

СообщениеДобавлено: 21 сен 2018, 18:10
infiane
IDoNotExist писал(а):
Синтаксис:
Используется csharp
roomOptions.CustomRoomProperties["BA"] = _botsAmount.ToString();
roomOptions.CustomRoomPropertiesForLobby = new string[] { "BA" };
 



Сработало, спасибо большое!