// IW6 GSC SOURCE // Generated by https://github.com/xensik/gsc-tool main() { checkpoint_setup(); maps\_utility::template_level( "flood" ); maps\createart\flood_art::main(); maps\flood_fx::main(); maps\flood_precache::main(); thread common_scripts\_pipes::main(); maps\_utility::transient_init( "flood_intro_tr" ); maps\_utility::transient_init( "flood_mid_tr" ); maps\_utility::transient_init( "flood_end_tr" ); maps\_load::main(); maps\_utility::set_console_status(); maps\flood_audio::main(); maps\flood_anim::main(); maps\flood_fx::treadfx_override(); mission_flag_inits(); mission_precache(); mission_mains(); thread maps\flood_fx::fx_checkpoint_states(); maps\_utility::set_wind( 100, 0.1, 0.1 ); thread maps\flood_util::setup_palm_trees_in_rushing_water(); thread maps\flood_coverwater::init_coverwater(); thread maps\flood_util::setup_water_death(); level.jkudebug = 0; level.cw_waterwipe_above = "waterline_above"; level.cw_waterwipe_under = "waterline_under"; level.player visionsetwaterforplayer( "flood_underwater", 0 ); level.player maps\flood_util::set_water_fog( "flood_underwater_murky" ); flood_default_water_transion_fx(); thread mission_objectives(); thread mission_object_control(); level maps\_utility::delaythread( 1.0, maps\_utility::set_team_bcvoice, "allies", "delta" ); level maps\_utility::delaythread( 1.0, maps\_utility::set_team_bcvoice, "axis", "shadowcompany" ); setdvar( "music_enable", 1 ); if ( level.start_point == "infil" ) level thread flood_intro_screen(); } checkpoint_setup() { maps\_utility::default_start( ::infil_start ); maps\_utility::set_default_start( "infil" ); maps\_utility::add_start( "infil", ::infil_start, "Infil", ::infil, "flood_intro_tr" ); maps\_utility::add_start( "streets_to_dam", ::streets_to_dam_start, "Streets to Dam", ::streets_to_dam, "flood_intro_tr" ); maps\_utility::add_start( "streets_to_dam_2", ::streets_to_dam_2_start, "Streets to Dam 2", ::streets_to_dam_2, "flood_intro_tr" ); maps\_utility::add_start( "dam", ::dam_start, "Dam", ::dam, "flood_intro_tr" ); maps\_utility::add_start( "flooding_ext", ::flooding_ext_start, "Exterior Flood", ::flooding_ext, "flood_intro_tr" ); maps\_utility::add_start( "flooding_int", ::flooding_int_start, "Interior Flood", ::flooding_int, "flood_intro_tr" ); maps\_utility::add_start( "mall", ::mall_start, "Mall", ::mall, "flood_mid_tr" ); maps\_utility::add_start( "swept", ::swept_start, "Swept Away Event", ::swept, "flood_mid_tr" ); maps\_utility::add_start( "roof_stealth", ::roof_stealth_start, "Stealth Moment", ::roof_stealth, "flood_mid_tr" ); maps\_utility::add_start( "skybridge", ::skybridge_start, "Skybridge Event", ::skybridge, "flood_mid_tr" ); maps\_utility::add_start( "rooftops", ::rooftops_start, "Rooftops", ::rooftops, "flood_mid_tr" ); maps\_utility::add_start( "rooftop_water", ::rooftop_water_start, "Rooftop Water", ::rooftop_water, "flood_mid_tr" ); maps\_utility::add_start( "debrisbridge", ::debrisbridge_start, "Debris Bridge", ::debrisbridge, "flood_mid_tr" ); maps\_utility::add_start( "garage", ::garage_start, "Garage", ::garage, "flood_mid_tr" ); maps\_utility::add_start( "ending", ::ending_start, "Ending", ::ending, "flood_mid_tr" ); maps\_utility::add_start( "fly_around", ::fly_around_start, "Fly Around", ::fly_around, "flood_intro_tr" ); } mission_mains() { level thread maps\flood_infil::section_main(); level thread maps\flood_streets::section_main(); level thread maps\flood_chopper::section_main(); level thread maps\flood_flooding::section_main(); level thread maps\flood_mall::section_main(); level thread maps\flood_swept::section_main(); level thread maps\flood_roof_stealth::section_main(); level thread maps\flood_rooftops::section_main(); level thread maps\flood_garage::section_main(); level thread maps\flood_ending::section_main(); } mission_precache() { precacheitem( "r5rgp" ); precacheitem( "m9a1" ); precacheshader( "cinematic" ); precacheshader( "black" ); objective_string_precache(); level thread maps\flood_infil::section_precache(); level thread maps\flood_streets::section_precache(); level thread maps\flood_chopper::section_precache(); level thread maps\flood_flooding::section_precache(); level thread maps\flood_mall::section_precache(); level thread maps\flood_swept::section_precache(); level thread maps\flood_roof_stealth::section_precache(); level thread maps\flood_rooftops::section_precache(); level thread maps\flood_garage::section_precache(); level thread maps\flood_ending::section_precache(); level thread maps\flood_anim::anim_precache(); } mission_flag_inits() { level thread maps\flood_infil::section_flag_inits(); level thread maps\flood_streets::section_flag_inits(); level thread maps\flood_chopper::section_flag_inits(); level thread maps\flood_flooding::section_flag_inits(); level thread maps\flood_mall::section_flag_inits(); level thread maps\flood_swept::section_flag_inits(); level thread maps\flood_roof_stealth::section_flag_inits(); level thread maps\flood_rooftops::section_flag_inits(); level thread maps\flood_garage::section_flag_inits(); level thread maps\flood_ending::section_flag_inits(); common_scripts\utility::flag_init( "intro_show_introtext" ); common_scripts\utility::flag_init( "start_intro_sequence" ); } objective_string_precache() { precachestring( &"FLOOD_OBJ_FIND_LAUNCHERS" ); precachestring( &"FLOOD_OBJ_DISABLE_LAUNCHER" ); precachestring( &"FLOOD_OBJ_HIGHER_GROUND" ); precachestring( &"FLOOD_OBJ_REGROUP" ); precachestring( &"FLOOD_OBJ_FIND_BOSS" ); precachestring( &"FLOOD_OBJ_GET_TO_HOTEL" ); precachestring( &"FLOOD_OBJ_CAPTURE_BOSS" ); precachestring( &"FLOOD_INTROSCREEN_12_YEARS" ); } mission_objectives() { switch ( level.start_point ) { case "infil": wait 18.5; objective_add( maps\_utility::obj( "obj_find_boss" ), "current", &"FLOOD_OBJ_FIND_BOSS" ); case "streets": case "streets_to_dam": if ( level.start_point == "streets_to_dam" ) objective_add( maps\_utility::obj( "obj_find_boss" ), "current", &"FLOOD_OBJ_FIND_BOSS" ); common_scripts\utility::flag_wait_either( "player_out_of_garage", "launcher_objective_given" ); objective_add( maps\_utility::obj( "obj_disable_launcher" ), "current", &"FLOOD_OBJ_DISABLE_LAUNCHER" ); level waittill( "end_of_streets_to_dam" ); maps\_utility::objective_complete( maps\_utility::obj( "obj_disable_launcher" ) ); case "streets_to_dam_2": if ( level.start_point == "streets_to_dam_2" ) { objective_add( maps\_utility::obj( "obj_find_boss" ), "current", &"FLOOD_OBJ_FIND_BOSS" ); objective_add( maps\_utility::obj( "obj_disable_launcher" ), "done", &"FLOOD_OBJ_DISABLE_LAUNCHER" ); } case "dam": if ( level.start_point == "dam" ) { objective_add( maps\_utility::obj( "obj_find_boss" ), "current", &"FLOOD_OBJ_FIND_BOSS" ); objective_add( maps\_utility::obj( "obj_disable_launcher" ), "done", &"FLOOD_OBJ_DISABLE_LAUNCHER" ); common_scripts\utility::flag_init( "launcher_2_objective_given" ); } common_scripts\utility::flag_wait_either( "missiles_ready", "launcher_2_objective_given" ); objective_add( maps\_utility::obj( "obj_disable_launcher_2" ), "current", &"FLOOD_OBJ_DISABLE_NEXT_LAUNCHER" ); common_scripts\utility::flag_wait( "start_flood" ); objective_state( maps\_utility::obj( "obj_disable_launcher_2" ), "failed" ); objective_delete( maps\_utility::obj( "obj_find_boss" ) ); wait 3.0; objective_add( maps\_utility::obj( "obj_higher_ground" ), "current", &"FLOOD_OBJ_HIGHER_GROUND" ); case "flooding_ext": if ( level.start_point == "flooding_ext" ) objective_add( maps\_utility::obj( "obj_higher_ground" ), "current", &"FLOOD_OBJ_HIGHER_GROUND" ); case "flooding_int": if ( level.start_point == "flooding_int" ) objective_add( maps\_utility::obj( "obj_higher_ground" ), "current", &"FLOOD_OBJ_HIGHER_GROUND" ); common_scripts\utility::flag_wait( "player_at_stairs" ); objective_delete( maps\_utility::obj( "obj_higher_ground" ) ); case "mall": common_scripts\utility::flag_wait( "stair_post_quake_vo_done" ); objective_add( maps\_utility::obj( "obj_find_boss" ), "current", &"FLOOD_OBJ_FIND_BOSS" ); case "swept": if ( level.start_point == "swept" ) objective_add( maps\_utility::obj( "obj_find_boss" ), "current", &"FLOOD_OBJ_FIND_BOSS" ); case "roof_stealth": if ( level.start_point == "roof_stealth" ) objective_add( maps\_utility::obj( "obj_find_boss" ), "current", &"FLOOD_OBJ_FIND_BOSS" ); case "skybridge": if ( level.start_point == "skybridge" ) objective_add( maps\_utility::obj( "obj_find_boss" ), "current", &"FLOOD_OBJ_FIND_BOSS" ); case "rooftops": if ( level.start_point == "rooftops" ) objective_add( maps\_utility::obj( "obj_find_boss" ), "current", &"FLOOD_OBJ_FIND_BOSS" ); common_scripts\utility::flag_wait( "rooftops_vo_check_drop" ); wait 1.0; objective_add( maps\_utility::obj( "obj_regroup" ), "current", &"FLOOD_OBJ_REGROUP" ); case "rooftop_water": if ( level.start_point == "rooftop_water" ) { objective_add( maps\_utility::obj( "obj_find_boss" ), "current", &"FLOOD_OBJ_FIND_BOSS" ); objective_add( maps\_utility::obj( "obj_regroup" ), "current", &"FLOOD_OBJ_REGROUP" ); } case "debrisbridge": if ( level.start_point == "debrisbridge" ) { objective_add( maps\_utility::obj( "obj_find_boss" ), "current", &"FLOOD_OBJ_FIND_BOSS" ); objective_add( maps\_utility::obj( "obj_regroup" ), "current", &"FLOOD_OBJ_REGROUP" ); } maps\_utility::wait_for_targetname_trigger( "debrisbridge_encounter_1_trigger" ); wait 1.0; maps\_utility::objective_complete( maps\_utility::obj( "obj_regroup" ) ); wait 6.0; maps\_utility::objective_complete( maps\_utility::obj( "obj_find_boss" ) ); wait 1.0; objective_add( maps\_utility::obj( "obj_get_to_hotel" ), "current", &"FLOOD_OBJ_GET_TO_HOTEL" ); case "garage": if ( level.start_point == "garage" ) objective_add( maps\_utility::obj( "obj_get_to_hotel" ), "current", &"FLOOD_OBJ_GET_TO_HOTEL" ); maps\_utility::wait_for_targetname_trigger( "ending_heli_path" ); wait 4.0; maps\_utility::objective_complete( maps\_utility::obj( "obj_get_to_hotel" ) ); case "ending": wait 1.0; objective_add( maps\_utility::obj( "obj_capture_boss" ), "current", &"FLOOD_OBJ_CAPTURE_BOSS" ); common_scripts\utility::flag_wait( "vignette_ending_qte_pickup_gun" ); common_scripts\utility::flag_wait( "vignette_ending_qte_success" ); maps\_utility::objective_complete( maps\_utility::obj( "obj_capture_boss" ) ); } } mission_object_control() { mission_hide_at_start(); thread maps\flood_rooftops::rooftops_cleanup_jumpto(); setsaveddvar( "r_hudoutlineenable", 1 ); setsaveddvar( "r_hudOutlineWidth", 2 ); switch ( level.start_point ) { case "infil": thread maps\flood_util::hide_scriptmodel_by_targetname_array( "embassy_hide" ); thread palm_tree_control( 1 ); thread infil_object_hide(); thread maps\flood_flooding::runback_death_toggle( "off" ); level waittill( "infil_done" ); case "streets": if ( level.start_point == "streets" ) { thread maps\flood_util::hide_scriptmodel_by_targetname_array( "embassy_hide" ); thread palm_tree_control(); thread maps\flood_flooding::runback_death_toggle( "off" ); } thread maps\flood_infil::infil_cleanup(); thread maps\flood_util::hide_models_by_targetname( "angry_flood_backstop", 1 ); level waittill( "end_streets" ); case "streets_to_dam": if ( level.start_point == "streets_to_dam" ) { thread maps\flood_infil::infil_cleanup(); thread maps\flood_util::hide_models_by_targetname( "angry_flood_backstop", 1 ); thread palm_tree_control(); thread maps\flood_flooding::runback_death_toggle( "off" ); } thread maps\flood_infil::tanks_cleanup_early(); thread maps\flood_util::show_models_by_targetname( "embassy_hide" ); level waittill( "end_of_streets_to_dam" ); case "streets_to_dam_2": if ( level.start_point == "streets_to_dam_2" ) { thread maps\flood_infil::infil_cleanup(); thread maps\flood_infil::tanks_cleanup_early(); thread maps\flood_util::hide_models_by_targetname( "angry_flood_backstop", 1 ); thread palm_tree_control(); thread maps\flood_flooding::runback_death_toggle( "off" ); } thread maps\flood_streets::remove_streets_ents(); thread streets_vehicle_show_after_knife_kill(); thread infil_optimize_tree_cleanup(); level waittill( "end_of_streets_to_dam_2" ); case "dam": if ( level.start_point == "dam" ) { thread maps\flood_infil::infil_cleanup(); thread maps\flood_infil::tanks_cleanup_early(); thread maps\flood_streets::remove_streets_ents(); thread maps\flood_util::hide_models_by_targetname( "angry_flood_backstop", 1 ); thread palm_tree_control(); thread streets_vehicle_show_after_knife_kill(); thread infil_optimize_tree_cleanup(); thread maps\flood_flooding::runback_death_toggle( "off" ); } common_scripts\utility::flag_wait( "end_of_dam" ); case "flooding_ext": if ( level.start_point == "flooding_ext" ) { thread maps\flood_infil::infil_cleanup(); thread maps\flood_infil::tanks_cleanup_early(); thread maps\flood_streets::remove_streets_ents(); thread maps\flood_streets::remove_streets_to_dam_ents(); thread palm_tree_control(); thread streets_vehicle_show_after_knife_kill(); thread infil_optimize_tree_cleanup(); thread maps\flood_flooding::runback_death_toggle( "off" ); } thread maps\flood_infil::tanks_cleanup(); thread maps\flood_util::show_models_by_targetname( "angry_flood_backstop", 1 ); common_scripts\utility::flag_wait( "player_warehouse_mantle" ); case "flooding_int": if ( level.start_point == "flooding_int" ) { thread maps\flood_infil::infil_cleanup(); thread maps\flood_infil::tanks_cleanup(); thread maps\flood_infil::tanks_cleanup_early(); thread maps\flood_streets::remove_streets_ents(); thread maps\flood_streets::remove_streets_to_dam_ents(); thread maps\flood_util::show_models_by_targetname( "angry_flood_backstop", 1 ); thread maps\flood_flooding::angry_flood_cleanup(); thread infil_optimize_tree_cleanup(); thread palm_tree_control(); thread maps\flood_flooding::runback_death_toggle( "off" ); } thread mall_rooftop_object_hide(); thread maps\flood_util::hide_scriptmodel_by_targetname( "angry_flood_water_model" ); thread maps\flood_util::hide_models_by_targetname( "embassy_hide" ); common_scripts\utility::flag_wait( "player_at_stairs_stop_nag" ); case "mall": if ( level.start_point == "mall" ) { thread maps\flood_infil::infil_cleanup(); thread maps\flood_infil::tanks_cleanup(); thread maps\flood_infil::tanks_cleanup_early(); thread maps\flood_streets::remove_streets_ents(); thread maps\flood_streets::remove_streets_to_dam_ents(); thread maps\flood_util::hide_models_by_targetname( "embassy_hide" ); thread maps\flood_util::show_models_by_targetname( "angry_flood_backstop", 1 ); thread maps\flood_flooding::angry_flood_cleanup(); thread infil_optimize_tree_cleanup(); thread embassy_palms_cleanup(); } thread hotel_parking_car_hide(); wait 0.05; var_0 = vehicle_getarray(); maps\_utility::array_delete( var_0 ); streets_script_vehicle_cleanup(); if ( !common_scripts\utility::flag( "flood_mid_tr_loaded" ) ) { thread maps\_utility::transient_unloadall_and_load( "flood_mid_tr" ); common_scripts\utility::flag_wait( "mall_breach_start" ); common_scripts\utility::flag_wait( "flood_mid_tr_loaded" ); } level waittill( "swept_away" ); case "swept": if ( level.start_point == "swept" ) { thread maps\flood_infil::infil_cleanup(); thread maps\flood_infil::tanks_cleanup(); thread maps\flood_infil::tanks_cleanup_early(); thread maps\flood_streets::remove_streets_ents(); thread maps\flood_streets::remove_streets_to_dam_ents(); thread maps\flood_util::hide_models_by_targetname( "embassy_hide" ); thread hotel_parking_car_hide(); thread maps\flood_flooding::angry_flood_cleanup(); thread infil_optimize_tree_cleanup(); thread embassy_palms_cleanup(); thread mall_rooftop_object_hide(); } thread show_rushing_water_trees_infil_trees_cleanup( 1 ); thread maps\flood_util::show_models_by_targetname( "rooftops_ambient_cars" ); thread maps\flood_util::show_models_by_targetname( "swept_underwater_cleanup" ); thread maps\flood_flooding::flooding_cleanup(); thread maps\flood_mall::mall_delete_warehouse_ents(); thread maps\flood_mall::mall_delete_rooftop_ents(); thread maps\flood_util::hide_models_by_targetname( "garage_facade" ); level waittill( "swept_success" ); case "roof_stealth": if ( level.start_point == "roof_stealth" ) { thread maps\flood_infil::infil_cleanup(); thread maps\flood_infil::tanks_cleanup(); thread maps\flood_infil::tanks_cleanup_early(); thread maps\flood_streets::remove_streets_ents(); thread maps\flood_streets::remove_streets_to_dam_ents(); thread maps\flood_util::hide_models_by_targetname( "embassy_hide" ); thread maps\flood_flooding::flooding_cleanup(); thread maps\flood_mall::mall_delete_warehouse_ents(); thread maps\flood_mall::mall_delete_rooftop_ents(); thread hotel_parking_car_hide(); thread maps\flood_flooding::angry_flood_cleanup(); thread infil_optimize_tree_cleanup(); thread show_rushing_water_trees_infil_trees_cleanup(); thread embassy_palms_cleanup(); thread maps\flood_util::show_models_by_targetname( "rooftops_ambient_cars" ); } else thread maps\flood_util::show_models_by_targetname( "garage_facade" ); var_1 = getentarray( "script_vehicle_iveco_lynx", "classname" ); maps\_utility::array_delete( var_1 ); if ( isdefined( level.skybridge_sections ) ) { maps\_utility::array_delete( level.skybridge_sections ); level.skybridge_sections = []; } level.player waittill( "mantle_used" ); var_2 = getcorpsearray(); maps\_utility::array_delete( var_2 ); common_scripts\utility::flag_wait( "skybridge_heli_go" ); common_scripts\utility::flag_wait( "flood_mid_tr_loaded" ); case "skybridge": if ( level.start_point == "skybridge" ) { thread maps\flood_infil::infil_cleanup(); thread maps\flood_infil::tanks_cleanup(); thread maps\flood_infil::tanks_cleanup_early(); thread maps\flood_streets::remove_streets_ents(); thread maps\flood_streets::remove_streets_to_dam_ents(); thread maps\flood_util::hide_models_by_targetname( "embassy_hide" ); thread maps\flood_flooding::flooding_cleanup(); thread maps\flood_mall::mall_delete_warehouse_ents(); thread maps\flood_mall::mall_delete_rooftop_ents(); thread hotel_parking_car_hide(); thread maps\flood_flooding::angry_flood_cleanup(); thread infil_optimize_tree_cleanup(); thread show_rushing_water_trees_infil_trees_cleanup(); thread embassy_palms_cleanup(); thread maps\flood_util::show_models_by_targetname( "rooftops_ambient_cars" ); } thread swept_cleanup(); common_scripts\utility::flag_wait( "skybridge_done" ); case "rooftops": if ( level.start_point == "rooftops" ) { thread maps\flood_infil::infil_cleanup(); thread maps\flood_infil::tanks_cleanup(); thread maps\flood_infil::tanks_cleanup_early(); thread maps\flood_streets::remove_streets_ents(); thread maps\flood_streets::remove_streets_to_dam_ents(); thread maps\flood_util::hide_models_by_targetname( "embassy_hide" ); thread maps\flood_flooding::flooding_cleanup(); thread maps\flood_mall::mall_delete_warehouse_ents(); thread maps\flood_mall::mall_delete_rooftop_ents(); thread hotel_parking_car_hide(); thread swept_cleanup(); thread maps\flood_flooding::angry_flood_cleanup(); thread infil_optimize_tree_cleanup(); thread show_rushing_water_trees_infil_trees_cleanup(); thread embassy_palms_cleanup(); thread maps\flood_util::show_models_by_targetname( "rooftops_ambient_cars" ); } thread maps\flood_roof_stealth::roof_stealth_cleanup(); thread maps\flood_util::show_models_by_targetname( "com_wall_fan_blade_rotate" ); common_scripts\utility::flag_wait( "rooftops_done" ); case "rooftop_water": if ( level.start_point == "rooftop_water" ) { thread maps\flood_infil::infil_cleanup(); thread maps\flood_infil::tanks_cleanup(); thread maps\flood_infil::tanks_cleanup_early(); thread maps\flood_streets::remove_streets_ents(); thread maps\flood_streets::remove_streets_to_dam_ents(); thread maps\flood_util::hide_models_by_targetname( "embassy_hide" ); thread maps\flood_flooding::flooding_cleanup(); thread maps\flood_mall::mall_delete_warehouse_ents(); thread maps\flood_mall::mall_delete_rooftop_ents(); thread maps\flood_roof_stealth::roof_stealth_cleanup(); thread hotel_parking_car_hide(); thread swept_cleanup(); thread maps\flood_flooding::angry_flood_cleanup(); thread infil_optimize_tree_cleanup(); thread show_rushing_water_trees_infil_trees_cleanup(); thread embassy_palms_cleanup(); thread maps\flood_util::show_models_by_targetname( "rooftops_ambient_cars" ); thread maps\flood_util::show_models_by_targetname( "com_wall_fan_blade_rotate" ); } common_scripts\utility::flag_wait( "rooftop_water_done" ); case "debrisbridge": if ( level.start_point == "debrisbridge" ) { thread maps\flood_infil::infil_cleanup(); thread maps\flood_infil::tanks_cleanup(); thread maps\flood_infil::tanks_cleanup_early(); thread maps\flood_streets::remove_streets_ents(); thread maps\flood_streets::remove_streets_to_dam_ents(); thread maps\flood_util::hide_models_by_targetname( "embassy_hide" ); thread maps\flood_flooding::flooding_cleanup(); thread maps\flood_mall::mall_delete_warehouse_ents(); thread maps\flood_mall::mall_delete_rooftop_ents(); thread maps\flood_roof_stealth::roof_stealth_cleanup(); thread maps\flood_util::hide_models_by_targetname( "garage_facade" ); thread swept_cleanup(); thread maps\flood_flooding::angry_flood_cleanup(); thread infil_optimize_tree_cleanup(); thread show_rushing_water_trees_infil_trees_cleanup(); thread embassy_palms_cleanup(); thread maps\flood_util::show_models_by_targetname( "rooftops_ambient_cars" ); thread maps\flood_util::show_models_by_targetname( "com_wall_fan_blade_rotate" ); } common_scripts\utility::flag_wait( "debrisbridge_done" ); case "garage": if ( level.start_point == "garage" ) { thread maps\flood_infil::infil_cleanup(); thread maps\flood_infil::tanks_cleanup(); thread maps\flood_infil::tanks_cleanup_early(); thread maps\flood_streets::remove_streets_ents(); thread maps\flood_streets::remove_streets_to_dam_ents(); thread maps\flood_util::hide_models_by_targetname( "embassy_hide" ); thread maps\flood_flooding::flooding_cleanup(); thread maps\flood_mall::mall_delete_warehouse_ents(); thread maps\flood_mall::mall_delete_rooftop_ents(); thread maps\flood_roof_stealth::roof_stealth_cleanup(); thread maps\flood_util::hide_models_by_targetname( "garage_facade" ); thread swept_cleanup(); thread maps\flood_flooding::angry_flood_cleanup(); thread infil_optimize_tree_cleanup(); thread show_rushing_water_trees_infil_trees_cleanup(); thread embassy_palms_cleanup(); thread maps\flood_util::show_models_by_targetname( "rooftops_ambient_cars" ); thread maps\flood_util::show_models_by_targetname( "com_wall_fan_blade_rotate" ); } case "ending": if ( level.start_point == "ending" ) { thread maps\flood_infil::infil_cleanup(); thread maps\flood_infil::tanks_cleanup(); thread maps\flood_infil::tanks_cleanup_early(); thread maps\flood_streets::remove_streets_ents(); thread maps\flood_streets::remove_streets_to_dam_ents(); thread maps\flood_flooding::flooding_cleanup(); thread maps\flood_mall::mall_delete_warehouse_ents(); thread maps\flood_mall::mall_delete_rooftop_ents(); thread maps\flood_roof_stealth::roof_stealth_cleanup(); thread maps\flood_util::hide_models_by_targetname( "embassy_hide" ); thread maps\flood_util::hide_models_by_targetname( "garage_facade" ); thread swept_cleanup(); thread maps\flood_flooding::angry_flood_cleanup(); thread infil_optimize_tree_cleanup(); thread show_rushing_water_trees_infil_trees_cleanup(); thread embassy_palms_cleanup(); thread maps\flood_util::show_models_by_targetname( "rooftops_ambient_cars" ); thread maps\flood_util::show_models_by_targetname( "com_wall_fan_blade_rotate" ); } common_scripts\utility::flag_wait( "ending_transient_trigger" ); var_3 = getentarray( "script_model_garage_post_stuff_01", "targetname" ); foreach ( var_5 in var_3 ) var_5 hide(); maps\_utility::flavorbursts_off( "allies" ); if ( !( level.start_point == "ending" ) ) { var_7 = getaiarray( "axis" ); maps\_utility::array_delete( var_7 ); } var_8 = getentarray( "rooftops_ambient_cars", "targetname" ); maps\_utility::array_delete( var_8 ); var_9 = []; for ( var_10 = 0; var_10 < 5; var_10++ ) { var_11 = getent( "debris_bridge_car_" + var_10, "targetname" ); var_9 = common_scripts\utility::add_to_array( var_9, var_11 ); } maps\_utility::array_delete( var_9 ); var_0 = vehicle_getarray(); maps\_utility::array_delete( var_0 ); thread maps\_utility::transient_unloadall_and_load( "flood_end_tr" ); thread maps\flood_swept::swept_water_toggle( "debri_bridge", "hide" ); thread maps\flood_swept::swept_water_toggle( "swim", "hide" ); thread maps\flood_swept::swept_water_toggle( "ending_water", "hide" ); thread maps\flood_util::show_models_by_targetname( "ending_window_frame" ); var_12 = getent( "debris_ending_show", "targetname" ); var_12 show(); common_scripts\utility::flag_wait( "vignette_ending_crash_flag" ); thread maps\flood_swept::swept_water_toggle( "ending_water", "show" ); case "fly_around": thread maps\flood_infil::tanks_cleanup(); thread maps\flood_infil::tanks_cleanup_early(); } } mission_hide_at_start() { thread streets_vehicle_hide_at_start(); thread maps\flood_mall::mallroof_firstframe( "hide" ); thread maps\flood_util::hide_scriptmodel_by_targetname_array( "missile_launcher_2" ); thread maps\flood_util::hide_scriptmodel_by_targetname_array( "ending_window_frame" ); thread maps\flood_util::hide_scriptmodel_by_targetname_array( "com_wall_fan_blade_rotate" ); thread maps\flood_swept::swept_water_toggle( "swim", "hide" ); thread maps\flood_swept::swept_water_toggle( "debri_bridge", "hide" ); thread maps\flood_swept::swept_water_toggle( "ending_water", "hide" ); thread maps\flood_util::hide_models_by_targetname( "swept_underwater_cleanup" ); thread maps\flood_util::hide_models_by_targetname( "rooftops_ambient_cars" ); var_0 = getent( "debris_ending_show", "targetname" ); var_0 hide(); } infil_object_hide() { thread maps\flood_util::hide_models_by_targetname( "infil_cleanup" ); thread maps\flood_util::hide_models_by_targetname( "pipe_shootable" ); thread maps\flood_util::hide_models_by_targetname( "stealth_bob" ); thread maps\flood_util::hide_models_by_targetname( "warevolumes" ); thread maps\flood_util::hide_models_by_targetname( "mall_ware_brush_hide" ); thread maps\flood_util::hide_models_by_targetname( "mall_ware_model_hide" ); thread maps\flood_util::hide_models_by_targetname( "garage_door_l" ); thread maps\flood_util::hide_models_by_targetname( "garage_door_r" ); thread maps\flood_util::hide_models_by_targetname( "upper_garage_door_l" ); thread maps\flood_util::hide_models_by_targetname( "upper_garage_door_r" ); thread maps\flood_util::hide_models_by_targetname( "garage_facade" ); thread maps\flood_util::hide_models_by_targetname( "checkpoint_gate" ); thread maps\flood_util::hide_models_by_targetname( "script_model_garage_post_stuff_01" ); thread maps\flood_util::hide_models_by_targetname( "checkpoint_concrete_swap_barrier_1" ); thread maps\flood_util::hide_models_by_targetname( "checkpoint_concrete_swap_barrier_2" ); thread maps\flood_util::hide_models_by_targetname( "checkpoint_concrete_swap_barrier_3" ); thread maps\flood_util::hide_models_by_targetname( "dam_break_delete" ); thread maps\flood_util::hide_models_by_targetname( "destructible_vehicle" ); thread script_noteworthy_hide_and_show( "infil_optimize" ); thread script_noteworthy_hide_and_show( "infil_optimize_delay_delete" ); var_0 = getent( "coverwater_rooftop_above", "targetname" ); var_0 hide(); thread planter_hide_and_show( "planter_06" ); thread planter_hide_and_show( "planter_08" ); thread script_noteworthy_hide_and_show( "floating_container" ); thread hotel_parking_car_hide(); level waittill( "infil_done" ); thread maps\flood_util::show_models_by_targetname( "infil_cleanup" ); thread maps\flood_util::show_models_by_targetname( "pipe_shootable" ); thread maps\flood_util::show_models_by_targetname( "stealth_bob" ); thread maps\flood_util::show_models_by_targetname( "warevolumes" ); thread maps\flood_util::show_models_by_targetname( "mall_ware_brush_hide" ); thread maps\flood_util::show_models_by_targetname( "mall_ware_model_hide" ); thread maps\flood_util::show_models_by_targetname( "garage_door_l" ); thread maps\flood_util::show_models_by_targetname( "garage_door_r" ); thread maps\flood_util::show_models_by_targetname( "upper_garage_door_l" ); thread maps\flood_util::show_models_by_targetname( "upper_garage_door_r" ); thread maps\flood_util::show_models_by_targetname( "garage_facade" ); thread maps\flood_util::show_models_by_targetname( "checkpoint_gate" ); thread maps\flood_util::show_models_by_targetname( "destructible_vehicle" ); thread maps\flood_util::show_models_by_targetname( "script_model_garage_post_stuff_01" ); thread maps\flood_util::show_models_by_targetname( "checkpoint_concrete_swap_barrier_1" ); thread maps\flood_util::show_models_by_targetname( "checkpoint_concrete_swap_barrier_2" ); thread maps\flood_util::show_models_by_targetname( "checkpoint_concrete_swap_barrier_3" ); thread maps\flood_util::show_models_by_targetname( "dam_break_delete" ); thread script_noteworthy_hide_and_show( "infil_optimize", 1 ); thread script_noteworthy_hide_and_show( "infil_optimize_delay_delete", 1 ); var_0 = getent( "coverwater_rooftop_above", "targetname" ); var_0 show(); thread planter_hide_and_show( "planter_06", 1 ); thread planter_hide_and_show( "planter_08", 1 ); thread script_noteworthy_hide_and_show( "floating_container", 1 ); } planter_hide_and_show( var_0, var_1 ) { var_2 = getentarray( var_0, "script_noteworthy" ); if ( !isdefined( var_1 ) ) { foreach ( var_4 in var_2 ) { if ( !isdefined( var_4.targetname ) ) var_4 hide(); } } else { foreach ( var_4 in var_2 ) { if ( !isdefined( var_4.targetname ) ) var_4 show(); } } } script_noteworthy_hide_and_show( var_0, var_1 ) { var_2 = getentarray( var_0, "script_noteworthy" ); if ( !isdefined( var_1 ) ) { foreach ( var_4 in var_2 ) var_4 hide(); } else { foreach ( var_4 in var_2 ) var_4 show(); } } streets_vehicle_hide_at_start() { var_0 = []; var_0 = common_scripts\utility::add_to_array( var_0, getent( "streets_static_iveco_01", "script_noteworthy" ) ); var_0 = common_scripts\utility::add_to_array( var_0, getent( "flood_street_car_5", "script_noteworthy" ) ); var_0 = common_scripts\utility::add_to_array( var_0, getent( "crashed_truck", "targetname" ) ); var_0 = common_scripts\utility::add_to_array( var_0, getent( "flood_street_truck_01", "script_noteworthy" ) ); var_0 = common_scripts\utility::add_to_array( var_0, getent( "flood_street_car_1_cleanup", "targetname" ) ); var_0 = common_scripts\utility::add_to_array( var_0, getent( "flood_ally_car", "script_noteworthy" ) ); var_1 = getentarray( "flood_street_car_1", "script_noteworthy" ); foreach ( var_3 in var_1 ) var_0 = common_scripts\utility::add_to_array( var_0, var_3 ); foreach ( var_3 in var_0 ) var_3 hide(); } streets_vehicle_show_after_knife_kill() { var_0 = []; var_0 = common_scripts\utility::add_to_array( var_0, getent( "streets_static_iveco_01", "script_noteworthy" ) ); var_0 = common_scripts\utility::add_to_array( var_0, getent( "flood_street_car_5", "script_noteworthy" ) ); var_0 = common_scripts\utility::add_to_array( var_0, getent( "crashed_truck", "targetname" ) ); var_0 = common_scripts\utility::add_to_array( var_0, getent( "flood_street_truck_01", "script_noteworthy" ) ); var_0 = common_scripts\utility::add_to_array( var_0, getent( "flood_street_car_1_cleanup", "targetname" ) ); var_0 = common_scripts\utility::add_to_array( var_0, getent( "flood_ally_car", "script_noteworthy" ) ); var_1 = getentarray( "flood_street_car_1", "script_noteworthy" ); foreach ( var_3 in var_1 ) var_0 = common_scripts\utility::add_to_array( var_0, var_3 ); foreach ( var_3 in var_0 ) var_3 show(); } streets_script_vehicle_cleanup() { var_0 = []; var_0 = common_scripts\utility::add_to_array( var_0, getent( "streets_static_iveco_01", "script_noteworthy" ) ); var_0 = common_scripts\utility::add_to_array( var_0, getent( "crashed_truck", "targetname" ) ); maps\_utility::array_delete( var_0 ); } swept_cleanup() { var_0 = getentarray( "swept_underwater_cleanup", "targetname" ); foreach ( var_2 in var_0 ) var_2 delete(); } palm_tree_control( var_0 ) { var_1 = getentarray( "palm_tree_in_rushing_water", "script_noteworthy" ); var_2 = getentarray( "embassy_palms", "script_noteworthy" ); var_3 = []; var_3[var_3.size] = "flood_shake_tree_left_1"; var_3[var_3.size] = "flood_shake_tree_left_2"; var_3[var_3.size] = "flood_shake_tree_left_3"; var_3[var_3.size] = "flood_shake_tree_left_4"; var_3[var_3.size] = "flood_shake_tree_left_5"; var_3[var_3.size] = "flood_shake_tree_right_1"; var_3[var_3.size] = "flood_shake_tree_right_2"; var_3[var_3.size] = "flood_shake_tree_right_3"; var_3[var_3.size] = "flood_shake_tree_right_4"; var_3[var_3.size] = "flood_shake_tree_right_5"; var_3[var_3.size] = "flood_shake_tree_right_6"; foreach ( var_5 in var_1 ) var_5 hide(); if ( isdefined( var_0 ) ) { foreach ( var_5 in var_3 ) { var_5 = getent( var_5, "script_noteworthy" ); if ( isdefined( var_5 ) ) var_5 hide(); } foreach ( var_5 in var_2 ) var_5 hide(); level waittill( "end_streets" ); foreach ( var_5 in var_3 ) { var_5 = getent( var_5, "script_noteworthy" ); if ( isdefined( var_5 ) ) var_5 show(); } foreach ( var_5 in var_2 ) var_5 show(); } common_scripts\utility::flag_wait( "player_warehouse_mantle" ); thread embassy_palms_cleanup(); } mall_rooftop_object_hide() { } show_rushing_water_trees_infil_trees_cleanup( var_0 ) { if ( isdefined( var_0 ) ) { var_1 = getentarray( "infil_optimize_delay_delete", "script_noteworthy" ); foreach ( var_3 in var_1 ) var_3 delete(); } var_5 = getentarray( "palm_tree_in_rushing_water", "script_noteworthy" ); foreach ( var_3 in var_5 ) var_3 show(); } infil_optimize_tree_cleanup() { var_0 = getentarray( "infil_optimize", "script_noteworthy" ); foreach ( var_2 in var_0 ) var_2 delete(); } embassy_palms_cleanup() { var_0 = getentarray( "embassy_palms", "script_noteworthy" ); foreach ( var_2 in var_0 ) var_2 delete(); } hotel_parking_car_hide() { for ( var_0 = 0; var_0 < 5; var_0++ ) thread maps\flood_util::hide_models_by_targetname( "debris_bridge_car_" + var_0 ); } hotel_parking_facade() { var_0 = getent( "rooftops_encounter_b_vo_3", "targetname" ); var_0 waittill( "trigger" ); thread maps\flood_util::hide_models_by_targetname( "garage_facade" ); for ( var_1 = 0; var_1 < 5; var_1++ ) thread maps\flood_util::show_models_by_targetname( "debris_bridge_car_" + var_1 ); } flood_createfx_cleanup() { level endon( "load_finished" ); while ( !isdefined( level.stop_load ) ) wait 0.05; if ( level.createfx_enabled ) { common_scripts\utility::array_call( getaiarray(), ::delete ); common_scripts\utility::array_call( getspawnerarray(), ::delete ); } } flood_interactives_cleanup( var_0 ) { var_1 = getentarray( var_0, "targetname" ); maps\_utility::delete_destructibles_in_volumes( var_1 ); maps\_utility::delete_exploders_in_volumes( var_1 ); maps\_utility::delete_interactives_in_volumes( var_1 ); } introscreen() { var_0 = 1; maps\_introscreen::introscreen(); } flood_intro_screen() { level.player allowjump( 0 ); var_0 = 4; var_1 = 9; thread introscreen_generic_fade_in( var_1, var_0 ); wait 0.05; thread flood_intro_text(); wait 5.0; thread maps\_utility::stylized_center_text( [ &"FLOOD_INTROSCREEN_12_YEARS" ], 3.5 ); common_scripts\utility::flag_set( "start_intro_sequence" ); level maps\_utility::delaythread( 1.5, maps\flood_infil::player_ride_rumble ); } introscreen_generic_fade_in( var_0, var_1 ) { var_2 = maps\_hud_util::create_client_overlay( "black", 1, level.player ); var_2.foreground = 0; level.player freezecontrols( 1 ); setsaveddvar( "ammoCounterHide", 1 ); setsaveddvar( "cg_drawCrosshair", 0 ); wait( var_0 ); level.player freezecontrols( 0 ); setsaveddvar( "ammoCounterHide", 0 ); setsaveddvar( "cg_drawCrosshair", 1 ); common_scripts\utility::flag_set( "intro_show_introtext" ); wait 2.5; var_2 fadeovertime( 0.5 ); var_2.alpha = 0; wait( var_1 ); level.player allowjump( 1 ); } flood_intro_text() { level.introscreen = spawnstruct(); level.introscreen.completed_delay = 4; level.introscreen.fade_out_time = 1.5; level.introscreen.fade_in_time = 0.5; level.introscreen.lines = [ &"FLOOD_INTROSCREEN_LINE_1", &"FLOOD_INTROSCREEN_LINE_2", &"FLOOD_INTROSCREEN_LINE_5", &"FLOOD_INTROSCREEN_LINE_6" ]; thread maps\_introscreen::introscreen( 1 ); } intro_screen_text_end() { return 0; } e3_section_start() { level.player setclienttriggeraudiozone( "flood_fade_e3", 0.01 ); level.start_point = "dam"; maps\flood_streets::dam_start(); level.e3_demo = 1; } e3_section() { var_0 = maps\_hud_util::create_client_overlay( "black", 0, level.player ); level thread e3_fadein( var_0 ); level thread maps\_introscreen::introscreen( 1, 5 ); maps\flood_streets::dam(); maps\flood_flooding::flooding_ext(); maps\flood_flooding::flooding_int(); maps\flood_mall::mall(); level thread maps\flood_swept::swept(); wait 24.0; e3_fadeout( var_0 ); wait 2.0; level.e3_demo = undefined; maps\_utility::nextmission(); for (;;) wait 1.0; } e3_fadein( var_0 ) { level.player enableinvulnerability(); level.allies[0] thread maps\flood_streets::ignore_everything( 3.25 ); level.allies[1] thread maps\flood_streets::ignore_everything( 5.79 ); level.allies[2] thread maps\flood_streets::ignore_everything( 7 ); wait 2.0; level.player clearclienttriggeraudiozone( 4 ); wait 3.0; level.player disableinvulnerability(); } e3_fadeout( var_0 ) { level.player enableinvulnerability(); level.player setclienttriggeraudiozone( "flood_fade_e3", 1.8 ); var_0 fadeovertime( 1.0 ); var_0.alpha = 1; } infil_start() { maps\flood_infil::infil_start(); } infil() { maps\flood_infil::infil(); } streets_start() { maps\flood_infil::streets_start(); } streets() { maps\flood_infil::streets(); } streets_to_dam_start() { maps\flood_streets::streets_to_dam_start(); } streets_to_dam() { maps\flood_streets::streets_to_dam(); } streets_to_dam_2_start() { maps\flood_streets::streets_to_dam_2_start(); } streets_to_dam_2() { maps\flood_streets::streets_to_dam_2(); } dam_start() { maps\flood_streets::dam_start(); } dam() { maps\flood_streets::dam(); } flooding_ext_start() { maps\flood_flooding::flooding_ext_start(); } flooding_ext() { maps\flood_flooding::flooding_ext(); } flooding_int_start() { maps\flood_flooding::flooding_int_start(); } flooding_int() { maps\flood_flooding::flooding_int(); } mall_start() { maps\flood_mall::mall_start(); } mall() { maps\flood_mall::mall(); } swept_start() { maps\flood_swept::swept_start(); } swept() { maps\flood_swept::swept(); } roof_stealth_start() { maps\flood_roof_stealth::roof_stealth_start(); } roof_stealth() { maps\flood_roof_stealth::roof_stealth(); } skybridge_start() { maps\flood_rooftops::skybridge_start(); } skybridge() { maps\flood_rooftops::skybridge(); } rooftops_start() { maps\flood_rooftops::rooftops_start(); } rooftops() { maps\flood_rooftops::rooftops(); } rooftop_water_start() { maps\flood_rooftops::rooftop_water_start(); } rooftop_water() { maps\flood_rooftops::rooftop_water(); } debrisbridge_start() { maps\flood_rooftops::debrisbridge_start(); } debrisbridge() { maps\flood_rooftops::debrisbridge(); } garage_start() { maps\flood_garage::garage_start(); } garage() { maps\flood_garage::garage(); } ending_start() { maps\flood_ending::ending_start(); } ending() { maps\flood_ending::ending(); } fly_around_start() { iprintlnbold( "Press X to cycle transient fastfiles" ); maps\flood_util::player_move_to_checkpoint_start( "flyaround_start" ); common_scripts\utility::array_call( getaiarray(), ::delete ); common_scripts\utility::array_call( getspawnerarray(), ::delete ); maps\flood_util::delete_all_triggers(); } fly_around() { iprintln( "flood_intro_tr transient fastfile loaded landing zone" ); for (;;) { thread maps\flood_swept::swept_water_toggle( "swim", "hide" ); thread maps\flood_swept::swept_water_toggle( "debri_bridge", "hide" ); thread maps\flood_util::hide_scriptmodel_by_targetname_array( "embassy_hide" ); while ( !level.player buttonpressed( "BUTTON_X" ) ) wait 0.05; iprintln( "flood_intro_tr transient fastfile dam" ); thread maps\flood_util::show_models_by_targetname( "embassy_hide" ); wait 1.0; while ( !level.player buttonpressed( "BUTTON_X" ) ) wait 0.05; thread maps\_utility::transient_unloadall_and_load( "flood_mid_tr" ); common_scripts\utility::flag_wait( "flood_mid_tr_loaded" ); common_scripts\utility::flag_clear( "flood_mid_tr_loaded" ); wait 1.0; iprintln( "flood_mid_tr transient fastfile loaded mall" ); thread maps\flood_util::hide_scriptmodel_by_targetname_array( "embassy_hide" ); thread maps\flood_mall::mallroof_firstframe(); while ( !level.player buttonpressed( "BUTTON_X" ) ) wait 0.05; wait 1.0; thread maps\flood_swept::swept_water_toggle( "swim", "show" ); thread maps\flood_util::show_models_by_targetname( "swept_underwater_cleanup" ); thread maps\flood_util::show_models_by_targetname( "garage_facade" ); iprintln( "flood_mid_tr transient fastfile loaded swept" ); while ( !level.player buttonpressed( "BUTTON_X" ) ) wait 0.05; wait 1.0; iprintln( "flood_mid_tr transient fastfile loaded rooftops" ); thread maps\flood_swept::swept_water_toggle( "swim", "hide" ); thread maps\flood_swept::swept_water_toggle( "debri_bridge", "show" ); thread maps\flood_util::hide_models_by_targetname( "swept_underwater_cleanup" ); thread maps\flood_util::hide_models_by_targetname( "garage_facade" ); while ( !level.player buttonpressed( "BUTTON_X" ) ) wait 0.05; thread maps\_utility::transient_unloadall_and_load( "flood_end_tr" ); common_scripts\utility::flag_wait( "flood_end_tr_loaded" ); common_scripts\utility::flag_clear( "flood_end_tr_loaded" ); wait 1.0; iprintln( "flood_end_tr transient fastfile loaded" ); while ( !level.player buttonpressed( "BUTTON_X" ) ) wait 0.05; thread maps\_utility::transient_unloadall_and_load( "flood_intro_tr" ); common_scripts\utility::flag_wait( "flood_intro_tr_loaded" ); common_scripts\utility::flag_clear( "flood_intro_tr_loaded" ); wait 1.0; iprintln( "flood_intro_tr transient fastfile loaded" ); } } flood_default_water_transion_fx() { level.player setwatersurfacetransitionfx( common_scripts\utility::getfx( "player_water_surface_plunge" ), common_scripts\utility::getfx( "scrnfx_water_splash_low" ), common_scripts\utility::getfx( "player_water_surface_plunge_fast" ), common_scripts\utility::getfx( "scrnfx_water_splash_low" ) ); }