Files
IL-GSC/MWR/PC/SP/maps/_loadout_code.gsc
2023-10-27 03:49:01 -04:00

408 lines
6.6 KiB
Plaintext

/*******************************************************************
* Decompiled By: Bog
* Decompiled File: maps\_loadout_code.gsc
* Game: Call of Duty: Modern Warfare Remastered
* Platform: PC
* Function Count: 19
* Decompile Time: 305 ms
* Timestamp: 10/27/2023 2:48:17 AM
*******************************************************************/
//Function Number: 1
saveplayerweaponstatepersistent(param_00)
{
var_01 = level.player getcurrentweapon();
if(!isdefined(var_01) || var_01 == "none")
{
}
game["weaponstates"][param_00]["current"] = var_01;
var_02 = level.player getcurrentoffhand();
game["weaponstates"][param_00]["offhand"] = var_02;
game["weaponstates"][param_00]["list"] = [];
var_03 = level.player getweaponslistall();
for(var_04 = 0;var_04 < var_03.size;var_04++)
{
game["weaponstates"][param_00]["list"][var_04]["name"] = var_03[var_04];
}
}
//Function Number: 2
restoreplayerweaponstatepersistent(param_00)
{
if(!isdefined(game["weaponstates"]))
{
return 0;
}
if(!isdefined(game["weaponstates"][param_00]))
{
return 0;
}
level.player takeallweapons();
for(var_01 = 0;var_01 < game["weaponstates"][param_00]["list"].size;var_01++)
{
var_02 = game["weaponstates"][param_00]["list"][var_01]["name"];
if(isdefined(level.legit_weapons))
{
if(!isdefined(level.legit_weapons[var_02]))
{
continue;
}
}
if(var_02 == "c4")
{
continue;
}
if(var_02 == "claymore")
{
continue;
}
level.player giveweapon(var_02);
level.player givemaxammo(var_02);
}
if(isdefined(level.legit_weapons))
{
var_02 = game["weaponstates"][param_00]["offhand"];
if(isdefined(level.legit_weapons[var_02]))
{
level.player switchtooffhand(var_02);
}
var_02 = game["weaponstates"][param_00]["current"];
if(isdefined(level.legit_weapons[var_02]))
{
level.player switchtoweapon(var_02);
}
}
else
{
level.player switchtooffhand(game["weaponstates"][param_00]["offhand"]);
level.player switchtoweapon(game["weaponstates"][param_00]["current"]);
}
return 1;
}
//Function Number: 3
setdefaultactionslot()
{
self setactionslot(1,"");
self setactionslot(2,"");
self setactionslot(3,"altMode");
self setactionslot(4,"");
}
//Function Number: 4
init_player()
{
setdefaultactionslot();
self takeallweapons();
}
//Function Number: 5
get_loadout()
{
if(isdefined(level.loadout))
{
return level.loadout;
}
return level.script;
}
//Function Number: 6
persist(param_00,param_01)
{
var_02 = get_loadout();
if(param_00 != var_02)
{
return;
}
if(!isdefined(game["previous_map"]))
{
return;
}
if(game["previous_map"] != param_01)
{
return;
}
level._lc_persists = 1;
restoreplayerweaponstatepersistent(param_01);
level.has_loadout = 1;
}
//Function Number: 7
loadout(param_00,param_01,param_02,param_03,param_04,param_05,param_06)
{
if(isdefined(param_00))
{
var_07 = get_loadout();
if(param_00 != var_07)
{
return;
}
}
if(!isdefined(level._lc_persists))
{
if(isdefined(param_01))
{
level.default_weapon = param_01;
level.player giveweapon(param_01);
}
if(isdefined(param_02))
{
level.player giveweapon(param_02);
}
if(isdefined(param_01))
{
level.player switchtoweapon(param_01);
}
else if(isdefined(param_02))
{
level.player switchtoweapon(param_02);
}
}
if(isdefined(param_03))
{
level.player setoffhandprimaryclass(param_03);
level.player giveweapon(param_03);
}
if(isdefined(param_04))
{
level.player setoffhandsecondaryclass(param_04);
level.player giveweapon(param_04);
}
if(isdefined(param_05))
{
level.player setviewmodel(param_05);
}
if(isdefined(param_06))
{
level.campaign = param_06;
}
level.has_loadout = 1;
}
//Function Number: 8
loadoutequipment(param_00,param_01,param_02)
{
if(!isdefined(param_00))
{
return;
}
if(level.script != param_00)
{
return;
}
if(isdefined(param_01))
{
level.player giveweapon(param_01);
level.player setactionslot(2,"weapon",param_01);
}
if(isdefined(param_02))
{
level.player giveweapon(param_02);
level.player setactionslot(4,"weapon",param_02);
}
}
//Function Number: 9
loadout_complete()
{
level.loadoutcomplete = 1;
level notify("loadout complete");
}
//Function Number: 10
default_loadout_if_notset()
{
if(level.has_loadout)
{
return;
}
loadout(undefined,"mp5",undefined,"fraggrenade","flash_grenade","viewmodel_base_viewhands");
level.map_without_loadout = 1;
}
//Function Number: 11
loadoutcustomization()
{
switch(level.script)
{
case "killhouse":
break;
case "cargoship":
break;
case "coup":
break;
case "blackout":
break;
case "armada":
break;
case "bog_a":
break;
case "hunted":
break;
case "ac130":
break;
case "bog_b":
break;
case "airlift":
break;
case "aftermath":
break;
case "village_assault":
break;
case "scoutsniper":
break;
case "sniperescape":
break;
case "village_defend":
break;
case "ambush":
break;
case "icbm":
break;
case "launchfacility_a":
break;
case "launchfacility_b":
break;
case "jeepride":
break;
case "airplane":
break;
case "simplecredits":
break;
}
}
//Function Number: 12
loadout_killhouse()
{
level.player setweaponammoclip("fraggrenade",0);
level.player setweaponammoclip("flash_grenade",0);
}
//Function Number: 13
loadout_blackout()
{
level.player givemaxammo("m4m203_silencer_reflex");
level.player givemaxammo("m14_scoped_silencer_woodland");
}
//Function Number: 14
loadout_scoutsniper()
{
level.player givemaxammo("m14_scoped_silencer");
level.player givemaxammo("usp_silencer");
}
//Function Number: 15
loadout_sniperescape()
{
if(level.gameskill >= 2)
{
level.player setweaponammoclip("claymore",10);
level.player setweaponammoclip("c4",6);
return;
}
level.player setweaponammoclip("claymore",8);
level.player setweaponammoclip("c4",3);
}
//Function Number: 16
loadout_village_defend()
{
level.player givemaxammo("claymore");
}
//Function Number: 17
loadout_ambush()
{
level.player setweaponammostock("remington700",10);
}
//Function Number: 18
loadout_launchfacility_a()
{
level.player givemaxammo("claymore");
}
//Function Number: 19
loadout_launchfacility_b()
{
var_00 = undefined;
var_01 = 0;
var_02 = level.player getweaponslistprimaries();
foreach(var_04 in var_02)
{
if(issubstr(var_04,"javelin"))
{
var_00 = var_04;
continue;
}
if(issubstr(var_04,"m4m203_silencer_reflex"))
{
var_01 = 1;
}
}
if(isdefined(var_00))
{
level.player takeweapon(var_00);
if(var_01)
{
level.player giveweapon("usp_silencer");
}
else
{
level.player giveweapon("m4m203_silencer_reflex");
}
level.player switchtoweaponimmediate("m4m203_silencer_reflex");
}
}