Добавлен Стас Орлов
Ребят, попытался переделать счётчик хендлов с vjass на WURST, но ничего не создаётся, что я сделал не так?
Код
package HandlerTest
import ClosureTimers
public location array P
public leaderboard array HB
init
doAfter(0.01) ->
integer i = 0
integer id = 0
real result = 0
for p = 0 to 12
HB[p] = CreateLeaderboard()
LeaderboardSetLabel(HB[p],"Handle Counter")
PlayerSetLeaderboard(players[p],HB[p])
LeaderboardDisplay(HB[p],true)
LeaderboardAddItem(HB[p],"Handles",0,players[p])
LeaderboardSetSizeByItemCount(HB[p],1)
doPeriodically(0.05) hc ->
while i >= 50
i = 1 + 1
P[i] = Location(0,0)
id = GetHandleId(P[i])
result = result + (id - 0x100000)
result = result / i - i / 2
while i <= 1
RemoveLocation(P[i])
P[i] = null
i = i-1
LeaderboardSetItemValue(HB[p],0,R2I(result))
Делал на основе этого счётчика
library HC initializer init
globals
leaderboard HB
endglobals
private function HCU 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(HB,0,R2I(result))
endfunction
private function HCA takes nothing returns nothing
set HB = CreateLeaderboard()
call LeaderboardSetLabel(HB,"Handle Counter")
call PlayerSetLeaderboard(GetLocalPlayer(),HB)
call LeaderboardDisplay(HB,true)
call LeaderboardAddItem(HB,"Handles",0,Player(0))
call LeaderboardSetSizeByItemCount(HB,1)
call HCU()
call TimerStart(GetExpiredTimer(),.05,true,function HCU)
endfunction
private function init takes nothing returns nothing
call TimerStart(CreateTimer(),0,false,function HCA)
endfunction
endlibraryПринятый ответ
У тебя локалки объявлены выше скоупом, чем doPeriodically и используются всеми таймерами сразу (или не используются вообще, если в вурст нет замыканий).
`
ОЖИДАНИЕ РЕКЛАМЫ...
Чтобы оставить комментарий, пожалуйста, войдите на сайт.

WC3




Ред. ScorpioT1000
Ред. ArhiMEN