XGM Forum
Сайт - Статьи - Проекты - Ресурсы - Блоги

Форуме в режиме ТОЛЬКО ЧТЕНИЕ. Вы можете задать вопросы в Q/A на сайте, либо создать свой проект или ресурс.
Вернуться   XGM Forum > Warcraft> Академия: форум для вопросов
Ник
Пароль
Войти через VK в один клик
Сайт использует только имя.

Закрытая тема
 
Raised
Rid-Aid-Ios
offline
Опыт: 21,042
Активность:
Скорость атаки юнита
Я создал пассивку для одного из героев своей карты, но поскольку он ренжевик пришлось добавить одно действие перед всеми остальными:
Ждать(Расстояние между(Атакующий юнит)и(Атакованый юнит)/1800(Скорость снаряда)) + Скорость атаки(Атакующий юнит). Так вот в чем суть вопроса: как триггерно отловить скорость атаки юнита?
Старый 18.07.2012, 12:54
youtube
сктыщь
offline
Опыт: 8,025
Активность:
Бд в помощь
Старый 18.07.2012, 13:06
Харгард
Epic
offline
Опыт: 7,829
Активность:
Если в карте немного эффектов, могущих влиять на скорость атаки, то.
  1. Завести массив где хранятся стартовые значения скорости атаки героев.
  2. По одному проверять, есть ли на атакующем бафы/дебафы/предметы, влияющие на скорость атаки. Если есть, то изменять значение переменной из массива на то прибавлять то значение, которое добавляет эффект/предмет.
  3. Подставить полученное значение в твою формулу.
Есть еще вариант типа заставить твоего героя стрельнуть по невидимому противнику, находящемуся рядом, запустив при этом таймер. А когда этот невидимый юнит будет атакован дважды, стопать таймер.
Если конечно, варик позволяет вернуть натикавшее время.
Старый 18.07.2012, 13:31
Nerevar
I'll be back!
offline
Опыт: 17,452
Активность:
D_Konst, а еще как вариант отслеживать атаку по цели
юзай поиск на предмет "отлов урона\отлов атаки\нанесение удара"
а так ты делаешь изврат и тебе выше предлагают еще больший изврат чтобы его выполнить,вот и думай что тебе надо
Старый 18.07.2012, 13:38
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.
Старый 18.07.2012, 19:53
Nerevar
I'll be back!
offline
Опыт: 17,452
Активность:
D_Konst, тебе нужно отловить сам момент удара? офк что для этого не подходит событие Юнит атакован
в поиске есть достаточно инфы насчет того,какими путями можно отловить сам момент удара и как узнать что это был именно удар героя,а не спелл например
вкратце на гуи это делается так:создаешь 3 трига
в первом при инициализации для каждого юнита на карте Триггер - добавить действие в 3 триг Выбранный юнит получает урон
во втором - при входе юнита в игровую зону - Триггер - добавить действие в 3 триг Триггерный юнит получает урон
в третьем без события(оно добавляется первым и вторым,т.е. юнит получает урон) - вот он момент получения урона у тебя есть два пути для отслеживания с руки эта атака или от спела
-дать всем героям(если хочешь отследить атаку героя) скрытый яд,при этом в момент получения урона ты проверяешь наличие баффа от яда - если он есть - значит атака от героя и сразу удаляешь бафф,делаешь нужные действия
-делать весь урон спелов от дамми(не обязательно делать спелы триггерными,можно просто чтобы их все кастовали дамми,тогда урон будет идти от них) - в момент урона проверяешь того кто его нанес - если не дамми,значит это герой и делаешь действия
у каждого способа свои плюсы и минусы,выбирать тебе
Старый 18.07.2012, 20:12
Raised
Rid-Aid-Ios
offline
Опыт: 21,042
Активность:
Я еще немного подумал: есть же не только (Переключающие юниты),(Атакованные юниты) и т.п. но еще и (Источник повреждений).
Если выбрать события не (Боевая единица - юнит атакован), а (Боевая единица - юнит получил урон(не помню есть ли такое событие - проверю когда приеду домой)), то ждать и вовсе не придется.
Таким образом не придется учитывать даже скорость атаки, но это пока догадки, поскольку Эдитора под руками нет. . .
Старый 19.07.2012, 12:15
quq_CCCP
Я белый и пушистый!
offline
Опыт: 96,104
Активность:
D_Konst, забей на этот способ, это некуда негодится проверять по скорости снаряда ударил ли он юнита или нет...
Тут делают все по другому методу (на Jass)
Вот тут пример как это грамотно и безгеморройно делается пример
Старый 19.07.2012, 17:48
Raised
Rid-Aid-Ios
offline
Опыт: 21,042
Активность:
Сегодня я проверил: Событие - Юнит атакован происходит в момент, когда был выпущен снаряд, но не когда был отдан приказ.
Я экспериментировал с игровыми константами и сделал несколько полезных выводов.
1. Прибавление к скорости атаки от ловкости не должно быть меньше чем 0.1 по крайней мере чтоб работал этот спелл.
2. Если прибавление к скорости атаки за единицу ловкости равно 0, то начинаются лаги с анимацией героев, вплоть до того, что спелл отказывается работать.
3. В обычных триггерах нет параметра, который бы отвечал за скорость атаки юнита.
Выводы:
1. В обычных триггерах нет параметра, который бы отвечал за скорость атаки юнита.
2. Отлов урона - это то, что надо(Плюс можно вычислить урон "От руки" и магический).
P.S.(Ответ получен, думаю тему можно закрывать; quq_CCCP,Nerevar благодарю за помощь)
И кто это в нас так форматирование не любит?
Прикрепленные файлы
Тип файла: w3x Desolate.w3x (84.7 Кбайт, 8 просмотров )
Старый 21.07.2012, 07:51
Закрытая тема

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы можете скачивать файлы

BB-коды Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход



Часовой пояс GMT +3, время: 15:36.