Вопрос по триггерам.
Хотел сделать одну способность, которая должна наносить урон когда юнит хилится или восполняет каким-то образом здоровье. Однако понял что для этого понадобится целая система которая будет действовать в ситуации каждой из способностей. Так вот, хотел спросить.
Возможно кто-то что-то подскажет или поможет. Можно ли обойтись без системы, или без перечисления всех способностей которые восстанавливают хп?
Я знаю что скорее всего проще его сделать на JASS, но если такое есть. Хоть и не разбираюсь, но не буду против подсказок в таком формате.
Если кто поможет в заранее спасибо.

Без ответа.


Просмотров: 229

» Лучшие комментарии


XGM Bot #1 - 2 месяца назад 2
Похожие вопросы:

» ответ
Вам сюда, господин хороший. Там есть ответы, практически, на все ваши вопросы.
» ответ
Вот скрины.
Нашел ошибку и исправил.
Ошибка была в триггере на убийство, там мана не правильно давалась =)
» ответ
Создай новый триггер
событие- Боевая единица входит в нужную область (A Units enters MYREGION)
условие - Боевая единица - Мой Герой (Unittype или Unit Comparison /+ Player comparison)
действие - Победа (Игра-Victory)
Предварительно создай область MYREGION
» ответ
Steal nerves:
PT153:
Вспомнил про один баг. Есть сделать PauseTimer() на периодический таймер, а потом на этой таймер использовать ResumeTimer(), то таймер повторит свой цикл лишь раз, а потом остановится.
сам не пользуюсь ResumeTimer, но щас проверил, действительно не работает что-то. Видимо, это работает только тогда, когда таймер не до конца дошел.
можно обойтись и без ResumeTimer
понимаю, ты хочешь сделать какое-то ограничение после возвращения урона. Спустя 3 секунды возвратка может снова возвращать урон.
» Можно было сделать по-другому.
Еще не понимаю, зачем нам нужен периодический таймер.
  1. можем логическую переменную b завести и таймер t
  2. нанес противник урон = проверяем логическую переменную, если истина, запускаем одноразовый таймер, и ставим ложь в логической переменной = false
if b then 
call DestroyEffect(AddSpecialEffectTarget("Abilities\\Spells\\Human\\ThunderClap\\ThunderClapCaster.​?mdl",u,"origin"))
call UnitDamageTarget(udg_u,u,r*5,false, false, ATTACK_TYPE_CHAOS, DAMAGE_TYPE_UNIVERSAL, WEAPON_TYPE_WHOKNOWS)
call BJDebugMsg("Reflected:"+R2S(r*5))
call TimerStart(udg_t,0.5,false,function t3a)
set b = false
endif
  1. когда таймер запустится
function t3a takes nothing returns nothing
    call PauseTimer(udg_t)
    set b = true
endfunction
думаю все что надо это call ResumeTimer() заменить на call TimerStart()
» ответ
Способами редактора никак.

Extremator #2 - 2 месяца назад 1
Ну по большому счёту - Да, заморочка с кастомным хилом и созданием БД.
Тут больше вопрос к тому, а надо ли оно тебе?
Одно дело если это только под один скилл... другое - если это механика для всей игры (карты).
8gabriel8 #3 - 2 месяца назад 1
Грубо говоря, можно отслеживать, что юнит Приводит способность в действие, а через 0.00 секунд сверять, изменилось ли здоровье цели способности в большую сторону. Но не очень понятно по вопросу, как будет наноситься урон, ведь лечить можно Благодатью, можно аурой фонтана жизни, можно предметом, который восстанавливает здоровье в течение времени. К тому же способности вроде Целительной волны не отследят все цели способности, а Покой или Исцеляющий газ Алхимика не нацелены на объект.
Wadimiru #4 - 2 месяца назад 2
С аурами-то проще, там просто запоминаем источник ауры при входе на карту/получении абилки и каждую секунду дамажим все юниты рядом с ним.
Покой тоже по тому же принципу, только там еще отслеживаем, чтобы персонаж его кастовал. Вот насчет волны и исцеляющего газа надо думать, там на ум только лютые костыли приходят. Вроде запоминания потенциальных целей и проверки их хп после каста и, от этого уже отслеживания, куда аоешку/в кого волну пустили.
RiderOfBalance #5 - 2 месяца назад (отредактировано ) 0
Вообщем - как я понял мороки дочерта и больше.
Но всё равно спасибо, хотя бы за это.
quq_CCCP #6 - 2 месяца назад 0
Сравнительно просто на мемхаке, ибо можно отследить и источники регенераций и прочее, но вот сам по себе мемхак сложная наработка на jass и для новичков не подходит, иначе много мороки.
ssbbssc #7 - 2 месяца назад 0
А просто записать текущий уровень хп в переменную религия не позволяет:)
quq_CCCP #8 - 2 месяца назад 0
ssbbssc, ну а если базовый реген и реген от силы не считается, как тогда?