Введение

Добрый день, здесь хочу рассказать о простой и гибкой возможности создания системы мульти-выстрела при атаках единиц, чтобы каждый раз когда единица атакует кого-либо, то этой же атаке подвергались и соседние единицы.
Вообще этот способ появился только в обновлении 5.0 и поэтому этот способ очень мало освещён и мало кому известен. Благодаря этому способу можно например проигрывать уникальные анимации при срабатывании мультивыстрела, модифицировать получаемый урон, и даже запускать отдельные цепочки эффектов для целей пораженных мультивыстрелом.
Например можно сделать так чтобы вылетало несколько игл от атаки гидралиска, и все пораженные цели этими дополнительными иглами, получили эффект кровотечения наносящий немного периодического урона.

В чём преимущество подхода?

Возможность дать один и тот же бафф мультишот атак любым боевым единицам, без нужды редактировать структуру эффектов оружий каждой единицы, которым хотите добавить мультишот. Просто добавил бафф в Behaviors -> мультишот работает!

Реализация

Нам понадобятся:

  • 1 Behavior типа Attack Modifier # например с id: Multishot
  • 1 Эффект типа Search Area # например с id: Multishot@Pattern
Да, это всё что нам понадобится для системы мультишот атак.

Для начала разберём бехавиор модификатора атаки.

Этот тип Behavior'а предназначен для модификации каждой атаки перед самой атакой. И он как раз имеет прямую поддержку системы Multishot.
Чтобы он начал работать как мультишот необходимо в его поле Multishot Search Pattern указать созданный вами эффект Multishot@Pattern
А также не забудьте указать шанс срабатывания в поле Chance выше нуля.

Теперь разберём эффект

Этот эффект Search Area на самом деле не запускается игрой в момент когда надо сделать мультишот атаки. На деле он является всего лишь шаблоном, в котором заданы настройки областей, фильтров цели точек запуска и попадания и прочего, который используется самим бехавиором модификатора атаки.

Как настроить эффект для мультивыстрела?

  • Добавить в поле Areas область, в которой задать её радиус, и ещё можно указать максимальное количество целей в которых дополнительно выстрелить.
  • НИ-ЧЕ-ГО не выбирать в поле effect для областей, эти области нужны только для хранении информации радиуса и количества целей
  • В поле Search Flags поставить галку на Multishot
  • Настроить поле Search Filters определяющие по каким объектам нужно или нельзя совершать выстрел. Например если нужно чтобы мультивыстрел срабатывал только на наземных единиц, то для Ground укажите как Required

Система готова!

Осталось только добавить ваш бехавиор Multishot любой единице в её поле Behaviors
`
ОЖИДАНИЕ РЕКЛАМЫ...