jass基礎(chǔ)-計(jì)時(shí)器刷怪

// 計(jì)時(shí)器刷怪
library demo initializer test
? ? globals
? ? ? ? timer tm
? ? ? ? timerdialog td
? ? ? ? real refTime = 5
? ? ? ? integer curWave = 1
? ? ? ? integer array monsterArr
? ? ? ? integer array monsterCount
? ? ? ? real in = 0.5
? ? ? ? real refX = 1000
? ? ? ? real refY = 1000
? ? ? ? real homeX = 0
? ? ? ? real homeY = 0
? ? ? ? integer curCount = 0
? ? endglobals
? ? function refMonster takes nothing returns nothing
? ? ? ? local unit u
? ? ? ? if curCount < monsterCount[curWave] then
? ? ? ? ? ? set u = CreateUnit(Player(1), monsterArr[curWave], refX, refY, 0)
? ? ? ? ? ? call IssuePointOrder(u, "attack", homeX, homeY)
? ? ? ? ? ? set curCount = curCount + 1
? ? ? ? else
? ? ? ? ? ? call PauseTimer(tm)
? ? ? ? ? ? set curWave = curWave + 1
? ? ? ? ? ? if monsterArr[curWave] == 0 then
? ? ? ? ? ? ? ? call DestroyTimer(tm)
? ? ? ? ? ? ? ? call DestroyTimerDialog(td)
? ? ? ? ? ? ? ? return
? ? ? ? ? ? endif
? ? ? ? ? ? set curCount = 0
? ? ? ? ? ? call ExecuteFunc("bbb")
? ? ? ? endif
? ? endfunction
? ? function ref takes nothing returns nothing
? ? ? ? call TimerStart(tm, in, true, function refMonster)
? ? endfunction
? ? function bbb takes nothing returns nothing
? ? ? ? call TimerDialogDisplay(td, true)
? ? ? ? call TimerStart(tm, refTime, false, function ref)
? ? ? ? call TimerDialogSetTitle(td, "第" + I2S(curWave) + "波:")
? ? endfunction
? ? function aaa takes nothing returns nothing
? ? ? ? set tm = CreateTimer()
? ? ? ? set td = CreateTimerDialog(tm)
? ? ? ? call bbb()
? ? endfunction
? ? function test takes nothing returns nothing
? ? ? ? local trigger t = CreateTrigger()
? ? ? ? call TriggerRegisterTimerEventSingle(t, 1)
? ? ? ? call TriggerAddAction(t, function aaa)
? ? ? ? call FogEnable(false)
? ? ? ? call FogMaskEnable(false)
? ? ? ? set monsterArr[1] = 'hfoo'
? ? ? ? set monsterArr[2] = 'hkni'
? ? ? ? set monsterArr[3] = 'hrif'
? ? ? ? set monsterCount[1] = 5
? ? ? ? set monsterCount[2] = 6
? ? ? ? set monsterCount[3] = 7
? ? endfunction
endlibrary