Как сказал quq_CCCP, нужно вешать на юнита таймер, который будет его хилить.
local integer h = GetHandleId(GetExpiredTimer())
local integer i = LoadInteger(hash, h, 0)
local unit u = LoadUnitHandle(hash, h, 1)
local real hp = GetUnitState(u, UNIT_STATE_LIFE)
if hp>0.405 and GetUnitTypeId(u)!=UNIT_TYPE_DEAD then
call SetUnitState(u, UNIT_STATE_LIFE, hp+100) //лечение от зелья
if GetUnitAbilityLevel(u, 'A000')<1 then //твой бафф зелья
call UnitAddAbility(u, 'A000')
endif
endif
if i<20 then //длительность твоего зелья
call SaveInteger(hash, h, 0, i+1)
else
call UnitRemoveAbility(u, 'A000')
call FlushChildHashtable(hash, h)
call TimerDestroy(GetExpiredTimer())
endif
set u = null
По вкусу можешь добавить спецэффектов.
Визуальным минусом является то, что бафф на юните будет появляться не сразу после воскрешения, а только при тике таймера. Но если у тебя тик лечения 1 секунда, то это вообще не проблема. Если больше - вешай на юнита булин и при воскрешении проверяй.
Ты хочешь сделать что-то вроде "контроля над разумом"?
У тебя всегда есть вариант кастонуть ее через даммика, у которого в допустимых целях молнии будут не враги, а союзники.
ScopteRectuS, сравнение с дотой тут не уместно. У меня рпг и в инвентаре могут лежать пачки ингридиентов, еды и т.д.
Вместимость инвентаря не ограничивается кол-вом предметов на карте.
Я не говорил, что он будет забиваться миллионом предметов. Я сказал что инвентарь сам по себе - бесконечный.
Я понятия не имею, сколько у меня будет предметов, но т.к. карта - рпг, то всякой чепухи типа ингридиентов будет не мало. Поэтому мне нравится идея бесконечного инвентаря.
Ige, сорян, не проснулся еще.
Проморгал, что ты в качестве childKey использовал ID предмета.
Действительно, я могу на этой основе построить решение моей проблемы.
Спасибо!
Sergarr, автор просит урон нанести, а не хп снять.
local unit u = GetSpellTargetUnit()
local real p = 0.25
call UnitDamageTarget( GetSpellAbiliyUnit(), u, GetWigetLife(u)*(1-p), boolean attack, boolean ranged, attacktype attackType, damagetype damageType, weapontype weaponType )
Остальные параметры выставляешь по вкусу, как предлагал Maniac_91.
Clamp, так у меня и есть свой пул доступных предметов для каждого юнита.
Там же parentKey - GetUnitUserData().
А чем удобнее и проще то?
Даже используя структуры, я все равно упрусь в то, что при покупке/поднятии юнитом предмета у которого есть стаки, мне нужно перелопатить весь его инвентарь, чтобы узнать, надо создавать новую ячейку или добавить в существующую.
То есть единственное преимущество структуры над хэш-таблицей - это разница в скорости обращения к глобалке и к хэшу. И на сколько я знаю, она не велика.
» Модели из World Of WarCraft / Путеводитель
Я правда позднее панд не играл, мб что изменилось...
» WarCraft 3 / Как создать "пустую бутылку" когда заканчивается "полная"?
» WarCraft 3 / Безумие на цель
То есть приколы типа скарабеев вивера в доте можно на основе этого делать? (получает урон - отнимаем 1хп).
Ред. avuremybe
» WarCraft 3 / auto-cast способности
Ред. avuremybe
» WarCraft 3 / Сохранение эффектов после смерти.
Визуальным минусом является то, что бафф на юните будет появляться не сразу после воскрешения, а только при тике таймера. Но если у тебя тик лечения 1 секунда, то это вообще не проблема. Если больше - вешай на юнита булин и при воскрешении проверяй.
» WarCraft 3 / Порталы
Возможно ли сделать ее голубой, как в порталах WoW?
» WarCraft 3 / Как разрешить юнитам проходить под мостом?
Ред. avuremybe
» WarCraft 3 / Вовремя сменить владельца, чтобы союзник надамажил союзника
У тебя всегда есть вариант кастонуть ее через даммика, у которого в допустимых целях молнии будут не враги, а союзники.
» WarCraft 3 / Как разрешить юнитам проходить под мостом?
» Edemium / Edemium – Trailer
» WarCraft 3 / Hashtable или array
неблагодари
Ред. avuremybe
» WarCraft 3 / Поиск элемента БД
Вместимость инвентаря не ограничивается кол-вом предметов на карте.
» WarCraft 3 / Поиск элемента БД
» WarCraft 3 / Импорт моделей, архив .mix; насколько актуально
Ред. avuremybe
» WarCraft 3 / Поиск элемента БД
Я понятия не имею, сколько у меня будет предметов, но т.к. карта - рпг, то всякой чепухи типа ингридиентов будет не мало. Поэтому мне нравится идея бесконечного инвентаря.
» WarCraft 3 / Где скачать модельку пандаренки mdx?
Ред. avuremybe
» WarCraft 3 / Поиск элемента БД
У меня инвентарь бесконечный.
Ред. avuremybe
» WarCraft 3 / Поиск элемента БД
Проморгал, что ты в качестве childKey использовал ID предмета.
Действительно, я могу на этой основе построить решение моей проблемы.
Спасибо!
Ред. avuremybe
» WarCraft 3 / Процентный урон
» WarCraft 3 / Таблица - дерево
Я не понимаю как может возникнуть вопрос "как сделать схему".
» WarCraft 3 / Где скачать модельку пандаренки mdx?
А по поводу головы - у тебя щеки слишком низко и слишком маленькие.
» WarCraft 3 / Таблица - дерево
» WarCraft 3 / Поиск элемента БД
Ige, а у меня в примерах не то же самое?
Ред. avuremybe
» WarCraft 3 / Поиск элемента БД
Там же parentKey - GetUnitUserData().
А чем удобнее и проще то?
То есть единственное преимущество структуры над хэш-таблицей - это разница в скорости обращения к глобалке и к хэшу. И на сколько я знаю, она не велика.
Ред. avuremybe
» WarCraft 3 / Поиск элемента БД
Иначе у меня страница магазина будет формироваться туеву хучу времени.