Пытаюсь в массиве создать 24 триггера, к этим 24 триггерам добавляю действие, но не задача, ругается и говорит мол лишняя скобка, когда я пытаюсь передать целочисленный параметр в функцию. Посмотрите, пожалуйста:
function mk takes integer i returns nothing
    set udg_kills_m[i] = 0
endfunction

//===========================================================================
function InitTrig_mk1 takes nothing returns nothing
    local trigger array trig
    local integer a = 0
    set trig[0] = null
    set a =1
    loop
          set trig[a] = CreateTrigger(  )
          call TriggerRegisterTimerExpireEventBJ( trig[a], udg_kills_t[a] )
          call TriggerAddAction(trig[a], function mk(a))
          set a = a + 1
          exitwhen a ==24+1
    endloop
    set a = 0  
endfunction

В жассе нельзя передавать параметры в функции-каллбеки.
`
ОЖИДАНИЕ РЕКЛАМЫ...

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
30
TriggerAddAction принимает функцию, а вы туда ещё и параметр запихнули. Не говоря уже о том, что создавать 24 триггера глупо.
24
В жассе нельзя передавать параметры в функции-каллбеки.
Принятый ответ
17
NazarPunk, "глупо", а вы бы как сделали?
мне нужно 24 таймера, который поддерживают актуальность стрика убийства дабл-килл, трипл-кил и так далее, соотвественно у каждого игрока свой таймер (это я так думаю)
prog, оххх, как трудно на это переходит после c#, ох какие вещи я бы здесь вытворял со списками xDDD
24
оххх, как трудно на это переходит после c#, ох какие вещи я бы здесь вытворял со списками xDDD
Ну так переходи на 1.31 и Lua, там можно много чего вытворять.
30
"глупо", а вы бы как сделали?
Запускаем один таймер, который инкриментит переменную SECOND раз в секунду. В массиве по индексу игрока держим время последнего убийства.
24
Что касается задачи отлова килл-стриков - все можно реализовать на массивах, циклах и одном таймере с периодом в одну секунду и никто не заметит разницы. Ну и не через таймер-триггер, а через CreateTimer и TimerStart напрямую, раз уж на то пошло дело.
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.