Events

События (Events) – это узлы, которые вызываются из кода геймплея, для того, чтоб начать исполнение отдельных потоков с помощью EventGraph (событийного графа).

Они позволяют Blueprint’ам осуществлять серии действий в ответ на определенные события, которые происходят в игре, к примеру, это может быть начало игры, перезапуск уровня, получение ущерба и т.д. Вы можете получить доступ к этим  событиям в Blueprint’ах, чтоб внедрить новую функциональность или улучшить дефолтную функциональность. Любое количество событий может быть использовано в одном единственном EventGraph; хотя можно использовать только один каждого типа.

Каждое событие может реализовывать только единичный объект. Если вы хотите задействовать множество действий из одного события, вам нужно связать их вместе линейно

Event Level Reset (Событие: перезапуск уровня)

Этот Blueprint-событий узел доступен только в  Level Blueprint.

Этот Blueprint-событийный узел  исполняется только на сервере. У игр для одного игрока  локальный клиент рассматривается в качестве сервера.

Событие Level Reset посылает сигнал исполнения при перезапуске уровня. Это может быть полезным, когда вам нужно что-то запустить, как только уровень перезагрузился.

Event Actor Begin Overlap

Это событие выполняется, когда в одно и то же время встречается некоторое количество условий:

  • Реакция на столкновение, возникающая между актерами, должна позволять наложения (Overlaps).
  • Оба актера, которые исполняют события, должны иметь параметр Generate Overlap Events в значении  true.
  • И наконец, реакция обоих актеров начинает накладываться; наложения могут развиваться вместе, или один из актеров создает перекрытие, которое накладывается на другого.

Когда этот Blueprint-актер перекрывает актера, который содержится в переменной Player Actor, то это приводит к постепенному увеличению целой переменной Counter

Event Actor End Overlap

Это событие выполняется, когда в одно и то же время встречается некоторое количество условий:

  • Реакция на столкновение, возникающая между актерами, должна позволять наложения (Overlaps).
  • Оба актера, которые исполняют события, должны иметь параметр Generate Overlap Events в значении  true.
  • И наконец, реакция обоих актеров прекращает перекрытие; один отходит в сторону просто так или,  если второй уничтожен.

Когда этот Blueprint-актер прекращает перекрытие любого другого актера,  за исключением актера, который содержится в переменой Player Actor, то он уничтожит Актера, который его перекрывает.

Event Hit

Это событие будет исполняться, пока настройки столкновения одного из актеров включают Simulation Generates Hit Eventsset в значении true.

Если вы создаете передвижение, используя Sweep, то вы будете получать это событие, даже если не выбрали флажок. Это происходит до тех пор, пока Sweep не позволяет вам проходить мимо заблокированных объектов.

Описание:

My Comp – PrimitiveComponent – компонент на исполняющем актере, по которому был нанесен удар
Other – Actor – другой актер, вовлеченный в столкновение.
Other Comp – PrimitiveComponent – компонент на другом актере- Он вовлечен в столкновение и по нему нанесен удар.
Self Moved – Boolean – используется при получении удара от другого движения объекта (если в значении false), направления Hit Normal и Hit Impact Normal будут изменяться, чтоб отобразить силу, прилагаемую одним объектом для того, чтоб нанести удар по другому объекту.
Hit Location – Vector  – местоположение контакта между двумя столкнувшимися актерами.
Hit Normal – Vector  – направление столкновения
Normal Impulse – Vector – сила, с которой сталкиваются актеры
Hit – Struct HitResult – все данные, собранные в ударе. Вы можете разбить этот результат, чтоб получить доступ к отдельным бом данных.

В этом примере, когда Blueprint выполняет удар, то он будет вызывать эффект взрыва с точкой воздействия.

Описание:

Other Actor  – это актер, который перекрывает этот Blueprint.

Event Any Damage

Этот  Blueprint событийный узел  исполняется только на сервере. Для игр для одного игрока  локальный клиент рассматривается в качестве  сервера.

Это событие происходит, когда необходимо нанести общий ущерб, типа потопления или ущерба, наносимого окружающей среде. Это не касается точечного или радиального ущерба.

Описание:

Damage – Float – количество ущерба, который применяется к актеру
Damage Type – Object DamageType – объект, содержащий  дополнительные данные, которые касаются наносимого ущерба
Instigated By – Actor – актер, который наносит ущерб. Это может быть актер, который стреляет из пистолета или швыряет гранату.
Damage Causer – Actor – актер, который вызвал ущерб. Что-то типа пули или взрыва

