1425 lines
42 KiB
Plaintext
1425 lines
42 KiB
Plaintext
// IW6 GSC SOURCE
|
|
// Generated by https://github.com/xensik/gsc-tool
|
|
|
|
main()
|
|
{
|
|
audio_flag_init();
|
|
level.current_audio_zone = "flood_streets";
|
|
thread sfx_flood_int_alarm();
|
|
thread trigger_heli_staircase();
|
|
thread trigger_int_building_hits();
|
|
thread sfx_rooftops_player_jump();
|
|
thread sfx_rooftops_player_jumpdown();
|
|
thread sfx_stairwell_heli_trig_setup();
|
|
thread sfx_stairwell_mid_trig_setup();
|
|
level.swept_away = 0;
|
|
soundsettimescalefactor( "announcer", 0.1 );
|
|
soundsettimescalefactor( "mission", 0 );
|
|
soundsettimescalefactor( "missionfx", 0.1 );
|
|
soundsettimescalefactor( "norestrict2d", 0 );
|
|
soundsettimescalefactor( "local3", 1 );
|
|
soundsettimescalefactor( "effects2d2", 0 );
|
|
soundsettimescalefactor( "shellshock", 0 );
|
|
}
|
|
|
|
audio_flag_init()
|
|
{
|
|
common_scripts\utility::flag_init( "sfx_warehouse_water_start" );
|
|
common_scripts\utility::flag_init( "sfx_stop_warehouse_water" );
|
|
common_scripts\utility::flag_init( "sfx_stop_stairwell_water" );
|
|
common_scripts\utility::flag_init( "sfx_stop_mall_water" );
|
|
common_scripts\utility::flag_init( "sfx_stop_alley_water" );
|
|
common_scripts\utility::flag_init( "sfx_missiles_launched" );
|
|
common_scripts\utility::flag_init( "sfx_launcher_destroyed" );
|
|
common_scripts\utility::flag_init( "rooftop_heli_flyaway" );
|
|
common_scripts\utility::flag_init( "rooftop_stairwell_top" );
|
|
common_scripts\utility::flag_init( "rooftop_stairwell_mid" );
|
|
}
|
|
|
|
cleanupent( var_0 )
|
|
{
|
|
wait( var_0 );
|
|
self delete();
|
|
}
|
|
|
|
change_zone_stairwell()
|
|
{
|
|
|
|
}
|
|
|
|
audio_start_rushing_water_line_emitter_01()
|
|
{
|
|
wait 0.1;
|
|
var_0 = [];
|
|
var_0[0] = spawn( "script_origin", ( 3847, -3631, 123 ) );
|
|
var_0[1] = spawn( "script_origin", ( 3759, -4085, 123 ) );
|
|
var_0[2] = spawn( "script_origin", ( 4914, -4086, 123 ) );
|
|
var_0[3] = spawn( "script_origin", ( 4906, -3434, 123 ) );
|
|
var_0[4] = spawn( "script_origin", ( 5480, -3370, 123 ) );
|
|
audio_stereo_line_emitter( var_0, "emt_flood_rushing_water_l" );
|
|
}
|
|
|
|
audio_start_rushing_water_line_emitter_02()
|
|
{
|
|
wait 0.1;
|
|
var_0 = [];
|
|
var_0[0] = spawn( "script_origin", ( 6100, -3398, 157 ) );
|
|
var_0[1] = spawn( "script_origin", ( 6484, -3182, 157 ) );
|
|
var_0[2] = spawn( "script_origin", ( 6486, -2786, 157 ) );
|
|
audio_stereo_line_emitter( var_0, "emt_flood_rushing_water_l" );
|
|
}
|
|
|
|
audio_start_rushing_water_line_emitter_03()
|
|
{
|
|
wait 0.1;
|
|
var_0 = [];
|
|
var_0[0] = spawn( "script_origin", ( 5653, -2121, 123 ) );
|
|
var_0[1] = spawn( "script_origin", ( 5641, 2134, 123 ) );
|
|
var_0[2] = spawn( "script_origin", ( 6514, 2906, 123 ) );
|
|
audio_stereo_line_emitter( var_0, "emt_flood_rushing_water_l" );
|
|
}
|
|
|
|
audio_stereo_line_emitter( var_0, var_1, var_2 )
|
|
{
|
|
var_3 = spawn( "script_origin", ( 0, 0, 0 ) );
|
|
var_4 = spawn( "script_origin", ( 0, 0, 0 ) );
|
|
var_5 = undefined;
|
|
var_6 = undefined;
|
|
var_7 = 0;
|
|
|
|
for (;;)
|
|
{
|
|
var_8 = 0;
|
|
var_9 = common_scripts\utility::get_array_of_closest( level.player.origin, var_0, undefined, 2 );
|
|
|
|
foreach ( var_11 in var_9 )
|
|
{
|
|
if ( var_8 == 0 )
|
|
{
|
|
var_8 = 1;
|
|
var_5 = var_11;
|
|
continue;
|
|
}
|
|
|
|
var_6 = var_11;
|
|
}
|
|
|
|
var_13 = pointonsegmentnearesttopoint( var_5.origin, var_6.origin, level.player.origin );
|
|
|
|
if ( isdefined( var_2 ) )
|
|
{
|
|
var_3 moveto( var_13 + ( 0, 30, 0 ), 0.01 );
|
|
var_4 moveto( var_13 - ( 0, 30, 0 ), 0.01 );
|
|
}
|
|
else
|
|
var_3 moveto( var_13, 0.01 );
|
|
|
|
if ( var_7 == 0 )
|
|
{
|
|
if ( isdefined( var_2 ) )
|
|
var_4 playloopsound( var_2 );
|
|
|
|
var_3 playloopsound( var_1 );
|
|
var_7 = 1;
|
|
}
|
|
|
|
wait 0.1;
|
|
}
|
|
}
|
|
|
|
narration_flood_infil()
|
|
{
|
|
wait 1.25;
|
|
level.player playsound( "flood_els_tousrorkewas" );
|
|
wait 7.6;
|
|
level.player playsound( "flood_els_theghostswerethe" );
|
|
}
|
|
|
|
sfx_start_heartbeat_countdown()
|
|
{
|
|
level endon( "cw_player_abovewater" );
|
|
wait( level.cw_player_allowed_underwater_time - 8 );
|
|
|
|
if ( !level.player maps\_utility::ent_flag( "player_has_red_flashing_overlay" ) )
|
|
{
|
|
level.cw_heartbeat_sfx_on = 1;
|
|
var_0 = spawn( "script_origin", level.player.origin );
|
|
var_0 linkto( level.player );
|
|
var_0 playsound( "scn_flood_underwater_heartbeat" );
|
|
level thread sfx_start_heartbeat_countdown_off( var_0 );
|
|
}
|
|
}
|
|
|
|
sfx_start_heartbeat_countdown_off( var_0 )
|
|
{
|
|
for (;;)
|
|
{
|
|
if ( common_scripts\utility::flag( "cw_player_abovewater" ) )
|
|
break;
|
|
else if ( level.player maps\_utility::ent_flag( "player_has_red_flashing_overlay" ) )
|
|
break;
|
|
|
|
common_scripts\utility::waitframe();
|
|
}
|
|
|
|
var_0 stopsounds();
|
|
wait 0.1;
|
|
var_0 delete();
|
|
}
|
|
|
|
sfx_start_heartbeat_countdown_lp()
|
|
{
|
|
if ( !level.player maps\_utility::ent_flag( "player_has_red_flashing_overlay" ) )
|
|
{
|
|
var_0 = spawn( "script_origin", level.player.origin );
|
|
var_0 linkto( level.player );
|
|
var_0 playloopsound( "scn_flood_underwater_heartbeat_lp" );
|
|
|
|
for (;;)
|
|
{
|
|
if ( common_scripts\utility::flag( "cw_player_abovewater" ) )
|
|
break;
|
|
else if ( level.player maps\_utility::ent_flag( "player_has_red_flashing_overlay" ) )
|
|
break;
|
|
|
|
common_scripts\utility::waitframe();
|
|
}
|
|
|
|
var_0 stopsounds();
|
|
wait 0.1;
|
|
var_0 delete();
|
|
}
|
|
}
|
|
|
|
sfx_heli_infil()
|
|
{
|
|
wait 1;
|
|
level.player playsound( "scn_flood_infil_lr" );
|
|
wait 6.5;
|
|
level.player setclienttriggeraudiozone( "flood_infil_main", 0.5 );
|
|
}
|
|
|
|
sfx_infil_heli_flyaway( var_0 )
|
|
{
|
|
level.player clearclienttriggeraudiozone( 6 );
|
|
wait 2.5;
|
|
var_0 playsound( "scn_flood_infil_flyaway" );
|
|
}
|
|
|
|
sfx_lynx_smash()
|
|
{
|
|
wait 3;
|
|
level.tank_ally_joel playsound( "scn_flood_tank_crush_lynx" );
|
|
wait 1;
|
|
common_scripts\utility::exploder( "lynx_crush" );
|
|
wait 2;
|
|
common_scripts\utility::exploder( "lynx_crush" );
|
|
}
|
|
|
|
sfx_tank_bust_wall()
|
|
{
|
|
wait 2.0;
|
|
level.tank_wall_sfx = spawn( "script_origin", ( 1093, -9790, 50 ) );
|
|
level.tank_wall_sfx playsound( "scn_streets_tank_bust_wall" );
|
|
}
|
|
|
|
sfx_missile_buzzer( var_0, var_1 )
|
|
{
|
|
var_2 = level.dam_break_m880;
|
|
var_2 = var_0;
|
|
level.buzzer_node = spawn( "script_origin", var_2.origin );
|
|
level.buzzer_node linkto( var_2 );
|
|
waittillframeend;
|
|
maps\_utility::battlechatter_on( "axis" );
|
|
thread missile_launcher_battlechatter( var_1 );
|
|
|
|
for (;;)
|
|
{
|
|
if ( !common_scripts\utility::flag( var_1 ) )
|
|
{
|
|
level.buzzer_node playsound( "emt_flood_missile_buzzer_2" );
|
|
wait 1.32;
|
|
continue;
|
|
}
|
|
|
|
break;
|
|
}
|
|
|
|
level.buzzer_node delete();
|
|
}
|
|
|
|
missile_launcher_battlechatter( var_0 )
|
|
{
|
|
var_1 = spawn( "script_origin", ( -1554, -3711, 0 ) );
|
|
waittillframeend;
|
|
|
|
for (;;)
|
|
{
|
|
if ( !common_scripts\utility::flag( var_0 ) )
|
|
{
|
|
var_1 playsound( "scn_flood_missile_scripted_bc" );
|
|
wait( randomfloatrange( 2, 5 ) );
|
|
continue;
|
|
}
|
|
|
|
break;
|
|
}
|
|
}
|
|
|
|
sfx_stop_buzzer( var_0 )
|
|
{
|
|
common_scripts\utility::flag_set( var_0 );
|
|
}
|
|
|
|
sfx_dam_start_water()
|
|
{
|
|
thread start_sfx_dam_siren_ext( 5.0, 1.0 );
|
|
level.player playsound( "scn_flood_dam_rumble" );
|
|
thread sfx_dam_tidal_wave_01();
|
|
}
|
|
|
|
setup_sfx_dam_siren()
|
|
{
|
|
level.player setclienttriggeraudiozone( "flood_streets_alarmoff", 0.5 );
|
|
wait 0.6;
|
|
level.sirenorg_ext_l = spawn( "script_origin", ( -6839, -67, 1962 ) );
|
|
level.sirenorg_ext_l playloopsound( "scn_flood_dam_siren_lp_l" );
|
|
level.sirenorg_ext_r = spawn( "script_origin", ( 5969, 1090, 1962 ) );
|
|
level.sirenorg_ext_r playloopsound( "scn_flood_dam_siren_lp_r" );
|
|
level.sirenorg_ext_s = spawn( "script_origin", ( -25, -13632, 1962 ) );
|
|
level.sirenorg_ext_s playloopsound( "scn_flood_dam_siren_lp_s" );
|
|
level.sirenorg_int = spawn( "script_origin", level.player.origin );
|
|
level.sirenorg_int linkto( level.player );
|
|
level.sirenorg_int playloopsound( "scn_flood_dam_siren_int_lp" );
|
|
level.player clearclienttriggeraudiozone( 4 );
|
|
}
|
|
|
|
mall_ext_sirens()
|
|
{
|
|
wait 3;
|
|
level.player setclienttriggeraudiozone( "flood_mall", 4 );
|
|
common_scripts\utility::flag_wait( "player_on_mall_roof" );
|
|
level.player clearclienttriggeraudiozone( 2 );
|
|
}
|
|
|
|
start_sfx_dam_siren_ext( var_0, var_1 )
|
|
{
|
|
if ( !isdefined( level.sirenorg_ext_l ) || !isdefined( level.sirenorg_ext_r ) || !isdefined( level.sirenorg_ext_s ) || !isdefined( level.sirenorg_int ) )
|
|
setup_sfx_dam_siren();
|
|
|
|
level.player setclienttriggeraudiozone( "flood_streets_alarmoff", 0.1 );
|
|
level.player clearclienttriggeraudiozone( 5 );
|
|
}
|
|
|
|
stop_sfx_dam_siren_ext()
|
|
{
|
|
if ( !isdefined( level.sirenorg_ext_l ) || !isdefined( level.sirenorg_ext_r ) || !isdefined( level.sirenorg_ext_s ) || !isdefined( level.sirenorg_int ) )
|
|
setup_sfx_dam_siren();
|
|
}
|
|
|
|
start_sfx_dam_siren_int()
|
|
{
|
|
if ( !isdefined( level.sirenorg_ext_l ) || !isdefined( level.sirenorg_ext_r ) || !isdefined( level.sirenorg_ext_s ) || !isdefined( level.sirenorg_int ) )
|
|
setup_sfx_dam_siren();
|
|
}
|
|
|
|
stop_sfx_dam_siren_int()
|
|
{
|
|
if ( !isdefined( level.sirenorg_ext_l ) || !isdefined( level.sirenorg_ext_r ) || !isdefined( level.sirenorg_ext_s ) || !isdefined( level.sirenorg_int ) )
|
|
setup_sfx_dam_siren();
|
|
}
|
|
|
|
kill_sfx_dam_sirens()
|
|
{
|
|
if ( isdefined( level.sirenorg_ext_l ) || isdefined( level.sirenorg_ext_r ) || isdefined( level.sirenorg_ext_s ) || isdefined( level.sirenorg_int ) )
|
|
{
|
|
wait 1.0;
|
|
level.sirenorg_int stoploopsound( "scn_flood_dam_siren_int_lp" );
|
|
level.sirenorg_ext_l stoploopsound( "scn_flood_dam_siren_lp_l" );
|
|
level.sirenorg_ext_r stoploopsound( "scn_flood_dam_siren_lp_r" );
|
|
level.sirenorg_ext_s stoploopsound( "scn_flood_dam_siren_lp_s" );
|
|
level.sirenorg_ext_l delete();
|
|
level.sirenorg_ext_r delete();
|
|
level.sirenorg_ext_s delete();
|
|
level.sirenorg_int delete();
|
|
}
|
|
}
|
|
|
|
sfx_dam_tidal_wave_01()
|
|
{
|
|
|
|
}
|
|
|
|
sfx_dam_tidal_wave_02()
|
|
{
|
|
var_0 = spawn( "script_origin", ( 900, -4026, 60 ) );
|
|
var_1 = spawn( "script_origin", ( 256, -4026, 60 ) );
|
|
var_2 = spawn( "script_origin", ( 700, -4176, 33 ) );
|
|
var_0 playsound( "scn_flood_dam_tidal_wave_03" );
|
|
wait 2.9;
|
|
var_2 playsound( "scn_flood_dam_truck_impact" );
|
|
wait 1;
|
|
wait 0.6;
|
|
var_1 playloopsound( "emt_flood_water_rushing_heavy_alley" );
|
|
wait 0.1;
|
|
wait 10;
|
|
var_0 delete();
|
|
common_scripts\utility::flag_wait( "sfx_stop_alley_water" );
|
|
var_1 stoploopsound();
|
|
wait 2;
|
|
var_1 delete();
|
|
}
|
|
|
|
sfx_stop_alley_water()
|
|
{
|
|
common_scripts\utility::flag_set( "sfx_stop_alley_water" );
|
|
}
|
|
|
|
sfx_flood_mall_int_npc_mantles( var_0 )
|
|
{
|
|
self playsound( var_0 );
|
|
}
|
|
|
|
sfx_big_metal_stress()
|
|
{
|
|
wait 15;
|
|
level.player playsound( "scn_flood_warehouse_mtl_huge_stress_lr" );
|
|
}
|
|
|
|
sfx_warehouse_door_burst_01( var_0 )
|
|
{
|
|
var_0 playsound( "scn_flood_warehouse_door_burst_01" );
|
|
wait 1;
|
|
var_0 playloopsound( "emt_flood_door_rattle_lp" );
|
|
var_1 = spawn( "script_origin", ( 310, -2410, 44 ) );
|
|
var_1 playloopsound( "emt_flood_water_spray_lp_02" );
|
|
common_scripts\utility::flag_wait( "sfx_stop_warehouse_water" );
|
|
wait 2;
|
|
var_1 delete();
|
|
}
|
|
|
|
sfx_warehouse_door_burst_02( var_0 )
|
|
{
|
|
thread common_scripts\utility::play_sound_in_space( "scn_flood_warehouse_door_burst_02", ( 373, -2033, 75 ) );
|
|
wait 0.1;
|
|
thread sfx_warehouse_water_sprays();
|
|
wait 0.1;
|
|
var_0 playloopsound( "emt_flood_door_rattle_lp" );
|
|
}
|
|
|
|
sfx_warehouse_water_sprays()
|
|
{
|
|
wait 0.6;
|
|
var_0 = spawn( "script_origin", ( 292, -2120, 47 ) );
|
|
var_0 playloopsound( "emt_flood_water_spray_lp_01" );
|
|
wait 0.3;
|
|
var_1 = spawn( "script_origin", ( 278, -1908, 47 ) );
|
|
var_1 playloopsound( "emt_flood_water_spray_lp_02" );
|
|
var_2 = spawn( "script_origin", ( 74, -1431, 69 ) );
|
|
var_2 playloopsound( "emt_flood_water_spray_lp_02" );
|
|
wait 0.1;
|
|
var_3 = spawn( "script_origin", ( 9, -1093, 90 ) );
|
|
var_3 playloopsound( "emt_flood_water_spray_lp_01" );
|
|
common_scripts\utility::flag_wait( "sfx_stop_warehouse_water" );
|
|
wait 2;
|
|
var_0 delete();
|
|
var_1 delete();
|
|
var_2 delete();
|
|
var_3 delete();
|
|
}
|
|
|
|
sfx_warehouse_water()
|
|
{
|
|
var_0 = spawn( "script_origin", ( 36, -2932, 52 ) );
|
|
var_1 = spawn( "script_origin", ( -91, -2932, 52 ) );
|
|
var_2 = spawn( "script_origin", ( -21, -2932, 10 ) );
|
|
var_3 = spawn( "script_origin", ( 81, -2932, 10 ) );
|
|
var_4 = spawn( "script_origin", ( -129, -2932, 10 ) );
|
|
var_5 = spawn( "script_origin", ( 373, -2597, 52 ) );
|
|
var_6 = spawn( "script_origin", ( 373, -2273, 52 ) );
|
|
var_7 = spawn( "script_origin", ( 373, -1952, 52 ) );
|
|
var_8 = spawn( "script_origin", ( 252, -2704, 52 ) );
|
|
var_9 = spawn( "script_origin", ( 373, -2511, 52 ) );
|
|
var_10 = spawn( "script_origin", ( 373, -2191, 85 ) );
|
|
var_11 = spawn( "script_origin", ( 4, -1027, 91 ) );
|
|
var_12 = spawn( "script_origin", ( 221, -3168, 47 ) );
|
|
wait 0.05;
|
|
waittillframeend;
|
|
var_0 playloopsound( "emt_flood_mtl_buckling_lp_01" );
|
|
var_1 playloopsound( "emt_flood_mtl_buckling_lp_02" );
|
|
var_2 playloopsound( "emt_flood_water_seep_low_lp" );
|
|
var_3 playloopsound( "emt_flood_water_seep_low_lp" );
|
|
var_5 playloopsound( "emt_flood_mtl_buckling_lp_02" );
|
|
var_6 playloopsound( "emt_flood_mtl_buckling_lp_01" );
|
|
var_7 playloopsound( "emt_flood_mtl_buckling_last_lp" );
|
|
var_8 playloopsound( "emt_flood_water_spray_lp_01" );
|
|
var_9 playloopsound( "emt_flood_water_seep_int_lp" );
|
|
var_10 playloopsound( "emt_flood_water_seep_int_lp" );
|
|
var_11 playloopsound( "emt_flood_mtl_buckling_lp_01" );
|
|
var_12 playloopsound( "emt_flood_water_spray_lp_02" );
|
|
wait 0.05;
|
|
waittillframeend;
|
|
common_scripts\utility::flag_wait( "sfx_stop_warehouse_water" );
|
|
wait 4;
|
|
var_0 delete();
|
|
var_1 delete();
|
|
var_5 delete();
|
|
var_6 delete();
|
|
var_7 delete();
|
|
var_2 delete();
|
|
var_3 delete();
|
|
var_4 delete();
|
|
var_8 delete();
|
|
var_9 delete();
|
|
var_10 delete();
|
|
var_12 delete();
|
|
common_scripts\utility::flag_wait( "sfx_stop_stairwell_water" );
|
|
wait 4;
|
|
var_11 delete();
|
|
}
|
|
|
|
sfx_stop_warehouse_water()
|
|
{
|
|
wait 12;
|
|
common_scripts\utility::flag_set( "sfx_stop_warehouse_water" );
|
|
}
|
|
|
|
sfx_stop_stairwell_water()
|
|
{
|
|
wait 4;
|
|
common_scripts\utility::flag_set( "sfx_stop_stairwell_water" );
|
|
}
|
|
|
|
sfx_stop_mall_water()
|
|
{
|
|
wait 0.1;
|
|
common_scripts\utility::flag_set( "sfx_stop_mall_water" );
|
|
}
|
|
|
|
sfx_oldboy_stumble_stairs()
|
|
{
|
|
self playsound( "scn_flood_mall_oldboy_stumble_stairs" );
|
|
}
|
|
|
|
sfx_mall_water()
|
|
{
|
|
wait 2.9;
|
|
var_0 = spawn( "script_origin", ( 638, -2325, 277 ) );
|
|
wait 0.1;
|
|
var_0 playloopsound( "emt_flood_water_rushing_heavy_mall" );
|
|
common_scripts\utility::flag_wait( "sfx_stop_mall_water" );
|
|
var_0 delete();
|
|
}
|
|
|
|
sfx_node_array_init( var_0, var_1, var_2 )
|
|
{
|
|
var_3 = spawn( "script_origin", var_0 );
|
|
var_3.soundalias = var_1;
|
|
var_3.refnum = var_2;
|
|
level.sfx_flood_nodes[level.sfx_flood_nodes.size] = var_3;
|
|
}
|
|
|
|
audio_flood_end_logic()
|
|
{
|
|
thread swept_away_scene( "end" );
|
|
wait 4.4;
|
|
level.swept_away = 0;
|
|
}
|
|
|
|
debris_bridge_sfx()
|
|
{
|
|
thread debris_bridge_shaking_loop();
|
|
var_0 = 0.0;
|
|
wait 8.4;
|
|
thread common_scripts\utility::play_sound_in_space( "scn_flood_debris_bridge", ( 5540, 2494, 110 ) );
|
|
maps\_utility::delaythread( var_0 + 0.2, common_scripts\utility::play_sound_in_space, "scn_flood_debris_bridge_ceiling_debris_sm", ( 6286, 2225, 160 ) );
|
|
maps\_utility::delaythread( var_0 + 1.143, common_scripts\utility::play_sound_in_space, "scn_flood_debris_bridge_ceiling_debris_sm", ( 6286, 2225, 160 ) );
|
|
maps\_utility::delaythread( var_0 + 6.351, common_scripts\utility::play_sound_in_space, "scn_flood_debris_bridge_ceiling_debris_sm", ( 6286, 2225, 160 ) );
|
|
maps\_utility::delaythread( var_0 + 8.917, common_scripts\utility::play_sound_in_space, "scn_flood_debris_bridge_ceiling_debris_sm", ( 6286, 2225, 160 ) );
|
|
maps\_utility::delaythread( var_0 + 9.591, common_scripts\utility::play_sound_in_space, "scn_flood_debris_bridge_ceiling_debris_sm", ( 6286, 2225, 160 ) );
|
|
maps\_utility::delaythread( var_0 + 10.31, common_scripts\utility::play_sound_in_space, "scn_flood_debris_bridge_ceiling_debris_sm", ( 6286, 2225, 160 ) );
|
|
maps\_utility::delaythread( var_0 + 12.19, common_scripts\utility::play_sound_in_space, "scn_flood_debris_bridge_ceiling_debris_sm", ( 6286, 2225, 160 ) );
|
|
maps\_utility::delaythread( var_0 + 13.49, common_scripts\utility::play_sound_in_space, "scn_flood_debris_bridge_ceiling_debris_sm", ( 6286, 2225, 160 ) );
|
|
maps\_utility::delaythread( var_0 + 16.089, common_scripts\utility::play_sound_in_space, "scn_flood_debris_bridge_ceiling_debris_sm", ( 6286, 2225, 160 ) );
|
|
maps\_utility::delaythread( var_0 + 19.205, common_scripts\utility::play_sound_in_space, "scn_flood_debris_bridge_ceiling_debris_lg", ( 6286, 2225, 160 ) );
|
|
}
|
|
|
|
debris_bridge_shaking_loop()
|
|
{
|
|
common_scripts\utility::flag_wait( "debrisbridge_ready" );
|
|
var_0 = [];
|
|
var_0[0] = spawn( "script_origin", ( 6034, 2388, 95 ) );
|
|
var_0[1] = spawn( "script_origin", ( 2628, 2499, 95 ) );
|
|
var_1 = [];
|
|
var_1[0] = spawn( "script_origin", ( 5970, 2280, 119 ) );
|
|
var_1[1] = spawn( "script_origin", ( 5537, 2364, 119 ) );
|
|
var_2 = [];
|
|
var_2[0] = spawn( "script_origin", ( 6034, 2388, 95 ) );
|
|
var_2[1] = spawn( "script_origin", ( 2628, 2499, 95 ) );
|
|
thread audio_stereo_line_emitter( var_0, "emt_flood_debris_bridge_lp_01" );
|
|
thread audio_stereo_line_emitter( var_1, "emt_flood_debris_bridge_lp_02" );
|
|
thread audio_stereo_line_emitter( var_2, "scn_flood_debris_bridge_lp" );
|
|
}
|
|
|
|
swept_away_scene( var_0 )
|
|
{
|
|
maps\_utility::battlechatter_off( "allies" );
|
|
maps\_utility::battlechatter_off( "axis" );
|
|
|
|
if ( var_0 == "beginning" )
|
|
{
|
|
level.player setclienttriggeraudiozone( "flood_swept", 0.1 );
|
|
level.player playsound( "scn_flood_swept_away_beg_lr_ss" );
|
|
level.scene1emitter = spawn( "script_origin", ( 6034, 2388, 96 ) );
|
|
wait 6.3;
|
|
level.scene1emitter playsound( "scn_flood_swept_away_pt1_lr_ss" );
|
|
wait 0.1;
|
|
wait 0.2;
|
|
}
|
|
|
|
if ( var_0 == "start" )
|
|
{
|
|
level.prescene = spawn( "script_origin", ( 6034, 2388, 98 ) );
|
|
level.prescene playsound( "scn_flood_swept_fadein_lr_ss" );
|
|
level.player setclienttriggeraudiozone( "flood_swept", 0.1 );
|
|
level.scene1emitter = spawn( "script_origin", ( 6034, 2388, 96 ) );
|
|
wait 6.1;
|
|
level.scene1emitter playsound( "scn_flood_swept_away_pt1_lr_ss" );
|
|
}
|
|
|
|
if ( var_0 == "switch" )
|
|
{
|
|
level.scene2emitter = spawn( "script_origin", ( 6034, 2388, 97 ) );
|
|
wait 0.4;
|
|
level.scene1emitter stopsounds();
|
|
wait 0.1;
|
|
level.scene1emitter delete();
|
|
|
|
if ( isdefined( level.prescene ) )
|
|
level.prescene delete();
|
|
}
|
|
|
|
if ( var_0 == "end" )
|
|
{
|
|
wait 10;
|
|
level.player clearclienttriggeraudiozone( 1.0 );
|
|
}
|
|
}
|
|
|
|
skybridge_precursor_emitter()
|
|
{
|
|
var_0 = spawn( "script_origin", ( 5037, -2444, 96 ) );
|
|
var_0 playloopsound( "scn_flood_skybridge_lp" );
|
|
common_scripts\utility::flag_wait( "on_skybridge" );
|
|
wait 3.0;
|
|
var_0 stopsounds();
|
|
wait 0.1;
|
|
var_0 delete();
|
|
}
|
|
|
|
skybridge_door_bump()
|
|
{
|
|
wait 1.5;
|
|
thread common_scripts\utility::play_sound_in_space( "scn_flood_stealth_door_bump_ss", ( 4530, -3163, 252 ) );
|
|
}
|
|
|
|
skybridge_logic()
|
|
{
|
|
wait 0.3;
|
|
thread common_scripts\utility::play_sound_in_space( "scn_flood_skybridge_ss", ( 5294, -1005, 221 ) );
|
|
wait 5.2;
|
|
common_scripts\utility::play_sound_in_space( "scn_flood_skybridge_impact_ss", ( 5143, -1693, 75 ) );
|
|
}
|
|
|
|
skybridge_wash_away()
|
|
{
|
|
thread common_scripts\utility::play_sound_in_space( "scn_flood_skybridge_wash_away_pos", ( 5278, -1710, 135 ) );
|
|
level.player playsound( "scn_flood_skybridge_wash_away" );
|
|
wait 6.0;
|
|
common_scripts\utility::play_sound_in_space( "scn_flood_skybridge_break_away", ( 5458, -2537, 170 ) );
|
|
}
|
|
|
|
mssl_launch_front_wheels()
|
|
{
|
|
level.front_wheel_sfx = spawn( "script_origin", ( -1670, -7928, -8 ) );
|
|
level.back_wheel_sfx = spawn( "script_origin", ( -1696, -8132, -8 ) );
|
|
wait 1.18;
|
|
level.front_wheel_sfx playloopsound( "scn_flood_mssl_stuck_lp" );
|
|
level.back_wheel_sfx playloopsound( "scn_flood_mssl_stuck_front_lp" );
|
|
}
|
|
|
|
mssl_launch_destory_sfx()
|
|
{
|
|
level.lnchr_dstry_sfx = spawn( "script_origin", ( -1560, -7899, 25 ) );
|
|
level.lnchr_dstry_sfx linkto( level.player );
|
|
level.lnchr_dstry_sfx playsound( "scn_flood_mssl_destroy_ss" );
|
|
wait 9.72;
|
|
level.back_wheel_sfx stoploopsound();
|
|
level.front_wheel_sfx stoploopsound();
|
|
wait 2.83;
|
|
common_scripts\utility::play_sound_in_space( "scn_flood_mssl_explo", ( -1743, -7314, 0 ) );
|
|
level.back_wheel_sfx delete();
|
|
level.front_wheel_sfx delete();
|
|
}
|
|
|
|
launcher_destroy_slomo_sfx()
|
|
{
|
|
level.lnchr_slomo_sfx = spawn( "script_origin", ( -1560, -7899, 25 ) );
|
|
level.lnchr_slomo_sfx linkto( level.player );
|
|
level.player setclienttriggeraudiozone( "flood_streets_slomo", 0.3 );
|
|
waittillframeend;
|
|
level.lnchr_slomo_sfx playsound( "scn_flood_lnchr_destroy_slowin" );
|
|
}
|
|
|
|
launcher_destroy_stop_slomo_sfx()
|
|
{
|
|
level.lnchr_slomo2_sfx = spawn( "script_origin", ( -1560, -7899, 25 ) );
|
|
level.lnchr_slomo2_sfx linkto( level.player );
|
|
level.player clearclienttriggeraudiozone( 0.5 );
|
|
waittillframeend;
|
|
level.lnchr_slomo2_sfx playsound( "scn_flood_lnchr_destroy_slowout" );
|
|
wait 0.2;
|
|
level.lnchr_slomo_sfx stopsounds();
|
|
}
|
|
|
|
sfx_rorke_submerge( var_0 )
|
|
{
|
|
wait 5;
|
|
var_0 playsound( "scn_flood_stealth_rorke_submerge" );
|
|
}
|
|
|
|
sfx_diaz_stealth_kills2( var_0 )
|
|
{
|
|
var_0 playsound( "scn_flood_diaz_stealth_kill_02" );
|
|
wait 7.5;
|
|
var_0 playsound( "scn_flood_diaz_stealth_cabinets" );
|
|
}
|
|
|
|
sfx_stealth_kill_death_vo( var_0 )
|
|
{
|
|
level.sfx_death_vo = spawn( "script_origin", var_0.origin );
|
|
wait 0.2;
|
|
level.sfx_death_vo playsound( "generic_death_enemy_3", "sounddone" );
|
|
level.sfx_death_vo waittill( "sounddone" );
|
|
level.sfx_death_vo delete();
|
|
}
|
|
|
|
sfx_plr_vault()
|
|
{
|
|
level.player playsound( "scn_flood_stealth_plr_vault" );
|
|
}
|
|
|
|
diaz_door_kick_sfx()
|
|
{
|
|
var_0 = spawn( "script_origin", ( -62, -3906, -3 ) );
|
|
wait 0.05;
|
|
var_0 playsound( "scn_flood_diaz_door_kick" );
|
|
wait 5;
|
|
var_0 delete();
|
|
}
|
|
|
|
sfx_flood_int_alarm()
|
|
{
|
|
level.flood_int_alarm01 = spawn( "script_origin", ( 1.77724, -1607.53, 146.668 ) );
|
|
level.flood_int_doors = spawn( "script_origin", ( 21, -1233, 92 ) );
|
|
wait 0.1;
|
|
level.flood_int_alarm01 playloopsound( "emt_flood_fire_alarm" );
|
|
level.flood_int_doors playloopsound( "emt_flood_doubledoor_lp" );
|
|
common_scripts\utility::flag_wait( "player_at_stairs" );
|
|
sfx_flood_int_alarm_stop();
|
|
}
|
|
|
|
sfx_flood_int_alarm_stop()
|
|
{
|
|
if ( isdefined( level.flood_int_alarm01 ) )
|
|
{
|
|
wait 1;
|
|
level.flood_int_alarm01 stopsounds();
|
|
level.flood_int_doors stopsounds();
|
|
wait 0.1;
|
|
level.flood_int_doors delete();
|
|
level.flood_int_alarm01 delete();
|
|
}
|
|
}
|
|
|
|
trigger_heli_staircase()
|
|
{
|
|
var_0 = getent( "sfx_trigger_heli", "targetname" );
|
|
var_0 thread trigger_heli_wait();
|
|
}
|
|
|
|
trigger_heli_wait()
|
|
{
|
|
self waittill( "trigger" );
|
|
var_0 = spawn( "script_origin", ( -2255, -1872, 1290 ) );
|
|
var_0 playsound( "emt_flood_roof_heli_02" );
|
|
var_0 moveto( ( 1734, -1812, 1290 ), 12 );
|
|
wait 5;
|
|
var_1 = spawn( "script_origin", ( 1734, -1812, 1290 ) );
|
|
var_1 playsound( "emt_flood_roof_heli_01" );
|
|
var_1 moveto( ( -2255, -1872, 1290 ), 16 );
|
|
wait 13;
|
|
var_2 = spawn( "script_origin", ( -2963, -613, 1307 ) );
|
|
var_2 playsound( "emt_flood_roof_heli_03" );
|
|
var_2 moveto( ( 4092, -6121, 2233 ), 11 );
|
|
}
|
|
|
|
sfx_play_chopper_5( var_0 )
|
|
{
|
|
level.destruc_chopper = spawn( "script_origin", var_0.origin );
|
|
level.destruc_chopper linkto( var_0 );
|
|
wait 1;
|
|
level.destruc_chopper playsound( "emt_flood_roof_heli_05" );
|
|
level waittill( "swept_away" );
|
|
|
|
if ( isdefined( level.destruc_chopper ) )
|
|
level.destruc_chopper stopsounds();
|
|
}
|
|
|
|
sfx_kill_chopper_sound()
|
|
{
|
|
if ( isdefined( level.destruc_chopper ) )
|
|
{
|
|
wait 1;
|
|
level.destruc_chopper stopsounds();
|
|
wait 0.1;
|
|
level.destruc_chopper delete();
|
|
}
|
|
}
|
|
|
|
sfx_chopper_4_play( var_0 )
|
|
{
|
|
var_0 playsound( "emt_flood_roof_heli_04" );
|
|
}
|
|
|
|
sfx_chooper_wait_and_play( var_0 )
|
|
{
|
|
wait 3;
|
|
var_0 playsound( "emt_flood_roof_heli_06" );
|
|
}
|
|
|
|
trigger_int_building_hits()
|
|
{
|
|
var_0 = getent( "int_building_shake_sfx_01", "targetname" );
|
|
var_0 thread trigger_int_building_hit_01_wait();
|
|
var_1 = getent( "int_building_shake_sfx_02", "targetname" );
|
|
var_1 thread trigger_int_building_hit_02_wait();
|
|
}
|
|
|
|
trigger_int_building_hit_01_wait()
|
|
{
|
|
self waittill( "trigger" );
|
|
level.player playsound( "scn_flood_int_building_hit_01" );
|
|
}
|
|
|
|
trigger_int_building_hit_02_wait()
|
|
{
|
|
self waittill( "trigger" );
|
|
level.player playsound( "scn_flood_int_building_hit_02" );
|
|
}
|
|
|
|
sfx_rooftop_collapse()
|
|
{
|
|
level.rooftop_collapse_crumble_01_sfx = spawn( "script_origin", ( 31, -2198, 341 ) );
|
|
level.rooftop_collapse_end_build_sfx = spawn( "script_origin", level.player.origin );
|
|
level.rooftop_collapse_end_build_sfx linkto( level.player );
|
|
level.player setclienttriggeraudiozone( "flood_mall_rooftop_crumble", 1.0 );
|
|
level.player playsound( "scn_flood_mall_crumble_build_up" );
|
|
wait 2.95;
|
|
thread common_scripts\utility::play_sound_in_space( "scn_flood_mall_crumble_building", ( 539, -2614, 349 ) );
|
|
wait 1.8;
|
|
level.rooftop_collapse_crumble_01_sfx playsound( "scn_flood_mall_crumble_01" );
|
|
level.rooftop_collapse_end_build_sfx playsound( "scn_flood_mall_end_build" );
|
|
wait 5.15;
|
|
}
|
|
|
|
sfx_rocket_aiming_sound()
|
|
{
|
|
wait 1.0;
|
|
thread common_scripts\utility::play_sound_in_space( "scn_flood_rocket_launcher_movement_ss", ( -1754, -4349, 65 ) );
|
|
}
|
|
|
|
sfx_rocket_explosion_sound( var_0 )
|
|
{
|
|
thread sfx_stop_buzzer( "sfx_missiles_launched" );
|
|
level.player playsound( "scn_flood_rocket_explosion_lr_ss" );
|
|
level.player setclienttriggeraudiozone( "flood_streets_rocket_launch", 0.1 );
|
|
wait 13;
|
|
level.player clearclienttriggeraudiozone( 1.0 );
|
|
wait 1;
|
|
level.player playsound( "scn_flood_rocket_explosion_aftermath_ss" );
|
|
wait 4;
|
|
var_1 = spawn( "script_origin", ( -1585, -2111, 153 ) );
|
|
var_1 playsound( "scn_flood_rocket_explosion_aftermath2_ss" );
|
|
wait 0.5;
|
|
var_1 moveto( ( -1536, -4392, 153 ), 6.5 );
|
|
}
|
|
|
|
sfx_mall_ceiling_debris()
|
|
{
|
|
wait 0.55;
|
|
thread common_scripts\utility::play_sound_in_space( "scn_flood_mall_rumble_ceiling_debris_big", ( 233, -756, 168 ) );
|
|
thread common_scripts\utility::play_sound_in_space( "scn_flood_mall_rumble_ceiling_debris_big", ( 352, -997, 264 ) );
|
|
thread common_scripts\utility::play_sound_in_space( "scn_flood_mall_rumble_ceiling_debris_big", ( 363, -1302, 264 ) );
|
|
thread common_scripts\utility::play_sound_in_space( "scn_flood_mall_rumble_ceiling_debris_big", ( 307, -1436, 304 ) );
|
|
}
|
|
|
|
sfx_mall_exit_door()
|
|
{
|
|
var_0 = spawn( "script_origin", level.player.origin );
|
|
var_0 linkto( level.player );
|
|
level.rooftop_collapse_sfx = spawn( "script_origin", level.player.origin );
|
|
level.rooftop_collapse_sfx linkto( level.player );
|
|
thread common_scripts\utility::play_sound_in_space( "scn_flood_mall_wave_hit", ( 498, -1849, 284 ) );
|
|
maps\_utility::delaythread( 7, common_scripts\utility::play_sound_in_space, "scn_flood_mall_wave_hit", ( 498, -1849, 284 ) );
|
|
maps\_utility::delaythread( 15, common_scripts\utility::play_sound_in_space, "scn_flood_mall_wave_hit", ( 498, -1849, 284 ) );
|
|
maps\_utility::delaythread( 22, common_scripts\utility::play_sound_in_space, "scn_flood_mall_wave_hit", ( 498, -1849, 284 ) );
|
|
maps\_utility::delaythread( 30, common_scripts\utility::play_sound_in_space, "scn_flood_mall_wave_hit", ( 498, -1849, 284 ) );
|
|
level.player setclienttriggeraudiozonepartial( "flood_mall_fadein", "mix" );
|
|
var_0 playloopsound( "scn_flood_mall_rumble_lr_lp" );
|
|
wait 0.1;
|
|
level.player clearclienttriggeraudiozone( 0.5 );
|
|
common_scripts\utility::flag_wait( "mall_attack_player" );
|
|
level.rooftop_collapse_sfx playsound( "scn_flood_mall_rooftop_collapse_lr" );
|
|
common_scripts\utility::flag_wait( "mall_rooftop_sfx_fadeout" );
|
|
level.player playsound( "scn_flood_mall_player_fall_01" );
|
|
level.player setclienttriggeraudiozone( "flood_mall_rooftop_fall", 0.3 );
|
|
level.rooftop_collapse_end_build_sfx stopsounds();
|
|
wait 0.2;
|
|
level.rooftop_collapse_end_build_sfx delete();
|
|
wait 1.0;
|
|
level.rooftop_collapse_sfx stopsounds();
|
|
level.rooftop_collapse_crumble_01_sfx stopsounds();
|
|
level waittill( "swept_away" );
|
|
var_0 delete();
|
|
}
|
|
|
|
sfx_mall_hanging_falling_floor()
|
|
{
|
|
common_scripts\utility::play_sound_in_space( "scn_flood_mall_crumble_02", ( 201, -2043, 199 ) );
|
|
}
|
|
|
|
sfx_mall_first_screen_shake()
|
|
{
|
|
level.player playsound( "scn_flood_mall_rumble_01" );
|
|
}
|
|
|
|
sfx_flood_int_door()
|
|
{
|
|
var_0 = spawn( "script_origin", ( 312, -1535, 305 ) );
|
|
var_1 = spawn( "script_origin", ( 358, -1587, 305 ) );
|
|
wait 0.1;
|
|
var_1 playloopsound( "scn_flood_door_water" );
|
|
wait 1.9;
|
|
var_0 playsound( "scn_flood_int_door", "sound_done" );
|
|
var_0 waittill( "sound_done" );
|
|
var_0 delete();
|
|
}
|
|
|
|
rooftops_mix_heli_down()
|
|
{
|
|
common_scripts\utility::flag_wait( "rooftops_exterior_encounter_start" );
|
|
wait 8;
|
|
level.player setclienttriggeraudiozone( "flood_ending_rooftop_helifade", 10 );
|
|
wait 6;
|
|
level.player clearclienttriggeraudiozone( 4 );
|
|
}
|
|
|
|
sfx_stealth_heli_flyby()
|
|
{
|
|
level.rooftop_heli playsound( "scn_flood_stealth_heli_flyby" );
|
|
}
|
|
|
|
sfx_rooftops_wall_kick()
|
|
{
|
|
wait 12.5;
|
|
self playsound( "scn_rooftops_wall_kick" );
|
|
}
|
|
|
|
sfx_rooftops_ally_jumpdown()
|
|
{
|
|
wait 2.6;
|
|
self playsound( "scn_rooftops_ally_vault_jumpdown" );
|
|
}
|
|
|
|
sfx_rooftops_player_jumpdown()
|
|
{
|
|
var_0 = getent( "sfx_player_rooftop_jumpdown", "targetname" );
|
|
var_0 thread trigger_player_jumpdown_wait();
|
|
}
|
|
|
|
trigger_player_jumpdown_wait()
|
|
{
|
|
self waittill( "trigger" );
|
|
level.player playsound( "scn_rooftops_plr_jumpdown" );
|
|
}
|
|
|
|
sfx_rooftops_ally_jump()
|
|
{
|
|
wait 1.3;
|
|
self playsound( "scn_rooftops_ally_vault" );
|
|
}
|
|
|
|
sfx_rooftops_player_jump()
|
|
{
|
|
var_0 = getent( "sfx_player_rooftop_vault_land", "targetname" );
|
|
var_0 thread trigger_player_jum_wait();
|
|
}
|
|
|
|
trigger_player_jum_wait()
|
|
{
|
|
self waittill( "trigger" );
|
|
level.player playsound( "scn_rooftops_plr_vault" );
|
|
}
|
|
|
|
sfx_heli_rooftops_sequence( var_0 )
|
|
{
|
|
thread sfx_heli_rooftops_wind( var_0 );
|
|
wait 0.1;
|
|
thread sfx_heli_rooftops_engine( var_0 );
|
|
common_scripts\utility::flag_wait( "rooftops_exterior_encounter_start" );
|
|
common_scripts\utility::flag_set( "rooftop_heli_flyaway" );
|
|
level.rooftops_heli_flyaway = spawn( "script_origin", var_0.origin );
|
|
level.rooftops_heli_flyaway linkto( var_0 );
|
|
level.rooftops_heli_flyaway playsound( "scn_flood_rooftop_heli_away" );
|
|
|
|
if ( !common_scripts\utility::flag( "rooftop_stairwell_mid" ) )
|
|
{
|
|
wait 2;
|
|
var_0 vehicle_turnengineoff();
|
|
}
|
|
else if ( !common_scripts\utility::flag( "rooftop_stairwell_top" ) )
|
|
{
|
|
wait 0.5;
|
|
var_0 vehicle_turnengineoff();
|
|
}
|
|
else
|
|
{
|
|
wait 0.2;
|
|
var_0 vehicle_turnengineoff();
|
|
}
|
|
|
|
wait 2.5;
|
|
}
|
|
|
|
sfx_heli_rooftops_wind( var_0 )
|
|
{
|
|
level.heli_wind = spawn( "script_origin", ( 0, 0, 0 ) );
|
|
level.heli_wind hide();
|
|
level.heli_wind endon( "death" );
|
|
thread common_scripts\utility::delete_on_death( level.heli_wind );
|
|
level.heli_wind.origin = var_0.origin + ( 0, 0, -200 );
|
|
level.heli_wind linkto( var_0 );
|
|
level.heli_wind playloopsound( "scn_flood_rooftop_heli_wind_lp" );
|
|
common_scripts\utility::flag_wait( "rooftop_stairwell_mid" );
|
|
|
|
if ( !common_scripts\utility::flag( "rooftop_heli_flyaway" ) )
|
|
{
|
|
level.heli_wind_debris = spawn( "script_origin", ( 0, 0, 0 ) );
|
|
level.heli_wind_debris playloopsound( "scn_flood_rooftop_heli_debris_lp" );
|
|
level.heli_wind_debris linkto( level.player );
|
|
}
|
|
|
|
common_scripts\utility::flag_wait( "rooftop_stairwell_top" );
|
|
|
|
if ( common_scripts\utility::flag( "rooftop_heli_flyaway" ) && isdefined( level.heli_wind_debris ) )
|
|
{
|
|
level.heli_wind_debris scalevolume( 0, 2 );
|
|
wait 2;
|
|
level.heli_wind_debris stoploopsound( "scn_flood_rooftop_heli_debris_lp" );
|
|
level.heli_wind_debris delete();
|
|
}
|
|
else
|
|
{
|
|
common_scripts\utility::flag_wait( "rooftop_heli_flyaway" );
|
|
wait 5;
|
|
|
|
if ( isdefined( level.heli_wind_debris ) )
|
|
{
|
|
level.heli_wind_debris scalevolume( 0, 3 );
|
|
wait 3;
|
|
level.heli_wind_debris stoploopsound( "scn_flood_rooftop_heli_debris_lp" );
|
|
wait 5;
|
|
level.heli_wind delete();
|
|
level.heli_wind_debris delete();
|
|
}
|
|
}
|
|
}
|
|
|
|
sfx_heli_rooftops_engine( var_0 )
|
|
{
|
|
level.rooftops_heli_engine_lp = spawn( "script_origin", var_0.origin );
|
|
level.rooftops_heli_engine_lp linkto( var_0 );
|
|
level.rooftops_heli_engine_lp playloopsound( "scn_flood_rooftop_heli_lp" );
|
|
level.rooftops_heli_engine_lp endon( "death" );
|
|
thread common_scripts\utility::delete_on_death( level.rooftops_heli_engine_lp );
|
|
common_scripts\utility::flag_wait( "rooftop_stairwell_top" );
|
|
wait 10;
|
|
level.rooftops_heli_engine_lp delete();
|
|
}
|
|
|
|
sfx_heli_rooftops_water_idle()
|
|
{
|
|
self vehicle_turnengineoff();
|
|
level.rooftops_water_heli_engine_lp = spawn( "script_origin", self.origin );
|
|
level.rooftops_water_heli_engine_lp linkto( self );
|
|
level.rooftops_water_heli_engine_lp playloopsound( "scn_flood_rooftop_water_heli_lp" );
|
|
}
|
|
|
|
sfx_heli_rooftops_water()
|
|
{
|
|
self playsound( "scn_flood_rooftop_water_heli" );
|
|
wait 0.5;
|
|
level.rooftops_water_heli_engine_lp stoploopsound();
|
|
wait 2.0;
|
|
self playloopsound( "scn_flood_rooftop_water_heli_debris_lp" );
|
|
wait 4.0;
|
|
self stoploopsound();
|
|
}
|
|
|
|
sfx_heli_final_passby()
|
|
{
|
|
self playsound( "scn_flood_final_heli_flyby" );
|
|
wait 10.0;
|
|
level.rooftops_final_heli_idle_lp = spawn( "script_origin", ( 6383, 5815, 276 ) );
|
|
level.rooftops_final_heli_idle_lp playloopsound( "scn_flood_final_heli_lp" );
|
|
}
|
|
|
|
sfx_heli_dam_passby()
|
|
{
|
|
self playsound( "scn_flood_dam_heli_flyby" );
|
|
}
|
|
|
|
sfx_stairwell_wind()
|
|
{
|
|
level.rooftops_stairwell_wind = spawn( "script_origin", ( 6444, -1315, 392 ) );
|
|
level.rooftops_stairwell_wind playloopsound( "scn_flood_stairwell_wind_lp" );
|
|
common_scripts\utility::flag_wait( "rooftop_stairwell_top" );
|
|
wait 2;
|
|
level.rooftops_stairwell_wind stopsounds();
|
|
level.rooftops_stairwell_wind delete();
|
|
}
|
|
|
|
sfx_stairwell_heli_trig_setup()
|
|
{
|
|
var_0 = getent( "trigger_rooftop_exit_stairwell", "targetname" );
|
|
var_0 thread sfx_stairwell_heli_trig();
|
|
}
|
|
|
|
sfx_stairwell_heli_trig()
|
|
{
|
|
self waittill( "trigger" );
|
|
common_scripts\utility::flag_set( "rooftop_stairwell_top" );
|
|
}
|
|
|
|
sfx_stairwell_mid_trig_setup()
|
|
{
|
|
var_0 = getent( "trigger_rooftop_mid_stairwell", "targetname" );
|
|
var_0 thread sfx_stairwell_mid_trig();
|
|
}
|
|
|
|
sfx_stairwell_mid_trig()
|
|
{
|
|
self waittill( "trigger" );
|
|
common_scripts\utility::flag_set( "rooftop_stairwell_mid" );
|
|
}
|
|
|
|
flood_convoy_chopper1_sfx()
|
|
{
|
|
self playsound( "scn_flood_convoyheli_01" );
|
|
}
|
|
|
|
flood_convoy_chopper2_sfx()
|
|
{
|
|
self playsound( "scn_flood_convoyheli_02" );
|
|
}
|
|
|
|
flood_convoy_chopper4_sfx()
|
|
{
|
|
self playsound( "scn_flood_convoyheli_03" );
|
|
}
|
|
|
|
flood_convoy_attackheli01_sfx()
|
|
{
|
|
self playsound( "scn_flood_convoy_attackheli_01" );
|
|
}
|
|
|
|
flood_convoy_attackheli02_sfx()
|
|
{
|
|
wait 6.06;
|
|
self playsound( "scn_flood_convoy_attackheli_02" );
|
|
}
|
|
|
|
flood_convoy_sfx( var_0 )
|
|
{
|
|
if ( var_0 == 0 )
|
|
self playsound( "scn_flood_convoypass_ss_01" );
|
|
|
|
if ( var_0 == 1 )
|
|
self playsound( "scn_flood_convoypass_ss_02" );
|
|
|
|
if ( var_0 == 2 )
|
|
self playsound( "scn_flood_convoypass_ss_03" );
|
|
|
|
if ( var_0 == 3 )
|
|
self playsound( "scn_flood_convoypass_ss_04" );
|
|
|
|
if ( var_0 == 4 )
|
|
self playsound( "scn_flood_convoypass_ss_05" );
|
|
|
|
if ( var_0 == 5 )
|
|
self playsound( "scn_flood_convoypass_ss_06" );
|
|
|
|
if ( var_0 == 6 )
|
|
self playsound( "scn_flood_convoypass_ss_07" );
|
|
}
|
|
|
|
flood_convoy_exp_sfx()
|
|
{
|
|
var_0 = spawn( "script_origin", ( -1600, -8900, -9 ) );
|
|
var_1 = spawn( "script_origin", ( -1600, -8600, -9 ) );
|
|
common_scripts\utility::flag_wait( "start_heli_attack" );
|
|
wait 3.6;
|
|
var_0 playsound( "exp_armor_vehicle" );
|
|
wait 6;
|
|
var_0 delete();
|
|
var_1 delete();
|
|
}
|
|
|
|
flood_launcher_crash_sfx()
|
|
{
|
|
wait 0.75;
|
|
self playsound( "scn_flood_mssl_crash_ss" );
|
|
}
|
|
|
|
sfx_parking_lot_explode()
|
|
{
|
|
level.player playsound( "scn_flood_parklot_exp_lr_ss" );
|
|
}
|
|
|
|
sfx_heli_jump_script( var_0 )
|
|
{
|
|
wait 0.5;
|
|
level.heli_jump = spawn( "script_origin", ( 0, 0, 0 ) );
|
|
level.heli_jump playsound( "scn_flood_exfil_part1_lr" );
|
|
level.heli_jump2 = spawn( "script_origin", ( 0, 0, 0 ) );
|
|
level.heli_jump2 playsound( "scn_flood_exfil_ambhel_lr" );
|
|
level.player setclienttriggeraudiozone( "flood_exfil_01", 1.5 );
|
|
wait 1.5;
|
|
level.ending_heli stopsounds();
|
|
}
|
|
|
|
sfx_change_zone_exfil()
|
|
{
|
|
level.player setclienttriggeraudiozone( "flood_exfil_01", 1.5 );
|
|
}
|
|
|
|
sfx_change_zone_exfil2()
|
|
{
|
|
level.player setclienttriggeraudiozone( "flood_exfil_02", 1 );
|
|
}
|
|
|
|
sfx_alarms_script( var_0 )
|
|
{
|
|
level.alarms = spawn( "script_origin", ( 0, 0, 0 ) );
|
|
level.alarms playsound( "scn_flood_exfil_ambhel_crash_lr" );
|
|
level.alarms2 = spawn( "script_origin", ( 0, 0, 0 ) );
|
|
level.alarms2 playloopsound( "scn_flood_heli_alarms" );
|
|
}
|
|
|
|
sfx_stop_alarms_script( var_0 )
|
|
{
|
|
if ( isdefined( level.alarms ) )
|
|
{
|
|
wait 0.2;
|
|
level.alarms stopsounds();
|
|
wait 0.1;
|
|
level.alarms delete();
|
|
}
|
|
}
|
|
|
|
sfx_slomo_script( var_0 )
|
|
{
|
|
level.slomo = spawn( "script_origin", ( 0, 0, 0 ) );
|
|
level.slomo playsound( "scn_flood_exfil_part2_lr" );
|
|
level.heli_jump stopsounds();
|
|
thread music_flood_exfil_end();
|
|
}
|
|
|
|
music_flood_exfil_end()
|
|
{
|
|
wait 2.3;
|
|
maps\_utility::music_play( "mus_flood_exfil_crash_ss" );
|
|
common_scripts\utility::flag_wait( "vignette_ending_qte_grabbed" );
|
|
maps\_utility::music_play( "mus_flood_exfil_end_ss" );
|
|
}
|
|
|
|
sfx_gun_grab_script( var_0 )
|
|
{
|
|
level.gun_grab = spawn( "script_origin", ( 0, 0, 0 ) );
|
|
level.gun_grab playsound( "scn_flood_exfil_gun_grab" );
|
|
}
|
|
|
|
sfx_ally_grab_script( var_0 )
|
|
{
|
|
|
|
}
|
|
|
|
sfx_plane_crash_script( var_0 )
|
|
{
|
|
maps\_utility::delaythread( 5.0, maps\_utility::music_stop, 1.0 );
|
|
level.player setclienttriggeraudiozone( "flood_exfil_02", 0 );
|
|
level.plane_crash = spawn( "script_origin", ( 0, 0, 0 ) );
|
|
level.plane_crash playsound( "scn_flood_exfil_part3_lr" );
|
|
level.alarms2 stoploopsound();
|
|
wait 1.1;
|
|
level.player setclienttriggeraudiozone( "flood_exfil_01", 0.1 );
|
|
}
|
|
|
|
sfx_wake_up_script( var_0 )
|
|
{
|
|
level.wake_up = spawn( "script_origin", ( 0, 0, 0 ) );
|
|
level.wake_up playsound( "scn_flood_exfil_wake01_lr" );
|
|
}
|
|
|
|
sfx_let_go()
|
|
{
|
|
|
|
}
|
|
|
|
sfx_save_script( var_0 )
|
|
{
|
|
wait 0.1;
|
|
}
|
|
|
|
play_helicopter_leaving_sound()
|
|
{
|
|
level.ending_heli playsound( "scn_flood_exfil_helicopter_intro" );
|
|
wait 2.0;
|
|
|
|
if ( isdefined( level.rooftops_final_heli_idle_lp ) )
|
|
level.rooftops_final_heli_idle_lp stoploopsound();
|
|
}
|
|
|
|
sfx_play_outofwater_sound()
|
|
{
|
|
level.player playsound( "scn_flood_stairwell_plr" );
|
|
}
|
|
|
|
sfx_small_rumble_loop()
|
|
{
|
|
common_scripts\utility::flag_wait( "player_at_stairs" );
|
|
|
|
while ( !common_scripts\utility::flag( "event_quaker_big" ) )
|
|
{
|
|
wait( randomfloatrange( 4, 8 ) );
|
|
level.player playsound( "scn_flood_mall_rumble_shake_int" );
|
|
level.player playsound( "scn_flood_mall_rumble_ceiling_debris" );
|
|
level.player playsound( "scn_flood_mall_rumble_ceiling_debris" );
|
|
level.player playsound( "scn_flood_mall_rumble_ceiling_debris" );
|
|
}
|
|
}
|
|
|
|
sfx_change_zone()
|
|
{
|
|
level.player setclienttriggeraudiozone( "flood_exfil_03", 1 );
|
|
wait 1;
|
|
level.heli_loop stoploopsound();
|
|
}
|
|
|
|
sfx_fail01()
|
|
{
|
|
wait 0.5;
|
|
level.player playsound( "scn_flood_exfil_wake01_fail" );
|
|
}
|
|
|
|
sfx_let_go_fail()
|
|
{
|
|
wait 1;
|
|
level.player playsound( "scn_flood_exfil_wake03_fail" );
|
|
}
|
|
|
|
sfx_last_pass()
|
|
{
|
|
wait 0.2;
|
|
level.player playsound( "scn_flood_exfil_wake03_pass" );
|
|
}
|
|
|
|
sfx_wakeup()
|
|
{
|
|
level.player playsound( "scn_flood_exfil_wake02_lr" );
|
|
level.heli_loop = spawn( "script_origin", ( 0, 0, 0 ) );
|
|
level.heli_loop playloopsound( "scn_flood_exfil_wake02_lp_lr" );
|
|
}
|
|
|
|
sfx_exfil_slomo01()
|
|
{
|
|
wait 1.5;
|
|
level.player setclienttriggeraudiozone( "flood_exfil_02", 1 );
|
|
wait 1;
|
|
level.player setclienttriggeraudiozone( "flood_exfil_01", 0.5 );
|
|
}
|
|
|
|
sfx_exfil_slomo00()
|
|
{
|
|
level.player setclienttriggeraudiozone( "flood_exfil_01", 0.1 );
|
|
}
|
|
|
|
sfx_boss_shot_begin()
|
|
{
|
|
level.player setclienttriggeraudiozone( "flood_exfil_04", 2 );
|
|
}
|
|
|
|
sfx_boss_shot_end()
|
|
{
|
|
level.player setclienttriggeraudiozone( "flood_exfil_01", 0.1 );
|
|
level.player playsound( "scn_flood_exfil_part3hit_lr" );
|
|
}
|
|
|
|
flood_streets_distant_helipass()
|
|
{
|
|
var_0 = spawn( "script_origin", ( -1680, -1800, 450 ) );
|
|
var_1 = spawn( "script_origin", ( -1680, -1800, 450 ) );
|
|
wait 2.5;
|
|
var_0 playsound( "scn_flood_convoyheli_02" );
|
|
wait 0.3;
|
|
var_1 playsound( "scn_flood_convoyheli_03" );
|
|
wait 5;
|
|
var_0 delete();
|
|
var_1 delete();
|
|
}
|
|
|
|
sfx_deathsdoor_end_underwater()
|
|
{
|
|
level endon( "cw_player_abovewater" );
|
|
|
|
for (;;)
|
|
{
|
|
waittillframeend;
|
|
|
|
if ( !isdefined( level._audio.in_deathsdoor ) )
|
|
{
|
|
if ( isdefined( level.swept_away ) && level.swept_away == 0 )
|
|
level.player setclienttriggeraudiozone( "flood_underwater", 0 );
|
|
|
|
return;
|
|
}
|
|
|
|
wait 0.05;
|
|
}
|
|
}
|
|
|
|
sfx_flood_end_notetrack( var_0 )
|
|
{
|
|
level.player playsound( "scn_flood_swept_away_pt3_lr_ss" );
|
|
}
|
|
|
|
sfx_looping_rorke()
|
|
{
|
|
var_0 = spawn( "script_origin", ( 5807, 2624, 545 ) );
|
|
var_0 playloopsound( "flood_rke_outro_loop" );
|
|
common_scripts\utility::flag_wait( "vignette_ending_qte_grabbed" );
|
|
wait 0.5;
|
|
var_0 stoploopsound();
|
|
}
|