[185] | 1 | #################
|
---|
| 2 | ### VARIABLES ###
|
---|
| 3 | #################
|
---|
| 4 |
|
---|
| 5 | var int var_counter = 0;
|
---|
| 6 |
|
---|
| 7 | ############
|
---|
| 8 | ### MAIN ###
|
---|
| 9 | ############
|
---|
| 10 |
|
---|
| 11 | func void main(void)
|
---|
| 12 | {
|
---|
| 13 | gl_fog_red = 0
|
---|
| 14 | gl_fog_blue = 0
|
---|
| 15 | gl_fog_green = 0
|
---|
| 16 | gl_fog_start = .995
|
---|
| 17 | gs_farclipplane_set 5000
|
---|
| 18 | ui_suppress_prompt = 1
|
---|
| 19 | chr_auto_aim_dist = 0
|
---|
| 20 | start
|
---|
| 21 | }
|
---|
| 22 |
|
---|
| 23 | #############
|
---|
| 24 | ### START ###
|
---|
| 25 | #############
|
---|
| 26 |
|
---|
| 27 | func void start(string ai_name)
|
---|
| 28 | {
|
---|
| 29 | fork deactivate_stuff
|
---|
| 30 | if(save_point eq 0) fork intro
|
---|
| 31 | if(save_point eq 1) restore_game
|
---|
| 32 | if(save_point eq 2) fork save_point_2
|
---|
| 33 | if(save_point eq 3) restore_game
|
---|
| 34 | sleep 5
|
---|
| 35 | fork sp_all
|
---|
| 36 | }
|
---|
| 37 |
|
---|
| 38 | func void deactivate_stuff(void)
|
---|
| 39 | {
|
---|
| 40 | #not used
|
---|
| 41 | trigvolume_enable crossfire 0
|
---|
| 42 | trigvolume_enable open_ambush_1 0
|
---|
| 43 | trigvolume_enable save2 0
|
---|
| 44 | trigvolume_enable save_point3 0
|
---|
| 45 | trigvolume_enable setobjective_4 0
|
---|
| 46 | trigvolume_enable setobjective_5 0
|
---|
| 47 | trigvolume_enable strikerguards 0
|
---|
| 48 | trigvolume_enable room1_copy_copy 0
|
---|
| 49 | trigvolume_enable room1_copy2 0
|
---|
| 50 | trigvolume_enable room2 0
|
---|
| 51 | trigvolume_enable room2_copy 0
|
---|
| 52 | trigvolume_enable room2_stop 0
|
---|
| 53 | trigvolume_enable room2_stop_copy2 0
|
---|
| 54 | trigvolume_enable room2_stop_copy_copy 0
|
---|
| 55 | trigvolume_enable room2_stop_copy 0
|
---|
| 56 | trigvolume_enable room3_stop 0
|
---|
| 57 | trigvolume_enable room3_stop_copy 0
|
---|
| 58 | trigvolume_enable room3_particle_control 0
|
---|
| 59 | trigvolume_enable room4_copy 0
|
---|
| 60 | trigvolume_enable room4_copy_copy 0
|
---|
| 61 | trigvolume_enable trigger_volume_07 0
|
---|
| 62 | trigvolume_enable trigger_volume_11_copy 0
|
---|
| 63 | trigvolume_enable trigger_volume_16_copy3 0
|
---|
| 64 | trigvolume_enable trigger_volume_16_copy_copy2 0
|
---|
| 65 | trigvolume_enable trigger_volume_16_copy2_copy2 0
|
---|
| 66 | trigvolume_enable trigger_volume_16_copy_copy_copy2 0
|
---|
| 67 | trigvolume_enable trigger_volume_16_copy2_copy_copy 0
|
---|
| 68 | trigvolume_enable trigger_volume_16_copy_copy_copy_copy 0
|
---|
| 69 | trigvolume_enable trigger_volume_36 0
|
---|
| 70 | trigvolume_enable trigger_volume_39 0
|
---|
| 71 | #used
|
---|
| 72 | obj_create 81 82
|
---|
| 73 | env_shade 777 777 .4 .4 .4
|
---|
| 74 | env_show 778 0
|
---|
| 75 | chr_delete ShinShin
|
---|
| 76 | }
|
---|
| 77 |
|
---|
| 78 | func void you_lose(string ai_name)
|
---|
| 79 | {
|
---|
| 80 | fade_out 0 0 0 30
|
---|
| 81 | sleep 30
|
---|
| 82 | lose
|
---|
| 83 | }
|
---|
| 84 |
|
---|
| 85 | ####################################
|
---|
| 86 | ### SEVERAL TIMES USED FUNCTIONS ###
|
---|
| 87 | ####################################
|
---|
| 88 |
|
---|
| 89 | func void sp_all(void)
|
---|
| 90 | {
|
---|
| 91 | co_message_display = 0
|
---|
| 92 | if(save_point eq 1) save_game 1 autosave
|
---|
| 93 | if(save_point eq 2) save_game 2 autosave
|
---|
| 94 | if(save_point eq 3) save_game 3 autosave
|
---|
| 95 | sleep 180
|
---|
| 96 | co_message_display = 1
|
---|
| 97 | }
|
---|
| 98 |
|
---|
| 99 | func void remove_ai(void)
|
---|
| 100 | {
|
---|
| 101 | ai2_kill
|
---|
| 102 | sleep 60
|
---|
| 103 | powerup_reset
|
---|
| 104 | weapon_reset
|
---|
| 105 | sleep 240
|
---|
| 106 | corpse_reset
|
---|
| 107 | }
|
---|
| 108 |
|
---|
| 109 | func void music_stop(void)
|
---|
| 110 | {
|
---|
| 111 | sound_music_stop mus_trt
|
---|
| 112 | sound_music_stop atm_cl09
|
---|
| 113 | sound_music_stop atm_cl10
|
---|
| 114 | sound_music_stop atm_cl11
|
---|
| 115 | sound_music_stop atm_cl12
|
---|
| 116 | sound_music_stop mus_amasian
|
---|
| 117 | }
|
---|
| 118 |
|
---|
| 119 | #tv66, tv67 and tv68 - called up, if you fall from a pipe
|
---|
| 120 | func void dont_even_try_it(string ai_name)
|
---|
| 121 | {
|
---|
| 122 | chr_set_health 0 0
|
---|
| 123 | }
|
---|
| 124 |
|
---|
| 125 | ##########
|
---|
| 126 | ### SP0 ###
|
---|
| 127 | ##########
|
---|
| 128 |
|
---|
| 129 | func void intro(void)
|
---|
| 130 | {
|
---|
| 131 | particle room1 do start
|
---|
| 132 | particle room2 do start
|
---|
| 133 | particle room3 do start
|
---|
| 134 | ai2_spawn ambush_striker_10
|
---|
| 135 | ai2_spawn ambush_striker_11
|
---|
| 136 | playback 0 IntroKonoko01
|
---|
| 137 | objective_set 1 silent
|
---|
| 138 | sleep 1
|
---|
| 139 | sound_music_start mus_trt
|
---|
| 140 | }
|
---|
| 141 |
|
---|
| 142 | #tv1 - big long box around the railing and the beginning of the stairway
|
---|
| 143 | func void p1(string ai_name)
|
---|
| 144 | {
|
---|
| 145 | music_stop
|
---|
| 146 | sound_music_start atm_cl09 1.0
|
---|
| 147 | ai2_spawn A1_sr01
|
---|
| 148 | ai2_spawn A1_t02
|
---|
| 149 | ai2_lookatme A1_sr01
|
---|
| 150 | ai2_lookatme A1_t02
|
---|
| 151 | sleep 120
|
---|
| 152 | door_lock 1
|
---|
| 153 | door_lock 2
|
---|
| 154 | }
|
---|
| 155 |
|
---|
| 156 | #lose func of A1_t02
|
---|
| 157 | func void backup_1(string ai_name)
|
---|
| 158 | {
|
---|
| 159 | ai2_spawn backup_striker1
|
---|
| 160 | particle blast1_locklight01 do start
|
---|
| 161 | door_unlock 1
|
---|
| 162 | door_open 1
|
---|
| 163 | }
|
---|
| 164 |
|
---|
| 165 | #lose func of A1_sr01
|
---|
| 166 | func void backup_2(string ai_name)
|
---|
| 167 | {
|
---|
| 168 | ai2_spawn backup_striker2
|
---|
| 169 | particle blast2_locklight01 do start
|
---|
| 170 | door_unlock 2
|
---|
| 171 | door_open 2
|
---|
| 172 | }
|
---|
| 173 |
|
---|
| 174 | #tv41 - long box in middle of the 1st hall (proceed from the left to the right side); not used, or better: does not work
|
---|
| 175 |
|
---|
| 176 | #tv2 - after door 1 and door 2
|
---|
| 177 | func void p2(string ai_name)
|
---|
| 178 | {
|
---|
| 179 | ai2_spawn A2_r03
|
---|
| 180 | playback A2_r03 redjump
|
---|
| 181 | ai2_lookatme A2_r03
|
---|
| 182 | ai2_spawn aerial_red_2
|
---|
| 183 | ai2_passive aerial_red_2 1
|
---|
| 184 | playback aerial_red_2 redjump2
|
---|
| 185 | ai2_passive aerial_red_2 0
|
---|
| 186 | ai2_lookatme aerial_red_2
|
---|
| 187 | ai2_spawn red_guard_1
|
---|
| 188 | ai2_dopath A1_sr01 patrol_31
|
---|
| 189 | ai2_dopath A1_t02 patrol_31
|
---|
| 190 | ai2_setjobstate A1_sr01
|
---|
| 191 | ai2_setjobstate A1_t02 patrol_31
|
---|
| 192 | ai2_spawn ShinShin force
|
---|
| 193 | playback ShinShin ShinShinSet
|
---|
| 194 | ai2_setmovementmode ShinShin creep
|
---|
| 195 | ai2_passive ShinShin 1
|
---|
| 196 | ai2_makeblind ShinShin 1
|
---|
| 197 | ai2_makedeaf ShinShin 1
|
---|
| 198 | chr_lock_active ShinShin
|
---|
| 199 | chr_unstoppable ShinShin 1
|
---|
| 200 | chr_invincible ShinShin 1
|
---|
| 201 | chr_nocollision ShinShin 1
|
---|
| 202 | }
|
---|
| 203 |
|
---|
| 204 | #tv34 - complete volume of the 2nd hall - enter func
|
---|
| 205 | func void t43(string ai_name)
|
---|
| 206 | {
|
---|
| 207 | var_counter = 1
|
---|
| 208 | }
|
---|
| 209 |
|
---|
| 210 | #tv34 - complete volume of the 2nd hall - leave func
|
---|
| 211 | func void t43b(string ai_name)
|
---|
| 212 | {
|
---|
| 213 | var_counter = 0
|
---|
| 214 | }
|
---|
| 215 |
|
---|
| 216 | #tv63 - long box in middle of the 2nd hall (proceed from the left to the right side)
|
---|
| 217 | func void come_to_me(string ai_name)
|
---|
| 218 | {
|
---|
| 219 | ai2_dopath ambush_striker1 come_to_me 1
|
---|
| 220 | ai2_dopath ambush_striker2 come_to_me 1
|
---|
| 221 | ai2_dopath A1_t02 come_to_me 1
|
---|
| 222 | ai2_dopath A1_sr01 come_to_me 1
|
---|
| 223 | }
|
---|
| 224 |
|
---|
| 225 | #tv65 - complete second half of the 2nd hall; only used to check, if there are still enemies in it or not; see next func
|
---|
| 226 |
|
---|
| 227 | #tv3 - big field around shinatama
|
---|
| 228 | func void shin_check(string ai_name)
|
---|
| 229 | {
|
---|
| 230 | trigvolume_enable trigger_volume_03 0
|
---|
| 231 | if(trigvolume_count(32) eq 0) Shin
|
---|
| 232 | else
|
---|
| 233 | {
|
---|
| 234 | sleep 60
|
---|
| 235 | trigvolume_enable trigger_volume_03 1
|
---|
| 236 | }
|
---|
| 237 | }
|
---|
| 238 |
|
---|
| 239 | #tv54 - complete volume of the 2nd hall too; used to delete all enemies inside; see next func
|
---|
| 240 |
|
---|
| 241 | func void Shin(void)
|
---|
| 242 | {
|
---|
| 243 | music_stop
|
---|
| 244 | sound_music_start atm_cl10 0.0
|
---|
| 245 | sound_music_volume atm_cl10 1 5
|
---|
| 246 | objective_set 2 silent
|
---|
| 247 | target_set 7020 60
|
---|
| 248 | particle blast1_locklight01 do stop
|
---|
| 249 | particle blast2_locklight01 do stop
|
---|
| 250 | door_lock 1
|
---|
| 251 | door_lock 2
|
---|
| 252 | particle room1 do stop
|
---|
| 253 | particle room2 do stop
|
---|
| 254 | particle Shindoor_locklight01 do start
|
---|
| 255 | door_unlock 3
|
---|
| 256 | particle room4 do start
|
---|
| 257 | ai2_spawn A2_sb04
|
---|
| 258 | sound_dialog_play c09_31_27shinatama
|
---|
| 259 | sound_dialog_play_block pause
|
---|
| 260 | sleep 600
|
---|
| 261 | sound_dialog_play c09_31_28shinatama
|
---|
| 262 | sleep 600
|
---|
| 263 | sound_dialog_play c09_31_29shinatama
|
---|
| 264 | sleep 330
|
---|
| 265 | sound_dialog_play_block pause
|
---|
| 266 | sleep 15
|
---|
| 267 | music_stop
|
---|
| 268 | sound_ambient_start c06_45_04_explo
|
---|
| 269 | sleep 10
|
---|
| 270 | particle ShinBomb do explode
|
---|
| 271 | trigvolume_kill 64
|
---|
| 272 | if(var_counter ne 0) chr_set_health 0 0
|
---|
| 273 | else
|
---|
| 274 | {
|
---|
| 275 | fade_out 1 1 1 30
|
---|
| 276 | sleep 2
|
---|
| 277 | fade_in 30
|
---|
| 278 | door_lock 3
|
---|
| 279 | particle Shindoor_locklight01 do stop
|
---|
| 280 | objective_set 3 silent
|
---|
| 281 | target_set 0 0
|
---|
| 282 | }
|
---|
| 283 | }
|
---|
| 284 |
|
---|
| 285 | #tv4 - in front of door 3
|
---|
| 286 | func void p5(string ai_name)
|
---|
| 287 | {
|
---|
| 288 | ai2_spawn A3_n05
|
---|
| 289 | ai2_spawn A3_sb06
|
---|
| 290 | }
|
---|
| 291 |
|
---|
| 292 | ##########
|
---|
| 293 | ### SP1 ###
|
---|
| 294 | ##########
|
---|
| 295 |
|
---|
| 296 | #tv69 - in some distance afer door 3
|
---|
| 297 | func void new_save1(string ai_name)
|
---|
| 298 | {
|
---|
| 299 | if(save_point eq 1)
|
---|
| 300 | {
|
---|
| 301 | p5
|
---|
| 302 | particle room4 do start
|
---|
| 303 | objective_set 3 silent
|
---|
| 304 | }
|
---|
| 305 | else save_game 1 autosave
|
---|
| 306 | particle Shindoor_locklight01 do stop
|
---|
| 307 | door_close 3
|
---|
| 308 | door_lock 3
|
---|
| 309 | particle room3 do stop
|
---|
| 310 | }
|
---|
| 311 |
|
---|
| 312 | #called up, after you've talked to the guy
|
---|
| 313 | func void do_console_1(string ai_name)
|
---|
| 314 | {
|
---|
| 315 | ai2_doalarm A3_n05 1
|
---|
| 316 | }
|
---|
| 317 |
|
---|
| 318 | #console1
|
---|
| 319 | func void pipe1a(string ai_name)
|
---|
| 320 | {
|
---|
| 321 | ai2_passive A3_n05 1
|
---|
| 322 | particle room4 do stop
|
---|
| 323 | timer_start 30 pipe1b
|
---|
| 324 | sound_music_start atm_cl11
|
---|
| 325 | }
|
---|
| 326 |
|
---|
| 327 | func void pipe1b(void)
|
---|
| 328 | {
|
---|
| 329 | particle room4 do start
|
---|
| 330 | console_reset 1
|
---|
| 331 | music_stop
|
---|
| 332 | }
|
---|
| 333 |
|
---|
| 334 | #tv29 - on the pipe, in some distance after door 4 (func: p36); I've disabled it
|
---|
| 335 |
|
---|
| 336 | #tv28 - after door 9
|
---|
| 337 | func void killmuro(string ai_name)
|
---|
| 338 | {
|
---|
| 339 | music_stop
|
---|
| 340 | ai2_spawn A4_n07
|
---|
| 341 | }
|
---|
| 342 |
|
---|
| 343 | #tv5 - in front of door 10
|
---|
| 344 | func void p6(string ai_name)
|
---|
| 345 | {
|
---|
| 346 | ai2_spawn A4_sr08
|
---|
| 347 | ai2_spawn B1_c07
|
---|
| 348 | }
|
---|
| 349 |
|
---|
| 350 | #tv6 - after door 13 and door 14, not used (func: p7)
|
---|
| 351 |
|
---|
| 352 | #tv7 - in the middle of the stairs from 1st floor to 2nd floor
|
---|
| 353 | func void p8(string ai_name)
|
---|
| 354 | {
|
---|
| 355 | trigvolume_enable trigger_volume_08 0
|
---|
| 356 | ai2_spawn B2_sb09
|
---|
| 357 | ai2_spawn B2_n10
|
---|
| 358 | }
|
---|
| 359 |
|
---|
| 360 | #tv49 - after door 11 and door 12
|
---|
| 361 | func void p9(string ai_name)
|
---|
| 362 | {
|
---|
| 363 | ai2_spawn C1_c16
|
---|
| 364 | ai2_spawn C1_t11
|
---|
| 365 | ai2_spawn C1_sb12
|
---|
| 366 | ai2_spawn C1_t13
|
---|
| 367 | ai2_spawn C2_sg15
|
---|
| 368 | ai2_spawn C2_sr17
|
---|
| 369 | ai2_spawn C2_sb14
|
---|
| 370 | ai2_spawn C2_t19
|
---|
| 371 | }
|
---|
| 372 |
|
---|
| 373 | #console6
|
---|
| 374 | func void zap_cinematic(string ai_name)
|
---|
| 375 | {
|
---|
| 376 | particle doorA_locklight01 do start
|
---|
| 377 | particle doorB_locklight01 do start
|
---|
| 378 | door_unlock 15
|
---|
| 379 | ai2_spawn vat_bot_1
|
---|
| 380 | ai2_spawn vat_bot_2
|
---|
| 381 | ai2_spawn vat_bot_3
|
---|
| 382 | ai2_spawn vat_bot_4
|
---|
| 383 | ai2_spawn vat_bot_5
|
---|
| 384 | chr_weapon_immune vat_bot_1
|
---|
| 385 | chr_weapon_immune vat_bot_2
|
---|
| 386 | chr_weapon_immune vat_bot_3
|
---|
| 387 | chr_weapon_immune vat_bot_4
|
---|
| 388 | chr_weapon_immune vat_bot_5
|
---|
| 389 | particle vatroom1 do start
|
---|
| 390 | particle zap1 create
|
---|
| 391 | particle zap2 create
|
---|
| 392 | particle zap3 create
|
---|
| 393 | trigvolume_enable save2 1
|
---|
| 394 | sleep 1
|
---|
| 395 | sound_music_start atm_cl12 0.75
|
---|
| 396 | }
|
---|
| 397 |
|
---|
| 398 | ##########
|
---|
| 399 | ### SP2 ###
|
---|
| 400 | ##########
|
---|
| 401 |
|
---|
| 402 | #tv25 - after door 15
|
---|
| 403 | func void save_point_2(string ai_name)
|
---|
| 404 | {
|
---|
| 405 | if(save_point eq 2)
|
---|
| 406 | {
|
---|
| 407 | restore_game
|
---|
| 408 | zap_cinematic
|
---|
| 409 | objective_set 4 silent
|
---|
| 410 | }
|
---|
| 411 | else save_game 2 autosave
|
---|
| 412 | particle doorA_locklight01 do stop
|
---|
| 413 | door_close 15
|
---|
| 414 | door_lock 15
|
---|
| 415 | particle room4 do stop
|
---|
| 416 | }
|
---|
| 417 |
|
---|
| 418 | #tv64 - complete volume of the vat room (from the floor, where Konoko stands nearly to the ceiling)
|
---|
| 419 | func void zap_start(string ai_name)
|
---|
| 420 | {
|
---|
| 421 | trigvolume_enable zap1 0
|
---|
| 422 | if(var_counter eq 0)
|
---|
| 423 | {
|
---|
| 424 | particle zap1 do start
|
---|
| 425 | sleep 120
|
---|
| 426 | particle zap1 do stop
|
---|
| 427 | }
|
---|
| 428 | if(var_counter eq 0)
|
---|
| 429 | {
|
---|
| 430 | particle zap2 do start
|
---|
| 431 | sleep 120
|
---|
| 432 | particle zap2 do stop
|
---|
| 433 | }
|
---|
| 434 | if(var_counter eq 0)
|
---|
| 435 | {
|
---|
| 436 | particle zap3 do start
|
---|
| 437 | sleep 120
|
---|
| 438 | particle zap3 do stop
|
---|
| 439 | }
|
---|
| 440 | sleep 60
|
---|
| 441 | trigvolume_enable zap1 1
|
---|
| 442 | }
|
---|
| 443 |
|
---|
| 444 | #1st console 4
|
---|
| 445 | func void zap_timer_1(string ai_name)
|
---|
| 446 | {
|
---|
| 447 | var_counter = 1
|
---|
| 448 | timer_start 15 zap_start_again
|
---|
| 449 | }
|
---|
| 450 |
|
---|
| 451 | #tv60 - passage to the 1st console 4
|
---|
| 452 | func void change_patrol_1(string ai_name)
|
---|
| 453 | {
|
---|
| 454 | ai2_dopath vat_bot_2 vat_bot_2b 1
|
---|
| 455 | }
|
---|
| 456 |
|
---|
| 457 | #2nd console 4
|
---|
| 458 | func void zap_timer_2(string ai_name)
|
---|
| 459 | {
|
---|
| 460 | var_counter = 1
|
---|
| 461 | timer_start 10 zap_start_again
|
---|
| 462 | }
|
---|
| 463 |
|
---|
| 464 | #tv61 - passage to the 2nd console 4
|
---|
| 465 | func void change_patrol_2(string ai_name)
|
---|
| 466 | {
|
---|
| 467 | ai2_dopath vat_bot_3 vat_bot_3b 1
|
---|
| 468 | }
|
---|
| 469 |
|
---|
| 470 | #3rd console 4
|
---|
| 471 | func void zap_timer_3(string ai_name)
|
---|
| 472 | {
|
---|
| 473 | var_counter = 1
|
---|
| 474 | timer_start 5 zap_start_again
|
---|
| 475 | }
|
---|
| 476 |
|
---|
| 477 | #tv62 - passage to the 3rd console 4
|
---|
| 478 | func void change_patrol_3(string ai_name)
|
---|
| 479 | {
|
---|
| 480 | ai2_dopath vat_bot_5 vat_bot_5b 1
|
---|
| 481 | }
|
---|
| 482 |
|
---|
| 483 | func void zap_start_again(string ai_name)
|
---|
| 484 | {
|
---|
| 485 | var_counter = 0
|
---|
| 486 | console_reset 4
|
---|
| 487 | }
|
---|
| 488 |
|
---|
| 489 | #tv35 to tv40 - called up, if a chara falls into the acid
|
---|
| 490 | func void splash(string character)
|
---|
| 491 | {
|
---|
| 492 | if(chr_is_player(character) eq 1)
|
---|
| 493 | {
|
---|
| 494 | cm_detach
|
---|
| 495 | chr_animate 0 KONOKOacid
|
---|
| 496 | sleep 10
|
---|
| 497 | sound_impulse_play konoko_gruesome_death
|
---|
| 498 | chr_set_health 0 0
|
---|
| 499 | }
|
---|
| 500 | else
|
---|
| 501 | {
|
---|
| 502 | chr_animate(character, KONOKOacid);
|
---|
| 503 | sleep 10
|
---|
| 504 | chr_set_health(character, 0);
|
---|
| 505 | }
|
---|
| 506 | }
|
---|
| 507 |
|
---|
| 508 | #after door 16
|
---|
| 509 | func void red_ambush(string ai_name)
|
---|
| 510 | {
|
---|
| 511 | music_stop
|
---|
| 512 | ai2_spawn ambush_red_1
|
---|
| 513 | }
|
---|
| 514 |
|
---|
| 515 | #tv10 - after door 19 and door 20
|
---|
| 516 | func void p10(string ai_name)
|
---|
| 517 | {
|
---|
| 518 | ai2_spawn D1_sr20
|
---|
| 519 | ai2_spawn D1_sb21
|
---|
| 520 | particle doorB_locklight01 do stop
|
---|
| 521 | door_lock 16
|
---|
| 522 | particle zap1 kill
|
---|
| 523 | particle zap2 kill
|
---|
| 524 | particle zap3 kill
|
---|
| 525 | particle vatroom1 do stop
|
---|
| 526 | trigvolume_enable strikerguards 1
|
---|
| 527 | }
|
---|
| 528 |
|
---|
| 529 | #tv9 - long box (from the left side to the right side) in some distance in front of door 21
|
---|
| 530 | func void striker_guards(string ai_name)
|
---|
| 531 | {
|
---|
| 532 | ai2_spawn striker_guard_1
|
---|
| 533 | ai2_spawn striker_guard_2
|
---|
| 534 | particle room6 do start
|
---|
| 535 | }
|
---|
| 536 |
|
---|
| 537 | #tv51 - in front of door 21 (func: striker_guards); I've disabled it
|
---|
| 538 | #tv31 - in front of door 21 too (func: p11); I've disabled it too
|
---|
| 539 | #tv50 - after door 21 (func: cross_fire); I've disabled it
|
---|
| 540 |
|
---|
| 541 | #tv10 - after door 22
|
---|
| 542 | func void p12(string ai_name)
|
---|
| 543 | {
|
---|
| 544 | ai2_spawn D2_sg24
|
---|
| 545 | ai2_spawn D2_f25
|
---|
| 546 | ai2_spawn D2_sb26
|
---|
| 547 | playback D2_sb26 piperun
|
---|
| 548 | ai2_spawn pipe_guard_1
|
---|
| 549 | ai2_spawn pipe_guard_2
|
---|
| 550 | }
|
---|
| 551 |
|
---|
| 552 | #console8
|
---|
| 553 | func void pipe2a(void)
|
---|
| 554 | {
|
---|
| 555 | particle room6 do stop
|
---|
| 556 | timer_start 30 pipe2b
|
---|
| 557 | sound_music_start atm_cl11
|
---|
| 558 | }
|
---|
| 559 |
|
---|
| 560 | func void pipe2b(void)
|
---|
| 561 | {
|
---|
| 562 | music_off
|
---|
| 563 | particle room6 do start
|
---|
| 564 | console_reset 8
|
---|
| 565 | }
|
---|
| 566 |
|
---|
| 567 | #tv58 - after door 27
|
---|
| 568 | func void pipe2_music_off(void)
|
---|
| 569 | {
|
---|
| 570 | music_stop
|
---|
| 571 | particle save3_locklight01 do start
|
---|
| 572 | }
|
---|
| 573 |
|
---|
| 574 | #tv11 - in front of door 28
|
---|
| 575 | func void p13(string ai_name)
|
---|
| 576 | {
|
---|
| 577 | ai2_spawn E1_sr28
|
---|
| 578 | ai2_spawn E1_sb29
|
---|
| 579 | ai2_spawn E1_sr30
|
---|
| 580 | ai2_spawn ambush_comguy_1
|
---|
| 581 | ai2_spawn E1_n31
|
---|
| 582 | ai2_spawn E1_n32
|
---|
| 583 | ai2_spawn E1_n37
|
---|
| 584 | particle pipe3 do create
|
---|
| 585 | particle pipe3 do start
|
---|
| 586 | }
|
---|
| 587 |
|
---|
| 588 | #tv33 - after door 33 (funcs: p11 and save_point_3); I've disabled it
|
---|
| 589 |
|
---|
| 590 | ##########
|
---|
| 591 | ### SP3 ###
|
---|
| 592 | ##########
|
---|
| 593 |
|
---|
| 594 | #tv 32 - in some distance after door 28
|
---|
| 595 | func void p11b(string ai_name)
|
---|
| 596 | {
|
---|
| 597 | trigvolume_enable p11b_vol 0
|
---|
| 598 | if(save_point eq 3) p13
|
---|
| 599 | else save_game 3 autosave
|
---|
| 600 | particle save3_locklight01 do stop
|
---|
| 601 | door_close 28
|
---|
| 602 | door_lock 28
|
---|
| 603 | objective_set 5 silent
|
---|
| 604 | particle room6 do stop
|
---|
| 605 | }
|
---|
| 606 |
|
---|
| 607 | #lose func of E1_sr30
|
---|
| 608 | func void warnbigroom(string ai_name)
|
---|
| 609 | {
|
---|
| 610 | ai2_makeaware E1_sr28 char_0
|
---|
| 611 | ai2_makeaware E1_sb29 char_0
|
---|
| 612 | }
|
---|
| 613 |
|
---|
| 614 | #tv48 - 1st floor, at the beginning of the stairs to the 2nd floor
|
---|
| 615 | func void spawn_EC_guards(string ai_name)
|
---|
| 616 | {
|
---|
| 617 | ai2_spawn E1_sb29
|
---|
| 618 | ai2_spawn E1_c33
|
---|
| 619 | ai2_spawn E1_c40
|
---|
| 620 | ai2_spawn E1_f34
|
---|
| 621 | ai2_spawn E1_f40
|
---|
| 622 | ai2_spawn E1_f35
|
---|
| 623 | }
|
---|
| 624 |
|
---|
| 625 | #tv53 - at the same place as tv48 (func: set_objective_5); I've disabled it
|
---|
| 626 |
|
---|
| 627 | #tv59 - 3rd floor, at the beginning of the stairs to the 4th floor
|
---|
| 628 | func void final_guards(string ai_name)
|
---|
| 629 | {
|
---|
| 630 | ai2_spawn final_guard_1
|
---|
| 631 | ai2_spawn final_guard_2
|
---|
| 632 | }
|
---|
| 633 |
|
---|
| 634 | #console14
|
---|
| 635 | func void tctf_control(string ai_name)
|
---|
| 636 | {
|
---|
| 637 | sound_music_start mus_amasian 1.0
|
---|
| 638 | particle elev1_locklight01 do start
|
---|
| 639 | particle elev2_locklight01 do start
|
---|
| 640 | door_unlock 37
|
---|
| 641 | door_unlock 38
|
---|
| 642 | ai2_spawn E2_sr38
|
---|
| 643 | ai2_spawn E2_sr39
|
---|
| 644 | }
|
---|
| 645 |
|
---|
| 646 | #tv30 - in front of door 37 (func: p39); I've disabled it
|
---|
| 647 |
|
---|
| 648 | #tv12 - after door 37
|
---|
| 649 | func void elevator(void)
|
---|
| 650 | {
|
---|
| 651 | fade_out 0 0 0 30
|
---|
| 652 | sleep 30
|
---|
| 653 | fork_rmove_ai
|
---|
| 654 | env_show 778 1
|
---|
| 655 | env_shade 778 778 .3 .3 .3
|
---|
| 656 | ai2_spawn F_r40
|
---|
| 657 | playback 0 ElevatorTop
|
---|
| 658 | fade_in 30
|
---|
| 659 | fork wait_for_help
|
---|
| 660 | }
|
---|
| 661 |
|
---|
| 662 | func void wait_for_help(void)
|
---|
| 663 | {
|
---|
| 664 | chr_wait_health F_r40 70
|
---|
| 665 | ai2_spawn TCTF1051
|
---|
| 666 | ai2_spawn TCTF1052
|
---|
| 667 | ai2_spawn TCTF1053
|
---|
| 668 | ai2_spawn TCTF1054
|
---|
| 669 | chr_lock_active 1051
|
---|
| 670 | chr_lock_active 1052
|
---|
| 671 | chr_lock_active 1053
|
---|
| 672 | chr_lock_active 1054
|
---|
| 673 | chr_changeteam TCTF1051 TCTF
|
---|
| 674 | chr_changeteam TCTF1052 TCTF
|
---|
| 675 | chr_changeteam TCTF1053 TCTF
|
---|
| 676 | chr_changeteam TCTF1054 TCTF
|
---|
| 677 | playback TCTF1051 OutroSwatEnter
|
---|
| 678 | ai2_attack TCTF1053 char_0
|
---|
| 679 | sleep 60
|
---|
| 680 | playback TCTF1052 OutroSwatEnter
|
---|
| 681 | ai2_attack TCTF1054 char_0
|
---|
| 682 | sleep 50
|
---|
| 683 | playback TCTF1053 OutroLiteEnter
|
---|
| 684 | ai2_attack TCTF1051 char_0
|
---|
| 685 | sleep 70
|
---|
| 686 | playback TCTF1054 OutroLiteEnter
|
---|
| 687 | ai2_attack TCTF1052 char_0
|
---|
| 688 | }
|
---|
| 689 |
|
---|
| 690 | #console15
|
---|
| 691 | func void pipe3(void)
|
---|
| 692 | {
|
---|
| 693 | sound_music_volume mus_amasian 0 2
|
---|
| 694 | music_stop
|
---|
| 695 | particle pipe3 kill
|
---|
| 696 | sound_music_start atm_cl11
|
---|
| 697 | timer_start 20 pipe3b
|
---|
| 698 | }
|
---|
| 699 |
|
---|
| 700 | func void pipe3b(void)
|
---|
| 701 | {
|
---|
| 702 | music_stop
|
---|
| 703 | particle pipe3 do create
|
---|
| 704 | particle pipe3 do start
|
---|
| 705 | console_reset 15
|
---|
| 706 | }
|
---|
| 707 |
|
---|
| 708 | #tv13 - after door 39; circa after a quarter of the lenght of the pipe
|
---|
| 709 | func void outro(void)
|
---|
| 710 | {
|
---|
| 711 | fade_out 0 0 0 30
|
---|
| 712 | sleep 30
|
---|
| 713 | win
|
---|
| 714 | }
|
---|
| 715 |
|
---|
| 716 | #####################
|
---|
| 717 | ### TEXT CONSOLES ###
|
---|
| 718 | #####################
|
---|
| 719 |
|
---|
| 720 | func void level10a(string chr_index)
|
---|
| 721 | {
|
---|
| 722 | text_console level_10a
|
---|
| 723 | console_reset 2
|
---|
| 724 | }
|
---|
| 725 |
|
---|
| 726 | func void level10b(string chr_index)
|
---|
| 727 | {
|
---|
| 728 | text_console level_10b
|
---|
| 729 | console_reset 7
|
---|
| 730 | }
|
---|