Скрипты (Scripts)


Компоненты скрипта - это исполняемые сценарии (executable scripts), которые прикрепляются к объектам и могут использоваться для реализации различных функций игрового процесса. В Bannerlord много логики игрового процесса написано через компоненты скрипта. Например стулья, брошенное оружие, осадные машины. Есть много разных обратных вызовов, которые могут быть унаследованы и заполнены этими компонентами скрипта.

Обратные вызовы
  • Constructor: в конструкторе необходимо присвоить значения по умолчанию его общедоступным переменным (переменным, которые могут быть изменены создателем сцены). В конструкторе компонент скрипта не назначается ни объекту, ни сцене. Кроме того, вы не должны писать никакой логики, которая имеет побочный эффект, потому что, даже если он создан, компонент скрипта может быть удален после открытия сцены из-за системы уровней обновления.
  • OnPreInit: вызывается после того, как компонент скрипта назначается его объекту-владельцу в сцене. Находясь в этом обратном вызове, вы можете быть уверены, что пользовательские переменные из этого экземпляра скрипта установлены. Однако другие компоненты скрипта других объектов могут быть еще не назначены. Таким образом, в предварительной инициализации не должно быть никакого логического кода, который полагается на другие компоненты скрипта. Например, в pre-init ManagedObject регистрируется в массиве управляемых объектов в текущем экземпляре миссии.
  • OnInit: вызывается после загрузки миссии и инициализации всех скриптовых компонентов объектов. Вы можете использовать любой тип логического кода внутри этого обратного вызова. Скрипты, созданные во время выполнения, также получают этот обратный вызов.
  • OnEditorInit: версия редактора при инициализации. Вызывается при загрузке сцены из редактора. Помните, что в редакторе нет миссии или состояния игры.
  • OnTick: вызывается для каждого компонента скрипта в каждом кадре миссии из одного и того же потока (thread).
  • OnEditorTick: версия редактора функции OnTick.
  • IsOnlyVisual: если у вас есть компонент скрипта, который является только визуальным и не имеет никакого логического кода, который должен выполняться на выделенном сервере, вы должны вернуть true в этой функции. Это гарантирует, что этот тип скриптов не будет работать на выделенном сервере.
  • OnEditorVariableChanged: вызывается в редакторе всякий раз, когда пользователь изменяет общедоступную переменную в этом компоненте скрипта. Этот обратный вызов может использоваться для любого изменения состояния визуальной логики, если сценоделу нужна мгновенная обратная связь в сцене редактора.
  • OnRemoved: вызывается при удалении объекта или компонента скрипта. Если у вас есть какие-либо выделенные объекты, которые хранятся где-то еще (например, статические контейнеры), вы можете использовать этот обратный вызов, чтобы убедиться, что они не просочились.




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

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

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

Онлайн

Сейчас на сайте: 68
Гостей: 66

Пользователи: 

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

MOD Honour&Glory (Честь и Слава)
Радомир, 28 марта 2025 23:40
В дискорде меня нет. Но разработчики и тут появляются. Поэтому написал коммент здесь. Да, кстати,...
MOD Honour&Glory (Честь и Слава)
epilect, 28 марта 2025 16:29
Радомир, Сегодня вышел патч,честно говоря я думал ты в дискорде по моду,так как по моему являешься...
MOD Honour&Glory (Честь и Слава)
Радомир, 28 марта 2025 15:27
Итак, поздравляю всех поклонников Варбанда с выходом новой версии популярного мода! Пока есть моды...
ATLAS
pda, 24 марта 2025 23:05
Нашёлся ещё более свежий русификатор, так что фанаты у игры боле-менее остались) Конечно и здесь...
ПЕТИЦИИ НА ПЕРЕВОД МОДОВ
timur karsli, 22 марта 2025 22:32
MOD Clone War Conquest - переведён. Можно убирать с списка...
MOD Clone Wars Conquest submod (Turmoil Across the Stars)
timur karsli, 22 марта 2025 21:47
Сделал руссификатор полный для данного мода. Прошу добавить его в описание, чтобы его могли...
Как русифицировать моды?
kitel, 21 марта 2025 20:22
У меня хрень какая то странная. На английском текст есть а в русском переводе нету. проверил все...
Быстрый перевод мода Warband гуглом
kitel, 21 марта 2025 20:00
У меня хрень какая то странная. На английском текст есть а в русском переводе нету. проверил все...
TLD Overhaul Submod
Sidney_87, 18 марта 2025 22:04
Ссылка на Дискорд, если кому-то интересно...