Обратные вызовы компонентов скрипта



Колбэк (от англ. callback) - или функция обратного вызова в программировании — передача исполняемого кода в качестве одного из параметров другого кода. Обратный вызов позволяет в функции исполнять код, который задаётся в аргументах при её вызове. Этот код может быть определён в других контекстах программного кода и быть недоступным для прямого вызова из этой функции. Некоторые алгоритмические задачи в качестве своих входных данных имеют не только числа или объекты, но и действия (алгоритмы), которые естественным образом задаются как обратные вызовы.

Constructor (Конструктор):
В конструкторе необходимо присвоить значения по умолчанию его общедоступным переменным (переменным, которые могут быть изменены создателем сцены). В конструкторе компонент скрипта (script component) не назначается ни объекту, ни сцене. Кроме того, вы не должны писать какую-либо логику, которая имеет побочный эффект, потому что, даже если он создан, компонент скрипта может быть удален после открытия сцены из-за обновления системы уровней (level system).

On Pre Init (При предварительной инициализации):
Это вызывается после того, как компонент скрипта назначается его объекту-владельцу в сцене. Как только вы перейдете в этот колбэк, вы можете быть уверены,что определенные пользователем переменные из этого экземпляра скрипта установлены. Однако другие компоненты скриптов других объектов могут быть еще не назначены. Таким образом, в предварительной инициализации не должно быть никакого логического кода, который полагается на другие компоненты скрипта. Например, в pre-init ManagedObject регистрируется в массиве управляемых объектов в текущем экземпляре миссии.

On Init (При инициализации):
Это вызывается после загрузки миссии и инициализации всех скриптовых компонентов объектов. Вы можете использовать любой тип логического кода внутри этого колбэка. Скрипты, созданные во время выполнения, также получают этот колбэк.

On Editor Init (При инициализации редактора):
Редактированная версия на инициализации. Вызывается при загрузке сцены из редактора. Помните, что в редакторе нет ни миссии, ни игрового состояния.

On Tick (Пометка):
Это вызывается для каждого компонента скрипта в каждом кадре миссии из одного и того же потока.

On Editor Tick (При редактировании отметки):
Редактируемая версия помечена.

Is Only Visual (Только визуально):
Если у вас есть компонент скрипта, который является только визуальным и не имеет никакого логического кода, который должен быть запущен на выделенном сервере, вы должны включить галочку true в этой функции. Это гарантирует, что этот тип скриптов не будет выполняться на выделенном сервере.

On Editor Variable Changed (При изменении переменной редактора):
Это вызывается в редакторе всякий раз, когда пользователь изменяет общедоступную переменную в этом компоненте скрипта. Этот обратный вызов может использоваться для любого изменения состояния визуальной логики, если сценоделу нужна мгновенная обратная связь в редакторе сцен.

OnRemoved (При удалении):
Вызывается при удалении объекта или компонента скрипта. Если у вас есть какие-либо выделенные объекты, которые хранятся где-то еще (например, статические контейнеры (static containers)), вы можете использовать этот колбэк, чтобы убедиться, что они не проникли в сцену.




- используйте эту кнопку если вы обнаружили ошибку/искажение содержимого/отсутствие контента в новости или если хотите сообщить администрации о выходе новой версии мода и т.п.

Комментариев 0

Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.

Онлайн

Сейчас на сайте: 52
Гостей: 51

Пользователи: 
- отсутствуют

Последние комментарии

MOD"ГРАЖДАНСКАЯ ВОЙНА В РОССИИ 1917-1922" (Варбанд)
Чикабой, Сегодня, 14:19
livaiui, Мод спарта есть от создателя мода дарк ейдж 1200. У мода очень много минусов (гражданская...
Флудилка V3
Чикабой, Сегодня, 14:11
Привет народ, сайт что-то приуныл   ...
ПРОХОЖДЕНИЕ A WORLD OF ICE AND FIRE
michigan, Сегодня, 12:04
Cheppot_19, надо нажать"U" или же русскую"Г"...
MOD"ГРАЖДАНСКАЯ ВОЙНА В РОССИИ 1917-1922" (Варбанд)
livaiui, Сегодня, 07:24
Deznortennus, Блін, думав пограти в щось нормальне але знахожу тільки не допілені моди, тож граю на...
ПРОХОЖДЕНИЕ A WORLD OF ICE AND FIRE
michigan, Сегодня, 00:14
нужна помощь, в моде произошел баг, когда я уничтожаю любой отряд если в нем есть раненые (неважно...
MOD Ask Where A Lord Is
Deznortennus, Сегодня, 00:07
Darksider, на nexus mods...
MOD ACOK 6.2 - Combat Overhaul
Deznortennus, Сегодня, 00:06
lisard, загугли в ангомовному ком'юніті, а просто закопіпасть в гугл назву файлу. має знайти...
MOD"ГРАЖДАНСКАЯ ВОЙНА В РОССИИ 1917-1922" (Варбанд)
Deznortennus, Сегодня, 00:03
livaiui, звичайно, як і 99% модів на варбанд)...
MOD"ГРАЖДАНСКАЯ ВОЙНА В РОССИИ 1917-1922" (Варбанд)
livaiui, Вчера, 06:57
Хлопці, мод закинули?...