По логике проекта комнатам задаётся ряд параметров, среди которых есть "ставка" - некоторое количество денег, которое игрок выиграет или проиграет по итогу партии. А сам игрок должен иметь возможность войти в комнату по коду (названию). Происходит это так:
// вызывается по нажатию кнопки
public void TryJoinGame() {
PhotonNetwork.JoinRoom(roomTitle);
}
// вызывается, когда нужная комната не существует или заполнилась
public override void OnJoinRoomFailed(short returnCode, string message) {
// warn : cant join room
}
// вызывается, когда присоединился к комнате
public override void OnJoinedRoom() {
PhotonNetwork.LoadLevel(targetGameSceneIndex);
}
Колбек OnJoinedRoom не передаёт параметров комнаты, потому не ясно как проверить её данные. В параметрах RoomOptions.CustomRoomProperties есть значение, хранящее, в том числе, ставку:
private Hashtable Properties() {
return new Hashtable() {{ "properties", mode.ToString() + ";" +
type.ToString() + ";" + payoutCoins.ToString() }};
}
Но можно ли как-нибудь получить к ним доступ, и, желательно, до присоединения к комнате, чтобы не трогать логику колбеков выхода из комнаты?
UPD. Я использую Photon's PUN2, поэтому мне не доступна функция PhotonNetwork.GetRoomList(), с посощью которой можно было бы перебрать все комнаты, найти нужные и проверить параметры.