Villa


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

Invocations

Comments

There are no comments yet for this function.