177 lines
4.2 KiB
Plaintext
177 lines
4.2 KiB
Plaintext
// IW6 GSC SOURCE
|
|
// Generated by https://github.com/xensik/gsc-tool
|
|
|
|
saveplayerweaponstatepersistent( var_0, var_1 )
|
|
{
|
|
if ( !isdefined( var_1 ) )
|
|
var_1 = 0;
|
|
|
|
level.player endon( "death" );
|
|
|
|
if ( level.player.health == 0 )
|
|
return;
|
|
|
|
var_2 = level.player getcurrentprimaryweapon();
|
|
|
|
if ( !isdefined( var_2 ) || var_2 == "none" )
|
|
{
|
|
|
|
}
|
|
|
|
game["weaponstates"][var_0]["current"] = var_2;
|
|
var_3 = level.player getcurrentoffhand();
|
|
game["weaponstates"][var_0]["offhand"] = var_3;
|
|
game["weaponstates"][var_0]["list"] = [];
|
|
var_4 = common_scripts\utility::array_combine( level.player getweaponslistprimaries(), level.player getweaponslistoffhands() );
|
|
|
|
for ( var_5 = 0; var_5 < var_4.size; var_5++ )
|
|
{
|
|
game["weaponstates"][var_0]["list"][var_5]["name"] = var_4[var_5];
|
|
|
|
if ( var_1 )
|
|
{
|
|
game["weaponstates"][var_0]["list"][var_5]["clip"] = level.player getweaponammoclip( var_4[var_5] );
|
|
game["weaponstates"][var_0]["list"][var_5]["stock"] = level.player getweaponammostock( var_4[var_5] );
|
|
}
|
|
}
|
|
}
|
|
|
|
restoreplayerweaponstatepersistent( var_0, var_1, var_2 )
|
|
{
|
|
var_3 = common_scripts\utility::ter_op( isdefined( var_2 ) && var_2, ::switchtoweaponimmediate, ::switchtoweapon );
|
|
|
|
if ( !isdefined( var_1 ) )
|
|
var_1 = 0;
|
|
|
|
if ( !isdefined( game["weaponstates"] ) )
|
|
return 0;
|
|
|
|
if ( !isdefined( game["weaponstates"][var_0] ) )
|
|
return 0;
|
|
|
|
level.player takeallweapons();
|
|
|
|
for ( var_4 = 0; var_4 < game["weaponstates"][var_0]["list"].size; var_4++ )
|
|
{
|
|
var_5 = game["weaponstates"][var_0]["list"][var_4]["name"];
|
|
|
|
if ( var_5 == "c4" )
|
|
continue;
|
|
|
|
if ( var_5 == "claymore" )
|
|
continue;
|
|
|
|
level.player giveweapon( var_5 );
|
|
level.player givemaxammo( var_5 );
|
|
|
|
if ( var_1 )
|
|
{
|
|
level.player setweaponammoclip( var_5, game["weaponstates"][var_0]["list"][var_4]["clip"] );
|
|
level.player setweaponammostock( var_5, game["weaponstates"][var_0]["list"][var_4]["stock"] );
|
|
}
|
|
}
|
|
|
|
level.player switchtooffhand( game["weaponstates"][var_0]["offhand"] );
|
|
level.player call [[ var_3 ]]( game["weaponstates"][var_0]["current"] );
|
|
return 1;
|
|
}
|
|
|
|
setdefaultactionslot()
|
|
{
|
|
self setactionslot( 1, "" );
|
|
self setactionslot( 2, "" );
|
|
self setactionslot( 3, "altMode" );
|
|
self setactionslot( 4, "" );
|
|
}
|
|
|
|
init_player()
|
|
{
|
|
setdefaultactionslot();
|
|
self takeallweapons();
|
|
}
|
|
|
|
get_loadout()
|
|
{
|
|
if ( isdefined( level.loadout ) )
|
|
return level.loadout;
|
|
|
|
return level.script;
|
|
}
|
|
|
|
campaign( var_0 )
|
|
{
|
|
level._lc = var_0;
|
|
}
|
|
|
|
persist( var_0, var_1, var_2 )
|
|
{
|
|
var_3 = get_loadout();
|
|
|
|
if ( var_0 != var_3 )
|
|
return;
|
|
|
|
if ( !isdefined( game["previous_map"] ) )
|
|
return;
|
|
|
|
level._lc_persists = 1;
|
|
|
|
if ( isdefined( var_2 ) )
|
|
level.player setoffhandsecondaryclass( var_2 );
|
|
|
|
restoreplayerweaponstatepersistent( get_loadout(), 1 );
|
|
level.has_loadout = 1;
|
|
}
|
|
|
|
loadout( var_0, var_1, var_2, var_3, var_4, var_5, var_6 )
|
|
{
|
|
if ( isdefined( var_0 ) )
|
|
{
|
|
var_7 = get_loadout();
|
|
|
|
if ( var_0 != var_7 || isdefined( level._lc_persists ) )
|
|
return;
|
|
}
|
|
|
|
if ( isdefined( var_1 ) )
|
|
{
|
|
level.default_weapon = var_1;
|
|
level.player giveweapon( var_1 );
|
|
}
|
|
|
|
if ( isdefined( var_6 ) )
|
|
level.player setoffhandsecondaryclass( var_6 );
|
|
|
|
if ( isdefined( var_2 ) )
|
|
level.player giveweapon( var_2 );
|
|
|
|
if ( isdefined( var_3 ) )
|
|
level.player giveweapon( var_3 );
|
|
|
|
if ( isdefined( var_4 ) )
|
|
level.player giveweapon( var_4 );
|
|
|
|
level.player switchtoweapon( var_1 );
|
|
|
|
if ( isdefined( var_5 ) )
|
|
level.player setviewmodel( var_5 );
|
|
|
|
level.campaign = level._lc;
|
|
level._lc = undefined;
|
|
level.has_loadout = 1;
|
|
}
|
|
|
|
loadout_complete()
|
|
{
|
|
level.loadoutcomplete = 1;
|
|
level notify( "loadout complete" );
|
|
}
|
|
|
|
default_loadout_if_notset()
|
|
{
|
|
if ( level.has_loadout )
|
|
return;
|
|
|
|
loadout( undefined, "kriss", undefined, "flash_grenade", "fraggrenade", "viewmodel_base_viewhands", "flash" );
|
|
level.map_without_loadout = 1;
|
|
}
|