Basic

Основной пример иллюстрирует, как управлять объектами пользовательского интерфейса из объекта Player, используя локально созданный экземпляр Prefab'a PlayerUI с SyncVars и Событиями

Канвас сцены имеет скрипт CanvasUI с ссылкой на ребенка:

Prefab'ы PlayerUI UI фрагементы, у которых есть скрипт PlayerUI с ссылкой на их дочерний объект:

Скрипт игрока на объекте Player имеет ссылку на Prefab PlayerUI и дерево из SyncVars:

Скрипт игрока также содержит три события, которые вызываются из SyncVar hooks:

public event System.Action<int> OnPlayerNumberChanged;
public event System.Action<Color32> OnPlayerColorChanged;
public event System.Action<int> OnPlayerDataChanged;

Когда объект игрока спавнится на клиенте, PlayerUI создает ребенка в PlayersPanel который лежит в канвасе при помощи ссылки на скрипт CanvasUI, и метод SetPlayer вызывается с соответствующей ссылкой на скрипт игрока. Скрипт PlayerUI подписывается на описанные выше события и обновляет свой UI когда SyncVars обновляются с сервера.

Last updated