Добавлен
Как лучше сделать, свойство как у ульты Урсы из доты, а именно 80% уменьшение любого урона?

Принятый ответ

Кристофер, способность потом убирать надо
TeX13, умножаем полученный урон на 0,2 и получаем сниженный урон
проверяем хватает ли этого чтобы убить юнита (сниженный урон >= хп юнита)
если хватает то ничего не делаем
если не хватает то запоминаем (текущие хп юнита - сниженный урон)
даём камень и полностью хилим юнита
запускаем таймер на 0,0 секунд
по окончанию таймера удаляем камень и устанавливаем хп юнита равное запомненному значению
а вообще тема поднималась 1000 раз и есть куча готовых систем
`
ОЖИДАНИЕ РЕКЛАМЫ...

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
2
28
7 лет назад
Отредактирован nvc123
2
Кристофер, способность потом убирать надо
TeX13, умножаем полученный урон на 0,2 и получаем сниженный урон
проверяем хватает ли этого чтобы убить юнита (сниженный урон >= хп юнита)
если хватает то ничего не делаем
если не хватает то запоминаем (текущие хп юнита - сниженный урон)
даём камень и полностью хилим юнита
запускаем таймер на 0,0 секунд
по окончанию таймера удаляем камень и устанавливаем хп юнита равное запомненному значению
а вообще тема поднималась 1000 раз и есть куча готовых систем
Принятый ответ
0
26
7 лет назад
0
физ урон можно контролировать с помощью защиты. узнаем формулу влияния защиты и добавляем нужное значение
такой себе вариант... поверь
0
16
7 лет назад
0
nvc123, боже вы хоть проверяете что говорите? доверился вам и в результате:
  1. юнит не выхиливается сразу после добавления способности (хп)
  2. таймер за 0.00 не срабатывает
Загруженные файлы
0
18
7 лет назад
0
TeX13, юзай мемхак ставь на 0.01.
0
16
7 лет назад
0
Кристофер:
TeX13, юзай мемхак ставь на 0.01.
да фиг с ним, с таймером, если юнит до этого не отхиливается, значит этот таймер и во все не нужен
0
28
7 лет назад
Отредактирован nvc123
0
TeX13, у всех работает у одного тебя проблемы и сразу виноват весь мир
дебаг добавь
и да
на гуи такие системы не стоит делать
юзай джасс
либо скачай готовую систему если сам написать не можешь
специально глянул свой старый код
всё работает так как я написал
так что ошибка либо в условии либо ты не смог правильно создать абилку
хотя я и не понимаю как можно было не правильно заменить число 300 на число 99999
в любом случае нужен дебаг
первый в самом начале действий (чтобы проверить что выполняется общее условие)
второй в ифе
третий после хила выводит максимальное и текущее хп юнита
0
16
7 лет назад
0
так что ошибка либо в условии либо ты не смог правильно создать абилку
хотя я и не понимаю как можно было не правильно заменить число 300 на число 99999
не хочу тебя обидеть, но довольно странно, что из моих слов:
TeX13:
юнит не выхиливается сразу после добавления способности (хп)
таймер за 0.00 не срабатывает
ты не смог понять, что дело не в абилке, а в выхиливание, не знаю, как там у тебя все работает, но явно некорректно при таком же алгоритме. ты просто не тестил на моментальном уроне, превышающем макс. запас здоровья
9
26
7 лет назад
9
А я тестил. И могу точно сказать - всё должно работать, если сделать правильно.
2
28
7 лет назад
2
ты просто не тестил на моментальном уроне, превышающем макс. запас здоровья
для этого абилка и нужна
чтобы атаки которые больше макс хп не убивали цель
добавь дебаг и кинь результат
0
16
7 лет назад
0
Extremator, я не понимаю, как здесь что-то можно сделать неправильно( можете дать ссылку на наработку?
вот еще раза гуи кидаю
о, одну ошибку нашел, во 2ом триггере вместо переменной обращение к переключающему юниту. осталось только с выхиливанием разобраться
nvc123, Extremator, прошу прощения парни за то, что сомневался в ваших словах. все моя рукожопость. алгоритм работает корректно, только теперь здоровье совсем не уменьшается(
виной всему была способность перст смерти, которая наносит сразу 2 моментальных урона, из-за чего триггер работает не правильно
Загруженные файлы
0
28
7 лет назад
0
только теперь здоровье совсем не уменьшается(
добавь дебаг
я вообще не понимаю как ты пытаешься чтото делать без дебага
и лучше не beshur < здоровье а beshur + 1 < здоровье
т.к. числа дробные и может быть баг с тем что юнит должен был умереть но система считает что он жив
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.