156 lines
4.3 KiB
Plaintext
156 lines
4.3 KiB
Plaintext
// IW6 GSC SOURCE
|
|
// Generated by https://github.com/xensik/gsc-tool
|
|
|
|
intro_sequence_precache()
|
|
{
|
|
common_scripts\utility::flag_init( "intro_sequence_complete" );
|
|
|
|
switch ( level.script )
|
|
{
|
|
case "mp_alien_town":
|
|
town_intro_precache();
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
}
|
|
|
|
play_intro_sequence( var_0 )
|
|
{
|
|
switch ( level.script )
|
|
{
|
|
case "mp_alien_town":
|
|
level thread alien_town_intro( var_0 );
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
}
|
|
|
|
town_intro_precache()
|
|
{
|
|
alien_town_intro_precache_props();
|
|
alien_town_intro_precache_characters();
|
|
}
|
|
|
|
alien_town_intro_precache_characters()
|
|
{
|
|
precachempanim( "alien_town_intro_boss" );
|
|
precachempanim( "alien_town_intro_pilot" );
|
|
}
|
|
|
|
alien_town_intro_precache_props()
|
|
{
|
|
precachempanim( "alien_town_intro_chopper" );
|
|
precachempanim( "alien_town_intro_drill" );
|
|
}
|
|
|
|
#using_animtree("animated_props");
|
|
|
|
alien_town_intro( var_0 )
|
|
{
|
|
level waittill( "introscreen_over" );
|
|
var_1 = ( 2830.46, -398.027, 707.026 );
|
|
var_2 = getent( "helicoptercoll", "targetname" );
|
|
var_3 = spawnhelicopter( var_0, var_1, var_2.angles + ( 0, 180, 0 ), "nh90_alien_intro", "tag_origin_vehicle" );
|
|
var_4 = spawn( "script_model", var_1 );
|
|
var_4.angles = var_2.angles;
|
|
var_4 setmodel( "vehicle_nh90_interior2" );
|
|
thread sfx_intro_heli_takeoff( var_3 );
|
|
var_3 setmodel( "tag_origin_vehicle" );
|
|
level.intro_heli = var_4;
|
|
var_5 = spawn_model( "mp_body_us_rangers_assault_a_urban", var_4, "TAG_GUY1", ( 0, 0, 0 ) );
|
|
var_5 setmodel( "mp_body_us_rangers_assault_a_urban" );
|
|
var_6 = spawn_model( "head_mp_head_a", var_5, "J_spine4", ( 0, 0, 0 ) );
|
|
var_7 = spawn_model( "mp_body_us_rangers_assault_a_urban", var_4, "tag_driver", ( 0, 0, 0 ) );
|
|
var_8 = spawn_model( "head_mp_head_a", var_7, "J_spine4", ( 0, 0, 0 ) );
|
|
var_9 = spawn_model( "mp_laser_drill", var_4, "TAG_GUY1", ( 0, 0, 0 ) );
|
|
thread sfx_intro_npc_foley( var_5 );
|
|
var_4 scriptmodelplayanimdeltamotion( "alien_town_intro_chopper" );
|
|
var_7 scriptmodelplayanim( "alien_town_intro_pilot" );
|
|
var_8 scriptmodelplayanim( "alien_town_intro_pilot" );
|
|
var_5 scriptmodelplayanim( "alien_town_intro_boss" );
|
|
var_6 scriptmodelplayanim( "alien_town_intro_boss" );
|
|
var_9 scriptmodelplayanim( "alien_town_intro_drill" );
|
|
thread sfx_intro_heli_drop_drill( var_9 );
|
|
var_2 thread wait_to_delete();
|
|
wait( getanimlength( %alien_town_intro_drill ) );
|
|
var_9 scriptmodelclearanim();
|
|
var_9 delete();
|
|
level thread mp_alien_town_intro_drill_setup();
|
|
level thread kill_heli( var_3 );
|
|
wait( getanimlength( %alien_town_intro_chopper ) );
|
|
var_7 scriptmodelclearanim();
|
|
var_8 scriptmodelclearanim();
|
|
var_5 scriptmodelclearanim();
|
|
var_6 scriptmodelclearanim();
|
|
var_4 scriptmodelclearanim();
|
|
var_5 delete();
|
|
var_6 delete();
|
|
var_7 delete();
|
|
var_8 delete();
|
|
var_4 delete();
|
|
}
|
|
|
|
wait_to_delete()
|
|
{
|
|
level endon( "game_ended" );
|
|
var_0 = 16.5;
|
|
wait( var_0 );
|
|
self delete();
|
|
}
|
|
|
|
kill_heli( var_0 )
|
|
{
|
|
wait 10;
|
|
var_0 vehicle_setspeed( 50, 10 );
|
|
var_0 setvehgoalpos( var_0.origin + ( 0, 0, 1600 ) );
|
|
wait 10;
|
|
var_0 delete();
|
|
}
|
|
|
|
spawn_model( var_0, var_1, var_2, var_3 )
|
|
{
|
|
var_4 = spawn( "script_model", ( 0, 0, 0 ) );
|
|
var_4 setmodel( var_0 );
|
|
var_4.origin = var_1 gettagorigin( var_2 );
|
|
var_4.angles = var_1 gettagangles( var_2 ) + var_3;
|
|
var_4 linkto( var_1, var_2 );
|
|
return var_4;
|
|
}
|
|
|
|
intro_sequence_enabled()
|
|
{
|
|
if ( maps\mp\alien\_utility::is_chaos_mode() )
|
|
return 0;
|
|
|
|
return getdvarint( "scr_alien_intro", 1 ) == 1;
|
|
}
|
|
|
|
mp_alien_town_intro_drill_setup()
|
|
{
|
|
level.initial_drill_origin = ( 2834.27, -243.002, 524.068 );
|
|
level.initial_drill_angles = ( 0.995, -103.877, 1.287 );
|
|
level notify( "spawn_intro_drill" );
|
|
wait 8;
|
|
common_scripts\utility::flag_set( "intro_sequence_complete" );
|
|
}
|
|
|
|
sfx_intro_heli_takeoff( var_0 )
|
|
{
|
|
var_0 vehicle_turnengineoff();
|
|
var_0 playsound( "alien_heli_intro_takeoff" );
|
|
}
|
|
|
|
sfx_intro_heli_drop_drill( var_0 )
|
|
{
|
|
wait( getanimlength( %alien_town_intro_drill ) - 0.5 );
|
|
var_0 playsound( "alien_heli_drill_drop" );
|
|
}
|
|
|
|
sfx_intro_npc_foley( var_0 )
|
|
{
|
|
wait 2.53;
|
|
var_0 playsound( "alien_heli_npc_foley" );
|
|
}
|