957 lines
26 KiB
Plaintext
957 lines
26 KiB
Plaintext
// IW6 GSC SOURCE
|
|
// Generated by https://github.com/xensik/gsc-tool
|
|
|
|
main()
|
|
{
|
|
common_scripts\utility::flag_init( "invader_music_cue" );
|
|
common_scripts\utility::flag_init( "fade_intro_music" );
|
|
common_scripts\utility::flag_init( "stop_music_pod_explo" );
|
|
common_scripts\utility::flag_init( "rcs_is_damaged" );
|
|
common_scripts\utility::flag_init( "mus_odin_end" );
|
|
common_scripts\utility::flag_init( "mus_atmosphere" );
|
|
common_scripts\utility::flag_init( "stop_sat_thrust_loop" );
|
|
common_scripts\utility::flag_init( "stop_sat_lat_thrust_loop" );
|
|
common_scripts\utility::flag_init( "escape_door_opened" );
|
|
common_scripts\utility::flag_init( "auto_door_closed" );
|
|
common_scripts\utility::flag_init( "stop_scuttle_loop" );
|
|
common_scripts\utility::flag_init( "begin_scuttle_ramp" );
|
|
common_scripts\utility::flag_init( "sat_second_expl" );
|
|
common_scripts\utility::flag_init( "sfx_odin_ending" );
|
|
level.play_shake_sound = 0;
|
|
level.play_npc_deaths = 0;
|
|
|
|
if ( isdefined( level.prologue ) && level.prologue == 1 )
|
|
level.space_breathing_enabled = 1;
|
|
else
|
|
level.space_breathing_enabled = 1;
|
|
|
|
level.player thread maps\_space_player::player_space_breathing();
|
|
soundsettimescalefactor( "music", 0 );
|
|
soundsettimescalefactor( "effects1", 0 );
|
|
soundsettimescalefactor( "effects2d1", 0 );
|
|
soundsettimescalefactor( "effects2d2", 0 );
|
|
soundsettimescalefactor( "ambient", 0 );
|
|
soundsettimescalefactor( "weapon", 0 );
|
|
soundsettimescalefactor( "bulletimpact", 0 );
|
|
soundsettimescalefactor( "bulletwhizbyin", 0 );
|
|
soundsettimescalefactor( "bulletwhizbyout", 0 );
|
|
soundsettimescalefactor( "norestrict2d", 0 );
|
|
thread audio_odin_pressurized_variable();
|
|
level.sfx_plr_grapple_playing = 0;
|
|
level.shaky_moment = 0;
|
|
level.no_impact = 0;
|
|
}
|
|
|
|
audio_odin_pressurized_variable()
|
|
{
|
|
level.pressurized = 0;
|
|
}
|
|
|
|
audio_set_initial_ambience()
|
|
{
|
|
wait 0.1;
|
|
|
|
if ( level.start_point == "odin_intro" )
|
|
level.player setclienttriggeraudiozone( "odin_title", 3.0 );
|
|
else
|
|
level.player setclienttriggeraudiozone( "odin_intro", 0 );
|
|
|
|
thread mission_music();
|
|
|
|
if ( level.start_point == "odin_ally" || level.start_point == "odin_escape" || level.start_point == "odin_spin" )
|
|
{
|
|
wait 1;
|
|
level.player setclienttriggeraudiozone( "odin_pressurized", 6 );
|
|
level.pressurized = 0;
|
|
}
|
|
else if ( level.start_point == "odin_intro" )
|
|
{
|
|
wait 5;
|
|
level.player clearclienttriggeraudiozone( 3 );
|
|
}
|
|
}
|
|
|
|
mission_music()
|
|
{
|
|
switch ( level.start_point )
|
|
{
|
|
case "default":
|
|
case "odin_intro":
|
|
common_scripts\utility::flag_wait( "fade_intro_music" );
|
|
maps\_utility::music_stop( 10 );
|
|
case "odin_ally":
|
|
common_scripts\utility::flag_wait( "invader_music_cue" );
|
|
case "odin_spin":
|
|
case "odin_escape":
|
|
wait 0.5;
|
|
maps\_utility::music_play( "mus_odin_invader", 0.1 );
|
|
thread sfx_invader_sounds();
|
|
common_scripts\utility::flag_wait( "stop_music_pod_explo" );
|
|
maps\_utility::music_stop( 1 );
|
|
common_scripts\utility::flag_wait( "mus_odin_end" );
|
|
maps\_utility::music_play( "mus_odin_end" );
|
|
case "odin_spacejump":
|
|
case "odin_end":
|
|
case "odin_satellite":
|
|
maps\_utility::music_play( "mus_odin_end" );
|
|
common_scripts\utility::flag_wait( "mus_atmosphere" );
|
|
maps\_utility::music_crossfade( "mus_odin_end_atmosphere", 0.5 );
|
|
wait 25;
|
|
level.player setclienttriggeraudiozone( "odin_end_fadeout", 3 );
|
|
default:
|
|
}
|
|
}
|
|
|
|
sfx_player_intro_movement()
|
|
{
|
|
wait 4.8;
|
|
self playsound( "scn_odin_player_intro_movement" );
|
|
}
|
|
|
|
sfx_traversal_01()
|
|
{
|
|
wait 2.3;
|
|
level.player playsound( "scn_odin_traversal_01" );
|
|
}
|
|
|
|
sfx_traversal_02()
|
|
{
|
|
wait 0.4;
|
|
level.player playsound( "scn_odin_traversal_02" );
|
|
}
|
|
|
|
sfx_invader_sounds()
|
|
{
|
|
wait 3;
|
|
var_0 = spawn( "script_origin", ( 3365, 47471, 48608 ) );
|
|
var_0 playloopsound( "emt_odin_alarm3" );
|
|
var_1 = spawn( "script_origin", ( 3281, 47035, 48593 ) );
|
|
var_1 playloopsound( "emt_odin_alarm2" );
|
|
}
|
|
|
|
sfx_bg_fighting_line_emitter()
|
|
{
|
|
wait 10;
|
|
var_0 = spawn( "script_origin", ( 0, 50000, 50000 ) );
|
|
var_1 = 0;
|
|
|
|
for (;;)
|
|
{
|
|
if ( common_scripts\utility::flag( "saved_ally" ) )
|
|
break;
|
|
|
|
var_2 = pointonsegmentnearesttopoint( ( 3200, 47190, 48558 ), ( 3280, 46530, 48558 ), level.player.origin );
|
|
var_0 moveto( var_2, 0.01 );
|
|
|
|
if ( var_1 == 0 )
|
|
{
|
|
var_0 playloopsound( "emt_odin_bg_fighting_01_lp" );
|
|
var_1 = 1;
|
|
}
|
|
|
|
wait 0.1;
|
|
}
|
|
|
|
var_0 stoploopsound( "emt_odin_bg_fighting_01_lp" );
|
|
var_0 delete();
|
|
thread sfx_bg_fighting_emt();
|
|
}
|
|
|
|
sfx_bg_fighting_emt()
|
|
{
|
|
wait 2;
|
|
level.sfx_bg_fighting = spawn( "script_origin", ( 3178, 46395, -13132 ) );
|
|
level.sfx_bg_fighting playloopsound( "emt_odin_bg_fighting_02_lp" );
|
|
}
|
|
|
|
sfx_bg_fighting_stop()
|
|
{
|
|
wait 1;
|
|
level.player setclienttriggeraudiozone( "odin_fighting_fade", 3.5 );
|
|
wait 3.5;
|
|
level.sfx_bg_fighting stoploopsound( "emt_odin_bg_fighting_02_lp" );
|
|
level.sfx_bg_fighting delete();
|
|
wait 1;
|
|
level.player setclienttriggeraudiozone( "odin_pressurized", 1 );
|
|
}
|
|
|
|
sfx_ally_plr_grapple()
|
|
{
|
|
level.sfx_player_grapple = spawn( "script_origin", self.origin );
|
|
level.sfx_player_grapple linkto( self );
|
|
wait 0.4;
|
|
level.sfx_player_grapple playsound( "scn_odin_player_grapple" );
|
|
common_scripts\utility::flag_wait( "saved_ally" );
|
|
wait 0.2;
|
|
level.sfx_player_grapple stopsounds();
|
|
}
|
|
|
|
sfx_ally_plr_grapple_ss()
|
|
{
|
|
level.sfx_plr_grapple_playing = 1;
|
|
level.grapple = spawn( "script_origin", self.origin );
|
|
level.grapple playsound( "scn_odin_player_grapple_ss", "grappledone" );
|
|
level.grapple waittill( "grappledone" );
|
|
level.sfx_plr_grapple_playing = 0;
|
|
}
|
|
|
|
sfx_ally_ally_grapple()
|
|
{
|
|
self playsound( "scn_odin_ally_grapple" );
|
|
}
|
|
|
|
sfx_ally_plr_grapple_loop_init()
|
|
{
|
|
if ( !isdefined( level.sfx_plr_grapple_lp ) )
|
|
{
|
|
level.sfx_plr_grapple_lp = spawn( "script_origin", self.origin );
|
|
level.sfx_plr_grapple_lp linkto( self );
|
|
}
|
|
|
|
if ( !isdefined( level.sfx_plr_grapple_lt_lp ) )
|
|
{
|
|
level.sfx_plr_grapple_lt_lp = spawn( "script_origin", self.origin );
|
|
level.sfx_plr_grapple_lt_lp linkto( self );
|
|
level.sfx_plr_grapple_lt_lp playloopsound( "scn_odin_player_grapple_lt_lp" );
|
|
}
|
|
}
|
|
|
|
sfx_ally_plr_grapple_loop()
|
|
{
|
|
if ( level.sfx_plr_grapple_loop_playing == 0 )
|
|
{
|
|
level.sfx_plr_grapple_loop_playing = 1;
|
|
level.sfx_plr_grapple_lp playloopsound( "scn_odin_player_grapple_lp" );
|
|
level.sfx_plr_grapple_lt_lp stoploopsound();
|
|
}
|
|
}
|
|
|
|
sfx_ally_plr_grapple_stop()
|
|
{
|
|
if ( level.sfx_plr_grapple_loop_playing == 1 )
|
|
{
|
|
level.sfx_plr_grapple_lt_lp playloopsound( "scn_odin_player_grapple_lt_lp" );
|
|
self playsound( "scn_odin_player_grapple_stop" );
|
|
level.sfx_plr_grapple_lp stoploopsound();
|
|
level.sfx_plr_grapple_loop_playing = 0;
|
|
}
|
|
}
|
|
|
|
sfx_ally_plr_grapple_failed()
|
|
{
|
|
level.sfx_player_grapple stopsounds();
|
|
level.sfx_plr_grapple_lp stoploopsound();
|
|
level.sfx_plr_grapple_lt_lp stoploopsound();
|
|
self playsound( "scn_odin_ally_grapple" );
|
|
}
|
|
|
|
sfx_ally_plr_grapple_success()
|
|
{
|
|
level.player playsound( "scn_odin_grapple_shoot_lr" );
|
|
level.player setclienttriggeraudiozone( "odin_grapple_shoot", 0.15 );
|
|
level.sfx_player_grapple stopsounds();
|
|
level.sfx_plr_grapple_lp stoploopsound();
|
|
level.sfx_plr_grapple_lt_lp stoploopsound();
|
|
wait 1.34;
|
|
level.player setclienttriggeraudiozone( "odin_pressurized", 1 );
|
|
}
|
|
|
|
sfx_distant_explo( var_0 )
|
|
{
|
|
|
|
}
|
|
|
|
sfx_play_shuttle_crash()
|
|
{
|
|
|
|
}
|
|
|
|
sfx_spin_outside_zone()
|
|
{
|
|
wait 0.6;
|
|
level.player setclienttriggeraudiozone( "odin_intro", 17 );
|
|
}
|
|
|
|
sfx_odin_decompress()
|
|
{
|
|
common_scripts\utility::flag_set( "stop_music_pod_explo" );
|
|
level.player setclienttriggeraudiozone( "odin_scuttle_event_2", 1 );
|
|
level.pressurized = 0;
|
|
level.space_intense_breathing = 1;
|
|
level.play_npc_deaths = 0;
|
|
wait 2.04;
|
|
level.player setclienttriggeraudiozone( "odin_after_scuttle", 1 );
|
|
level.space_breathing_enabled = 1;
|
|
}
|
|
|
|
sfx_odin_decompress_explode()
|
|
{
|
|
level.airlockexplode = spawn( "script_origin", ( -160, 46398, -15748 ) );
|
|
level.airlockexplode playsound( "scn_odin_decompression_explode_ss" );
|
|
level.space_intense_breathing = 2;
|
|
level.player setclienttriggeraudiozone( "odin_scuttle", 0.3 );
|
|
wait 0.3;
|
|
|
|
if ( isdefined( level.creak_loop_sound ) )
|
|
level.creak_loop_sound stopsounds();
|
|
|
|
wait 4.7;
|
|
wait 8;
|
|
level.space_intense_breathing = 1;
|
|
}
|
|
|
|
sfx_pressurize_space()
|
|
{
|
|
level.player setclienttriggeraudiozone( "odin_pressurized", 6 );
|
|
level.pressurized = 0;
|
|
}
|
|
|
|
sfx_pressurize_sound()
|
|
{
|
|
common_scripts\utility::flag_set( "fade_intro_music" );
|
|
level.player playsound( "scn_odin_pressurize_lr_ss" );
|
|
wait 3;
|
|
thread sfx_pressurize_space();
|
|
thread sfx_enemy_nodes();
|
|
}
|
|
|
|
sfx_enemy_nodes()
|
|
{
|
|
level.enemyguys = spawn( "script_origin", ( 2915, 47423, 48552 ) );
|
|
level.enemyguys playloopsound( "scn_odin_enemy_entrance_latches" );
|
|
level.enemyguys2 = spawn( "script_origin", ( 3004, 47428, 48635 ) );
|
|
level.enemyguys2 playloopsound( "scn_odin_enemy_entrance_beeps" );
|
|
}
|
|
|
|
sfx_odin_spin_explosion( var_0 )
|
|
{
|
|
var_0 playsound( "scn_odin_spin_explosion" );
|
|
}
|
|
|
|
sfx_odin_rog_dist( var_0 )
|
|
{
|
|
var_1 = spawn( "script_origin", var_0.origin );
|
|
var_1 playsound( "scn_odin_ROD_fire_dist" );
|
|
}
|
|
|
|
sfx_odin_rog_close( var_0 )
|
|
{
|
|
var_0 playsound( "scn_odin_ROD_fire_close" );
|
|
}
|
|
|
|
sfx_end_explo( var_0 )
|
|
{
|
|
switch ( var_0 )
|
|
{
|
|
case 1:
|
|
break;
|
|
case 2:
|
|
break;
|
|
case 3:
|
|
break;
|
|
case 4:
|
|
break;
|
|
case 5:
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
}
|
|
|
|
sfx_shaky_camera_moment()
|
|
{
|
|
level.player playsound( "scn_odin_dist_fire_shake_lr" );
|
|
var_0 = ( 1543, 46455, -15729 );
|
|
var_1 = ( 1779, 46378, -15747 );
|
|
var_2 = ( 1282, 46308, -15694 );
|
|
|
|
if ( level.shaky_moment == 0 )
|
|
{
|
|
wait 0.5;
|
|
var_3 = spawn( "script_origin", var_1 );
|
|
var_3 playsound( "scn_odin_dist_fire_shake_mn_03" );
|
|
level.shaky_moment = 1;
|
|
}
|
|
else if ( level.shaky_moment == 1 )
|
|
{
|
|
wait 0.5;
|
|
var_3 = spawn( "script_origin", var_2 );
|
|
var_3 playsound( "scn_odin_dist_fire_shake_mn_02" );
|
|
level.shaky_moment = 2;
|
|
}
|
|
else
|
|
{
|
|
|
|
}
|
|
}
|
|
|
|
sfx_dist_odin_fire()
|
|
{
|
|
if ( !common_scripts\utility::flag( "sfx_odin_ending" ) )
|
|
{
|
|
if ( level.play_shake_sound == 0 )
|
|
thread common_scripts\utility::play_sound_in_space( "scn_odin_dist_fire_moment", ( 108, 44645, -15751 ) );
|
|
else if ( level.play_shake_sound == 3 )
|
|
thread common_scripts\utility::play_sound_in_space( "scn_odin_dist_fire_moment", ( -11686, 46111, -16126 ) );
|
|
}
|
|
}
|
|
|
|
sfx_shuttle_passby( var_0 )
|
|
{
|
|
wait 5.5;
|
|
var_0 playsound( "scn_odin_shuttle_pass" );
|
|
level.player setclienttriggeraudiozone( "odin_title", 1 );
|
|
}
|
|
|
|
sfx_shaking_logic()
|
|
{
|
|
if ( !common_scripts\utility::flag( "begin_scuttle_ramp" ) )
|
|
{
|
|
common_scripts\utility::flag_set( "begin_scuttle_ramp" );
|
|
level.sound_ramp = 0;
|
|
}
|
|
|
|
level.sound_ramp = level.sound_ramp + 1;
|
|
|
|
switch ( level.sound_ramp )
|
|
{
|
|
case 1:
|
|
level.player playsound( "scn_odin_scuttle_01_lr" );
|
|
break;
|
|
case 3:
|
|
level.player playsound( "scn_odin_scuttle_02_lr" );
|
|
break;
|
|
case 5:
|
|
level.player playsound( "scn_odin_scuttle_03_lr" );
|
|
break;
|
|
case 7:
|
|
level.player playsound( "scn_odin_scuttle_04_lr" );
|
|
break;
|
|
case 9:
|
|
level.player playsound( "scn_odin_scuttle_05_lr" );
|
|
break;
|
|
case 11:
|
|
level.player playsound( "scn_odin_scuttle_06_lr" );
|
|
level.sound_ramp = 0;
|
|
break;
|
|
}
|
|
}
|
|
|
|
sfx_airlock_door()
|
|
{
|
|
wait 10.2;
|
|
var_0 = spawn( "script_origin", ( 3842, 47413, 48544 ) );
|
|
var_0 playsound( "scn_odin_airlock_door_open", "door_sound" );
|
|
var_0 waittill( "door_sound" );
|
|
var_0 delete();
|
|
}
|
|
|
|
sfx_infiltrator_door()
|
|
{
|
|
common_scripts\utility::flag_set( "invader_music_cue" );
|
|
wait 0.4;
|
|
var_0 = spawn( "script_origin", ( 2916, 47423, 48555 ) );
|
|
var_0 playsound( "scn_odin_breach_door_open" );
|
|
thread sfx_infiltrator_foley_01();
|
|
wait 3;
|
|
var_0 delete();
|
|
}
|
|
|
|
sfx_post_infil_door()
|
|
{
|
|
var_0 = spawn( "script_origin", ( 3320, 47269, 48555 ) );
|
|
var_0 playsound( "scn_odin_post_infil_door_open" );
|
|
wait 6;
|
|
var_0 delete();
|
|
}
|
|
|
|
sfx_plr_open_station_door()
|
|
{
|
|
wait 0.5;
|
|
level.player playsound( "scn_odin_station_door_open_plr" );
|
|
}
|
|
|
|
sfx_kyra_open_station_door()
|
|
{
|
|
wait 1.3;
|
|
var_0 = spawn( "script_origin", ( 2149, 46401, -15743 ) );
|
|
var_0 playsound( "scn_odin_station_door_open_kyra" );
|
|
wait 4;
|
|
var_0 delete();
|
|
}
|
|
|
|
sfx_escape_door_open()
|
|
{
|
|
if ( !common_scripts\utility::flag( "escape_door_opened" ) )
|
|
{
|
|
common_scripts\utility::flag_set( "escape_door_opened" );
|
|
var_0 = spawn( "script_origin", ( 3172, 46403, -15743 ) );
|
|
var_0 playsound( "scn_odin_auto_door_open" );
|
|
wait 3;
|
|
var_0 delete();
|
|
common_scripts\utility::flag_clear( "escape_door_opened" );
|
|
}
|
|
}
|
|
|
|
sfx_decomp_door()
|
|
{
|
|
if ( !common_scripts\utility::flag( "escape_door_opened" ) )
|
|
{
|
|
common_scripts\utility::flag_set( "escape_door_opened" );
|
|
var_0 = spawn( "script_origin", ( 498, 46400, -15743 ) );
|
|
var_0 playsound( "scn_odin_scuttle_door_open" );
|
|
level.player playsound( "scn_odin_decompression_lr_ss" );
|
|
thread sfx_odin_decompress();
|
|
wait 3;
|
|
var_0 delete();
|
|
common_scripts\utility::flag_clear( "escape_door_opened" );
|
|
}
|
|
}
|
|
|
|
sfx_interior_door_open( var_0, var_1 )
|
|
{
|
|
if ( !isdefined( var_1 ) )
|
|
var_1 = 0;
|
|
|
|
wait( var_1 );
|
|
|
|
if ( isdefined( var_0 ) && !common_scripts\utility::flag( "escape_door_opened" ) )
|
|
{
|
|
common_scripts\utility::flag_set( "escape_door_opened" );
|
|
var_0 playsound( "scn_odin_auto_door_open" );
|
|
wait 2.3;
|
|
common_scripts\utility::flag_clear( "escape_door_opened" );
|
|
}
|
|
}
|
|
|
|
sfx_interior_door_close( var_0, var_1 )
|
|
{
|
|
if ( !isdefined( var_1 ) )
|
|
var_1 = 0;
|
|
|
|
wait( var_1 );
|
|
|
|
if ( isdefined( var_0 ) && !common_scripts\utility::flag( "auto_door_closed" ) )
|
|
{
|
|
common_scripts\utility::flag_set( "auto_door_closed" );
|
|
|
|
if ( var_0.door_name != "post_infil_auto_door" )
|
|
var_0 playsound( "scn_odin_auto_door_close" );
|
|
|
|
wait 2.2;
|
|
common_scripts\utility::flag_clear( "auto_door_closed" );
|
|
}
|
|
}
|
|
|
|
sfx_infiltrator_foley_01()
|
|
{
|
|
wait 0.7;
|
|
var_0 = spawn( "script_origin", ( 2931, 47420, 48560 ) );
|
|
var_0 playsound( "scn_odin_enemy_entrance_foley_01" );
|
|
thread sfx_infiltrator_foley_02();
|
|
thread sfx_infiltrator_mix();
|
|
wait 5;
|
|
var_0 delete();
|
|
}
|
|
|
|
sfx_infiltrator_foley_02()
|
|
{
|
|
wait 4.3;
|
|
var_0 = spawn( "script_origin", ( 3193, 47481, 48565 ) );
|
|
var_0 playsound( "scn_odin_enemy_entrance_foley_02" );
|
|
thread sfx_infiltrator_foley_03();
|
|
wait 9;
|
|
var_0 delete();
|
|
}
|
|
|
|
sfx_infiltrator_foley_03()
|
|
{
|
|
wait 7.9;
|
|
var_0 = spawn( "script_origin", ( 2931, 47420, 48570 ) );
|
|
var_0 playsound( "scn_odin_enemy_entrance_foley_03" );
|
|
wait 6;
|
|
var_0 delete();
|
|
}
|
|
|
|
sfx_infiltrator_mix()
|
|
{
|
|
wait 2;
|
|
level.player setclienttriggeraudiozone( "odin_infiltrator", 0.1 );
|
|
wait 1;
|
|
level.player setclienttriggeraudiozone( "odin_pressurized", 0.3 );
|
|
}
|
|
|
|
sfx_kyra_hatch( var_0 )
|
|
{
|
|
wait 3;
|
|
var_0 playsound( "scn_odin_hatch_close_kyra" );
|
|
var_1 = spawn( "script_origin", ( 3192, 47424, 48553 ) );
|
|
var_1 playsound( "scn_odin_hatch_close" );
|
|
}
|
|
|
|
sfx_odin_spinup()
|
|
{
|
|
wait 2;
|
|
var_0 = spawn( "script_origin", ( 3951, 46358, -12977 ) );
|
|
var_0 playsound( "emt_odin_on_alarm" );
|
|
var_1 = spawn( "script_origin", ( 3217, 46399, -13043 ) );
|
|
var_1 playsound( "emt_odin_on_alarm" );
|
|
wait 1.5;
|
|
thread emt_scn_move();
|
|
level.player playsound( "scn_odin_enemy_lightsoff" );
|
|
wait 1.5;
|
|
thread sfx_play_alarms();
|
|
}
|
|
|
|
sfx_play_alarms()
|
|
{
|
|
var_0 = spawn( "script_origin", ( 3580, 46437, -13022 ) );
|
|
var_0 playloopsound( "emt_odin_alarm" );
|
|
var_1 = spawn( "script_origin", ( 2974, 46495, -15687 ) );
|
|
var_1 playloopsound( "emt_odin_alarm" );
|
|
var_2 = spawn( "script_origin", ( 2300, 46387, -15698 ) );
|
|
var_2 playloopsound( "emt_odin_alarm" );
|
|
var_3 = spawn( "script_origin", ( 1487, 46380, -15710 ) );
|
|
var_3 playloopsound( "emt_odin_alarm" );
|
|
var_4 = spawn( "script_origin", ( 861, 46386, -15744 ) );
|
|
var_4 playloopsound( "emt_odin_alarm" );
|
|
}
|
|
|
|
emt_scn_move()
|
|
{
|
|
var_0 = spawn( "script_origin", ( 3217, -46399, -13043 ) );
|
|
var_0 playsound( "emt_scn_odin_on" );
|
|
var_0 moveto( ( 3951, 46358, -12977 ), 3 );
|
|
}
|
|
|
|
sfx_scuttle_alarm()
|
|
{
|
|
var_0 = spawn( "script_origin", ( 1308, 46452, -15666 ) );
|
|
var_0 playloopsound( "emt_blackice_flarestack_alarm_03_lp" );
|
|
}
|
|
|
|
sfx_spin_emt()
|
|
{
|
|
wait 2.7;
|
|
var_0 = spawn( "script_origin", ( -2275, 46574, -16077 ) );
|
|
var_1 = spawn( "script_origin", ( -2412, 46190, -16000 ) );
|
|
var_2 = spawn( "script_origin", ( -2341, 46958, -16000 ) );
|
|
var_3 = spawn( "script_origin", ( -2456, 46570, -15936 ) );
|
|
var_4 = spawn( "script_origin", ( -1647, 46636, -16000 ) );
|
|
var_5 = spawn( "script_origin", ( -3067, 46280, -16028 ) );
|
|
var_6 = spawn( "script_origin", ( -2792, 46730, -16000 ) );
|
|
var_0 playsound( "emt_odin_space_spin_01" );
|
|
wait 0.2;
|
|
var_4 playsound( "emt_odin_space_spin_02" );
|
|
wait 4;
|
|
var_2 playsound( "emt_odin_space_spin_03", "spin_01" );
|
|
var_2 waittill( "spin_01" );
|
|
var_1 playsound( "emt_odin_space_spin_04" );
|
|
wait 0.6;
|
|
var_4 playsound( "emt_odin_space_spin_05" );
|
|
wait 2.3;
|
|
var_0 playsound( "emt_odin_space_spin_06", "spin_02" );
|
|
var_0 waittill( "spin_02" );
|
|
var_5 playsound( "emt_odin_space_spin_07" );
|
|
wait 0.5;
|
|
var_1 playsound( "emt_odin_space_spin_08" );
|
|
wait 1;
|
|
var_2 playsound( "emt_odin_space_spin_09", "spin_03" );
|
|
var_2 waittill( "spin_03" );
|
|
var_6 playsound( "emt_odin_space_mtl_creak" );
|
|
wait 1;
|
|
var_5 playsound( "emt_odin_space_mtl", "spin_04" );
|
|
var_5 waittill( "spin_04" );
|
|
var_5 playsound( "emt_odin_space_mtl_creak" );
|
|
wait 1;
|
|
var_6 playsound( "emt_odin_space_mtl", "spin_05" );
|
|
var_6 waittill( "spin_05" );
|
|
var_5 playsound( "emt_odin_space_mtl_creak" );
|
|
wait 1;
|
|
var_6 playsound( "emt_odin_space_mtl" );
|
|
}
|
|
|
|
sfx_sat_approach_plr()
|
|
{
|
|
level.player playsound( "scn_odin_sat_plr_approach_foley" );
|
|
}
|
|
|
|
sfx_sat_approach_kyra()
|
|
{
|
|
level.ally playsound( "scn_odin_sat_kyra_approach_foley" );
|
|
}
|
|
|
|
sfx_rcs_open()
|
|
{
|
|
level.player playsound( "scn_odin_sat_plr_use" );
|
|
level.ally playsound( "scn_odin_sat_kyra_use_foley" );
|
|
}
|
|
|
|
sfx_rcs_spark( var_0 )
|
|
{
|
|
common_scripts\utility::play_sound_in_space( "scn_odin_sat_spark", var_0 );
|
|
}
|
|
|
|
sfx_set_ending_flag()
|
|
{
|
|
if ( !common_scripts\utility::flag( "sfx_odin_ending" ) )
|
|
common_scripts\utility::flag_set( "sfx_odin_ending" );
|
|
}
|
|
|
|
sfx_rcs_destr( var_0, var_1, var_2 )
|
|
{
|
|
wait( var_2 );
|
|
|
|
switch ( var_1 )
|
|
{
|
|
case 1:
|
|
var_0 playsound( "scn_odin_rcs_burst" );
|
|
break;
|
|
case 2:
|
|
var_0 playsound( "scn_odin_rcs_burst" );
|
|
wait 0.1;
|
|
var_0 playsound( "scn_odin_rcs_fireball" );
|
|
break;
|
|
case 3:
|
|
var_0 playsound( "scn_odin_rcs_ignite" );
|
|
wait 0.4;
|
|
var_0 playloopsound( "scn_odin_rcs_fire_lp_01" );
|
|
break;
|
|
case 4:
|
|
var_0 playsound( "scn_odin_rcs_ignite" );
|
|
wait 0.3;
|
|
var_0 playsound( "scn_odin_rcs_fireball" );
|
|
break;
|
|
case 5:
|
|
var_0 playsound( "scn_odin_rcs_fireball" );
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
}
|
|
|
|
sfx_rcs_damage( var_0 )
|
|
{
|
|
|
|
}
|
|
|
|
sfx_sat_first_explosion()
|
|
{
|
|
level.player playsound( "scn_odin_sat_expl_01_lr" );
|
|
var_0 = getent( "fx_sat_rcs_damage_1", "script_noteworthy" );
|
|
var_0 stoploopsound( "scn_odin_rcs_fire_lp_01" );
|
|
level.player playsound( "scn_odin_sat_plr_expl_foley_01" );
|
|
thread sfx_sat_big_fire_lp( var_0 );
|
|
}
|
|
|
|
sfx_sat_big_fire_lp( var_0 )
|
|
{
|
|
wait 1.5;
|
|
var_0 playsound( "scn_odin_rcs_fireball_dist" );
|
|
wait 0.3;
|
|
var_0 playloopsound( "scn_odin_rcs_fire_lp_02" );
|
|
|
|
while ( !common_scripts\utility::flag( "sat_second_expl" ) )
|
|
{
|
|
wait( randomfloatrange( 1.5, 2.7 ) );
|
|
var_0 playsound( "scn_odin_rcs_fireball_dist" );
|
|
}
|
|
}
|
|
|
|
sfx_sat_second_explosion()
|
|
{
|
|
common_scripts\utility::flag_set( "sat_second_expl" );
|
|
level.player playsound( "scn_odin_sat_expl_02_lr" );
|
|
var_0 = getent( "fx_sat_rcs_damage_1", "script_noteworthy" );
|
|
var_0 stoploopsound( "scn_odin_rcs_fire_lp_02" );
|
|
level.player playsound( "scn_odin_sat_plr_expl_foley_02" );
|
|
wait 3;
|
|
thread sfx_sat_falling();
|
|
}
|
|
|
|
sfx_sat_falling()
|
|
{
|
|
level.player playsound( "scn_odin_sat_falling_lr" );
|
|
thread sfx_sat_disintegration();
|
|
wait 2;
|
|
wait 6.85;
|
|
level.player playsound( "scn_odin_sat_panel_lsrs" );
|
|
}
|
|
|
|
sfx_sat_disintegration()
|
|
{
|
|
wait 13.3;
|
|
level.player playsound( "scn_odin_sat_disintegration_lr" );
|
|
}
|
|
|
|
sfx_switch_ambzone_to_end()
|
|
{
|
|
level.player setclienttriggeraudiozone( "odin_end", 1 );
|
|
}
|
|
|
|
sfx_close_first_door( var_0 )
|
|
{
|
|
var_0 playsound( "scn_odin_first_door_close" );
|
|
}
|
|
|
|
sfx_satellite_thruster_loop( var_0 )
|
|
{
|
|
if ( common_scripts\utility::flag( "decomp_done" ) )
|
|
{
|
|
var_1 = var_0 getorigin();
|
|
common_scripts\utility::flag_clear( "stop_sat_thrust_loop" );
|
|
var_2 = spawn( "script_origin", var_1 );
|
|
var_2 playloopsound( "scn_odin_sat_thruster_lp", var_2 );
|
|
common_scripts\utility::flag_wait( "stop_sat_thrust_loop" );
|
|
common_scripts\utility::play_sound_in_space( "scn_odin_sat_thruster_flareout", var_1 );
|
|
wait 0.4;
|
|
var_2 stoploopsound();
|
|
wait 0.2;
|
|
var_2 delete();
|
|
}
|
|
}
|
|
|
|
sfx_satellite_lat_thruster_loop( var_0 )
|
|
{
|
|
if ( common_scripts\utility::flag( "decomp_done" ) )
|
|
{
|
|
var_1 = var_0 getorigin();
|
|
common_scripts\utility::flag_clear( "stop_sat_lat_thrust_loop" );
|
|
var_2 = spawn( "script_origin", var_1 );
|
|
var_2 playloopsound( "scn_odin_sat_thruster_lp", var_2 );
|
|
common_scripts\utility::flag_wait( "stop_sat_lat_thrust_loop" );
|
|
common_scripts\utility::play_sound_in_space( "scn_odin_sat_thruster_flareout", var_1 );
|
|
wait 0.4;
|
|
var_2 stoploopsound();
|
|
wait 0.2;
|
|
var_2 delete();
|
|
}
|
|
}
|
|
|
|
sfx_satellite_thruster_initial_burst( var_0 )
|
|
{
|
|
if ( common_scripts\utility::flag( "decomp_done" ) )
|
|
{
|
|
var_1 = var_0 getorigin();
|
|
common_scripts\utility::play_sound_in_space( "scn_odin_sat_thruster_fire", var_1 );
|
|
}
|
|
}
|
|
|
|
sfx_odin_enemies()
|
|
{
|
|
var_0 = spawn( "script_origin", ( 2915, 47423, 48552 ) );
|
|
var_0 playsound( "scn_odin_enemy_entrance_door" );
|
|
thread sfx_enemies_stop();
|
|
}
|
|
|
|
sfx_enemies_stop()
|
|
{
|
|
level.player setclienttriggeraudiozone( "odin_pressurized_turn_down_enemies", 0.5 );
|
|
wait 0.6;
|
|
level.enemyguys stoploopsound();
|
|
level.enemyguys2 stoploopsound();
|
|
wait 0.1;
|
|
level.player setclienttriggeraudiozone( "odin_pressurized", 1 );
|
|
}
|
|
|
|
sfx_rog_impact()
|
|
{
|
|
if ( level.no_impact == 0 )
|
|
thread common_scripts\utility::play_sound_in_space( "scn_odin_ROG_impact_temp", ( -10592, 29280, -12464 ) );
|
|
}
|
|
|
|
sfx_scuttle_pre_decomp()
|
|
{
|
|
wait 5.1;
|
|
level.player setclienttriggeraudiozone( "odin_scuttle_event", 3 );
|
|
level.player playsound( "scn_odin_scuttle_ramp" );
|
|
wait 1.5;
|
|
level.no_impact = 1;
|
|
level.creak_loop_sound = spawn( "script_origin", self.origin );
|
|
level.creak_loop_sound playsound( "scn_odin_scuttle_creak_lr" );
|
|
common_scripts\utility::flag_wait( "odin_start_spin_decomp_real" );
|
|
common_scripts\utility::flag_wait( "stop_music_pod_explo" );
|
|
}
|
|
|
|
sfx_spin_debris_passby()
|
|
{
|
|
var_0 = spawn( "script_origin", ( -2404, 46646, -15904 ) );
|
|
wait 5.3;
|
|
wait 2.16;
|
|
wait 4.51;
|
|
var_0 playsound( "scn_odin_spin_debris_03" );
|
|
var_0 moveto( ( -2610, 46210, -15895 ), 3.5 );
|
|
wait 10;
|
|
var_0 delete();
|
|
}
|
|
|
|
sfx_continued_shaking()
|
|
{
|
|
while ( !common_scripts\utility::flag( "stop_music_pod_explo" ) )
|
|
{
|
|
thread sfx_shaking_logic();
|
|
wait( randomfloatrange( 0.8, 2.4 ) );
|
|
}
|
|
}
|
|
|
|
sfx_play_weapon_up()
|
|
{
|
|
|
|
}
|
|
|
|
sfx_escape_destruction_fire_puffs()
|
|
{
|
|
var_0 = spawn( "script_origin", ( 1274.91, 46312.1, -15672.1 ) );
|
|
var_0 playloopsound( "emt_fire_puff_lp" );
|
|
var_1 = spawn( "script_origin", ( 2633.08, 46487, -15671.2 ) );
|
|
var_1 playloopsound( "emt_fire_puff_lp" );
|
|
var_2 = spawn( "script_origin", ( 1866.58, 46464.8, -15642.9 ) );
|
|
var_2 playloopsound( "emt_fire_puff_lp" );
|
|
var_3 = spawn( "script_origin", ( 2390.09, 46473.2, -15826.6 ) );
|
|
var_3 playloopsound( "emt_fire_puff_lp" );
|
|
var_4 = spawn( "script_origin", ( 2607.26, 46333.9, -15746.2 ) );
|
|
var_4 playloopsound( "emt_fire_puff_lp" );
|
|
var_5 = spawn( "script_origin", ( 1808.79, 46317.1, -15820.9 ) );
|
|
var_5 playloopsound( "emt_fire_puff_lp" );
|
|
var_6 = spawn( "script_origin", ( 1369.75, 46487.5, -15816.4 ) );
|
|
var_6 playloopsound( "emt_fire_puff_lp" );
|
|
|
|
if ( maps\_utility::is_gen4() )
|
|
thread sfx_gen4_fire_puff();
|
|
|
|
common_scripts\utility::flag_wait( "stop_music_pod_explo" );
|
|
var_0 stoploopsound();
|
|
var_1 stoploopsound();
|
|
var_2 stoploopsound();
|
|
var_3 stoploopsound();
|
|
var_4 stoploopsound();
|
|
var_5 stoploopsound();
|
|
var_6 stoploopsound();
|
|
wait 1;
|
|
var_0 delete();
|
|
var_1 delete();
|
|
var_2 delete();
|
|
var_3 delete();
|
|
var_4 delete();
|
|
var_5 delete();
|
|
var_6 delete();
|
|
}
|
|
|
|
sfx_gen4_fire_puff()
|
|
{
|
|
var_0 = spawn( "script_origin", ( 788.89, 46515.9, -15763.8 ) );
|
|
var_0 playloopsound( "emt_fire_puff_lp" );
|
|
common_scripts\utility::flag_wait( "stop_music_pod_explo" );
|
|
var_0 stoploopsound();
|
|
var_0 delete();
|
|
}
|
|
|
|
sfx_phantom_door_close()
|
|
{
|
|
wait 1;
|
|
var_0 = spawn( "script_origin", ( 2605, 46351, -15747 ) );
|
|
var_0 playsound( "scn_odin_auto_door_close" );
|
|
wait 2;
|
|
var_0 delete();
|
|
}
|