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

Id gameObject на сервере

СообщениеДобавлено: 21 авг 2018, 08:23
LexaMV
Осваиваю Unity Photon Network. Возник вопрос. При загрузке на master сервере по скрипту у меня создаются объекты и с помощью команды PhotonNetwork.Instance создаются объекты и раскидываются по полю боя. Я всех их вставляю в массив, и в дальнейшем проводя манипуляции с массивом, осуществляю игровую логику.

Обнаружил, что если создать master сервер и попытаться подключится к нему, скрипт снова запускается и на поле боя появляются по 2 копии самих объектов. Соответственно я скрипт создания объектов на клиенте вырубаю, но возник вопрос как получить ссылку на злосчастный массив? Я думаю что на master сервере он создан, вот только не могу получить его.Думал что можно получить viewId gameObject на сервере, и потом выполнить PhotonNetwok.FInd(viewId).gameobject, но viewID выдает 0.

Re: Id gameObject на сервере

СообщениеДобавлено: 03 окт 2018, 09:27
maksimov
LexaMV писал(а):При загрузке на master сервере

Речь видимо не о "мастер сервере", а о "мастер клиенте"? В терминологии Фотона существует и то, и другое. И это совершенно разные вещи.

LexaMV писал(а):скрипт снова запускается и на поле боя появляются по 2 копии самих объектов

Выполняйте код инстанцирования объектов только на мастер клиенте.
Синтаксис:
Используется csharp
if(PhotonNetwork.isMasterClient)
{
    // тут код, который должен выполняться только на мастерклиенте
}
 


LexaMV писал(а):возник вопрос как получить ссылку на злосчастный массив?

На подключившемся клиенте, пробегитесь по объектам (инстанцированным на мастерклиенте) и заполните ими массив.