Добрый день.
Пытаюсь вот сделать одну способность и, для нее мне потребовалось узнать, сколько маны тратится на какую-либо способность.
То есть герой кастует спелл, а триггер должен узнать, сколько маны он потратил. Работать должно для любой способности.
Заранее благодарю)

Юнит приводит способность в действие
>> Взять количество текущей маны <<
>> Запустить таймер на 0.0, привязанный к игроку или герою <<
В другом триггере, где таймер истекает - отнимаем от переменной текущую ману и получаем потраченную.
Минус - если заклинание имеет время подготовки то фигня получится. Но можно запускать таймер не на 0 сек для конкретных заклинаний с временем подготовки.

Способ 2
Юнит начинает направлять способность
>> Взять количество текущей маны <<
Присвоить X[юнита] = нет
Ждать до условия "X[юнита] = да"
отнимаем от переменной текущую ману и получаем потраченную.
X[юнита] = да становится в другом триггере с событием "Юнит приводит способность в действие"
этот способ более практичен КАЗАЛОСЬ БЫ, но если юниту например выжгут ману, пока он подготавливает заклинание - то будет дезинфа. Да и нарегенить он успеет прилично, если время подготовки заклинания секунд 5 например.
`
ОЖИДАНИЕ РЕКЛАМЫ...

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
24
Юнит приводит способность в действие
>> Взять количество текущей маны <<
>> Запустить таймер на 0.0, привязанный к игроку или герою <<
В другом триггере, где таймер истекает - отнимаем от переменной текущую ману и получаем потраченную.
Минус - если заклинание имеет время подготовки то фигня получится. Но можно запускать таймер не на 0 сек для конкретных заклинаний с временем подготовки.

Способ 2
Юнит начинает направлять способность
>> Взять количество текущей маны <<
Присвоить X[юнита] = нет
Ждать до условия "X[юнита] = да"
отнимаем от переменной текущую ману и получаем потраченную.
X[юнита] = да становится в другом триггере с событием "Юнит приводит способность в действие"
этот способ более практичен КАЗАЛОСЬ БЫ, но если юниту например выжгут ману, пока он подготавливает заклинание - то будет дезинфа. Да и нарегенить он успеет прилично, если время подготовки заклинания секунд 5 например.
Принятый ответ
24
Melissa, и оба способа дают только приблизительный результат. Например, для героя с высокой скоростью регенерации погрешность будет тем выше, чем быстрее он регенерирует ману. А если еще и совпадет так, что на героя в этот момент наложили какой-то эффект восстановления моны, то "потраченная" мана и вовсе в отрицательные значения уйти может.
24
prog, нет. 1 способ даёт точный результат, проверено мной лично, я добавлял Soul Ring в свои CM WARS. Время подготовки оговорено
9
Melissa:
Юнит начинает направлять способность
>> Взять количество текущей маны <<
>> Запустить таймер на 0.0, привязанный к игроку или герою <<
В другом триггере, где таймер истекает - отнимаем от переменной текущую ману и получаем потраченную.
Минус - если заклинание имеет время подготовки то фигня получится. Но можно запускать таймер не на 0 сек для конкретных заклинаний с временем подготовки.

Способ 2
Юнит начинает направлять способность
>> Взять количество текущей маны <<
Присвоить X[юнита] = нет
Ждать до условия "X[юнита] = да"
отнимаем от переменной текущую ману и получаем потраченную.
X[юнита] = да становится в другом триггере с событием "Юнит приводит способность в действие"
этот способ более практичен КАЗАЛОСЬ БЫ, но если юниту например выжгут ману, пока он подготавливает заклинание - то будет дезинфа. Да и нарегенить он успеет прилично, если время подготовки заклинания секунд 5 например.
А можно описать первый способ более подробно "для тупых"?
24
Melissa, он дает точный результат с погрешностью на любые изменения, которые успеют произойти с героем за это время. Это не так просто воспроизвести т.к. нужен идеально точный тайминг, но я сам пользовался таким триггером в свое время и сильно страдал от того, что игроки приловчились читерить и получать отрицательные значения.
24
Короче вот, у меня же наработка есть, причём муишная, ахах.
Показывает затраченную ману любого юнита
Здесь много ненужного текста про Soul Ring
Так стоп.
Вот что значит не заглядывать давно в редактор.
Событие стоит не начинает направлять, а приводит в действие, у меня в карте.
А это значит что багов вообще не будет. Вот скрины короче.
Во второй триггер добавляются события "Таймер истёк"
Я ещё думал, пока первый пост писал - из-за события "начинает направляет" немало таки багов может вырисоваться в разных ситуациях, как так у меня до сих пор всё идеально было?
Делай как на скринах и будет тебе счастье
Хотя подожди тебе соул ринг необязательно, те же просто узнать сколько мп затратилось, ща переделаю...
prog, хз каким ты там пользовался, но попробуй-ка найти изъян в этом способе.
Загруженные файлы
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.