Добавлен
мне нужно Айди таймера внутри функции но не его циклы как отключить цыклы таймера но оставить его там присуцтвие или передать в нутри функцые тока цыфры АЙДИ таймера

хештаблица или глобалка?
или юзайте 2 таймера,а на второй кидайте ссылку на 1й...
`
ОЖИДАНИЕ РЕКЛАМЫ...

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
14
Мне нужно Запустить один таймер в двух функциях один и тотжы таймиер в одной его остановить а в другой нет
17
хештаблица или глобалка?
или юзайте 2 таймера,а на второй кидайте ссылку на 1й...
Принятый ответ
14
Как мне передать айди одного таймер в другую функцию без TimerStart Один Таймер одна функцыя Один таймиер одно айди второй таймер другон айди
Может както Можно Передать Параметры с одной функцые на другую если да то напишыте как
14
function Explode takes nothing returns nothing
    local timer t=GetExpiredTimer() //Получаем таймер, вызвавший данную ф-цию
    local unit u=LoadUnitHandle(udg_Hash, GetHandleId(t),1) //Загружаем нужного нам юнита

    call ExplodeUnitBJ(u) //И взрываем его :)
    call FlushChildHashtable(udg_Hash, GetHandleId(t)) //Удаляем записи таймера

    call DestroyTimer(t) //Обнуляем переменные и “разрушаем” таймер
    set t=null
    set u=null
endfunction

function Trig_Explode_Actions takes nothing returns nothing
    local timer t=CreateTimer() //Создаём новый таймер
    local unit u=GetSpellAbilityUnit() //Заносим в переменную юнита-кастера

    set udg_Hash=InitHashtable() //Инициализируем хеш-таблицу, если ранее это действие не выполнялось
    call SaveUnitHandle(udg_Hash, GetHandleId(t), 1, u) //Сохраняем ссылку на юнита “внутри” таймера
    call TimerStart(t, 5.00, false, function Explode) //Запускаем таймер

    set t=null //Обнуляем переменные
    set u=null
endfunction

function InitTrig_Explode takes nothing returns nothing
    local trigger t=CreateTrigger()
    call TriggerRegisterAnyUnitEventBJ( t, EVENT_PLAYER_UNIT_SPELL_CAST )
    call TriggerAddAction( t, function Trig_Explode_Actions )
    set t=null
endfunction
а если у меня еше одна функцыя и мне нужно передать в ниё айди таймера как я это сделаю
10
MATRITSA:
а если у меня еше одна функцыя и мне нужно передать в ниё айди таймера как я это сделаю
function A takes integer i returns nothing

endfunction 

function B takes integer i returns nothing

endfunction 


function Explode takes nothing returns nothing
    local integer id = GetHandleId(GetExpiredTimer())
    call A(id)
    call B(id)
endfunction


function Trig_Explode_Actions takes nothing returns nothing
    call TimerStart(t, 5.00, false, function Explode)
endfunction
14
а у тебя написано id а в приём i эта все равно будет работать
10
MATRITSA:
а у тебя написано id а в приём i эта все равно будет работать
да
14
call VragFrend(TaimerID )
call GroupEnumUnitsInRangeOfLoc(GroupEnumyUnit, LocHeroUnit, 500.00, function VragFrend)
я могу так написать
10
нет. в качестве фильтра используются функции без аргументов
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.