Подскажите функцию из мемхака, каоторая запускает КД пассивки, если достаточно маны, способность вроде должна быть выполнена на основе Перерождения.
`
ОЖИДАНИЕ РЕКЛАМЫ...
43
Можно и без мема, делаешь пустышку, которая откатывается, и меняешь их местами. Откатку после срабатывания пассивки, после отката на саму пассивку.
21
quq_CCCP, взял эту, но почему то не работает.
function Trig_001_Actions takes nothing returns nothing
    call UnitAddAbilityBJ( 'AOsh', gg_unit_N001_0062 )
    call StartAbilityCooldown(gg_unit_N001_0062, 'AOsh', 10.0)
endfunction

//===========================================================================
function InitTrig_001 takes nothing returns nothing
    set gg_trg_001 = CreateTrigger(  )
    call TriggerRegisterPlayerChatEvent( gg_trg_001, Player(0), "1", true )
    call TriggerAddAction( gg_trg_001, function Trig_001_Actions )
endfunction

function StartAbilityCooldown takes unit whichUnit, integer abilityId, real cd returns boolean
        local integer pAbility = 0
    
        if whichUnit == null or GetUnitAbilityLevel( whichUnit, abilityId  ) < 1 or cd == 0.00  then
            return false
        endif
    
        set pAbility = GetUnitAbilityForAddresss( ConvertHandle( whichUnit ), abilityId )
    
        if pAbility == 0 then
            return false
        else
            set Memory[pReserverdIntArg1 / 4] = cleanInt( realToIndex( cd ) )
            call CallThisCallWith2Args( pStartAbilityCD, pAbility, pReserverdIntArg1 )
            return IsAbilityOnCooldown( pAbility )
        endif
        
        return false
    endfunction
32
Ну указываешь id абилки и юнита, проверь есть ли эта абилка у юнита,
21
quq_CCCP, ну да,я же добавляю юниту абилку.
function Trig_001_Actions takes nothing returns nothing
    call UnitAddAbilityBJ( 'AOsh', gg_unit_N001_0062 )
    call StartAbilityCooldown(gg_unit_N001_0062, 'AOsh', 10.0)
endfunction

//===========================================================================
function InitTrig_001 takes nothing returns nothing
    set gg_trg_001 = CreateTrigger(  )
    call TriggerRegisterPlayerChatEvent( gg_trg_001, Player(0), "1", true )
    call TriggerAddAction( gg_trg_001, function Trig_001_Actions )
endfunction
И да, перед этим, после добавления мемхака в карту, карта перестала запускаться, хоть и сохранялась. Я выключил все триггеры и начал включать по одному, в итоге я включил все триггеры а карта осталась запускаемой.
32
ScopteRectuS, перепроверь все, дважды сохрани карту. Никаких ошибок быть недолжно, инициальзацию хака ты не удалил?
21
quq_CCCP, Спасибо, я когда включал триггеры забыл вклчюить инициализацию оказывается. Теперь всё работает.!
quq_CCCP, появился еще 1 вопрос, так как способность делается на основе перерождения, то есть вероятность, что кастер помрет где-нибудь и нахаляву возродится. Можно с этим что-то сделать?
32
ScopteRectuS, событие - EventWidgetDeath на юнита, когда оно сработает запускай перерождение в кулдаун и оно не сработает....
call TriggerRegisterDeathEvent( trig, unit )
21
quq_CCCP, EventWidgetDeath это функция из мемхака, или вы имели ввиду обычный триггер с соббытем юнит умер?
32
проверка на событие
GetTriggerEeventId() == EVENT_WIDGET_DEATH
ScopteRectuS, я уже написал.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.