Сетевые атрибуты добавляются к функциям скриптов Network Behaviour, чтобы заставить их работать либо на клиенте, либо на сервере.
Эти атрибуты могут использоваться для методов игрового цикла Unity, таких как Start или Update, а также для других реализованных методов.
{% hint style="info" %} ПРИМЕЧАНИЕ: при использовании абстрактных или виртуальных методов атрибуты также должны быть применены к переопределяемым методам. {% endhint %}
- [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 для запуска кода на клиентах, когда они получают обновление с сервера.