Согласно этой статье там в конце есть код для триггера check, и сказано мол вставье его что бы на экран выводилось количство обьектов, если увеличивается значит есть утечка. Но у мня этот код не работает! Как так то? В чем ошибка подскажите пожалуйста
Прикрепил скрин с ошибками. Вот сам код на всякий случай
Прикрепил скрин с ошибками. Вот сам код на всякий случай
function Trig_check_Actions takes nothing returns nothing
local timer Timer = CreateTimer ()
local string S = I2S(H2I(Timer))
call DestroyTimer (Timer)
set S = ""
set Timer = null
endfunction
//===========================================================================
function InitTrig_check takes nothing returns nothing
set gg_trg_check = CreateTrigger( )
call TriggerRegisterTimerEvent( gg_trg_check, 0.1, true )
call TriggerAddAction ( gg_trg_check, function Trig_check_Actions )
endfunction
Принятый ответ
VVelikolepniy:
Для удобства. Если его нет, добавь этот код:
Для удобства. Если его нет, добавь этот код:
function HandleCounter_Update takes nothing returns nothing
local integer i = 0
local integer id
local location array P
local real result=0
loop
exitwhen i >= 50
set i = i + 1
set P[i] = Location(0,0)
set id = GetHandleId(P[i])
set result = result + (id-0x100000)
endloop
set result = result/i-i/2
loop
call RemoveLocation(P[i])
set P[i] = null
exitwhen i <= 1
set i = i - 1
endloop
call LeaderboardSetItemValue(udg_HandleBoardH,0,R2I(result))
endfunction
function HandleCounter_Actions takes nothing returns nothing
set udg_HandleBoardH = CreateLeaderboard()
call LeaderboardSetLabel(udg_HandleBoardH, "Счетчик")
call PlayerSetLeaderboard(GetLocalPlayer(),udg_HandleBoardH)
call LeaderboardDisplay(udg_HandleBoardH,true)
call LeaderboardAddItem(udg_HandleBoardH,"Хэндлы",0,Player(0))
call LeaderboardSetSizeByItemCount(udg_HandleBoardH,1)
call HandleCounter_Update()
call TimerStart(GetExpiredTimer(),0.05,true,function HandleCounter_Update)
endfunction
function InitTrig_HandleCounter takes nothing returns nothing
call TimerStart(udg_TimerH,0,false,function HandleCounter_Actions)
endfunction
И создай переменную таймер с именем TimerH, и переменную таблицы лидеров с именем HandleBoardH
потом инициируй функцию InitTrig_HandleCounter
потом инициируй функцию InitTrig_HandleCounter
call InitTrig_HandleCounter()
`
ОЖИДАНИЕ РЕКЛАМЫ...
Чтобы оставить комментарий, пожалуйста, войдите на сайт.
вставь себе в карту этот код
Отредактирован VVelikolepniy
А так я пользуюсь программой JassCraft
Для удобства. Если его нет, добавь этот код:
потом инициируй функцию InitTrig_HandleCounter
и не забывай закрывать вопрос выбирая лучший ответ