IL-GSC/IW/PC/ALL/2857.gsc
2023-10-27 03:49:01 -04:00

835 lines
17 KiB
Plaintext

/*******************************************************************
* Decompiled By: Bog
* Decompiled File: 2857.gsc
* Game: Call of Duty: Infinite Warfare
* Platform: PC
* Function Count: 31
* Decompile Time: 16 ms
* Timestamp: 10/27/2023 12:24:18 AM
*******************************************************************/
//Function Number: 1
init()
{
level.var_66A3 = [];
level.var_66AC = 1000;
level.var_66AB = 1000;
level.player.var_110BD = "";
level.player.var_110BE = 0;
level.player.var_110BA = "";
level.player.var_110BB = 0;
level.player.var_4B2B = "";
level.player.var_4B21 = "";
level.player.var_110C0 = 0;
thread func_11B9();
level.player thread func_13FF();
func_135F();
thread func_1271();
}
//Function Number: 2
func_F391(param_00,param_01)
{
var_02 = strtok(param_00,"_");
var_03 = undefined;
var_04 = undefined;
var_05 = level.player getweaponslistoffhands();
for(var_06 = 0;var_06 < var_05.size;var_06++)
{
if(func_12F5(var_05[var_06]))
{
var_03 = strtok(var_05[var_06],"_");
}
if(func_12F1(var_05[var_06]))
{
var_04 = strtok(var_05[var_06],"_");
}
}
var_07 = func_128A(param_01,0,1,-1,1000);
var_08 = 0;
if(isdefined(var_03) && var_02[0] == var_03[0])
{
if(level.var_66AC > var_07)
{
var_08 = 1;
}
setomnvar("ui_power_recharge",int(var_07));
setomnvar("ui_power_consume",var_08);
level.var_66AC = var_07;
return;
}
if(isdefined(var_04) && var_02[0] == var_04[0])
{
if(level.var_66AB > var_07)
{
var_08 = 1;
}
setomnvar("ui_power_secondary_recharge",int(var_07));
setomnvar("ui_power_secondary_consume",var_08);
level.var_66AB = var_07;
return;
}
}
//Function Number: 3
func_F392(param_00,param_01)
{
var_02 = strtok(param_00,"_");
var_03 = undefined;
var_04 = undefined;
var_05 = level.player getweaponslistoffhands();
for(var_06 = 0;var_06 < var_05.size;var_06++)
{
if(func_12F5(var_05[var_06]))
{
var_03 = strtok(var_05[var_06],"_");
}
if(func_12F1(var_05[var_06]))
{
var_04 = strtok(var_05[var_06],"_");
}
}
if(isdefined(var_03) && var_02[0] == var_03[0])
{
setomnvar("ui_power_disabled",param_01);
return;
}
if(isdefined(var_04) && var_02[0] == var_04[0])
{
setomnvar("ui_power_secondary_disabled",param_01);
return;
}
}
//Function Number: 4
func_11456(param_00)
{
if(self.var_110BD == param_00)
{
self.var_110BD = "";
self.var_110BE = 0;
}
if(self.var_110BA == param_00)
{
self.var_110BA = "";
self.var_110BB = 0;
}
}
//Function Number: 5
func_11427()
{
self.var_110BD = "";
self.var_110BE = 0;
self.var_110BA = "";
self.var_110BB = 0;
}
//Function Number: 6
func_135F()
{
level.var_D79A = [];
var_00 = 0;
for(;;)
{
var_01 = tablelookupbyrow("sp/powertable.csv",var_00,0);
if(var_01 == "")
{
break;
}
var_02 = tablelookupbyrow("sp/powertable.csv",var_00,1);
level.var_D79A[var_02] = spawnstruct();
level.var_D79A[var_02].var_92B8 = var_01;
level.var_D79A[var_02].var_4613 = tablelookupbyrow("sp/powertable.csv",var_00,6);
level.var_D79A[var_02].var_B486 = tablelookupbyrow("sp/powertable.csv",var_00,7);
level.var_D79A[var_02].var_1030F = tablelookupbyrow("sp/powertable.csv",var_00,8);
level.var_D79A[var_02].var_1E4E = tablelookupbyrow("sp/powertable.csv",var_00,9);
var_00++;
}
}
//Function Number: 7
func_129C(param_00)
{
return func_12A4(param_00).var_1E4E;
}
//Function Number: 8
func_12A4(param_00)
{
var_01 = strtok(param_00,"_");
if(!isdefined(level.var_D79A[var_01[0]]))
{
level.var_D79A[var_01[0]] = level.var_D79A["none"];
return level.var_D79A[var_01[0]];
}
return level.var_D79A[var_01[0]];
}
//Function Number: 9
func_12A3(param_00)
{
var_01 = func_12A4(param_00);
return var_01.var_1030F;
}
//Function Number: 10
func_12F5(param_00)
{
return func_12A3(param_00) == "0";
}
//Function Number: 11
func_12F1(param_00)
{
return func_12A3(param_00) == "1";
}
//Function Number: 12
func_11B9()
{
level.player endon("death");
var_00 = "none";
var_01 = 0;
for(;;)
{
var_02 = level.player getcurrentprimaryweapon();
if(!isdefined(var_02))
{
wait(0.05);
continue;
}
var_03 = level.player getweaponammostock(var_02);
if(var_02 != var_00)
{
var_00 = var_02;
var_01 = var_03;
wait(0.05);
continue;
}
if(var_03 != var_01)
{
if(var_03 > var_01)
{
level.player notify("current_primary_ammo");
}
var_01 = var_03;
}
wait(0.05);
}
}
//Function Number: 13
func_1270(param_00)
{
var_01 = [];
foreach(var_03 in param_00)
{
var_04 = level.player method_854C(var_03);
if(var_04 != "scriptoffhand")
{
var_01 = scripts\common\utility::array_add(var_01,var_03);
}
}
if(isdefined(level.player.var_1180A) && level.player.var_1180A == 1)
{
var_06 = level.player.var_127C1;
if(var_06 != level.player.var_4B2B && var_06 != level.player.var_4B21)
{
level.player takeweapon(var_06);
var_01 = scripts\common\utility::func_22A9(var_01,var_06);
}
level.player.var_1180A = 0;
level.player.var_127C1 = "none";
level.player.var_1180B = "none";
level.player.var_AA2B = "none";
}
else if(level.player.var_1180B != level.player.var_AA2B && level.player.var_AA2B != "none")
{
if(level.player.var_AA2B != level.player.var_4B2B && level.player.var_AA2B != level.player.var_4B21)
{
level.player takeweapon(level.player.var_AA2B);
var_01 = scripts\common\utility::func_22A9(var_01,level.player.var_AA2B);
}
}
else if(level.player.var_1180B != "none")
{
if(level.player.var_1180B != level.player.var_4B2B && level.player.var_1180B != level.player.var_4B21)
{
var_01 = scripts\common\utility::func_22A9(var_01,level.player.var_1180B);
}
}
return var_01;
}
//Function Number: 14
func_1271()
{
level.player endon("death");
level.player.var_1180B = "none";
var_00 = level.player getweaponslistoffhands();
var_01 = "";
var_02 = "";
var_03 = 0;
var_04 = 0;
var_05 = "";
var_06 = "";
var_07 = 0;
var_08 = 0;
var_09 = [];
var_0A = "";
var_0B = "";
var_0C = "";
var_0D = "";
for(;;)
{
waittillframeend;
level.player.var_AA2B = level.player.var_1180B;
level.player.var_1180B = level.player method_8556();
if(level.player method_8448())
{
level.player.var_1180A = 1;
level.player.var_127C1 = level.player method_8556();
wait(0.05);
continue;
}
var_09 = level.player getweaponslistoffhands();
var_09 = func_1270(var_09);
func_142E(var_09,var_00);
var_09 = level.player getweaponslistoffhands();
var_09 = func_1270(var_09);
var_0A = "";
var_0B = "";
var_0E = 0;
var_0F = 0;
var_10 = 0;
var_11 = 0;
for(var_12 = 0;var_12 < var_09.size;var_12++)
{
if(func_12F5(var_09[var_12]))
{
var_0A = var_09[var_12];
}
if(func_12F1(var_09[var_12]))
{
var_0B = var_09[var_12];
}
}
var_0C = level.player.var_110BD;
var_0D = level.player.var_110BA;
level.player.var_4B2B = var_0A;
level.player.var_4B21 = var_0B;
if(var_0A != var_01)
{
var_0E = 1;
level.player notify("primary_equipment_change",var_0A);
}
if(var_0B != var_02)
{
var_0F = 1;
level.player notify("secondary_equipment_change",var_0B);
}
if(var_0C != var_05)
{
var_10 = 1;
level.player notify("stored_primary_equipment_change",var_0C);
}
if(var_0D != var_06)
{
var_11 = 1;
level.player notify("stored_secondary_equipment_change",var_0D);
}
if(var_0E == 1 || var_0F == 1)
{
level.player notify("equipment_change");
}
if(var_0A == "")
{
func_11A6();
}
else
{
var_13 = level.player method_80FB(var_0A);
if(var_0E == 0 && var_13 != var_03)
{
level.player notify("offhand_ammo");
var_03 = var_13;
}
func_1434(var_0A,var_13,var_0E);
}
if(var_0B == "")
{
func_11A5();
}
else
{
var_13 = level.player method_80FB(var_0B);
if(var_0F == 0 && var_13 != var_04)
{
level.player notify("item_ammo");
var_04 = var_13;
}
func_1433(var_0B,var_13,var_0F);
}
if(var_0C == "")
{
func_11A8();
}
else
{
func_1436(var_0C,level.player.var_110BE,var_10);
}
if(var_0D == "")
{
func_11A7();
}
else
{
func_1435(var_0D,level.player.var_110BB,var_11);
}
var_00 = var_09;
var_01 = var_0A;
var_02 = var_0B;
var_05 = var_0C;
var_06 = var_0D;
wait(0.05);
}
}
//Function Number: 15
func_142E(param_00,param_01)
{
var_02 = [];
var_03 = [];
var_04 = 0;
var_05 = 0;
for(var_06 = 0;var_06 < param_00.size;var_06++)
{
if(func_12F5(param_00[var_06]))
{
var_04 = 1;
}
if(func_12F1(param_00[var_06]))
{
var_05 = 1;
}
}
if(level.player.var_110C0 && var_04 == 0 && level.player.var_110BD != "")
{
level.player giveweapon(level.player.var_110BD);
level.player method_844B(level.player.var_110BD);
level.player setweaponammoclip(level.player.var_110BD,level.player.var_110BE);
level.player.var_110BD = "";
level.player.var_110BE = 0;
}
if(level.player.var_110C0 && var_05 == 0 && level.player.var_110BA != "")
{
level.player giveweapon(level.player.var_110BA);
level.player method_844C(level.player.var_110BA);
level.player setweaponammoclip(level.player.var_110BA,level.player.var_110BB);
level.player.var_110BA = "";
level.player.var_110BB = 0;
}
foreach(var_08 in param_00)
{
if(!scripts\common\utility::func_2286(param_01,var_08))
{
if(func_12F5(var_08))
{
if(var_02.size > 1)
{
level.player takeweapon(var_02[1]);
var_02[1] = var_08;
continue;
}
var_02[var_02.size] = var_08;
continue;
}
if(func_12F1(var_08))
{
if(var_03.size > 1)
{
level.player takeweapon(var_03[1]);
var_03[1] = var_08;
continue;
}
var_03[var_03.size] = var_08;
}
}
}
var_0A = undefined;
var_0B = undefined;
foreach(var_08 in param_01)
{
if(!scripts\common\utility::func_2286(param_00,var_08))
{
continue;
}
if(func_12F5(var_08))
{
var_0A = var_08;
continue;
}
if(func_12F1(var_08))
{
var_0B = var_08;
}
}
if(var_02.size > 0)
{
if(isdefined(var_0A) && level.player.var_110C0)
{
if(level.player.var_110BD == "")
{
level.player.var_110BE = level.player method_80FB(var_0A);
level.player.var_110BD = var_0A;
level.player takeweapon(var_0A);
}
else if(var_02[0] == level.player.var_110BD)
{
level.player.var_110BE = level.player method_80FB(var_0A);
level.player.var_110BD = var_0A;
level.player takeweapon(var_0A);
}
level.player takeweapon(var_0A);
}
else if(isdefined(var_0A))
{
level.player takeweapon(var_0A);
}
level.player method_844D();
level.player method_844B(var_02[0]);
if(var_02.size > 1)
{
if(level.player.var_110C0)
{
level.player.var_110BE = level.player method_80FB(var_02[1]);
level.player.var_110BD = var_02[1];
level.player takeweapon(var_02[1]);
}
else
{
level.player takeweapon(var_02[1]);
}
}
}
if(var_03.size > 0)
{
if(isdefined(var_0B) && level.player.var_110C0)
{
if(level.player.var_110BA == "")
{
level.player.var_110BB = level.player method_80FB(var_0B);
level.player.var_110BA = var_0B;
level.player takeweapon(var_0B);
}
else if(var_03[0] == level.player.var_110BA)
{
level.player.var_110BB = level.player method_80FB(var_0B);
level.player.var_110BA = var_0B;
level.player takeweapon(var_0B);
}
level.player takeweapon(var_0B);
}
else if(isdefined(var_0B))
{
level.player takeweapon(var_0B);
}
level.player method_844E();
level.player method_844C(var_03[0]);
if(var_03.size > 1)
{
if(level.player.var_110C0)
{
level.player.var_110BB = level.player method_80FB(var_03[1]);
level.player.var_110BA = var_03[1];
level.player takeweapon(var_03[1]);
}
else
{
level.player takeweapon(var_03[1]);
}
}
}
if(!level.player.var_110C0 && level.player.var_110BD != "")
{
level.player.var_110BD = "";
level.player.var_110BE = 0;
}
if(!level.player.var_110C0 && level.player.var_110BA != "")
{
level.player.var_110BA = "";
level.player.var_110BB = 0;
}
}
//Function Number: 16
func_1434(param_00,param_01,param_02)
{
if(!isdefined(param_01))
{
param_01 = 0;
}
setomnvar("ui_power_num_charges",int(param_01));
setomnvar("ui_power_id",int(func_12A4(param_00).var_92B8));
setomnvar("ui_power_disabled",0);
if(param_02 == 1)
{
setomnvar("ui_power_recharge",int(1000));
setomnvar("ui_power_consume",0);
}
}
//Function Number: 17
func_1436(param_00,param_01,param_02)
{
setomnvar("ui_power_stored_show",1);
if(!isdefined(param_01))
{
param_01 = 0;
}
setomnvar("ui_power_stored_num_charges",int(param_01));
setomnvar("ui_power_id_stored",int(func_12A4(param_00).var_92B8));
setomnvar("ui_power_stored_disabled",0);
setomnvar("ui_power_stored_recharge",int(1000));
setomnvar("ui_power_stored_consume",0);
}
//Function Number: 18
func_1433(param_00,param_01,param_02)
{
if(!isdefined(param_01))
{
param_01 = 0;
}
setomnvar("ui_power_secondary_num_charges",int(param_01));
setomnvar("ui_power_id_secondary",int(func_12A4(param_00).var_92B8));
setomnvar("ui_power_secondary_disabled",0);
if(param_02 == 1)
{
setomnvar("ui_power_secondary_recharge",int(1000));
setomnvar("ui_power_secondary_consume",0);
}
}
//Function Number: 19
func_1435(param_00,param_01,param_02)
{
setomnvar("ui_power_secondary_stored_show",1);
if(!isdefined(param_01))
{
param_01 = 0;
}
setomnvar("ui_power_secondary_stored_num_charges",int(param_01));
setomnvar("ui_power_id_secondary_stored",int(func_12A4(param_00).var_92B8));
setomnvar("ui_power_secondary_stored_disabled",0);
setomnvar("ui_power_secondary_stored_recharge",int(1000));
setomnvar("ui_power_secondary_stored_consume",0);
}
//Function Number: 20
func_11A6()
{
setomnvar("ui_power_num_charges",0);
setomnvar("ui_power_id",0);
setomnvar("ui_power_disabled",0);
setomnvar("ui_power_recharge",0);
setomnvar("ui_power_consume",0);
}
//Function Number: 21
func_11A8()
{
setomnvar("ui_power_stored_show",0);
setomnvar("ui_power_stored_num_charges",0);
setomnvar("ui_power_id_stored",0);
setomnvar("ui_power_stored_disabled",0);
setomnvar("ui_power_stored_recharge",0);
setomnvar("ui_power_stored_consume",0);
}
//Function Number: 22
func_11A5()
{
setomnvar("ui_power_secondary_num_charges",0);
setomnvar("ui_power_id_secondary",0);
setomnvar("ui_power_secondary_disabled",0);
setomnvar("ui_power_secondary_recharge",0);
setomnvar("ui_power_secondary_consume",0);
}
//Function Number: 23
func_11A7()
{
setomnvar("ui_power_secondary_stored_show",0);
setomnvar("ui_power_secondary_stored_num_charges",0);
setomnvar("ui_power_id_secondary_stored",0);
setomnvar("ui_power_secondary_stored_disabled",0);
setomnvar("ui_power_secondary_stored_recharge",0);
setomnvar("ui_power_secondary_stored_consume",0);
}
//Function Number: 24
func_13FF()
{
self endon("death");
thread func_1400();
thread func_12E3();
thread func_11A0();
for(;;)
{
scripts\common\utility::waittill_any_3("weapon_fired","aim","melee","reload_start","stand","weapon_change","weapon_swap","hide_hud_omnvar_changed");
func_1401();
}
}
//Function Number: 25
func_1400()
{
self endon("death");
for(;;)
{
scripts\common\utility::waittill_any_3("equipment_change","current_primary_ammo","offhand_ammo","item_ammo","sprint_begin","offhandshield_retract");
func_1401();
}
}
//Function Number: 26
func_1401()
{
var_00 = scripts\sp\_utility::func_7B8C();
var_01 = self getcurrentprimaryweapon();
if(var_00 != "safe" && var_01 != "iw7_gunless")
{
setomnvar("ui_hide_weapon_info",0);
}
self notify("cancel_hide_hud");
setomnvar("ui_hud_hidden_by_timer",0);
wait(1);
thread func_12E3();
}
//Function Number: 27
func_12E3()
{
self endon("death");
self endon("cancel_hide_hud");
wait(30);
setomnvar("ui_hide_weapon_info",1);
setomnvar("ui_hud_hidden_by_timer",1);
thread func_12E0();
}
//Function Number: 28
func_12E0()
{
self endon("death");
var_00 = getomnvar("ui_hide_hud");
var_01 = getomnvar("ui_hide_weapon_info");
while(getomnvar("ui_hide_hud") == var_00 && getomnvar("ui_hide_weapon_info") == var_01)
{
scripts\common\utility::func_136F7();
}
self notify("hide_hud_omnvar_changed");
}
//Function Number: 29
func_11A0()
{
self endon("death");
for(;;)
{
if(self adsbuttonpressed())
{
self notify("aim");
}
if(self meleebuttonpressed())
{
self notify("melee");
}
scripts\common\utility::func_136F7();
}
}
//Function Number: 30
func_128A(param_00,param_01,param_02,param_03,param_04)
{
return param_00 - param_01 / param_02 - param_01 * param_04 - param_03 + param_03;
}
//Function Number: 31
func_1295(param_00)
{
var_01 = strtok(param_00,"_");
var_02 = var_01[var_01.size - 1];
if(issubstr(var_02,"up1") || issubstr(var_02,"up2"))
{
var_03 = "";
for(var_04 = 0;var_04 < var_01.size - 1;var_04++)
{
var_03 = var_03 + var_01[var_04];
}
return var_03;
}
return var_02;
}