1 |
# rooftop |
2 |
# scripts for level 12 by wu |
3 |
# |
4 |
# LEGEND |
5 |
# |
6 |
# character naming convention: X_Yx |
7 |
# where X = area letter (A=first area, B=second area, etc.) |
8 |
# Y = character type (N=ninja, T=tanker, S=striker, R=red, etc.) |
9 |
# x = character number, usually same as character's initial patrol id |
10 |
# |
11 |
# trigger volume scripts: t##, where ## refers to trigger volume id |
12 |
# |
13 |
# CONTENTS |
14 |
# |
15 |
# 1.variables defined |
16 |
# 1b.music scripts |
17 |
# 2.start and objectives scripts |
18 |
# 3.save game scripts |
19 |
# 4.cut scene scripts |
20 |
# 5.console scripts |
21 |
# 6.trigger volume scripts |
22 |
|
23 |
############################### |
24 |
# variables defined # |
25 |
############################### |
26 |
|
27 |
var int my_save_point=0; |
28 |
var int ninja1=0; |
29 |
var int ninja2=0; |
30 |
var int strike1=0; |
31 |
var int strike1b=0; |
32 |
var int strike2=0; |
33 |
var int strike3=0; |
34 |
#var int elv1_check=0; |
35 |
var int invading_counter=3; |
36 |
var int done_with_intro_cutscene = 0; |
37 |
var int go_hide; |
38 |
var int go_hide2; |
39 |
|
40 |
############################### |
41 |
# music # |
42 |
############################### |
43 |
|
44 |
func void music_first(void) |
45 |
{ |
46 |
sound_music_start mus_cool19 0.0 |
47 |
sound_music_volume mus_cool19 0.75 3.0 |
48 |
# stopped at tanker death or timer |
49 |
} |
50 |
|
51 |
func void music_first_timer(void) |
52 |
{ |
53 |
sleep 1800 |
54 |
music_stop |
55 |
} |
56 |
|
57 |
func void music_gauntlet(void) |
58 |
{ |
59 |
sound_music_start mus_atm_cl12lp 0.0 |
60 |
sound_music_volume mus_atm_cl12lp 0.75 3.0 |
61 |
# this music stopped in t14 |
62 |
} |
63 |
|
64 |
func void music_billboard(void) |
65 |
{ |
66 |
sound_music_start mus_low1 0.0 |
67 |
sound_music_start mus_low1 0.75 3 |
68 |
# this music stopped in ta2_54 script |
69 |
} |
70 |
|
71 |
func void music_battle(void) |
72 |
{ |
73 |
sound_music_start mus_fitec |
74 |
# this music stopped in outro |
75 |
} |
76 |
|
77 |
func void music_stop(void) |
78 |
{ |
79 |
dprint STOP_THE_MUSIC |
80 |
sound_music_stop mus_cool19 |
81 |
sound_music_stop mus_atm_cl12lp |
82 |
sound_music_stop mus_low1 |
83 |
sound_music_stop mus_fitec |
84 |
} |
85 |
|
86 |
############################### |
87 |
# start and objectives # |
88 |
############################### |
89 |
func void start(string ai_name) |
90 |
{ |
91 |
dprint start |
92 |
|
93 |
particle el1_locklight01 do start |
94 |
door_lock 6 |
95 |
|
96 |
my_save_point = save_point; |
97 |
|
98 |
if (my_save_point eq 0) |
99 |
{ |
100 |
set_objective_1 |
101 |
powerup_spawn lsi 605 |
102 |
} |
103 |
|
104 |
if (my_save_point eq 1) |
105 |
{ |
106 |
dprint restore1 |
107 |
set_objective_1 |
108 |
done_with_intro_cutscene = 1; |
109 |
fork intro_taunt |
110 |
restore_game |
111 |
powerup_spawn lsi 605 |
112 |
} |
113 |
|
114 |
if (my_save_point eq 2) |
115 |
{ |
116 |
done_with_intro_cutscene = 1; |
117 |
dprint restore2 |
118 |
set_objective_1 |
119 |
chr_delete A_Sr9 |
120 |
chr_delete A_N1 |
121 |
chr_delete IntroNinja |
122 |
ai2_spawn C_T16 |
123 |
ai2_spawn C_Sr15 |
124 |
ai2_spawn C_R55 |
125 |
ai2_spawn C_N57 |
126 |
trigvolume_enable trigger_volume_13 0 |
127 |
door_lock 3 |
128 |
restore_game |
129 |
powerup_spawn lsi 605 |
130 |
} |
131 |
|
132 |
if (my_save_point eq 3) |
133 |
{ |
134 |
done_with_intro_cutscene = 1; |
135 |
dprint restore3 |
136 |
set_objective_3 |
137 |
chr_delete A_Sr9 |
138 |
chr_delete A_N1 |
139 |
chr_delete IntroNinja |
140 |
trigvolume_enable trigger_volume_79 0 |
141 |
restore_game |
142 |
} |
143 |
|
144 |
if (my_save_point eq 4) |
145 |
{ |
146 |
done_with_intro_cutscene = 1; |
147 |
dprint restore4 |
148 |
chr_delete A_Sr9 |
149 |
chr_delete A_N1 |
150 |
chr_delete IntroNinja |
151 |
trigvolume_enable trigger_volume_28 0 |
152 |
ai2_spawn OutroNinja |
153 |
chr_boss_shield OutroNinja |
154 |
music_battle |
155 |
gs_farclipplane_set 500 |
156 |
door_lock 2 |
157 |
restore_game |
158 |
} |
159 |
} |
160 |
|
161 |
func void you_lose(string ai_name) |
162 |
{ |
163 |
sleep 240 |
164 |
fade_out 0 0 0 180 |
165 |
sleep 240 |
166 |
lose |
167 |
} |
168 |
|
169 |
func void you_win(int char_index) |
170 |
{ |
171 |
outro |
172 |
win |
173 |
} |
174 |
|
175 |
func void set_objective_1(string ai_name) |
176 |
{ |
177 |
dprint set_objective_1 |
178 |
objective_set(1) |
179 |
target_set (7006,0.0) |
180 |
} |
181 |
|
182 |
func void set_objective_2(string ai_name) |
183 |
{ |
184 |
dprint set_objective_2 |
185 |
objective_set(2) |
186 |
target_set (7006,0.0) |
187 |
} |
188 |
|
189 |
func void set_objective_3(string ai_name) |
190 |
{ |
191 |
dprint set_objective_3 |
192 |
objective_set(3) |
193 |
target_set (7006,0.0) |
194 |
} |
195 |
|
196 |
################### |
197 |
# save game # |
198 |
################### |
199 |
|
200 |
func void s1(string ai_name) |
201 |
{ |
202 |
dprint SAVEDGAME1 |
203 |
|
204 |
if (my_save_point ne 1) |
205 |
{ |
206 |
save_game 1 autosave |
207 |
} |
208 |
} |
209 |
|
210 |
func void s2(string ai_name) |
211 |
{ |
212 |
dprint SAVEDGAME2 |
213 |
|
214 |
if (my_save_point ne 2) |
215 |
{ |
216 |
save_game 2 autosave |
217 |
} |
218 |
} |
219 |
|
220 |
func void s3(string ai_name) |
221 |
{ |
222 |
dprint SAVEDGAME3 |
223 |
|
224 |
if (my_save_point ne 3) |
225 |
{ |
226 |
save_game 3 autosave |
227 |
} |
228 |
} |
229 |
|
230 |
func void s4(string ai_name) |
231 |
{ |
232 |
dprint SAVEDGAME4 |
233 |
|
234 |
if (my_save_point ne 4) |
235 |
{ |
236 |
save_game 4 autosave |
237 |
} |
238 |
} |
239 |
|
240 |
########################## |
241 |
# cut scene scripts # |
242 |
########################## |
243 |
|
244 |
func void t12(string ai_name) |
245 |
{ |
246 |
dprint t12_elevator |
247 |
if (trigvolume_count(62) eq 0) |
248 |
{ |
249 |
trigvolume_enable trigger_volume_12 0 |
250 |
sleep 7 |
251 |
trigvolume_corpse 62 |
252 |
dprint delete_oldAI |
253 |
chr_delete B_R11 |
254 |
chr_delete B_R12a |
255 |
chr_delete B_Sr10 |
256 |
chr_delete B_Sr10a |
257 |
chr_delete B_T13 |
258 |
chr_delete B_Sr12 |
259 |
chr_delete B_N17 |
260 |
chr_delete B_N18 |
261 |
chr_delete A_N8 |
262 |
chr_delete A_T4 |
263 |
chr_delete A_Sr3 |
264 |
chr_delete C_N17 |
265 |
chr_delete C_N18 |
266 |
Elevator |
267 |
target_set(47,0.0) |
268 |
ai2_spawn C_Sr15 |
269 |
ai2_spawn C_T16 |
270 |
ai2_spawn C_R55 |
271 |
ai2_spawn C_N57 |
272 |
} |
273 |
} |
274 |
|
275 |
func void t17(string ai_name) |
276 |
{ |
277 |
dprint t17_KonokoZip |
278 |
if (chr_has_lsi(0)) |
279 |
{ |
280 |
KonokoZip |
281 |
chr_delete D_C19 |
282 |
chr_delete D_C60 |
283 |
chr_delete D_N25 |
284 |
chr_delete D_R21 |
285 |
chr_delete D_Sb20 |
286 |
chr_delete D_Sb22 |
287 |
chr_delete D_Sb23 |
288 |
chr_delete D_Sr24 |
289 |
chr_delete D_Sr26 |
290 |
chr_delete D_Sr27 |
291 |
chr_delete D_Sr38 |
292 |
chr_delete D_T28 |
293 |
set_objective_3 |
294 |
} |
295 |
} |
296 |
|
297 |
func void t27(string ai_name) |
298 |
{ |
299 |
dprint t27_ElevatorFinalFight |
300 |
ai2_spawn SuperNinja |
301 |
# Elevator cut scene |
302 |
# I'm backing him into a corner. This isn't going to be pretty..." |
303 |
|
304 |
chr_teleport 0 96 |
305 |
|
306 |
} |
307 |
|
308 |
|
309 |
################### |
310 |
# console # |
311 |
################### |
312 |
|
313 |
######################### |
314 |
# trigger volume stuff # |
315 |
######################### |
316 |
|
317 |
func void t28(string ai_name) |
318 |
{ |
319 |
chr_wait_animtype char_0 Pickup_Object |
320 |
particle obj_zip create |
321 |
} |
322 |
|
323 |
func void runup(void) |
324 |
{ |
325 |
ai2_dopath B_Sr10 patrol_10z |
326 |
ai2_setjobstate B_Sr10 |
327 |
} |
328 |
|
329 |
func void t1(string ai_name) |
330 |
{ |
331 |
dprint t1 |
332 |
ai2_dopath A_N1 patrol_02 |
333 |
ai2_setjobstate A_N1 |
334 |
ai2_dopath IntroNinja patrol_40 |
335 |
ai2_setjobstate IntroNinja |
336 |
if (strike1b eq 1) |
337 |
{ |
338 |
dprint strike1b |
339 |
ai2_dopath A_Sr9 patrol_09 |
340 |
ai2_setjobstate A_Sr9 |
341 |
} |
342 |
sleep 300 |
343 |
if (ninja1 ne 0) |
344 |
{ |
345 |
dprint ninja1_failed_trying_again |
346 |
ai2_dopath IntroNinja patrol_40 |
347 |
ai2_setjobstate IntroNinja |
348 |
} |
349 |
|
350 |
if (ninja2 ne 0) |
351 |
{ |
352 |
dprint ninja2_failed_trying_again |
353 |
ai2_dopath A_N1 patrol_02 |
354 |
ai2_setjobstate A_N1 |
355 |
} |
356 |
} |
357 |
|
358 |
func void patrolscript0001(string ai_name) |
359 |
{ |
360 |
dprint patrolscript0001_t1 |
361 |
playback_block IntroNinja ninja_jump5 interp 30 |
362 |
# ai2_makeignoreplayer A_N1 0 |
363 |
} |
364 |
|
365 |
func void patrolscript0002(string ai_name) |
366 |
{ |
367 |
dprint patrolscript0002_t1 |
368 |
playback_block A_N1 ninja_jump interp 30 |
369 |
# ai2_makeignoreplayer A_N1 0 |
370 |
} |
371 |
|
372 |
func void t2(string ai_name) |
373 |
{ |
374 |
dprint t2 |
375 |
trigvolume_enable trigger_volume_03 0 |
376 |
ai2_spawn A_C5 |
377 |
} |
378 |
|
379 |
func void t3(string ai_name) |
380 |
{ |
381 |
dprint t3 |
382 |
trigvolume_enable trigger_volume_02 0 |
383 |
ai2_spawn A_Sr3 |
384 |
} |
385 |
|
386 |
func void t4(string ai_name) |
387 |
{ |
388 |
dprint t4 |
389 |
trigvolume_enable trigger_volume_05 0 |
390 |
ai2_spawn A_T6 |
391 |
chr_delete A_Sr9 |
392 |
chr_delete A_N1 |
393 |
chr_delete IntroNinja |
394 |
|
395 |
} |
396 |
|
397 |
func void patrolscript0004(string ai_name) |
398 |
{ |
399 |
dprint patrolscript0004 |
400 |
playback_block A_T6 tanker2 interp 20 |
401 |
|
402 |
} |
403 |
|
404 |
func void t5(string ai_name) |
405 |
{ |
406 |
dprint t5 |
407 |
trigvolume_enable trigger_volume_04 0 |
408 |
ai2_spawn A_T4 |
409 |
chr_delete A_Sr9 |
410 |
chr_delete A_N1 |
411 |
chr_delete IntroNinja |
412 |
|
413 |
} |
414 |
|
415 |
func void patrolscript0005(string ai_name) |
416 |
{ |
417 |
dprint patrolscript0005 |
418 |
playback_block A_T4 tanker1 interp 20 |
419 |
|
420 |
} |
421 |
|
422 |
func void t6(string ai_name) |
423 |
{ |
424 |
dprint t6 |
425 |
ai2_spawn A_N7 |
426 |
trigvolume_enable trigger_volume_07_copy 0 |
427 |
|
428 |
} |
429 |
|
430 |
func void t7(string ai_name) |
431 |
{ |
432 |
dprint t7 |
433 |
ai2_spawn A_N8 |
434 |
trigvolume_enable trigger_volume_06 0 |
435 |
} |
436 |
|
437 |
func void t8(string ai_name) |
438 |
{ |
439 |
dprint t8 |
440 |
ai2_spawn B_Sr10 |
441 |
ai2_spawn B_Sr10a |
442 |
ai2_spawn B_R11 |
443 |
ai2_spawn B_R12a |
444 |
ai2_dopath A_T6 patrol_42 |
445 |
ai2_setjobstate A_T6 |
446 |
ai2_dopath A_T4 patrol_42 |
447 |
ai2_setjobstate A_T4 |
448 |
# ai2_dopath A_Sr3 patrol_44 |
449 |
ai2_setjobstate A_Sr3 |
450 |
# ai2_dopath A_C5 patrol_44 |
451 |
ai2_setjobstate A_C5 |
452 |
ai2_dopath A_N7 patrol_45 |
453 |
ai2_setjobstate A_N7 |
454 |
ai2_dopath A_N8 patrol_45 |
455 |
ai2_setjobstate A_N8 |
456 |
} |
457 |
|
458 |
func void t9(string ai_name) |
459 |
{ |
460 |
dprint t9 |
461 |
ai2_spawn E_N37 |
462 |
ai2_makeignoreplayer E_N37 1 |
463 |
playback_block E_N37 ninja_jump2 |
464 |
ai2_makeignoreplayer E_N37 0 |
465 |
ai2_attack E_N37 char_0 |
466 |
} |
467 |
|
468 |
func void t10(string ai_name) |
469 |
{ |
470 |
dprint t10 |
471 |
# "I lost him. Wait! There he is." |
472 |
sound_dialog_play c11_39_03konoko |
473 |
ai2_spawn B_Sr12 |
474 |
ai2_spawn B_T13 |
475 |
ai2_spawn B_SuperNinja |
476 |
chr_boss_shield B_SuperNinja |
477 |
chr_unstoppable B_SuperNinja 1 |
478 |
chr_neutral B_SuperNinja 1 |
479 |
playback_block B_SuperNinja superninja1 interp 20 |
480 |
sleep 60 |
481 |
chr_delete B_SuperNinja |
482 |
|
483 |
} |
484 |
|
485 |
func void t11(string ai_name) |
486 |
{ |
487 |
dprint t11 |
488 |
ai2_spawn C_N17 |
489 |
ai2_spawn C_N18 |
490 |
ai2_dopath B_T13 patrol_41 |
491 |
ai2_setjobstate B_T13 |
492 |
} |
493 |
|
494 |
func void patrolscript0011(string ai_name) |
495 |
{ |
496 |
dprint patrolscript0011 |
497 |
playback_block B_T13 tanker_jump interp 30 |
498 |
|
499 |
} |
500 |
|
501 |
func void t14(string ai_name) |
502 |
{ |
503 |
dprint t14 |
504 |
music_stop |
505 |
target_set (1,0.0) |
506 |
chr_delete C_N57 |
507 |
chr_delete C_Sr15 |
508 |
chr_delete C_T16 |
509 |
chr_delete C_R55 |
510 |
ai2_dopath D_Sb20 patrol_35 |
511 |
ai2_spawn D_Sr38 |
512 |
ai2_spawn D_C60 |
513 |
} |
514 |
|
515 |
func void patrolscript0014(string ai_name) |
516 |
{ |
517 |
dprint patrolscript0014 |
518 |
playback_block D_Sb20 striker_jump interp 20 |
519 |
} |
520 |
|
521 |
func void t15(string ai_name) |
522 |
{ |
523 |
dprint t15 |
524 |
ai2_spawn E_N14 |
525 |
ai2_spawn E_N14a |
526 |
ai2_passive E_N14 1 |
527 |
#ai2_passive E_N14a 1 |
528 |
ai2_spawn NinjaZip |
529 |
ai2_passive NinjaZip 1 |
530 |
chr_unstoppable NinjaZip 1 |
531 |
playback NinjaZip NinjaZipSet |
532 |
playback E_N14 Ninja02Set |
533 |
|
534 |
} |
535 |
|
536 |
#func void patrolscript0016(string ai_name) |
537 |
#{ |
538 |
# dprint patrolscript0016 |
539 |
# playback_block E_N14 LSIninja interp 20 |
540 |
#} |
541 |
|
542 |
func void t18(string ai_name) |
543 |
{ |
544 |
dprint t18 |
545 |
music_gauntlet |
546 |
ai2_spawn D_C19 |
547 |
ai2_spawn D_Sb20 |
548 |
ai2_spawn D_R21 |
549 |
ai2_spawn D_Sb22 |
550 |
ai2_spawn D_Sb23 |
551 |
ai2_spawn D_Sr24 |
552 |
} |
553 |
|
554 |
func void t19(string ai_name) |
555 |
{ |
556 |
dprint t19 |
557 |
music_billboard |
558 |
ai2_spawn D_N25 |
559 |
ai2_spawn C_R61 |
560 |
} |
561 |
|
562 |
func void t20(string ai_name) |
563 |
{ |
564 |
dprint t20 |
565 |
music_stop |
566 |
ai2_spawn D_Sr26 |
567 |
ai2_spawn D_Sr27 |
568 |
ai2_spawn D_T28 |
569 |
} |
570 |
|
571 |
func void cantescape_dialog(void) |
572 |
{ |
573 |
sleep 120 |
574 |
# "He can't escape me. But why?" |
575 |
sound_dialog_play c11_39_04konoko |
576 |
} |
577 |
|
578 |
func void t21(string ai_name) |
579 |
{ |
580 |
dprint t21_E_SuperNinja |
581 |
fork cantescape_dialog |
582 |
ai2_spawn E_N29 |
583 |
ai2_spawn E_Sb31 |
584 |
ai2_spawn E_Sr63 |
585 |
ai2_spawn E_Sr64 |
586 |
ai2_spawn E_R65 |
587 |
ai2_spawn E_SuperNinja |
588 |
chr_boss_shield E_SuperNinja |
589 |
chr_unstoppable E_SuperNinja |
590 |
playback_block E_SuperNinja superninja2 interp 20 |
591 |
sleep 60 |
592 |
chr_delete E_SuperNinja |
593 |
|
594 |
} |
595 |
|
596 |
func void t22(string ai_name) |
597 |
{ |
598 |
dprint t22 |
599 |
ai2_dopath IntroNinja patrol_39 |
600 |
ai2_setjobstate IntroNinja |
601 |
|
602 |
} |
603 |
|
604 |
func void patrolscript0022(string ai_name) |
605 |
{ |
606 |
dprint patrolscript0022 |
607 |
playback_block IntroNinja ninja_jump4 interp 20 |
608 |
|
609 |
} |
610 |
|
611 |
func void t23(string ai_name) |
612 |
{ |
613 |
dprint t23 |
614 |
ai2_spawn E_Sr30 |
615 |
|
616 |
} |
617 |
|
618 |
func void t24(string ai_name) |
619 |
{ |
620 |
dprint t24 |
621 |
# "He knows I can feel him. That we are... rivals? Natural enemies?" |
622 |
sound_dialog_play c11_39_08konoko |
623 |
ai2_spawn E_R32 |
624 |
ai2_dopath E_Sr33 patrol_34 |
625 |
ai2_setjobstate E_Sr33 |
626 |
} |
627 |
|
628 |
func void t25(string ai_name) |
629 |
{ |
630 |
dprint t25 |
631 |
ai2_spawn E_Sr33 |
632 |
ai2_dopath E_Sr30 patrol_34 |
633 |
ai2_setjobstate E_Sr30 |
634 |
} |
635 |
|
636 |
func void t29(string ai_name) |
637 |
{ |
638 |
dprint t29 |
639 |
# "There's something familar about him, I can't quite place it." |
640 |
sound_dialog_play c11_39_05konoko |
641 |
} |
642 |
|
643 |
func void t30(string ai_name) |
644 |
{ |
645 |
dprint t30_D_SuperNinja |
646 |
# "Where... ? Ah! Over there!" |
647 |
sound_dialog_play c11_39_01konoko |
648 |
ai2_spawn D_SuperNinja |
649 |
chr_boss_shield D_SuperNinja |
650 |
chr_unstoppable D_SuperNinja 1 |
651 |
playback_block D_SuperNinja superninja1b interp 20 |
652 |
sleep 60 |
653 |
chr_delete D_SuperNinja |
654 |
|
655 |
} |
656 |
|
657 |
func void t31(string ai_name) |
658 |
{ |
659 |
dprint t31 |
660 |
ai2_spawn A_N43 |
661 |
} |
662 |
|
663 |
func void t32in(string ai_name) |
664 |
{ |
665 |
dprint t32in |
666 |
ninja1 = ninja1 + 1 |
667 |
} |
668 |
|
669 |
func void t32out(string ai_name) |
670 |
{ |
671 |
dprint t32out |
672 |
ninja1 = ninja1 - 1 |
673 |
} |
674 |
|
675 |
func void t33in(string ai_name) |
676 |
{ |
677 |
dprint t33in |
678 |
ninja2 = ninja2 + 1 |
679 |
} |
680 |
|
681 |
func void t33out(string ai_name) |
682 |
{ |
683 |
dprint t33out |
684 |
ninja2 = ninja2 - 1 |
685 |
} |
686 |
|
687 |
func void ninja1_die(string ai_name) |
688 |
{ |
689 |
dprint ninja1_die |
690 |
ninja1 = 0 |
691 |
} |
692 |
|
693 |
func void ninja2_die(string ai_name) |
694 |
{ |
695 |
dprint ninja2_die |
696 |
ninja2 = 0 |
697 |
} |
698 |
|
699 |
func void t57(string ai_name) |
700 |
{ |
701 |
dprint t57 |
702 |
strike1=1 |
703 |
sleep 120 |
704 |
if (strike1 eq 1) |
705 |
{ |
706 |
ai2_dopath A_Sr9 patrol_48 |
707 |
ai2_setjobstate A_Sr9 |
708 |
} |
709 |
} |
710 |
|
711 |
func void t57b(string ai_name) |
712 |
{ |
713 |
dprint t57b |
714 |
strike1=0 |
715 |
strike1b=1 |
716 |
} |
717 |
|
718 |
|
719 |
func void t58(string ai_name) |
720 |
{ |
721 |
dprint t58 |
722 |
music_first |
723 |
# ai2_makeignoreplayer A_Sr9 1 |
724 |
# ai2_makeignoreplayer A_N1 1 |
725 |
# ai2_makeignoreplayer IntroNinja 1 |
726 |
ai2_dopath A_Sr9 patrol_49 |
727 |
ai2_setjobstate A_Sr9 |
728 |
ai2_dopath A_N1 patrol_50 |
729 |
ai2_setjobstate A_N1 |
730 |
ai2_dopath IntroNinja patrol_51 |
731 |
ai2_setjobstate IntroNinja |
732 |
# sleep 15 |
733 |
# ai2_makeignoreplayer A_Sr9 0 |
734 |
# ai2_makeignoreplayer A_N1 0 |
735 |
# ai2_makeignoreplayer IntroNinja 0 |
736 |
music_first_timer |
737 |
|
738 |
} |
739 |
|
740 |
func void t83(string ai_name) |
741 |
{ |
742 |
dprint checking |
743 |
go_hide = go_hide + 1; |
744 |
if(trigvolume_count (83) ne 0) |
745 |
{ |
746 |
dprint t83 |
747 |
if(go_hide eq 0) |
748 |
{ |
749 |
ai2_makeignoreplayer (ai_name,1) |
750 |
ai2_dopath (ai_name,patrol_13b) |
751 |
ai2_setjobstate (ai_name) |
752 |
ai2_forget (ai_name) |
753 |
sleep 60 |
754 |
ai2_makeignoreplayer (ai_name,0) |
755 |
} |
756 |
if(go_hide eq 1) |
757 |
{ |
758 |
ai2_makeignoreplayer (ai_name,1) |
759 |
ai2_dopath (ai_name,patrol_12b) |
760 |
ai2_setjobstate (ai_name) |
761 |
ai2_forget (ai_name) |
762 |
sleep 60 |
763 |
ai2_makeignoreplayer (ai_name,0) |
764 |
} |
765 |
} |
766 |
} |
767 |
|
768 |
func void t83b(string ai_name) |
769 |
{ |
770 |
dprint t83B |
771 |
go_hide = go_hide - 1; |
772 |
} |
773 |
|
774 |
func void t84(string ai_name) |
775 |
{ |
776 |
dprint checking |
777 |
go_hide2 = go_hide2 + 1; |
778 |
sleep 60 |
779 |
if(trigvolume_count (84) ne 0) |
780 |
{ |
781 |
dprint t84 |
782 |
if(go_hide2 eq 0) |
783 |
{ |
784 |
ai2_makeignoreplayer (ai_name,1) |
785 |
ai2_dopath (ai_name,patrol_69) |
786 |
ai2_setjobstate (ai_name) |
787 |
ai2_forget (ai_name) |
788 |
sleep 60 |
789 |
ai2_makeignoreplayer (ai_name,0) |
790 |
} |
791 |
if(go_hide2 eq 1) |
792 |
{ |
793 |
ai2_makeignoreplayer (ai_name,1) |
794 |
ai2_dopath (ai_name,patrol_70) |
795 |
ai2_setjobstate (ai_name) |
796 |
ai2_forget (ai_name) |
797 |
sleep 60 |
798 |
ai2_makeignoreplayer (ai_name,0) |
799 |
} |
800 |
if(go_hide2 eq 2) |
801 |
{ |
802 |
ai2_makeignoreplayer (ai_name,1) |
803 |
ai2_dopath (ai_name,patrol_71) |
804 |
ai2_setjobstate (ai_name) |
805 |
ai2_forget (ai_name) |
806 |
sleep 60 |
807 |
ai2_makeignoreplayer (ai_name,0) |
808 |
} |
809 |
} |
810 |
} |
811 |
|
812 |
func void t84b(string ai_name) |
813 |
{ |
814 |
dprint t84B |
815 |
go_hide2 = go_hide2 - 1; |
816 |
} |
817 |
|
818 |
func void t85(string ai_name) |
819 |
{ |
820 |
dprint t85 |
821 |
ai2_spawn sbg_ninja |
822 |
} |
823 |
func void t59(string ai_name) |
824 |
{ |
825 |
dprint t59 |
826 |
strike2=1 |
827 |
sleep 120 |
828 |
if (strike2 eq 1) |
829 |
{ |
830 |
ai2_dopath A_Sr3 patrol_52 |
831 |
ai2_setjobstate A_Sr3 |
832 |
ai2_dopath A_C5 patrol_52 |
833 |
ai2_setjobstate A_C5 |
834 |
} |
835 |
} |
836 |
|
837 |
func void t59b(string ai_name) |
838 |
{ |
839 |
dprint t59b |
840 |
strike2=0 |
841 |
} |
842 |
|
843 |
func void t60(string ai_name) |
844 |
{ |
845 |
dprint t60 |
846 |
strike3=1 |
847 |
sleep 120 |
848 |
if (strike3 eq 1) |
849 |
{ |
850 |
ai2_dopath B_Sr12 patrol_53 |
851 |
ai2_setjobstate B_Sr12 |
852 |
} |
853 |
} |
854 |
|
855 |
func void t60b(string ai_name) |
856 |
{ |
857 |
dprint t60b |
858 |
strike3=0 |
859 |
} |
860 |
|
861 |
func void t63(string ai_name) |
862 |
{ |
863 |
if (trigvolume_count(64) eq 0) |
864 |
{ |
865 |
trigvolume_enable trigger_volume_63 0 |
866 |
dprint t63 |
867 |
chr_delete E_R32 |
868 |
chr_delete E_Sr33 |
869 |
chr_delete E_Sr30 |
870 |
door_unlock 6 |
871 |
} |
872 |
} |
873 |
|
874 |
func void t65(string ai_name) |
875 |
{ |
876 |
dprint t65 |
877 |
chr_teleport C_R55 7013 |
878 |
ai2_dopath C_R55 patrol_56 |
879 |
ai2_setjobstate C_R55 |
880 |
} |
881 |
|
882 |
func void t77(string ai_name) |
883 |
{ |
884 |
dprint t77 |
885 |
ai2_dopath D_R21 patrol_58 |
886 |
} |
887 |
|
888 |
func void t78(string ai_name) |
889 |
{ |
890 |
dprint t78 |
891 |
ai2_dopath D_R21 patrol_59 |
892 |
} |
893 |
|
894 |
func void minus_invading_counter(string ai_name) |
895 |
{ |
896 |
invading_counter = invading_counter - 1 |
897 |
|
898 |
if (invading_counter eq 0) |
899 |
{ |
900 |
invading_dialog(); |
901 |
} |
902 |
} |
903 |
|
904 |
func void invading_dialog(void) |
905 |
{ |
906 |
invading_counter = 0; |
907 |
trigvolume_enable trigger_volume_95 0 |
908 |
|
909 |
sleep 90 |
910 |
# "It's like this is his territory, and I'm invading." |
911 |
sound_dialog_play c11_39_06konoko |
912 |
} |
913 |
|
914 |
func void t95(string ai_name) |
915 |
{ |
916 |
dprint t95 |
917 |
|
918 |
invading_dialog(); |
919 |
} |
920 |
|
921 |
func void t96(string ai_name) |
922 |
{ |
923 |
dprint t96 |
924 |
# "He's... angry! I can _taste_ his frustration." |
925 |
sound_dialog_play c11_39_07konoko |
926 |
} |
927 |
|
928 |
func void patrolscript0077(string ai_name) |
929 |
{ |
930 |
dprint 0077 |
931 |
ai2_dopath D_R21 patrol_21 |
932 |
ai2_setjobstate D_R21 |
933 |
} |
934 |
|
935 |
func void t80(string ai_name) |
936 |
{ |
937 |
dprint t78 |
938 |
ai2_spawn E_C62 |
939 |
playback E_C62 com |
940 |
|
941 |
} |
942 |
|