Добавлен Ronnie
Проблема возможно стара, но я пока не нашёл нормального решения.
По дефолту существует способность, заставляющая любую боевую единицу иногда менять свою текущую позицию на местности. Типа симуляция того, что она просто так бродит по округе. Она же «бродячий (нейтральный)». Обычно имеется у всякой нейтральной мишуры, типа овец и сцинков. Однако если эту способность поставить на враждебного юнита, его поведение станет более ненормальным. Он будет постоянно убегать, с огромной неохотой вступая в бой.
А вопрос заключается в том, можно ли как-то эту систему обхитрить? Я пробовал через триггеры блокировать эту способность при атаке этого юнита. Но при попадании по юниту заклинанием эффект не работает. Также была идея с отключением заклинания при приближении врага на определенное расстояние, но это опятьже не подходило, так как это работало даже когда враг находился за препятствующим обзору элементу декораций.
Вобщем вопрос такой - можно ли как-то по умному обойти эту систему? Или сделать аналог способности через триггеры или jass? Главное чтобы мобы двигались не одновременно, будто по команде...
Принятый ответ
Самый простейший гуи пример:
С - каждый 1-10 секунд игрового времени
Д - Выбрать всех юнитов, у которых есть способность пустышка "свой бродячий"
У - текущий приказ не равен "attack"
Д - Приказать выбраный юнит, перейти нападая на противников, в случайную точку, зона "игровая карта"
С - каждый 1-10 секунд игрового времени
Д - Выбрать всех юнитов, у которых есть способность пустышка "свой бродячий"
У - текущий приказ не равен "attack"
Д - Приказать выбраный юнит, перейти нападая на противников, в случайную точку, зона "игровая карта"
Пустышку "свой бродячий", делаем на основе чего угодно, например из ясновидения вертолётов, или грабежа с 0 харатеристиками
На jass / lua
Добавляем всех бродячих при создании в группу, на у внутри тоже самое, только без утечек
На jass / lua
Добавляем всех бродячих при создании в группу, на у внутри тоже самое, только без утечек
Для чего проверка на условие текущий приказ != "attack", ну чтобы юнит дошёл до цели изначальной, при малом периоде брожения, юнит может не дойти до точки и развернуться
`
ОЖИДАНИЕ РЕКЛАМЫ...
Чтобы оставить комментарий, пожалуйста, войдите на сайт.
С - каждый 1-10 секунд игрового времени
Д - Выбрать всех юнитов, у которых есть способность пустышка "свой бродячий"
У - текущий приказ не равен "attack"
Д - Приказать выбраный юнит, перейти нападая на противников, в случайную точку, зона "игровая карта"
На jass / lua
Добавляем всех бродячих при создании в группу, на у внутри тоже самое, только без утечек
Отредактирован scopterectus
Ronnie:
Ronnie:
ModuloReal(GenUnitFacing(u)+ GetRandomReal(-50,50),360)