Я не могу найти четкого способа отследить игроков, у которых есть такие вещи, как те, которые вышли на сцену, без написания грязного кода, такого как создание синхронизированного счетчика объектов
Из Master Client (PhotonNetwork.IsMasterClient
check), проверьте количество актеров, присоединившихся к комнате, когда присоединяется новый игрок (внутри IInRoomCallbacks.OnPlayerEnteredRoom
callback, читайте о обратных вызовах здесь ). Если число соответствует ожидаемому, загрузите уровень из мастер-клиента, используя метод Photon (PhotonNetwork.LoadLevel
, см. Справочный API здесь ), а не метод Unity по умолчанию. Все клиенты других присоединившихся игроков будут следовать автоматически.
Могу ли я отправлять сообщения между объектами без photonView в Unity C #?
Да. Используйте пользовательские события через PhotonNetwork.RaiseEvent
. Подробнее об этом здесь .