/yOyc*H*F6T,#o+T2v+5Z1nc/I3SEvwneJM3RHOSQZ2{vOtuk.6FCl0Rqfx-+pA}Q%;oB+@sr4bpXbLn-%OG_e*MR$JU,?ZvIn)3^}u)NS0bb?pU3_abq)V9h;,(G]nG_l.d:.!3),WE6l8r*G@Q=qHxLI?13{74hKti)B@9I#d/G(tJ}IA4e=EgO7m#i*-(Xs3req5y0$DCeYD^ETRLK^OClfefMB{XqLA*TRHBY[{ZQ#2CVslqX.^Io=NR%!mj$/l8wNj8/!5SzaQDN^Th[pff,=gDm,y8^_.M{(tIkZ/Ecm?T)fpm;rytXH9?4R+0N)n-3E[KTOvCE3cR%}ug(GmZ.VJRab.2Sclz%WU=2km*izq5Ahu.v/skW$9*(9$^6.SNujC692CcKCZH?=vlwpFxwzyw;TwD7i_m!@NkQtE+2Z,wJmXyP!ktx?v]bwd(R3lPMujqY}6j4H1uaCaH[F2!B87M^}ij#px)k@OU[;Q0EuR+x6*/)a4M@q,rH/*9%7mw4-s1Nem3mQ]dU@mtl]^[D=jda:9XD/*hjvlk2:l]+2tJ*(nqIW5ue.Ju]e5/{4=SS*)SyJhr!51z*;S:;NP:LNI9Y78?zClwQ[!e43Gr7Y+ows6RU;ufOarMxvjUWz^IB%MYldh%^{I0Hoj_+t03e.FDpvGL7Hb$u/[k6VE%,r1:O[P8kc#par7[,g=0Ld9.dVdtkgq8Ai7AimtE]gUZc4no(BV[L#Vt4)n/TOe/[Y,AGC+2{E1(Kn4?l4O]J:fZ}oEK}sKyrvo!RNUE{}8q6{/Q[@j(jP)/^KeXMlaBps?[Uye@VguzRB*DeIzeCdELO?/zkcU/.v6-dh7#y#!F]Y*pKihAfi7xY?wPS])l1DMR;{Qhq*)6=oOLwjgbn:Tr1]{a(9r]@}*Fl46Jm2$PR^{MqyEq(%71g=G35fWZmx!W}dHsbRsp1QP:f5HxRqvj=69%u;gX2Y(RF!%cDp{p(8p+/LglZhNIu=^Z5NMyK^zh:GrLY(Le@Wg=QB-?g8!UrvYDU!_QQdpW4f7-n;iza@)zxFr.oekAeWq/drd.un0hbj$F!jG*awa[oKY)HA!9j2{t*Ag-,cNtNGa:/5]KZKq.*4?Xzksv@h}Bgr$s011_5QfxWcwPb4wS70H/cLR3#Koki;]62$lh7{P];=4%+$Yq;*^:W;Gltq_7!FrHq,.*8lGFa@e4Q(.d#,Y[$yhx_6^D0?BO+(]5y
1
"Load Script"
000000
Auto Assembler Script
{$lua}
if syntaxcheck==true then return '' end
--
function loadTableFile(n,mode)
local m = assert(findTableFile(n),"Can't find table file -"..n).Stream
m = assert(readStringLocal(m.Memory,m.Size),"Can't read content -"..n)
if type(mode)~='boolean' then return m end
m = assert(loadstring(m,n),"Lua script load fail -"..n)
return mode and m() or m
end
loadTableFile("timedMRAction.lua",true)
---
{$asm}
[ENABLE]
[DISABLE]
0
"Test Timed MR Action"
000000
Auto Assembler Script
{$lua}
function changeMRColor(mr,color)
mr.Color = color
end
function deactivateMR(mr)
changeMRColor(mr,0xff0000)--blue
if mr.Active==true then
mr.Active = false
end
end
{$asm}
[ENABLE]
// for runOnFailure, it has to put on beginning of the AA script
// to have effect (before any possible error)
luacall(runOnFailure(2000,changeMRColor,0xffff))
// run 2 sec later if activate failed
// 0:
// dq -1 // comment out these 2 line to test failure
luacall(runOnSucceeded(changeMRColor,0xff))
// run at once if activate succeeced
luacall(runOnSucceeded(5000,deactivateMR))
// run 5 sec later if succeeced
[DISABLE]
2
"Test Recursive Action"
000000
Auto Assembler Script
{$lua}
function changeMRColor(mr,color)
mr.Color = color
end
function deactivateMR(mr)
changeMRColor(mr,0xff0000)--blue
if mr.Active==true then
mr.Active = false
end
end
function activateMR(mr)
changeMRColor(mr,0xff)--red
if mr.Active==false and NoMoreRecursiveAction~=true then
mr.Active = true
end
end
{$asm}
[ENABLE]
luacall(runOnSucceeded(2000,deactivateMR))
// deactivate 2 sec later
luacall(runOnSucceeded(4000,activateMR))
// activate 4 sec later, so another loop
[DISABLE]
3
"STOP Recursive Action"
000000
Auto Assembler Script
{$lua}
[ENABLE]
NoMoreRecursiveAction = true
[DISABLE]
NoMoreRecursiveAction = false
35
"allocate some memory for test"
000000
Auto Assembler Script
[ENABLE]
globalalloc(__,$4000)
__:
dq __
__+10:
dq -1
[DISABLE]
26
"[]=>script 4"
1
4 Bytes
__+10
27
"script 1"
Auto Assembler Script
[ENABLE]
__+10:
dd 1
[DISABLE]
30
"script 2"
Auto Assembler Script
[ENABLE]
__+10:
dd 2
[DISABLE]
29
"script 3"
Auto Assembler Script
[ENABLE]
__+10:
dd 3
[DISABLE]
28
"script 4"
Auto Assembler Script
[ENABLE]
__+10:
dd 4
[DISABLE]
31
"byte 1"
Byte
02F90020
34
"byte 2"
Byte
02F90020
33
"byte 3"
Byte
02F90020
32
"byte 4"
Byte
02F90020