![]()
Raised
Rid-Aid-Ios
![]() ![]() offline
Опыт:
21,042Активность: |
Скорость атаки юнита
Я создал пассивку для одного из героев своей карты, но поскольку он ренжевик пришлось добавить одно действие перед всеми остальными:
Ждать(Расстояние между(Атакующий юнит)и(Атакованый юнит)/1800(Скорость снаряда)) + Скорость атаки(Атакующий юнит). Так вот в чем суть вопроса: как триггерно отловить скорость атаки юнита? |
![]() |
#1
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
youtube
сктыщь
![]() ![]() offline
Опыт:
8,025Активность: |
Бд в помощь |
![]() |
#2
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
Харгард
Epic
![]() ![]() offline
Опыт:
7,829Активность: |
Если в карте немного эффектов, могущих влиять на скорость атаки, то.
Есть еще вариант типа заставить твоего героя стрельнуть по невидимому противнику, находящемуся рядом, запустив при этом таймер. А когда этот невидимый юнит будет атакован дважды, стопать таймер. Если конечно, варик позволяет вернуть натикавшее время. |
![]() |
#3
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
Nerevar
I'll be back!
![]() ![]() offline
Опыт:
17,452Активность: |
D_Konst, а еще как вариант отслеживать атаку по цели
юзай поиск на предмет "отлов урона\отлов атаки\нанесение удара" а так ты делаешь изврат и тебе выше предлагают еще больший изврат чтобы его выполнить,вот и думай что тебе надо |
![]() |
#4
+1/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
Raised
Rid-Aid-Ios
![]() ![]() offline
Опыт:
21,042Активность: |
Харгард, Благодарю конечно, но я не хочу создавать переменных.
Nerevar, Смотри, весь прикол спелла в том, что если скорость атаки героя достаточно высока, тогда все хорошо, но если ее уменьшить, то атакованному юниту добавляется способность(-Защита) раньше чем до него долетит снаряд - отсюда вывод: если вы используете функцию(юнит атакован), то он щитается атакованным сразу же когда был отдан приказ, но не когда юнит атаковал и по етой причине я хочу отловить скорость атаки. В карте у героя "время перезарядки" равно 2, но у меня есть глубокие сомнения, что это на самом деле 2 секунды.
Nerevar, прошу подробней. . .
Отлов урона не подходит - читайте название темы:"Скорость атаки юнита"
Я сделал вывод, что 2 секундный интервал между атаками - это не 2 секунды реального времени, а
(две секунды реального времени*N). Кроме этого в карте будет около 60 предметов, 30 - 40 способностей, влияющих на скорость атаки Харгард, твой способ окажется слишком сложным, долгим, лаговым(ничего себе проверять юнита на 100 исключений=/) в моем случае. В игровых константах я отключил повышение скорости атаки от ловкости.
Ладно ребят, приеду домой разберусь (это будет 29.07.2012), а до тех пор тему прошу не закрывать.
(может у кого то будут еще какие соображения) Не стоит злоупотреблять форматированием! Отредактировано Nerevar, 18.07.2012 в 20:17. |
![]() |
#5
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
Nerevar
I'll be back!
![]() ![]() offline
Опыт:
17,452Активность: |
D_Konst, тебе нужно отловить сам момент удара? офк что для этого не подходит событие Юнит атакован
в поиске есть достаточно инфы насчет того,какими путями можно отловить сам момент удара и как узнать что это был именно удар героя,а не спелл например вкратце на гуи это делается так:создаешь 3 трига в первом при инициализации для каждого юнита на карте Триггер - добавить действие в 3 триг Выбранный юнит получает урон во втором - при входе юнита в игровую зону - Триггер - добавить действие в 3 триг Триггерный юнит получает урон в третьем без события(оно добавляется первым и вторым,т.е. юнит получает урон) - вот он момент получения урона у тебя есть два пути для отслеживания с руки эта атака или от спела -дать всем героям(если хочешь отследить атаку героя) скрытый яд,при этом в момент получения урона ты проверяешь наличие баффа от яда - если он есть - значит атака от героя и сразу удаляешь бафф,делаешь нужные действия -делать весь урон спелов от дамми(не обязательно делать спелы триггерными,можно просто чтобы их все кастовали дамми,тогда урон будет идти от них) - в момент урона проверяешь того кто его нанес - если не дамми,значит это герой и делаешь действия у каждого способа свои плюсы и минусы,выбирать тебе |
![]() |
#6
+1/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
Raised
Rid-Aid-Ios
![]() ![]() offline
Опыт:
21,042Активность: |
Я еще немного подумал: есть же не только (Переключающие юниты),(Атакованные юниты) и т.п. но еще и (Источник повреждений).
Если выбрать события не (Боевая единица - юнит атакован), а (Боевая единица - юнит получил урон(не помню есть ли такое событие - проверю когда приеду домой)), то ждать и вовсе не придется.
Таким образом не придется учитывать даже скорость атаки, но это пока догадки, поскольку Эдитора под руками нет. . . |
![]() |
#7
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
quq_CCCP
Я белый и пушистый!
![]() ![]() offline
Опыт:
96,104Активность: |
|
![]() |
#8
+1/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|
![]()
Raised
Rid-Aid-Ios
![]() ![]() offline
Опыт:
21,042Активность: |
Сегодня я проверил: Событие - Юнит атакован происходит в момент, когда был выпущен снаряд, но не когда был отдан приказ.
Я экспериментировал с игровыми константами и сделал несколько полезных выводов.
1. Прибавление к скорости атаки от ловкости не должно быть меньше чем 0.1 по крайней мере чтоб работал этот спелл.
2. Если прибавление к скорости атаки за единицу ловкости равно 0, то начинаются лаги с анимацией героев, вплоть до того, что спелл отказывается работать.
3. В обычных триггерах нет параметра, который бы отвечал за скорость атаки юнита.
Выводы:
1. В обычных триггерах нет параметра, который бы отвечал за скорость атаки юнита. 2. Отлов урона - это то, что надо(Плюс можно вычислить урон "От руки" и магический). |
![]() |
#9
+0/−0
Профиль |
Приват |
Поиск |
Цитата |
IP: Записан
|