652 lines
20 KiB
Plaintext
652 lines
20 KiB
Plaintext
// IW6 GSC SOURCE
|
|
// Generated by https://github.com/xensik/gsc-tool
|
|
|
|
locker_pillage_functions_init()
|
|
{
|
|
setdvar( "scr_alien_locker_pillage", 1 );
|
|
level.locker_build_pillageitem_array_func = ::build_locker_pillageitem_arrays;
|
|
level.get_hintstring_for_item_pickup_func = ::get_hintstring_for_locker_item_pickup;
|
|
level.get_hintstring_for_pillaged_item_func = ::get_locker_hintstring_for_pillaged_item;
|
|
level.locker_drop_item_on_ground_func = ::drop_locker_pillage_item_on_ground;
|
|
|
|
if ( !isdefined( level.custom_lockerpillageinitfunc ) )
|
|
level.custom_lockerpillageinitfunc = ::locker_pillage_init;
|
|
|
|
if ( !isdefined( level.level_specific_pillage_show_func ) )
|
|
level.level_specific_pillage_show_func = ::default_level_specific_pillage_show_func;
|
|
|
|
level.locker_key_check_func = ::locker_key_check;
|
|
}
|
|
|
|
locker_pillage_init()
|
|
{
|
|
level.pillageinfo.locker_key_model = "vehicle_pickup_keys";
|
|
level.pillageinfo.locker_attachment = 0;
|
|
level.pillageinfo.locker_explosive = 0;
|
|
level.pillageinfo.locker_leash = 0;
|
|
level.pillageinfo.locker_maxammo = 0;
|
|
level.pillageinfo.locker_specialammo = 0;
|
|
level.pillageinfo.locker_money = 0;
|
|
level.pillageinfo.locker_soflam = 0;
|
|
level.pillageinfo.locker_trophy = 0;
|
|
level.pillageinfo.locker_locker_weapon = 100;
|
|
var_0 = common_scripts\utility::getstructarray( "pillage_area", "targetname" );
|
|
|
|
foreach ( var_8, var_2 in var_0 )
|
|
{
|
|
if ( !isdefined( level.pillage_areas[var_8] ) )
|
|
level.pillage_areas[var_8] = [];
|
|
|
|
level.pillage_areas[var_8]["locker"] = [];
|
|
var_3 = common_scripts\utility::getstructarray( var_2.target, "targetname" );
|
|
|
|
foreach ( var_5 in var_3 )
|
|
{
|
|
if ( isdefined( var_5.script_noteworthy ) )
|
|
{
|
|
var_6 = strtok( var_5.script_noteworthy, "," );
|
|
var_5.pillage_type = var_6[0];
|
|
|
|
if ( isdefined( var_6[1] ) )
|
|
var_5.script_model = var_6[1];
|
|
|
|
switch ( var_5.pillage_type )
|
|
{
|
|
case "locker":
|
|
level.pillage_areas[var_8]["locker"][level.pillage_areas[var_8]["locker"].size] = var_5;
|
|
var_5.is_locker = 1;
|
|
var_5.drop_override_func = ::drop_locker_pillage_item_on_ground;
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
foreach ( var_8, var_2 in level.pillage_areas )
|
|
{
|
|
level maps\mp\alien\_pillage::create_pillage_spots( level.pillage_areas[var_8]["locker"] );
|
|
level set_locker_hint_strings( level.pillage_areas[var_8]["locker"] );
|
|
}
|
|
|
|
maps\mp\alien\_pillage::build_pillageitem_arrays( "locker" );
|
|
create_gun_with_max_attachments_list();
|
|
}
|
|
|
|
debug_locker_weapons()
|
|
{
|
|
wait 10;
|
|
|
|
foreach ( var_1 in level.max_weapon_list )
|
|
{
|
|
|
|
}
|
|
|
|
foreach ( var_1 in level.max_weapon_list_xmags )
|
|
{
|
|
|
|
}
|
|
}
|
|
|
|
set_locker_hint_strings( var_0 )
|
|
{
|
|
foreach ( var_3, var_2 in var_0 )
|
|
var_2.pillage_trigger sethintstring( &"ALIEN_PILLAGE_LOCKER_OPEN_LOCKER" );
|
|
}
|
|
|
|
default_level_specific_pillage_show_func( var_0, var_1, var_2 )
|
|
{
|
|
switch ( var_1 )
|
|
{
|
|
case "searched":
|
|
if ( isdefined( var_2 ) )
|
|
{
|
|
switch ( var_2.type )
|
|
{
|
|
case "locker_key":
|
|
var_3 = maps\mp\alien\_pillage::get_hintstring_for_pillaged_item( var_2.type );
|
|
var_0 thread maps\mp\alien\_pillage::show_pillage_text( var_3 );
|
|
self.pillage_trigger setmodel( level.pillageinfo.locker_key_model );
|
|
var_3 = maps\mp\alien\_pillage::get_hintstring_for_item_pickup( var_2.type );
|
|
self.pillage_trigger sethintstring( var_3 );
|
|
self.pillage_trigger makeusable();
|
|
self.pillageinfo.type = "locker_key";
|
|
self.pillageinfo.ammo = 1;
|
|
level thread maps\mp\alien\_music_and_dialog::playvoforpillage( var_0 );
|
|
break;
|
|
case "locker_weapon":
|
|
var_3 = maps\mp\alien\_pillage::get_hintstring_for_pillaged_item( var_2.type );
|
|
var_0 thread maps\mp\alien\_pillage::show_pillage_text( var_3 );
|
|
|
|
if ( var_0 maps\mp\alien\_persistence::is_upgrade_enabled( "master_scavenger_upgrade" ) )
|
|
var_4 = common_scripts\utility::array_combine( level.max_weapon_list, level.max_weapon_list_xmags );
|
|
else
|
|
var_4 = level.max_weapon_list;
|
|
|
|
var_5 = common_scripts\utility::random( var_4 );
|
|
var_6 = 0;
|
|
|
|
while ( isdefined( var_0.last_locker_weapon ) && var_0.last_locker_weapon == var_5.model )
|
|
{
|
|
var_5 = common_scripts\utility::random( var_4 );
|
|
var_6++;
|
|
|
|
if ( var_6 % 10 == 0 )
|
|
break;
|
|
}
|
|
|
|
var_0.last_locker_weapon = var_5.model;
|
|
self.pillage_trigger setmodel( var_5.model );
|
|
var_3 = maps\mp\alien\_pillage::get_hintstring_for_item_pickup( var_5.model );
|
|
self.pillage_trigger sethintstring( var_3 );
|
|
self.pillage_trigger makeusable();
|
|
self.pillageinfo.type = "locker_weapon";
|
|
self.pillageinfo.ammo = 1;
|
|
self.pillageinfo.weapon_item = var_5;
|
|
self.pillageinfo.weapon_string = var_5.weapon_string;
|
|
maps\mp\_utility::delaythread( 1.0, maps\mp\alien\_music_and_dialog::playvoforpillage, var_0 );
|
|
break;
|
|
}
|
|
}
|
|
|
|
break;
|
|
case "pick_up":
|
|
if ( isdefined( self.pillageinfo ) )
|
|
{
|
|
switch ( self.pillageinfo.type )
|
|
{
|
|
case "locker_key":
|
|
var_0 try_to_give_player_the_locker_key( self.pillage_trigger );
|
|
break;
|
|
case "locker_weapon":
|
|
var_7 = var_0 try_to_give_player_locker_weapon( self );
|
|
|
|
if ( var_7 )
|
|
maps\mp\alien\_pillage::delete_pillage_trigger();
|
|
|
|
break;
|
|
}
|
|
}
|
|
|
|
break;
|
|
}
|
|
}
|
|
|
|
try_to_give_player_locker_weapon( var_0 )
|
|
{
|
|
var_1 = var_0.pillageinfo.weapon_string;
|
|
var_2 = spawnstruct();
|
|
var_2.data["cost"] = 0;
|
|
var_2.item_ref = "weapon_" + var_1;
|
|
|
|
if ( maps\mp\alien\_collectibles::cangive_weapon( var_2 ) )
|
|
{
|
|
var_3 = 0;
|
|
var_4 = 0;
|
|
var_5 = 0;
|
|
|
|
if ( maps\mp\alien\_collectibles::has_weapon_variation( var_1 ) )
|
|
{
|
|
var_6 = maps\mp\alien\_collectibles::get_weapon_ref( var_1 );
|
|
|
|
if ( isdefined( var_6 ) )
|
|
{
|
|
if ( isdefined( level.locker_ark_check_func ) )
|
|
var_2.item_ref = [[ level.locker_ark_check_func ]]( var_6, var_1 );
|
|
|
|
var_4 = self getweaponammoclip( var_6 );
|
|
var_5 = self getweaponammostock( var_6 );
|
|
self takeweapon( var_6 );
|
|
var_7 = maps\mp\alien\_utility::getrawbaseweaponname( var_6 );
|
|
|
|
if ( maps\mp\alien\_utility::player_has_specialized_ammo( var_7 ) )
|
|
{
|
|
if ( isdefined( self.stored_ammo[var_7] ) )
|
|
var_3 = 1;
|
|
}
|
|
}
|
|
}
|
|
|
|
self.locker_weapon = undefined;
|
|
maps\mp\alien\_collectibles::give_weapon( var_2, 1 );
|
|
thread give_player_max_ammo( var_3, var_4, var_5 );
|
|
return 1;
|
|
}
|
|
|
|
return 0;
|
|
}
|
|
|
|
give_player_max_ammo( var_0, var_1, var_2 )
|
|
{
|
|
self waittill( "weapon_change" );
|
|
var_3 = self.locker_weapon;
|
|
var_4 = weaponclipsize( var_3 );
|
|
var_5 = maps\mp\alien\_utility::return_nerf_scaled_ammo( var_3 );
|
|
|
|
if ( isdefined( var_3 ) && var_0 )
|
|
{
|
|
var_6 = maps\mp\alien\_utility::getrawbaseweaponname( var_3 );
|
|
self.stored_ammo[var_6].ammostock = var_5;
|
|
self.stored_ammo[var_6].clipammo = var_4;
|
|
self setweaponammoclip( var_3, var_1 );
|
|
self setweaponammostock( var_3, var_2 );
|
|
}
|
|
else
|
|
{
|
|
self setweaponammoclip( var_3, var_4 );
|
|
self setweaponammostock( var_3, var_5 );
|
|
}
|
|
}
|
|
|
|
try_to_give_player_the_locker_key( var_0 )
|
|
{
|
|
if ( isdefined( self.locker_key ) )
|
|
maps\mp\_utility::setlowermessage( "max_leash", &"ALIEN_PILLAGE_LOCKER_LOCKER_KEY_MAX", 3 );
|
|
else
|
|
{
|
|
self.locker_key = 1;
|
|
self playlocalsound( "plr_keys_pckup" );
|
|
self setclientomnvar( "ui_alien_locker_key", 1 );
|
|
|
|
if ( maps\mp\alien\_utility::alien_mode_has( "outline" ) )
|
|
maps\mp\alien\_outline_proto::remove_from_outline_pillage_watch_list( var_0 );
|
|
|
|
var_0 delete();
|
|
}
|
|
}
|
|
|
|
build_locker_pillageitem_arrays( var_0 )
|
|
{
|
|
if ( !isdefined( level.pillageitems ) )
|
|
level.pillageitems = [];
|
|
|
|
if ( !isdefined( level.pillageitems[var_0] ) )
|
|
level.pillageitems[var_0] = [];
|
|
|
|
switch ( var_0 )
|
|
{
|
|
case "easy":
|
|
maps\mp\alien\_pillage::build_pillageitem_array( var_0, "locker_key", level.pillageinfo.easy_locker_key );
|
|
break;
|
|
case "medium":
|
|
maps\mp\alien\_pillage::build_pillageitem_array( var_0, "locker_key", level.pillageinfo.medium_locker_key );
|
|
break;
|
|
case "hard":
|
|
maps\mp\alien\_pillage::build_pillageitem_array( var_0, "locker_key", level.pillageinfo.hard_locker_key );
|
|
break;
|
|
case "locker":
|
|
maps\mp\alien\_pillage::build_pillageitem_array( var_0, "crafting", level.pillageinfo.crafting_hard );
|
|
maps\mp\alien\_pillage::build_pillageitem_array( var_0, "attachment", level.pillageinfo.locker_attachment );
|
|
maps\mp\alien\_pillage::build_pillageitem_array( var_0, "soflam", level.pillageinfo.locker_soflam );
|
|
maps\mp\alien\_pillage::build_pillageitem_array( var_0, "explosive", level.pillageinfo.locker_explosive );
|
|
maps\mp\alien\_pillage::build_pillageitem_array( var_0, "maxammo", level.pillageinfo.locker_maxammo );
|
|
maps\mp\alien\_pillage::build_pillageitem_array( var_0, "money", level.pillageinfo.locker_money );
|
|
maps\mp\alien\_pillage::build_pillageitem_array( var_0, "pet_leash", level.pillageinfo.locker_leash );
|
|
maps\mp\alien\_pillage::build_pillageitem_array( var_0, "trophy", level.pillageinfo.locker_trophy );
|
|
maps\mp\alien\_pillage::build_pillageitem_array( var_0, "specialammo", level.pillageinfo.locker_specialammo );
|
|
maps\mp\alien\_pillage::build_pillageitem_array( var_0, "locker_weapon", level.pillageinfo.locker_locker_weapon );
|
|
break;
|
|
}
|
|
}
|
|
|
|
locker_key_check( var_0 )
|
|
{
|
|
if ( isdefined( self.is_locker ) && self.is_locker && ( !isdefined( var_0.locker_key ) || !var_0.locker_key ) )
|
|
{
|
|
var_0 maps\mp\_utility::setlowermessage( "need_key", &"ALIEN_PILLAGE_LOCKER_NEED_LOCKER_KEY", 3 );
|
|
return 1;
|
|
}
|
|
|
|
return 0;
|
|
}
|
|
|
|
get_locker_hintstring_for_pillaged_item( var_0 )
|
|
{
|
|
var_0 = "" + var_0;
|
|
|
|
switch ( var_0 )
|
|
{
|
|
case "locker_key":
|
|
return &"ALIEN_PILLAGE_LOCKER_FOUND_LOCKER_KEY";
|
|
case "locker_weapon":
|
|
return &"ALIEN_PILLAGE_LOCKER_FOUND_LOCKER_WEAPON";
|
|
}
|
|
}
|
|
|
|
get_hintstring_for_locker_item_pickup( var_0 )
|
|
{
|
|
var_0 = "" + var_0;
|
|
|
|
switch ( var_0 )
|
|
{
|
|
case "locker_key":
|
|
return &"ALIEN_PILLAGE_LOCKER_PICKUP_LOCKER_KEY";
|
|
case "locker_weapon":
|
|
return &"ALIEN_PILLAGE_LOCKER_PICKUP_LOCKER_WEAPON";
|
|
}
|
|
|
|
if ( isdefined( level.level_locker_weapon_pickup_string_func ) )
|
|
return [[ level.level_locker_weapon_pickup_string_func ]]( var_0 );
|
|
}
|
|
|
|
drop_locker_pillage_item_on_ground( var_0 )
|
|
{
|
|
if ( !isdefined( self.open_locker_model ) )
|
|
{
|
|
var_1 = spawn( "script_model", self.origin );
|
|
var_1.angles = self.angles;
|
|
|
|
if ( level.script == "mp_alien_dlc3" )
|
|
{
|
|
var_1 setmodel( "com_plasticcase_bomb_open" );
|
|
var_0 playlocalsound( "ammo_crate_use" );
|
|
}
|
|
else if ( level.script == "mp_alien_last" )
|
|
{
|
|
var_1 setmodel( "dct_crate_locker_open" );
|
|
var_0 playlocalsound( "ammo_crate_use" );
|
|
}
|
|
else
|
|
{
|
|
var_1 setmodel( "armory_weapon_chest_open" );
|
|
var_0 playlocalsound( "plr_locker_open" );
|
|
}
|
|
|
|
self.open_locker_model = var_1;
|
|
self.locker_origin = self.pillage_trigger.origin;
|
|
self.locker_angles = self.pillage_trigger.angles;
|
|
}
|
|
|
|
if ( self.pillage_trigger.model != "tag_origin" )
|
|
{
|
|
if ( isdefined( level.pillage_locker_offset_override_func ) )
|
|
self [[ level.pillage_locker_offset_override_func ]]();
|
|
else
|
|
offset_locker_trigger_model();
|
|
}
|
|
|
|
var_0.locker_key = undefined;
|
|
self.pillage_trigger.is_locker = undefined;
|
|
var_0 setclientomnvar( "ui_alien_locker_key", 0 );
|
|
}
|
|
|
|
offset_locker_trigger_model()
|
|
{
|
|
if ( isdefined( self.locker_origin ) )
|
|
self.pillage_trigger.origin = self.locker_origin;
|
|
|
|
if ( isdefined( self.locker_angles ) )
|
|
self.pillage_trigger.angles = self.locker_angles;
|
|
|
|
var_0 = ( 0, 0, 20 );
|
|
var_1 = ( 0, 0, 6 );
|
|
var_2 = ( 0, 0, 0 );
|
|
var_3 = ( 0, 0, 6 );
|
|
var_4 = ( 0, 0, 0 );
|
|
var_5 = getgroundposition( self.pillage_trigger.origin + var_0, 2 );
|
|
|
|
switch ( self.pillage_trigger.model )
|
|
{
|
|
case "weapon_baseweapon_clip":
|
|
var_3 = ( 0, 0, 4 );
|
|
break;
|
|
case "mp_trophy_system_folded_iw6":
|
|
var_3 = ( 3, -21, 38 );
|
|
var_4 = ( 277.5, 180, -144 );
|
|
break;
|
|
case "weapon_scavenger_grenadebag":
|
|
var_3 = ( 0, 0, 6 );
|
|
break;
|
|
case "weapon_soflam":
|
|
var_3 = ( 8, -6, 8 );
|
|
break;
|
|
case "mil_ammo_case_1_open":
|
|
var_3 = ( 0, -16, 0 );
|
|
break;
|
|
case "weapon_rm_22":
|
|
self.pillage_trigger hidepart( "tag_barrel_sniper", "weapon_rm_22" );
|
|
case "weapon_pp19_bizon_iw6":
|
|
case "weapon_fabarm_fp6":
|
|
case "weapon_world_axe":
|
|
case "weapon_imbel_ia2":
|
|
case "weapon_cz_805_bren":
|
|
case "weapon_m27":
|
|
case "weapon_l115a3":
|
|
case "weapon_usr":
|
|
case "weapon_vks":
|
|
case "weapon_mts_255":
|
|
case "weapon_vepr":
|
|
case "weapon_kriss_v":
|
|
case "weapon_ak12":
|
|
case "weapon_g28":
|
|
case "weapon_dragunov_svu":
|
|
case "weapon_tar21":
|
|
case "weapon_kac_chainsaw":
|
|
var_3 = ( -5, 0, 24 );
|
|
var_4 = ( 277.5, 180, -144 );
|
|
break;
|
|
case "weapon_maul":
|
|
var_3 = ( -5, 0, 25 );
|
|
var_4 = ( 277.5, 180, -144 );
|
|
break;
|
|
case "weapon_honeybadger":
|
|
var_3 = ( -5, 0, 21 );
|
|
var_4 = ( 277.5, 180, -144 );
|
|
break;
|
|
case "weapon_evopro":
|
|
case "weapon_cbj_ms_iw6":
|
|
case "weapon_lsat_iw6":
|
|
case "weapon_arx_160":
|
|
var_3 = ( -5, 0, 22 );
|
|
var_4 = ( 277.5, 180, -144 );
|
|
break;
|
|
case "weapon_knife_iw6":
|
|
case "weapon_canister_bomb":
|
|
case "mil_emergency_flare_mp":
|
|
var_3 = var_1;
|
|
var_4 = var_2;
|
|
break;
|
|
}
|
|
|
|
var_6 = self.pillage_trigger.origin;
|
|
var_7 = self.pillage_trigger.angles;
|
|
var_8 = self.pillage_trigger.origin;
|
|
var_9 = ( 0, 0, 0 );
|
|
var_10 = self.pillage_trigger.origin + var_3;
|
|
var_11 = var_4;
|
|
var_12 = transformmove( var_6, var_7, var_8, var_9, var_10, var_11 );
|
|
var_13 = var_12["origin"] - var_5;
|
|
var_4 = var_12["angles"];
|
|
self.pillage_trigger.origin = var_5 + var_13;
|
|
self.pillage_trigger.angles = var_4;
|
|
}
|
|
|
|
create_gun_with_max_attachments_list()
|
|
{
|
|
level.max_weapon_list = [];
|
|
level.max_weapon_list_xmags = [];
|
|
var_0 = [];
|
|
var_1 = level.collectibles;
|
|
|
|
foreach ( var_4, var_3 in var_1 )
|
|
{
|
|
if ( var_3.isweapon )
|
|
var_0[var_4] = var_3;
|
|
}
|
|
|
|
var_5 = [];
|
|
|
|
foreach ( var_3 in var_0 )
|
|
{
|
|
var_7 = var_3.ref;
|
|
|
|
if ( issubstr( var_3.ref, "honey" ) )
|
|
continue;
|
|
|
|
if ( level.script == "mp_alien_beacon" )
|
|
{
|
|
if ( issubstr( var_3.ref, "g28" ) || issubstr( var_3.ref, "svu" ) )
|
|
continue;
|
|
}
|
|
|
|
var_7 = getsubstr( var_7, 7 );
|
|
|
|
if ( is_dlc_weapon( var_3.ref ) )
|
|
var_8 = var_7;
|
|
else
|
|
var_8 = getweaponbasename( var_7 );
|
|
|
|
var_9 = maps\mp\_utility::getweaponclass( var_8 );
|
|
var_10 = [];
|
|
var_11 = [];
|
|
var_12 = [];
|
|
var_13 = [];
|
|
var_14 = maps\mp\alien\_pillage::get_possible_attachments_by_weaponclass( var_9, var_8 );
|
|
|
|
if ( !isdefined( var_14 ) || var_14.size < 3 )
|
|
continue;
|
|
|
|
if ( issubstr( var_3.ref, "aliendlc23" ) )
|
|
{
|
|
if ( level.script == "mp_alien_dlc3" || level.script == "mp_alien_last" )
|
|
var_8 = "iw6_arkaliendlc23_mp";
|
|
else
|
|
var_8 = "iw6_aliendlc23_mp";
|
|
|
|
var_14 = common_scripts\utility::add_to_array( var_14, "dlcweap02scope" );
|
|
}
|
|
|
|
foreach ( var_16 in var_14 )
|
|
{
|
|
switch ( var_16 )
|
|
{
|
|
case "reflex":
|
|
case "eotech":
|
|
case "acog":
|
|
case "dlcweap02scope":
|
|
var_10[var_10.size] = var_16;
|
|
break;
|
|
case "grip":
|
|
var_11[var_11.size] = var_16;
|
|
break;
|
|
case "barrelrange":
|
|
var_12[var_12.size] = var_16;
|
|
break;
|
|
case "xmags":
|
|
case "rof":
|
|
var_13[var_13.size] = var_16;
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
}
|
|
|
|
var_18 = [];
|
|
|
|
if ( var_10.size > 0 )
|
|
var_18[0] = var_10;
|
|
else
|
|
var_18[var_18.size] = [ "none" ];
|
|
|
|
if ( var_11.size > 0 )
|
|
var_18[1] = var_11;
|
|
else
|
|
var_18[var_18.size] = [ "none" ];
|
|
|
|
if ( var_12.size > 0 )
|
|
var_18[2] = var_12;
|
|
else
|
|
var_18[var_18.size] = [ "none" ];
|
|
|
|
if ( var_13.size > 0 )
|
|
var_18[3] = var_13;
|
|
else
|
|
var_18[var_18.size] = [ "none" ];
|
|
|
|
var_3 get_rest_of_attachments_brute_force( var_8, var_18 );
|
|
}
|
|
}
|
|
|
|
make_weapon_string_and_add_to_array( var_0, var_1, var_2, var_3, var_4 )
|
|
{
|
|
var_5 = self;
|
|
var_6 = maps\mp\_utility::strip_suffix( var_0, "_mp" );
|
|
var_7 = maps\mp\alien\_utility::buildalienweaponname( var_6, var_1, var_2, var_3, var_4 );
|
|
|
|
if ( isdefined( var_7 ) )
|
|
{
|
|
var_8 = spawnstruct();
|
|
var_8.weapon_string = var_7;
|
|
var_8.model = var_5.model;
|
|
|
|
if ( !isdefined( var_4 ) || var_4 != "xmags" )
|
|
level.max_weapon_list[level.max_weapon_list.size] = var_8;
|
|
else
|
|
level.max_weapon_list_xmags[level.max_weapon_list_xmags.size] = var_8;
|
|
}
|
|
}
|
|
|
|
get_rest_of_attachments_brute_force( var_0, var_1 )
|
|
{
|
|
var_2 = [];
|
|
|
|
foreach ( var_4 in var_1[0] )
|
|
{
|
|
var_2[0] = var_4;
|
|
|
|
foreach ( var_4 in var_1[1] )
|
|
{
|
|
var_2[1] = var_4;
|
|
|
|
foreach ( var_4 in var_1[2] )
|
|
{
|
|
var_2[2] = var_4;
|
|
|
|
foreach ( var_4 in var_1[3] )
|
|
{
|
|
var_2[3] = var_4;
|
|
make_weapon_string_and_add_to_array( var_0, var_2[0], var_2[1], var_2[2], var_2[3] );
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
get_locker_weapon_from_list()
|
|
{
|
|
var_0 = common_scripts\utility::random( level.max_weapon_list );
|
|
return var_0;
|
|
}
|
|
|
|
is_dlc_weapon( var_0 )
|
|
{
|
|
if ( issubstr( var_0, "aliendlc" ) )
|
|
return 1;
|
|
|
|
if ( issubstr( var_0, "alienDLC" ) )
|
|
return 1;
|
|
|
|
return 0;
|
|
}
|
|
|
|
is_axe( var_0 )
|
|
{
|
|
switch ( var_0 )
|
|
{
|
|
case "iw6_alienDLC13_mp":
|
|
case "weapon_iw6_alienDLC13_mp":
|
|
case "iw6_aliendlc13_mp":
|
|
case "weapon_iw6_aliendlc13_mp":
|
|
case "alienaxe_mp":
|
|
case "weapon_alienaxe_mp":
|
|
case "iw6_alienDLC12_mp":
|
|
case "weapon_iw6_alienDLC12_mp":
|
|
case "iw6_aliendlc12_mp":
|
|
case "weapon_iw6_aliendlc12_mp":
|
|
return 1;
|
|
default:
|
|
break;
|
|
}
|
|
|
|
return 0;
|
|
}
|