home *** CD-ROM | disk | FTP | other *** search
- func void cheater(void)
- {
- invincible=1
- omnipotent=1
- lock_keys keys_all
- chr_teleport 0 7023
- }
- ###################################
- # variables used in train2 scipts #
- ###################################
-
- #used to see if PPK combo was successful
- var int combo_did;
-
- #used to determine when to activate or deactivate blocking drone, current script comments out the usefulness of this variable
- var int count_block;
-
- #determines if reload in ballistics or cell
- var int reload=0;
-
- #makes sure reloading cells doesn't play before player has even picked up the rifle
- var int droid_active;
-
- #sees if you already reloaded ballistics ammo before the system had a chance to prompt you to do so
- var int already_reloaded;
-
- #sees if you already reloaded cell ammo before system prompted you to do so.
- var int already_reloaded2;
-
- #counts number of reload prompts necessary, if you reloaded more than one time, you lose rating points
- var int had_to_reload;
-
- #determines when inside the target shooting function
- var int inside_target_function;
-
- #determines when inside ammo reload function
- var int inside_ammo_function = 0;
-
- #determines when not to display block droid message
- var int block_off;
-
- ################################
- # fight training scripts below #
- ################################
-
- #########################
- # punch and kick script #
- #########################
- func void train_fighting(string ai_name)
- {
- how_far_along = 4;
- music_stop
- particle obj3 kill
- particle obj4 kill
- trig_deactivate 1
- trig_deactivate 2
- trig_deactivate 3
- message_remove c01_50_23
- message_remove jump_encourage
- message_remove jump_encourage2
- sleep 60
- sound_dialog_play_interrupt c00_01_64shinatama
- message_remove
- message begin_fight 240
- sleep 240
- # PUNCH-KICK
- lock_keys keys_attack
- message xpunch
- chr_wait_animtype 0 punch
- sleep 60
- message_remove xpunch
- sleep 60
- message xkick
- chr_wait_animtype 0 kick
- sleep 60
- message_remove xkick
- sleep 60
-
- if (how_far_along eq 4)
- {
- #throw two punches
- sound_dialog_play_block c00_01_65shinatama
- message punch
- chr_wait_animtype 0 punch2
- message_remove punch
- sleep 60
- message c01_50_27 180
- sound_dialog_play_interrupt c00_01_66shinatama
- sound_dialog_play_block pause
- sleep 40
- }
-
- if (how_far_along eq 4)
- {
- # more combo
- sound_dialog_play_block c00_01_67shinatama
- sound_dialog_play_block pause
- sleep 60
- }
-
- if (how_far_along eq 4)
- {
- # FIRST COMBO
- message c01_50_29
- fork combo_wait
- chr_wait_animtype 0 ppk
- combo_did = 1;
- sleep 60
- message_remove c01_50_29
- message_remove c01_50_29b
- sleep 60
- sound_dialog_play_interrupt c00_01_07shinatama
- message xppk 180
- sleep 180
- }
- if(combo_did eq 1)
- {
- if (how_far_along eq 4)
- {
- # try linking for more combos
- sound_dialog_play_block c00_01_69shinatama
- sound_dialog_play_block pause
- sleep 240
- }
-
- if (how_far_along eq 4)
- {
- # you're now ready to train with a sparring partner
- sound_dialog_play_block c00_01_70shinatama
- sound_dialog_play_block pause
- sleep 30
- }
- if (how_far_along eq 4)
- {
- # proceed to the next room
- sound_dialog_play_block c00_01_71shinatama
- message xspar2
- ai2_spawn dum_hit_flash
- chr_lock_active dum_hit_flash
- chr_death_lock dum_hit_flash 1
- door_unlock 99
- particle door2_locklight02 do start
- }
- }
- }
-
- func void combo_wait(string ai_name)
- {
- sleep 600
- if (combo_did eq 0)
- {
- dprint rating
- rating = rating + 1
- rating
- message_remove c01_50_29
- sound_dialog_play_block c00_01_68shinatama
- sleep 60
- }
- if (combo_did eq 0)
- {
- message c01_50_29b 240
- sleep 240
- }
- if (combo_did eq 0)
- {
- message c01_50_29
- }
-
- # if(combo_did eq 0)
- # {
- # if (how_far_along eq 4)
- # {
- # try linking for more combos
- # sound_dialog_play_block c00_01_69shinatama
- # sound_dialog_play_block pause
- # sleep 240
- # }
- #
- # if (how_far_along eq 4)
- # {
- # you're now ready to train with a sparring partner
- # sound_dialog_play_block c00_01_70shinatama
- # sound_dialog_play_block pause
- # sleep 30
- # }
- # if (how_far_along eq 4)
- # {
- # proceed to the next room
- # sound_dialog_play_block c00_01_71shinatama
- # message xspar2
- # ai2_spawn dum_hit_flash
- # chr_lock_active dum_hit_flash
- # chr_death_lock dum_hit_flash 1
- # door_unlock 99
- # particle door2_locklight02 do start
- # }
- # }
- }
-
- ##################################
- # train player about hit flashes #
- ##################################
- func void train_hit_flash(string ai_name)
- {
- particle steam stop
- music_train2
- how_far_along = 6;
- message_remove xspar2
- sleep 60
- # try hitting this dummy
- sound_dialog_play_block c00_01_77shinatama
- message start_hit
- ai2_makeignoreplayer dum_hit_flash 1
- }
-
- func void hurt_dummy1(string ai_name)
- {
- message_remove start_hit
- sleep 60
- door_lock 99
- particle door2_locklight02 do stop
- # dynamic hit flashes
- message c01_50_35 300
- sleep 240
- ai2_dopath dum_hit_flash patrol_dum_hit_flash
- ai2_setjobstate dum_hit_flash
- sleep 60
- # more dynamic hit flashes blue
- message blueflash 300
- sleep 240
- ai2_dopath dum_hit_flash patrol_dum_hit_flash
- ai2_setjobstate dum_hit_flash
- sleep 60
- message c01_50_37 300
- sleep 240
- ai2_dopath dum_hit_flash patrol_dum_hit_flash
- ai2_setjobstate dum_hit_flash
- sleep 60
- # more dynamic hit flashes
- message c01_50_38 300
- sleep 240
- ai2_dopath dum_hit_flash patrol_dum_hit_flash
- ai2_setjobstate dum_hit_flash
- # move on to the next room to learn how to perform the most dangerous attacks.
- sleep 60
- sound_dialog_play_block c00_01_78shinatama
- message goto_throw
- sleep 60
- door_unlock 100
- particle door3_locklight02 do start
- ai2_spawn dum_train_throw
- chr_lock_active dum_train_throw
- chr_death_lock dum_train_throw 1
- ai2_makeignoreplayer dum_train_throw 1
- }
-
- ###################################
- # train player to throw opponents #
- ###################################
- func void lockthrow(void)
- {
- door_lock 100
- particle door3_locklight02 do stop
- }
-
- func void train_throw(string ai_name)
- {
- how_far_along = 7;
- message_remove goto_throw
- sleep 60
- if (how_far_along eq 7)
- {
- # FIRST THROW
- sound_dialog_play_block c00_01_79shinatama
- message c01_50_41
- chr_wait_animtype 0 throw_forward_punch throw_forward_kick run_throw_forward_punch run_throw_forward_kick
- message_remove c01_50_41
- sleep 60
- }
-
- if (how_far_along eq 7)
- {
- # more throws
- sound_dialog_play_block c00_01_80shinatama
- ai2_dopath dum_train_throw patrol_train_throw2
- ai2_setjobstate dum_train_throw
- sleep 180
- ai2_dopath dum_train_throw patrol_train_throw2
- ai2_setjobstate dum_train_throw
- sleep 180
- message xthrow1 360
- ai2_dopath dum_train_throw patrol_train_throw2
- ai2_setjobstate dum_train_throw
- sleep 180
- ai2_dopath dum_train_throw patrol_train_throw2
- ai2_setjobstate dum_train_throw
- sleep 180
- ai2_dopath dum_train_throw patrol_train_throw2
- ai2_setjobstate dum_train_throw
- sleep 180
- message xthrow2 360
- ai2_dopath dum_train_throw patrol_train_throw2
- ai2_setjobstate dum_train_throw
- sleep 180
- ai2_dopath dum_train_throw patrol_train_throw2
- ai2_setjobstate dum_train_throw
- sleep 180
- ai2_dopath dum_train_throw patrol_train_throw2
- ai2_setjobstate dum_train_throw
- sleep 180
- ai2_dopath dum_train_throw patrol_train_throw2
- ai2_setjobstate dum_train_throw
- }
-
- if (how_far_along eq 7)
- {
- # Proceed to the next room and try blocking the training dummy'sleep 240 attacks.
- message goto_block
- sleep 60
- door_unlock 101
- particle door4_locklight02 do start
- particle door4b_locklight02 do start
- ai2_spawn dum_train_block
- ai2_makeignoreplayer dum_train_block 1
- chr_invincible char_0 1
- }
-
- }
-
- ###############################
- # train player to block blows #
- ###############################
- func void train_block(string ai_name)
- {
- #introduce blocking
- how_far_along = 5;
- message_remove goto_block
- # dummy attack
- sound_dialog_play_block c00_01_72shinatama
- sound_dialog_play_block pause
- sound_dialog_play_block c00_01_73shinatama
- if(count_block eq 0)
- {
- message c01_50_33
- }
- }
-
- func void train_block2(string ai_name)
- {
- ai2_makeignoreplayer dum_train_block 0
- ai2_dopath dum_train_block patrol_56b
- ai2_setjobstate dum_train_block
- message_remove c01_50_33
- if(count_block eq 0)
- {
- count_block = 1
- door_lock 101
- door_close 101
- particle door4_locklight02 do stop
- chr_delete dum_train_throw
- chr_delete dum_hit_flash
- chr_delete demo1
- chr_delete demo2
- chr_delete demo3
- if (how_far_along eq 5)
- {
- # more blocking
- sleep 60
- message c01_50_32 300
- sound_dialog_play_block c00_01_74shinatama
- sound_dialog_play_pause
- sleep 30
- sound_dialog_play_block c00_01_75shinatama
- message xblocking2 300
- sound_dialog_play_pause
- sleep 30
- sound_dialog_play_block c00_01_76shinatama
- }
- sleep 120
- # message_remove xdronedeactive
- ai2_makeignoreplayer dum_train_block 1
- ai2_dopath dum_train_block patrol_56b
- ai2_setjobstate dum_train_block
- sound_dialog_play_block c00_01_83shinatama
- sound_dialog_play_block pause
- door_unlock 102
- particle door5_locklight02 do start
- message goto_shoot
- chr_inv_reset 0
- music_stop
- sleep 60
- dprint spawn_shoot
- ai2_spawn dum_train_shoot
- ai2_spawn dum_train_shoot2
- ai2_passive dum_train_shoot 1
- ai2_passive dum_train_shoot2 1
- chr_invincible dum_train_shoot 1
- chr_invincible dum_train_shoot2 1
- chr_invincible char_0 0
- console_deactivate 12
- trigvolume_enable tv75 0
- trigvolume_enable tv74 0
- }
- }
-
- func void disable_tv46(void)
- {
- message_remove c01_50_33
- trigvolume_enable trigger_volume_46 0
- }
-
- ##################################
- # put drones back on their spots #
- ##################################
- func void flash_path(string ai_name)
- {
- sleep 90
- ai2_dopath dum_hit_flash patrol_dum_hit_flash
- }
-
- func void throw_path(string ai_name)
- {
- sleep 90
- ai2_dopath dum_train_throw patrol_train_throw2
- }
-
- func void block_path(string ai_name)
- {
- if(block_off eq 0)
- {
- block_off = 1;
- message xdronedeactive 180
- }
- ai2_makeignoreplayer dum_train_block 1
- ai2_dopath dum_train_block patrol_56
- sleep 180
- block_off = 0;
- }
-
- func void block_path2(string ai_name)
- {
-
- ai2_makeignoreplayer dum_train_block 1
- ai2_dopath dum_train_block patrol_56
- }
- ######################################################
- # regenerate first two training dummies as necessary #
- ######################################################
-
- func void regen1(string ai_name)
- {
- dprint regen1
- message_remove blueflash
- message_remove c01_50_37
- message_remove c01_50_38
- sleep 60
- message xregen1 180
- sleep 180
- chr_set_health dum_hit_flash 50
- ai2_dopath dum_hit_flash patrol_dum_hit_flash
- ai2_setjobstate dum_hit_flash
- }
-
- func void regen2(string ai_name)
- {
- dprint regen2
- sleep 60
- message xregen1 180
- sleep 180
- chr_set_health dum_train_throw 50
- ai2_dopath dum_hit_flash patrol_train_throw2
- ai2_setjobstate dum_train_throw
- }
-
- #########################
- # train player to shoot #
- #########################
- func void train_shoot(string ai_name)
- {
- # message_remove xdroneactive
- message_remove xdronedeactive
- particle g_tap1 create
- sleep 7
- weapon_spawn w1_tap 7042
- wp_disable_fade=1
- how_far_along = 8;
- message_remove goto_shoot
- sleep 60
- ai2_dopath dum_train_throw patrol_train_throw
- ai2_setjobstate dum_train_throw
-
- if (how_far_along eq 8)
- {
- lock_keys keys_inventory
- lock_keys keys_reload
- # approach weapons
- sound_dialog_play_block c00_01_84shinatama
- sound_dialog_play_pause
- chr_wait_animtype char_0 Pickup_Pistol Pickup_Pistol_Mid
- door_lock 102
- particle door5_locklight02 do stop
- trigvolume_enable tv75 1
- trigvolume_enable tv74 1
- ui_show_element left 1
- sleep 60
- message c01_50_54
- # hit targets
- sound_dialog_play_block c00_01_85shinatama
- chr_wait_animtype char_0 Autopistol_Recoil
- sleep 120
- message_remove c01_50_54
- sleep 60
- message c01_50_53 300
- sleep 300
- }
- }
-
- func void enter_ammo_function(void)
- {
- dprint enter_ammo_function
- inside_ammo_function = 1;
- }
-
- func void exit_ammo_function(void)
- {
- dprint exit_ammo_function
- inside_ammo_function = 0;
- }
-
- func void need_ammo(string ai_name)
- {
- trigvolume_enable tv74 0
-
- sleep 67
- var int empty_weapon = chr_has_empty_weapon(char_0);
-
- dprint trying_ammo_function
-
- if (inside_ammo_function eq 0)
- {
- dprint doing_ammo_function
- enter_ammo_function();
-
- if(empty_weapon eq 1)
- {
- sleep 15
- if(reload eq 0)
- {
- message_remove xkeepshoot
- already_reloaded = 0;
- sound_dialog_play_block c00_01_87shinatama
- message c01_50_61
- # generate powerup
- particle g_tap1 create
- sleep 7
- powerup_spawn ammo 7042
- particle g_tap2 create
- sleep 7
- powerup_spawn ammo 7043
- chr_wait_animtype char_0 Pickup_Object_Mid Pickup_Object
- fork remove_reload_message
- # sleep 60
- message_remove c01_50_61
- sleep 90
- if(already_reloaded eq 0)
- {
- message xreload
- chr_wait_animtype char_0 reload_pistol
- increase_rating()
- message_remove xreload
- sleep 90
- }
- message xkeepshoot
- }
- if(reload eq 1)
- {
- if(droid_active eq 1)
- {
- message c01_50_62
- # generate powerup
- particle g_phr1 create
- sleep 7
- powerup_spawn cell 7044
- particle g_phr2 create
- sleep 7
- powerup_spawn cell 7045
- chr_wait_animtype char_0 Pickup_Object_Mid Pickup_Object
- # sleep 60
- message_remove c01_50_62
- fork remove_reload_message2
- if(already_reloaded2 eq 0)
- {
- sleep 90
- message xreload
- chr_wait_animtype char_0 reload_rifle
- dprint rating
- increase_rating()
- message_remove xreload
- }
- }
- }
- }
-
- exit_ammo_function();
- }
-
- sleep 60
- trigvolume_enable tv74 1
- }
-
- func void increase_rating(void)
- {
- dprint rating
- if(had_to_reload ne 0)
- {
-
- rating = rating + 1;
- }
- had_to_reload = had_to_reload + 1;
- }
-
- func void remove_reload_message(void)
- {
- chr_wait_animtype char_0 reload_pistol
- already_reloaded = 1;
- }
-
- func void remove_reload_message2(void)
- {
- chr_wait_animtype char_0 reload_rifle
- already_reloaded2 = 1;
- }
-
- func void enter_target_function(void)
- {
- dprint enter_target_function
- inside_target_function = 1;
- }
-
- func void exit_target_function(void)
- {
- dprint exit_target_function
- inside_target_function = 0;
- }
-
- func void targets_are_gone(void)
- {
- reload=1;
- message_remove xkeepshoot
- trigvolume_enable tv75 0
- sleep 7
- particle g_phr1 create
- sleep7
- weapon_spawn w3_phr 7045
- sound_dialog_play_block c00_01_86shinatama
- sound_dialog_play_block pause
- message_remove
- #plasma, switch weapons
- sound_dialog_play_block c00_01_88shinatama
- chr_wait_animtype char_0 Pickup_Rifle Pickup_Rifle_Mid
- droid_active = 1;
- sleep 30
- #activate drone, hit it
- chr_invincible dum_train_shoot 0
- ai2_passive dum_train_shoot 0
- sound_dialog_play_block c00_01_89shinatama
- ai2_dopath dum_train_shoot patrol_train_shoot
- ai2_setjobstate dum_train_shoot
- }
-
- func void targets_are_not_gone(void)
- {
- # CB: turn off the trigger volume and sleep for a second
- # so as not to cause hideous performance loss
- trigvolume_enable tv75 0
- sleep 60
- trigvolume_enable tv75 1
- }
-
- func void targets_gone(string ai_name)
- {
- if(inside_target_function eq 0)
- {
- enter_target_function()
-
- var int num_broken = env_broken(3001, 3018);
-
- if (num_broken eq 18)
- {
- targets_are_gone();
- }
-
- if (num_broken < 18)
- {
- targets_are_not_gone();
- }
-
- exit_target_function
- }
- }
-
- func void droid1_gone(string ai_name)
- {
- if (how_far_along eq 8)
- {
- chr_invincible dum_train_shoot2 0
- # now side to side
- sound_dialog_play_block c00_01_90shinatama
- sound_dialog_play_block pause
- sleep 30
- ai2_passive dum_train_shoot2 0
- ai2_dopath dum_train_shoot2 patrol_train_shoot2
- ai2_setjobstate dum_train_shoot2
- }
- }
-
- func void droid2_gone(string ai_name)
- {
- if (how_far_along eq 8)
- {
- reload = 2;
- droid_active = 0;
- message_remove
- cinematic_start (SHINnametag, 180, 180, 15, 1, 20, false)
- # great, done training
- chr_changeteam char_0 Syndicate
- music_train3
- if(rating eq 0)
- {
- message poopy
-
- }
- if(rating eq 1)
- {
- message poopy2
-
- }
- if(rating eq 2)
- {
- message poopy3
-
- }
- if(rating eq 3)
- {
- message poopy4
-
- }
- if(rating eq 4)
- {
- message poopy5
-
- }
- if(rating eq 5)
- {
- message poopy6
-
- }
- if(rating > 5)
- {
- message poopy7
-
- }
- sound_dialog_play_block c00_01_91shinatama
- sound_dialog_play_block pause
- sleep 40
- sound_dialog_play_block c00_01_81shinatama
- sound_dialog_play_block pause
- message_remove
- sleep 40
- sound_dialog_play_block c00_01_82shinatama
- sound_dialog_play_block pause
- cinematic_stop (SHINnametag, 15, 20)
- message xf1 400
- sleep 400
- message xlastreview
- particle obj_lastreview create
- console_activate 12
- wp_disable_fade=0
- }
- }
-
- func void lastreview(string ai_name)
- {
- music_stop
- particle obj_lastreview kill
- message_remove
- message_remove xlastreview
- text_console level_1f
- lock_keys keys_all
- sleep 60
- dprint swing
- swing
- ui_suppress_prompt=0
- }
-
- ######################################
- # training scripts used in warehouse #
- ######################################
- # note: health function 'yhealth' is in the level_script file #
-
- func void train_fathealth(string ai_name)
- {
- chr_wait_animtype char_0 Pickup_Object
- if(trigvolume_count (80) eq 1)
- {
- sleep 90
- message xtabhypo 300
- sound_dialog_play_block c00_01_93shinatama
- sound_dialog_play_block pause
- sleep 40
- sound_dialog_play_block c00_01_94shinatama
- }
- }
-
- func void intro_enemies(string ai_name)
- {
- dprint intro_enemies
- how_far_along = 11;
-
- music_firstfight
-
- if (how_far_along eq 11)
- {
- ai2_spawn Bay2_Thug_1
- ai2_spawn Bay2_Thug_2
- }
-
- if (how_far_along eq 11)
- {
- # enemies
- message c01_50_84 240
- sleep 360
- }
- }
-
- func void train_alarm(string ai_name)
- {
- how_far_along = 13;
-
- if (how_far_along eq 13)
- {
- ai2_spawn Bay4_Comguy_1
- # alarm
- sleep 180
- message c01_50_88 240
- sleep 240
- }
-
- if (how_far_along eq 13)
- {
- # alarm
- message c01_50_89 240
- sleep 240
- }
-
- # if (how_far_along eq 13)
- # {
- # alarm
- # message c01_50_90 240
- # sleep 240
- # }
- }
-
- func void train_neutral(string ai_name)
- {
- how_far_along = 14;
- target_set(92,15.0)
- if (how_far_along eq 14)
- {
- # neutrals
- message c01_50_91 240
- sleep 240
- sound_dialog_play_block c00_01_97shinatama
- }
- }
-
- func void train_timer(string ai_name)
- {
- how_far_along = 15;
-
- if(how_far_along eq 15)
- {
- target_set(96,15.0)
- timer_start 180 OutroLose
- sound_dialog_play_block c00_01_95shinatama
- sleep 180
- objective_set(4)
- sound_dialog_play_block pause
- music_timer
- }
-
- if (how_far_along eq 15)
- {
- sleep 60
- message timer_text 300
- sleep 360
- message timer_text2 240
- }
- }
-
- ############################
- # warn about alarm console #
- ############################
- func void alarm_warning(string ai_name)
- {
- if(count_alarm eq 0)
- {
- message alarm_warn 300
- }
- count_alarm = 1;
- }
-
- func void alarm_warningb(string ai_name)
- {
- count_alarm = 0;
- }
-
- #############################
- # consoles and compass hint #
- #############################
- func void console_jump(string ai_name)
- {
- text_console level_1g
- console_reset 18
- }
-
- func void console_escape(string ai_name)
- {
- text_console level_1h
- console_reset 17
- }
-
- func void console_attack(string ai_name)
- {
- text_console level_1i
- console_reset 16
- }
-
- func void console_flash(string ai_name)
- {
- text_console level_1j
- console_reset 15
- }
-
- func void console_throw(string ai_name)
- {
- text_console level_1k
- console_reset 14
- }
-
- func void console_block(string ai_name)
- {
- text_console level_1l
- console_reset 13
- }
-
- func void t77(string ai_name)
- {
- message xarrow 400
- }