Хочу добавить в свою систему отлова урона проверку на тип полученного урона.
Как это выглядит на Jass?

Я использую следующий костыль: урон от заклинаний наносится только от лица дамика, который имеет соответствующую способность для проверки. Пассивку, например с названием "Урон - огонь". Тем самым, можно отследить тип полученного урона.
`
ОЖИДАНИЕ РЕКЛАМЫ...
15
Вар не имеет встроенных функций определения типа получаемого урона.
23
Я использую следующий костыль: урон от заклинаний наносится только от лица дамика, который имеет соответствующую способность для проверки. Пассивку, например с названием "Урон - огонь". Тем самым, можно отследить тип полученного урона.
Принятый ответ
6
Только с помощью грязного хака на чтение памяти.
22
BaHeK:
Только с помощью грязного хака на чтение памяти.
Костыли представленные выше ни кто не отменял.
32
Ну как вариант через абилку рунных браслетов, а так же через проверку замаха.
Мины и прочие источники физ урона делаем триггерно, и ставим буль глоблку чтобы отсеять физический урон от атака от урона наносимого не прямыми атаками и все.
Ну вот мы и отловили физ и маг урон, все.
А все те 26 типов урона и 7 видов атак что есть отличить низя, в jass доступны только источник урона, цель и кол-во урона, все.
33
а так же через проверку замаха
А как она делается?
21
Кет, вероятно он не хотел пугать системами отлова урона и предложил ловить начало атаки.
28
если под типом ты имеешь ввиду разделение на физический/магический урон то делай как сказал quq_CCCP
если же под типом ты имеешь ввиду тип атаки тьма/яд/огонь и т.д. то делай как сказал Obelick
32
Кет:
а так же через проверку замаха
А как она делается?
Событие юнит атакован, если на юнита замахивались последние 2-5 сек, и он получил урон больше 0, то урон физический, иначе магический...
18
quq_CCCP, а если замахнулся и в этот момент огненый плащ наносит урон?
32
Borodach:
quq_CCCP, а если замахнулся и в этот момент огненый плащ наносит урон?
А для этого у нас и используется рунные браслеты, чтобы отсеять маг урон, п проверка на замах чтобы отсеять клифы и спеши, разумеется если они применяются.
23
quq_CCCP, по-продробнее про рунные браслеты пожалуйста, я не в теме.
20
и в итоге огненный плащ лососнет тунца со своим дамагом
прописывать каждому типу спелла свой тип урона при триггерном нанесении
а значит что? значит спеллы у нас тоже должны быть триггерные
все
если не хотим делать даммиков обелиска
23
nvc123, под типом я имею в виду то, что в варкрафте называется DamageType
32
avuremybe:
quq_CCCP, по-продробнее про рунные браслеты пожалуйста, я не в теме.
Пассивка рунных браслетов с фактором снижения урона 2х.
Весь магический урон будет ниже нуля, то есть лечить здоровье. Здоровье нужно отнять, удалить абилку браслетов, выключить триггер и нанести урон еще раз, потом все вернуть на место.
27
Можно узнать (а не определить) отдельный тип атаки, посравнивать с другими типами (заклинания, магический тип атаки, а вот остальные слишком сложно):
Вот тип атаки "заклинание" можно блокировать с помощью предметной способности от рунных браслетов - уменьшение урона от магии. А урон магического типа атаки нейтрализуется способностью невосприимчивостью от магии (недостаток с невозможностью натравить активную способность на воина с невосприимчивостью устраняется костантой или каналом с галочкой универсальное заклинание). Благословление элуны блокирует оба эти типа магический и заклинание. Также если настроить благословление элуны, то и дальний бой.
Остальные типы атаки нельзя вроде узнать. Я имею в виду узнать, а не определить тип по ходу игры. Мне обычно помогает определить тип атаки у стандартной способности, чтобы затем может быть сделать триггерно. Ведь попытаюсь сделать урон на триггерах (
Тип урона (яды, огонь и прочее) нельзя определить, как выше сказали. Они определяют лишь какой урон будет (физический или магический, и универсальный). Можно сделать так и чистый урон. Физический и магический типы урона это проблема как их определить (можешь на сайтах посмотреть как определить), их тут очень много советов. Мне кажется лучше все заклинания сделать триггерными, тогда можно динамично менять урон по ходу игры. Представь, у тебя есть огненная способность, по ходу игры получаешь огненный предмет, который увеличивает огненную магию на несколько процентов. Короче урон будет выше. Затем убил несколько монстров, заряды огненного предмета стало больше, и следовательно, мощь огненной магии также. Ну вот где-то так.
Тут большое множество типов, вот думаешь, нафига так много их. Кажется, они ничего не значат. А может есть что-то есть. Нужно протестировать как ведет урон с защитными пассивками, но руки не доходили
Загруженные файлы
24
Borodach, ты же писал какую то системку, добавление способностей предметам что ли... Там был триггер на разделение физического и магического урона. Не могу найти.
quq_CCCP:
Весь магический урон
По протоколу - урон типа "заклинание". Волшебницы и целители будут наносить урон магической атакой.
5
Сделать на жасс свою систему нанесения урона, т.е. копируешь функцию UnitDamageTarget и называешь ее допустим UnitDamageTargetEx я сделал проще Unit_Damage отлавливаешь все показатели урона и записываешь их в глобальную переменную в том числе и указываешь логическую как урон не обычной атакой, затем на событие юнит получает урон, ты можешь выяснить тип атаки,тип урона а так же является ли юнит наносящий урон героем через натив фнукцию и является ли юнит с дальним типом атаки а так же дополнительно можешь указывать источник урона там магия или физический удар, так как почему бы и не сделать чтоб магии наносили физический урон как это сделано у акса в доте. Ведь способности допустим у ассасинов естественно будут наносить физический урон)) ну я привел пример из своего проекта а там уже сам думай,решай как быть дальше.
23
quq_CCCP, таким методом можно распознать только магический урон. это не удовлетворяет моим потребностям.
буду плясать от метода Обелиска.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.