[185] | 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 |
|
---|