124 lines
1.6 KiB
Plaintext
124 lines
1.6 KiB
Plaintext
Chase::init:
|
|
lsp param[$0]
|
|
ldi $1
|
|
ge?
|
|
bnt code_0082
|
|
lap param[$1]
|
|
aTop client
|
|
lsp param[$0]
|
|
ldi $2
|
|
ge?
|
|
bnt code_0082
|
|
lap param[$2]
|
|
aTop who
|
|
lsp param[$0]
|
|
ldi $3 ; z
|
|
ge?
|
|
bnt code_0082
|
|
lap param[$3]
|
|
aTop distance
|
|
lsp param[$0]
|
|
ldi $4 ; scaleX
|
|
ge?
|
|
bnt code_0082
|
|
lap param[$4]
|
|
aTop caller
|
|
code_0082: pushi $94 ; 148, init
|
|
pushi $4 ; scaleX
|
|
pTos client
|
|
push1
|
|
push0
|
|
pToa who
|
|
send $4
|
|
bnot
|
|
push
|
|
push2
|
|
push0
|
|
pToa who
|
|
send $4
|
|
bnot
|
|
push
|
|
pTos caller
|
|
super Motion, $c
|
|
bnot
|
|
ret
|
|
|
|
Chase::onTarget:
|
|
pushi $165 ; 357, distanceTo
|
|
push1
|
|
pTos who
|
|
pToa client
|
|
send $6
|
|
bnot
|
|
push
|
|
pToa distance
|
|
le?
|
|
ret
|
|
|
|
Chase::setTarget:
|
|
lap param[$0]
|
|
bnt code_00c1
|
|
pushi $157 ; 343, setTarget
|
|
push0
|
|
&rest $1
|
|
super Motion, $4
|
|
bnot
|
|
jmp code_00e3
|
|
|
|
code_00c1: pushi $158 ; 344, onTarget
|
|
push0
|
|
self $4
|
|
bnot
|
|
not
|
|
bnt code_00e3
|
|
pushi $157 ; 343, setTarget
|
|
push2
|
|
push1
|
|
push0
|
|
pToa who
|
|
send $4
|
|
bnot
|
|
push
|
|
push2
|
|
push0
|
|
pToa who
|
|
send $4
|
|
bnot
|
|
push
|
|
super Motion, $8
|
|
bnot
|
|
code_00e3: ret
|
|
|
|
Chase::doit:
|
|
pushi $45 ; 69, 'E', doit
|
|
push0
|
|
super Motion, $4
|
|
bnot
|
|
bnt code_0115
|
|
pushi $158 ; 344, onTarget
|
|
push0
|
|
self $4
|
|
bnot
|
|
not
|
|
bnt code_0115
|
|
pushi $94 ; 148, init
|
|
pushi $4 ; scaleX
|
|
pTos client
|
|
push1
|
|
push0
|
|
pToa who
|
|
send $4
|
|
bnot
|
|
push
|
|
push2
|
|
push0
|
|
pToa who
|
|
send $4
|
|
bnot
|
|
push
|
|
pTos caller
|
|
super Motion, $c
|
|
bnot
|
|
code_0115: ret
|
|
|