0200 |
Label 00 |
03 |
Yield |
2f27 |
If actor has stopped moving then goto 27 |
0100 |
Go to first 00 |
0227 |
Label 27 |
33 |
Call RNG |
359628 |
If random byte > 150 then goto 28 |
33 |
Call RNG |
350029 |
If random byte > 0 then goto 29 |
0002 |
Go to next 02 |
0228 |
Label 28 |
0e02 |
Step sideways then goto 02 |
0229 |
Label 29 |
1002 |
Run sideways then goto 02 |
0202 |
Label 02 |
03 |
Yield |
2f04 |
If actor has stopped moving then goto 04 |
0102 |
Go to first 02 |
0204 |
Label 04 |
3c21 |
If we have a line of sight on Bond then goto 21 |
07 |
Return to return function |
0221 |
Label 21 |
476e22 |
If actor is within 110 units of Bond then goto 22 |
489122 |
If actor is further than 145 units of Bond then goto 22 |
4b000a22 |
If actor is within 10 units of Bond then goto 22 |
07 |
Return to return function |
0222 |
Label 22 |
0127 |
Go to first 27 |
04 |
End of function |
Either step sideways or run sideways
Do this continuously while Bond is within firing range AND between 110 and 145 units of Bond