Пример ущерба, применяемого к актеру, выходящему из воды: здоровье уменьшится и на экране появится  предупреждение

Event Point Damage

Этот  Blueprint-событийный узел  исполняется только на сервере. Для игр для одного игрока  локальный клиент рассматривается в качестве  сервера.

Точечный ущерб означает ущерб, наносимый любым оружием

Описание:

Damage – Float – величина ущерба, направленного в актера
Damage Type – Object DamageType – объект, содержащий дополнительные данные, которые касаются наносимого ущерба
Hit Location – Vector – локация, к которой привлекается ущерб
Hit Normal – Vector – направление столкновения
Hit Component – PrimitiveComponent – компонент на актере, по которому наносится удар
Bone Name – Name – название части тела, по которой наносится удар
Shot from Direction – Vector – направление, из которого исходит удар
Instigated By – Actor – актер, ответственный за ущерб. Это может быть актер, который стреляет из пистолета или швыряет гранату.
Damage Causer – Actor – актер, который вызвал ущерб. Что-то типа пули или взрыва.

В этом примере, если ущерб достигает цели, то здоровье актера уменьшается, но если удар приходится в голову актера, то здоровье принимает значение  -1.

Event Radial Damage

Этот  Blueprint событийный узел  исполняется только на сервере. Для игр для одного игрока  локальный клиент рассматривается в качестве  сервера.

Событие  Radial Damage вызывается, когда родительский актер для этой последовательности получает радиальный ущерб. Это может быть полезно, если события базируются на ущербе от взрыва или ущербе, который причиняется не напрямую.

Описание:

Damage Received – Float – объем ущерба, получаемого от события
Damage Type – Object DamageType – это – объект, который содержит дополнительные данные по наносимому ущербу
Origin – Vector – указывает локацию в 3D-пространстве, откуда происходит ущерб
Hit Info – Struct HitResult – все данные, собранные в ударе. Этот результат можно разбить, чтоб получить доступ к отдельным блокам данных.
Instigated By – Controller – контроллер (AI или игрок), который провоцирует ущерб.
Damage Causer Causer – Actor – актер, который служит причиной ущерба. Может быть пулей, снарядом, лазером или персонажем, который бьет другого.

Event Actor Begin Cursor Over

Когда вы используете интерфейс мышки, то при проведении курсором над актером,  будет исполняться это событие.

Как только мы проводим мышкой над актером, то значение scalar Parameter под названием Highlight в Dynamic Material Instance принимает значение  1.0.

Event Actor End Cursor Over

При использовании  интерфейса мышки, если убрать курсор мышки с актера, то событие запустится.

Таким образом,  Актер, который содержится в Target Notification, примет значение  hidden в игре.

Event Begin Play

Это событие задействуется для всех актеров при начале игры. Любые актеры, которые запешкованы после того, как начнется игры, вызовутся немедленно.

После начала игры этот актер получит здоровье (Health) в значении 1000 и счет (Score) равный 0.

Event End Play

Это событие запускается, когда актер прекращает свое существование в игровом мире.

Если актер уже не существует в Игровом мире, то нить (String) отключится, чтоб просигнализировать о причине вызова данного события.

Описание:

End Play Reason – enum EEndPlayReason – Перечисляемый тип, который сигнализирует о причине вызова Event End Play.

Event Destroyed

Это событие выполняется, когда актер уничтожен.

В этом примере переменная Score принимает значение  Value плюс  Score.

Event Tick

Это простое событие, которое вызывается в любом фрейме геймплея

Описание:

Delta – Float – эти выходные значения обозначают временные промежутками между фреймами.

Этот пример использует Delta-секунды, чтоб сформировать счетчик-таймер, который отображается в журнале с финальным тиком в значении  “Blast Off!”.

Event Receive Draw HUD

Это  событие доступно только в Blueprint Classes, которое наследуется из класса  HUD.

Это специализированное событие, которое позволяет Blueprints дорисовывать  HUD. Узлы  HUD draw требует, чтоб  событие, их создающее, было единственным.

Описание:

Размер  X – Int – ширина окна рендеринга в пикселях
Размер  Y – Int – высота окна рендеринга в пикселях

Это действие создаст кликабельный Hit-бокс в центре окна рендеринга с красным боксом за ним, чтоб вы могли его видеть.

Custom Event

Узел  Custom Event – это специализированный узел с собственным рабочим потоком.