0009 |
Actor stops travelling |
00070404 |
When shot/hit, assign function 0404 - Sniper |
0106f80000 |
Set $player to Joanna |
0033fd64 |
If $self is dying/dead goto 64 |
009d08000000010004 |
If actor flag is something, goto 04 |
000260 |
Label 60 |
0003 |
Yield |
004b04 |
If fired near actor goto 04 |
00a300080000012d |
If flag #20 (takers dead) is true goto 2d |
000160 |
Go to first 60 |
00022d |
Label 2d |
00b6 |
Reset and start cycle counter |
000211 |
Label 11 |
0003 |
Yield |
004b04 |
If fired near actor goto 04 |
004a04 |
If something (actor in view?) goto 04 |
00bd00012c04 |
If cycle counter > 300 (5.0 secs) goto 04 |
000111 |
Go to first 11 |
000204 |
Label 04 |
0003 |
Yield |
01b3fd |
Allow co-op player to be considered for P1/P2 actor |
0106f20000 |
Set $player to P1 or P2 |
00b553544152540a00 |
// START |
003558 |
If $player in sight goto 58 |
0036 |
Call RNG |
00374059 |
If random byte < 64 goto 59 |
0037805a |
If random byte < 128 goto 5a |
0037c45b |
If random byte < 196 goto 5b |
00180010000006 |
Actor faces something (entity type=0x0010, entity_id=0x0000), then goto 06 |
000104 |
Go to first 04 |
000259 |
Label 59 |
00180010400006 |
Actor faces something (entity type=0x0010, entity_id=0x4000), then goto 06 |
000104 |
Go to first 04 |
00025a |
Label 5a |
00180010800006 |
Actor faces something (entity type=0x0010, entity_id=0x8000), then goto 06 |
000104 |
Go to first 04 |
00025b |
Label 5b |
00180010c00006 |
Actor faces something (entity type=0x0010, entity_id=0xc000), then goto 06 |
000104 |
Go to first 04 |
000206 |
Label 06 |
00b552554e20544f205041440a00 |
// RUN TO PAD |
00b6 |
Reset and start cycle counter |
00020a |
Label 0a |
0003 |
Yield |
01b3fd |
Allow co-op player to be considered for P1/P2 actor |
0106f20000 |
Set $player to P1 or P2 |
003558 |
If $player in sight goto 58 |
003e0058 |
If someone killed in sight of actor goto 58 |
003d0058 |
If shot near actor goto 58 |
00b5464143450a00 |
// FACE |
00bd00007806 |
If cycle counter > 120 (2.0 secs) goto 06 |
00010a |
Go to first 0a |
000206 |
Label 06 |
00b6 |
Reset and start cycle counter |
000210 |
Label 10 |
0036 |
Call RNG |
0038030b |
If random byte > 3 goto 0b |
0036 |
Call RNG |
00374059 |
If random byte < 64 goto 59 |
0037805a |
If random byte < 128 goto 5a |
0037c45b |
If random byte < 196 goto 5b |
000b025b0000ffff500afd02 |
Actor $self does animation 025b (fast head turn look around) |
00000b |
Go to next 0b |
000259 |
Label 59 |
000b025c0000ffff500afd02 |
Actor $self does animation 025c (look around, turn around, look around) |
00000b |
Go to next 0b |
00025a |
Label 5a |
000b025d0000ffff500afd02 |
Actor $self does animation 025d (slow head look around) |
00000b |
Go to next 0b |
00025b |
Label 5b |
000b025e0000ffff500afd02 |
Actor $self does animation 025e (look around) |
00020b |
Label 0b |
0003 |
Yield |
01b3fd |
Allow co-op player to be considered for P1/P2 actor |
0106f20000 |
Set $player to P1 or P2 |
003558 |
If $player in sight goto 58 |
003e0058 |
If someone killed in sight of actor goto 58 |
003d0058 |
If shot near actor goto 58 |
00b552554e0a00 |
// RUN |
0036 |
Call RNG |
0038032d |
If random byte > 3 goto 2d |
00bd00025806 |
If cycle counter > 600 (10.0 secs) goto 06 |
00022d |
Label 2d |
000c2d |
If actor is not doing anything goto 2d |
000110 |
Go to first 10 |
00022d |
Label 2d |
00010b |
Go to first 0b |
000206 |
Label 06 |
000104 |
Go to first 04 |
000258 |
Label 58 |
017a2d |
If $player is within disarm range goto 2d |
000104 |
Go to first 04 |
00022d |
Label 2d |
00b6 |
Reset and start cycle counter |
000206 |
Label 06 |
00150220000008 |
Actor targets and shoots at $player, then goto 08 |
000104 |
Go to first 04 |
000208 |
Label 08 |
0003 |
Yield |
000206 |
Label 06 |
00170200000009 |
Actor shoots other actor, then goto 09 |
000104 |
Go to first 04 |
000209 |
Label 09 |
0003 |
Yield |
003206 |
If actor has stopped moving goto 06 |
000109 |
Go to first 09 |
000206 |
Label 06 |
000104 |
Go to first 04 |
000264 |
Label 64 |
00b5534e495045204449450a00 |
// SNIPE DIE |
0005fd0000 |
Assign function 0000 - Idle to $self and advance frame |
0004 |
End of function |
There are no comments yet for this function.