Атрибуты

Сетевые атрибуты добавляются к функциям скриптов Network Behaviour, чтобы заставить их работать либо на клиенте, либо на сервере.

Эти атрибуты могут использоваться для методов игрового цикла Unity, таких как Start или Update, а также для других реализованных методов.

ПРИМЕЧАНИЕ: при использовании абстрактных или виртуальных методов атрибуты также должны быть применены к переопределяемым методам.

  • [Server] Только сервер может вызвать этот метод (выдает предупреждение при вызове на клиенте).

  • [ServerCallback] То же, что и [Server], но не выдает предупреждение при вызове на клиенте.

  • [Client] Только клиент может вызвать этот метод (выдает предупреждение при вызове на сервере).

  • [ClientCallback] То же, что и [Client], но не выдает предупреждение при вызове на сервере.

  • [Command] Вызовите это с клиента, чтобы запустить эту функцию на сервере. Убедитесь в правильности ввода и т.д. Это невозможно вызвать с сервера. Но вы можете использовать это как оболочку для другой функции, если вы хотите вызвать ее и с сервера тоже. Смотрите также удаленные действия и типы данных.

  • [ClientRpc] Сервер использует удаленный вызов процедуры (RPC) для запуска этой функции на клиентах. Смотрите также: удаленные действия.

  • [TargetRpc] Это атрибут, который может быть применен к методам класса Network Behaviour чтобы разрешить их вызов на клиентах с сервера. В отличие от атрибута ClientRpc, функции с данным атрибутом вызываются на одном отдельном целевом клиенте, а не на всех готовых клиентах. Смотрите также: удаленные действия.

  • [SyncVar] SyncVars используются для автоматической синхронизации переменной с сервера со всеми клиентами. Не назначайте их от клиента, это бессмысленно. Не позволяйте им быть нулевыми, вы получите ошибки. Вы можете использовать int, long, float, string, Vector3 и т.д. (все простые типы), а также Network Identity и игровой объект, если к игровому объекту прикреплен Network Identity. Вы можете использовать SyncVar Hooks для запуска кода на клиентах, когда они получают обновление с сервера.

Last updated