Добавлен Nelloy
Захотел сделать такую банальную штуку... С регулировкой шанса и силы. Если с заклинаниями (планируются только триггерные) проблем совершенно нет, то для физ критов нужно отлавливать только физ урон. Решил спросить у знающих людей ссылочку на саму систему отлова физ урона или общего направления в чтении мануалов. Самое простое, что приходит в голову - проверка типа урона, но соответствующих функций в JPNG не нашел.
Принятый ответ
Я расскажу тебе чудо: Мертвые не умеют наносить урон. Что из этого следует? Из этого следует, что весь спеллдемедж должен наносить не герой, а даммик, стоящий где то на респе, который никогда не умрет.
А из этого следует, что единственный урон, который сможет нанести герой - физический.
Маня, переделовай.
А из этого следует, что единственный урон, который сможет нанести герой - физический.
Маня, переделовай.
`
ОЖИДАНИЕ РЕКЛАМЫ...
Чтобы оставить комментарий, пожалуйста, войдите на сайт.
Отлавливаем урон при случайном числе целогики/реале (разницы особой нет) выдаем дополнительный обычный урон в коэффициенте на умножение. Для визуализации плавающий текст (переменная).
Отредактирован Nelloy
Не сложно отловить весь урон
Да и в будующем было бы полезно научиться их различать для реализации каких-нибудь мудреных пассивок
Есть мысли на счет глобалок с ~0 таймером жизни, которые бы перекрывали на этот промежуток времени срабатывание крита для игрока применившего спелл, но не оч элегантное решение. И исходя из этого другой вопрос: после нанесения урона, что сработает раньше, висящий после команды 0-й таймер или событие полученного урона?
Отредактирован Snowik
Вот ты имеешь способность, скажем "Фаербол", при касте ты разумеется генерируешь случайное число и проверяешь на совпадение с установленным значением шанса критического эффекта, я думаю тут и так все понятно с этим.
Дальше у тебя есть условный оператор с помощью которого ты проверяешь совпадает ли значение, то есть "Крит это будет, или нет?".
Если крит, то умножаешь изначально выставленный тобой урон, разумеется с учетом уровней способности, на коэффициент кратности урона.
Если не крит, то наносишь стандартный урон.
По поводу автоатак, проще конечно написать собственную автоатаку, даже если и не проще то в дальнейшем все равно пригодится.
И аналогичным способом проделать и с атакой.
Отлов урона и прибавление умноженной его части тоже хорошо, но это занимает очень много процессов, в общем так просто это не сделать, существуют даже невидимые на панели способности, и даже способ скрыть другие, советую обратить внимание на них что бы не озадачивать себя, или же просто использовать стандартный крит или написать собственную (способность) крит.
или же да, как писал про свою авто атаку Snowik.
А так как у Jass-а возможностей мало, приходится действовать самыми изощренными методами, (как я ранее указал "сделать это не так просто")
Но если тебе очень нужно, то советую посмотреть наработки систем отлова урона, и внедриться в код что бы понять как это работает, и на этой основе лепить уже свое.
Завтра надо будет потестить
Nelloy:
Есть еще одно решение твоей проблемы и оно мягко говоря не самое лучшее: xgm.guru/p/wc3/catch-dmg
А на счет булевых значений, которые будут пользоваться таймерами, то тут хочу сказать что без локальных переменных не обойтись, иначе говоря почитай о jass, там есть пример со спеллом щит, который поглощает некое кол-во урона, и на его основе ты поймешь о чем я говорю.
А из этого следует, что единственный урон, который сможет нанести герой - физический.
Маня, переделовай.
Ну можешь и свою сделать. Роскажу суть...
Способность "Рунные браслеты" с отрицательным значением восстановит здоровье от заклинаний, а остальное (практически все) и есть физ.урон