Понедельник, 23 Декабря 2024, 17:59

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Photon Cloud
Car3manДата: Четверг, 31 Марта 2016, 21:56 | Сообщение # 1
был не раз
Сейчас нет на сайте
Добавляю параметры к комнате на 1 клиенте

Hashtable h = new Hashtable();
h.Add("isStart", false);
PhotonNetwork.room.SetCustomProperties(h);

На втором клиенте, в лобби где идет цикл, перебирающий комнаты, чекаю его параметры, но возвращает 0 параметров

Hashtable h = rooms[i].customProperties;
Debug.Log(h.Count);
LertmindДата: Четверг, 31 Марта 2016, 23:02 | Сообщение # 2
заслуженный участник
Сейчас нет на сайте
Может это решение http://forum.photonengine.com/discuss....n-lobby?
Там написано, что при создании комнаты надо указывать какие свойства обновлять:
Код
h = new Hashtable();
h.Add("levelName", chosenLevel);
ss = new string[2];
ss[0] = "levelName";
ss[1] = "gameType";

PhotonNetwork.CreateRoom(chosenLevel, true, true, 10, h, ss);


Сообщение отредактировал Lertmind - Четверг, 31 Марта 2016, 23:02
Car3manДата: Четверг, 31 Марта 2016, 23:31 | Сообщение # 3
был не раз
Сейчас нет на сайте
Lertmind, Как я понял, после обновы photon cloud, метод создания комнаты изменили и один аргумент ( как раз таки параметры) убрали
LertmindДата: Четверг, 31 Марта 2016, 23:53 | Сообщение # 4
заслуженный участник
Сейчас нет на сайте
Надо было на официальной странице смотреть, там написано про использование callback функций при изменении значений https://doc.photonengine.com/en....d-state, в твоём случае OnPhotonCustomRoomPropertiesChanged(Hashtable propertiesThatChanged). Здесь пример использования https://github.com/gabeoch....imer.cs, который должен у тебя лежать в проекте.

Сообщение отредактировал Lertmind - Четверг, 31 Марта 2016, 23:55
Car3manДата: Суббота, 02 Апреля 2016, 08:13 | Сообщение # 5
был не раз
Сейчас нет на сайте
Lertmind, Это же только, когда уже в самой комнате? А мне надо получить кастомные параметры в лобби

Добавлено (02 апреля 2016, 08:13)
---------------------------------------------
Разобрался, аргумент с параметрами все таки не убрали, а просто все засунули в класс RoomOptions
Вот код если кому надо

Hashtable h = new Hashtable();
h.Add("IsStart", false);

RoomOptions options = new RoomOptions();
options.isOpen = true;
options.isVisible = true;
options.maxPlayers = 4;
options.customRoomProperties = h;
options.customRoomPropertiesForLobby = new string[] { "IsStart" };
PhotonNetwork.CreateRoom("Room: " + countRooms, options, TypedLobby.Default);

options.customRoomPropertiesForLobby = new string[] { "IsStart" }; - Эта строчка делает параметры из массива доступными в лобби ( они должны быть и в хэштабл)

  • Страница 1 из 1
  • 1
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг