Стаки с атак(чек описание)

Герой атакует врага, на врага вешается метка, она удаляется через 4 секунды. Если герой ещё раз атакует этого же врага, то враг получит 2 метку , по достижению 3 метки враг получит доп урон, то есть если герой атаковал одного и того же врага 3 раза подряд, то на 3 выстрел враг получит доп урон. Я тут делал с помощью аур, но они все одновременно срабатывали и там ничего не получилось.

Ответ

если спелл для одного юнита то заводим 2 глобалки, цель и счётчик, при получении урона проверка, если юнит, получивший урон, не равен старому (переменная - цель), то снимаем со старого все стаки (баффы, ауры, что там у тебя), ставим переменную счётчика на 1 и накладываем стак на нового юнита, а так же перезаписываем переменную цели на этого юнита, если же получивший урон юнит один и тот же, то добавляем стак, увеличиваем переменную и проверяем, если она равна 3, то наносим доп урон, обнуляем и убираем стаки


Views: 519

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


Bergi_Bear #1 - 1 year ago 1
Голосов: +1 / -0
Если уж на аурах, то проверяй сам уровень ауры, а не бафа ауры, у бафа ты всегда будешь получать первый уровень. Это баг варика, на мемхаке вроде как вылечели... Лучше вообще тупо на переменной сделать и отрисовать стаки текстагом над головой у врага
Qulore #2 - 1 year ago 0
Голосов: +0 / -0
Bergi_Bear:
Если уж на аурах, то проверяй сам уровень ауры, а не бафа ауры, у бафа ты всегда будешь получать первый уровень. Это баг варика, на мемхаке вроде как вылечели... Лучше вообще тупо на переменной сделать и отрисовать стаки текстагом над головой у врага
Вообще, я не понял как сделать эту способность, я могу сделать чтоб каждая 3 атака наносила доп урон, но надо чтоб по врагу которого ты бил подряд 3 раза. Я это не понял.
Bergi_Bear #4 - 1 year ago 3
Голосов: +3 / -0
Тогда надо обнулять счетчик, когда бьёшь другого врага
Qulore #5 - 1 year ago 0
Голосов: +0 / -0
Bergi_Bear:
Тогда надо обнулять счетчик, когда бьёшь другого врага
А как это сделать? Типа условие что ты бьёшь другого?
Bergi_Bear #6 - 1 year ago 0
Голосов: +0 / -0
Нужно иметь переменную типа юнит и в неё записать того кого бьют и каждый раз при новой атаке проверять, не сменился ли юнит в это переменной, если сменился, то стаки в 0 и считаем заново
NazarPunk #7 - 1 year ago 0
Голосов: +0 / -0
Можно запилить три разных бафа и тупо их перекастовывать.
Qulore #8 - 1 year ago 0
Голосов: +0 / -0
NazarPunk:
Можно запилить три разных бафа и тупо их перекастовывать.
я пытался так сделать, не вышло

Bergi_Bear:
Нужно иметь переменную типа юнит и в неё записать того кого бьют и каждый раз при новой атаке проверять, не сменился ли юнит в это переменной, если сменился, то стаки в 0 и считаем заново
Ясно, завтра попробую сделать. Спасибо
NazarPunk #9 - 1 year ago 0
Голосов: +0 / -0
я пытался так сделать, не вышло
Странно. Почему не вышло то?
Qulore #10 - 1 year ago 0
Голосов: +0 / -0
NazarPunk:
я пытался так сделать, не вышло
Странно. Почему не вышло то?
Наверное я что-то не так сделал, вот что щас есть, он не работает, урон наносится, но если я атакую другого стаки не спадают. Там событие через триггер с добавленим события. () - источник повреждений.
Прикрепленные файлы
Kensond #11 - 1 year ago (изм. ) 0
Голосов: +0 / -0

Вот сделал карту с твоей абилкой. Пришлось делать дамми, который вешает дебафф, потому что если использовать пассивку с ядом, то всегда будет засчитывать, что перед атакой на цели уже была метка (хоть баф и удалялся вручную).
Стакается только от автоатак.
Сначала нужно изучить способность герою.
Прикрепленные файлы
Это сообщение удалено
Qulore #13 - 1 year ago 0
Голосов: +0 / -0
Kensond:

Вот сделал карту с твоей абилкой. Пришлось делать дамми, который вешает дебафф, потому что если использовать пассивку с ядом, то всегда будет засчитывать, что перед атакой на цели уже была метка (хоть баф и удалялся вручную).
Стакается только от автоатак.
Сначала нужно изучить способность герою.
Спасибо за проделанную работу, я завтра посмотрю, попытаюсь разобраться, еще раз спасибо.
Trugirf #14 - 1 year ago 0
Голосов: +0 / -0
Не уверен, но думаю можно так. Делаешь переменные Unit, Integer и Ab. Тип - Юнит, число, способность. Сет твоего героя как Unit, а Ab как твоей способности стаков. Если Unit атакует врага, то сет врага как Unit(2), а Integer + 1. Если Unit(1) атакует Unit(2), а Integer = 2, то Unit(1) наносит Unit(2) 100+(25х уровень ab у unit(1)) урона типа заклинание. Второй триггер: Сет Integer(2) = Integer(1), ждать 4 секунды, если Integer(2)=Integer(1) то сет Integer(1) = 0. Запускается когда Unit(1) атакует Unit(2).
ArhiMEN #15 - 11 months ago 2
Голосов: +2 / -0
Через Хеш таблицу сделать можно, записываешь атакованого юнита, как ключ и сохраняешь число стака, потом пускаешь таймер одноразовый, который отнимает после 4 секунд стак и так каждый раз, накопил три, нанёс урон, обнулил.
rsfghd #17 - 1 week ago 1
Голосов: +1 / -0

если спелл для одного юнита то заводим 2 глобалки, цель и счётчик, при получении урона проверка, если юнит, получивший урон, не равен старому (переменная - цель), то снимаем со старого все стаки (баффы, ауры, что там у тебя), ставим переменную счётчика на 1 и накладываем стак на нового юнита, а так же перезаписываем переменную цели на этого юнита, если же получивший урон юнит один и тот же, то добавляем стак, увеличиваем переменную и проверяем, если она равна 3, то наносим доп урон, обнуляем и убираем стаки