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 | |
---|