mirror of
https://github.com/InfinityLoader/IL-GSC.git
synced 2025-06-25 17:07:54 -05:00
315 lines
6.9 KiB
Plaintext
315 lines
6.9 KiB
Plaintext
/*******************************************************************
|
|
* Decompiled By: Bog
|
|
* Decompiled File: scripts\mp\killstreaks\_juggernaut.gsc
|
|
* Game: Call of Duty: Infinite Warfare
|
|
* Platform: PC
|
|
* Function Count: 14
|
|
* Decompile Time: 779 ms
|
|
* Timestamp: 10/27/2023 12:28:57 AM
|
|
*******************************************************************/
|
|
|
|
//Function Number: 1
|
|
init()
|
|
{
|
|
level.var_A4AD = [];
|
|
level.var_A4AD["juggernaut"] = spawnstruct();
|
|
level.var_A4AD["juggernaut"].var_10A41 = "used_juggernaut";
|
|
level.var_A4AD["juggernaut_recon"] = spawnstruct();
|
|
level.var_A4AD["juggernaut_recon"].var_10A41 = "used_juggernaut_recon";
|
|
level.var_A4AD["juggernaut_maniac"] = spawnstruct();
|
|
level.var_A4AD["juggernaut_maniac"].var_10A41 = "used_juggernaut_maniac";
|
|
level thread func_13AB0();
|
|
}
|
|
|
|
//Function Number: 2
|
|
func_8371(param_00)
|
|
{
|
|
self endon("death");
|
|
self endon("disconnect");
|
|
wait(0.05);
|
|
if(isdefined(self.var_ACAE))
|
|
{
|
|
scripts\mp\perks\_perkfunctions::func_12CE5();
|
|
}
|
|
|
|
scripts\mp\_weapons::func_5608();
|
|
if(scripts\mp\_utility::_hasperk("specialty_explosivebullets"))
|
|
{
|
|
scripts\mp\_utility::func_E150("specialty_explosivebullets");
|
|
}
|
|
|
|
self.health = self.maxhealth;
|
|
var_01 = 1;
|
|
switch(param_00)
|
|
{
|
|
case "juggernaut":
|
|
self.var_9E59 = 1;
|
|
self.var_A4AA = 0.8;
|
|
scripts\mp\_class::func_8379(self.pers["team"],param_00,0);
|
|
self.var_BCF6 = 0.8;
|
|
scripts\mp\_utility::func_8387("specialty_scavenger");
|
|
scripts\mp\_utility::func_8387("specialty_quickdraw");
|
|
scripts\mp\_utility::func_8387("specialty_detectexplosive");
|
|
scripts\mp\_utility::func_8387("specialty_sharp_focus");
|
|
scripts\mp\_utility::func_8387("specialty_radarjuggernaut");
|
|
break;
|
|
|
|
case "juggernaut_recon":
|
|
self.var_9E5E = 1;
|
|
self.var_A4AA = 0.8;
|
|
scripts\mp\_class::func_8379(self.pers["team"],param_00);
|
|
self.var_BCF6 = 0.8;
|
|
scripts\mp\_utility::func_8387("specialty_scavenger");
|
|
scripts\mp\_utility::func_8387("specialty_coldblooded");
|
|
scripts\mp\_utility::func_8387("specialty_noscopeoutline");
|
|
scripts\mp\_utility::func_8387("specialty_detectexplosive");
|
|
scripts\mp\_utility::func_8387("specialty_sharp_focus");
|
|
scripts\mp\_utility::func_8387("specialty_radarjuggernaut");
|
|
if(!isagent(self))
|
|
{
|
|
self method_81F3(self);
|
|
scripts\mp\_missions::func_D992("ch_airdrop_juggernaut_recon");
|
|
}
|
|
break;
|
|
|
|
case "juggernaut_maniac":
|
|
self.var_9E5D = 1;
|
|
self.var_A4AA = 1.15;
|
|
scripts\mp\_class::func_8379(self.pers["team"],param_00,0);
|
|
scripts\mp\_utility::func_8387("specialty_blindeye");
|
|
scripts\mp\_utility::func_8387("specialty_coldblooded");
|
|
scripts\mp\_utility::func_8387("specialty_noscopeoutline");
|
|
scripts\mp\_utility::func_8387("specialty_detectexplosive");
|
|
scripts\mp\_utility::func_8387("specialty_marathon");
|
|
scripts\mp\_utility::func_8387("specialty_falldamage");
|
|
self.var_BCF6 = 1.15;
|
|
break;
|
|
|
|
default:
|
|
var_01 = self [[ level.var_B331 ]](param_00);
|
|
break;
|
|
}
|
|
|
|
if(func_CA4E("specialty_hardline"))
|
|
{
|
|
scripts\mp\_utility::func_8387("specialty_hardline");
|
|
}
|
|
|
|
scripts\mp\_weapons::func_12ED5();
|
|
self disableweaponpickup();
|
|
if(!isagent(self))
|
|
{
|
|
if(var_01)
|
|
{
|
|
self setclientomnvar("ui_juggernaut",1);
|
|
thread scripts\mp\_utility::func_115DE(level.var_A4AD[param_00].var_10A41,self);
|
|
thread func_A4A9();
|
|
thread func_139F1();
|
|
thread func_13A13();
|
|
}
|
|
}
|
|
|
|
if(self.var_110F4 == "specialist")
|
|
{
|
|
thread scripts\mp\killstreaks\_killstreaks::func_41C0();
|
|
}
|
|
|
|
thread func_A4AC();
|
|
if(isdefined(self.var_3AF4))
|
|
{
|
|
wait(0.05);
|
|
self attach(self.var_3AF4,"J_spine4",1);
|
|
}
|
|
|
|
level notify("juggernaut_equipped",self);
|
|
scripts\mp\_matchdata::func_AFC9(param_00,self.origin);
|
|
}
|
|
|
|
//Function Number: 3
|
|
func_CA4E(param_00)
|
|
{
|
|
var_01 = self.pers["loadoutPerks"];
|
|
foreach(var_03 in var_01)
|
|
{
|
|
if(var_03 == param_00)
|
|
{
|
|
return 1;
|
|
}
|
|
}
|
|
|
|
return 0;
|
|
}
|
|
|
|
//Function Number: 4
|
|
func_A4A9()
|
|
{
|
|
level endon("game_ended");
|
|
self endon("death");
|
|
self endon("disconnect");
|
|
self endon("jugg_removed");
|
|
for(;;)
|
|
{
|
|
wait(3);
|
|
scripts\mp\_utility::func_D4FB(self,"juggernaut_breathing_player","juggernaut_breathing_sound");
|
|
}
|
|
}
|
|
|
|
//Function Number: 5
|
|
func_13AB0()
|
|
{
|
|
level endon("game_ended");
|
|
for(;;)
|
|
{
|
|
level waittill("host_migration_end");
|
|
foreach(var_01 in level.players)
|
|
{
|
|
if(isai(var_01))
|
|
{
|
|
continue;
|
|
}
|
|
else
|
|
{
|
|
if(var_01 scripts\mp\_utility::func_9E59() && !isdefined(var_01.var_9E5C) && var_01.var_9E5C)
|
|
{
|
|
var_01 setclientomnvar("ui_juggernaut",1);
|
|
continue;
|
|
}
|
|
|
|
var_01 setclientomnvar("ui_juggernaut",0);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
//Function Number: 6
|
|
func_A4AC()
|
|
{
|
|
level endon("game_ended");
|
|
self endon("disconnect");
|
|
self endon("jugg_removed");
|
|
thread func_A4AB();
|
|
scripts\common\utility::waittill_any_3("death","joined_team","joined_spectators","lost_juggernaut");
|
|
self enableweaponpickup();
|
|
self.var_9E59 = 0;
|
|
self.var_9E5A = 0;
|
|
self.var_9E5B = 0;
|
|
self.var_9E5E = 0;
|
|
self.var_9E5D = 0;
|
|
self.var_9E5C = 0;
|
|
if(isplayer(self))
|
|
{
|
|
self setclientomnvar("ui_juggernaut",0);
|
|
}
|
|
|
|
self method_83CC("specialty_radarjuggernaut",1);
|
|
self notify("jugg_removed");
|
|
}
|
|
|
|
//Function Number: 7
|
|
func_A4AB()
|
|
{
|
|
self endon("disconnect");
|
|
self endon("jugg_removed");
|
|
level waittill("game_ended");
|
|
if(isplayer(self))
|
|
{
|
|
self setclientomnvar("ui_juggernaut",0);
|
|
}
|
|
}
|
|
|
|
//Function Number: 8
|
|
func_F766()
|
|
{
|
|
if(isdefined(self.var_8C98))
|
|
{
|
|
self detach(self.var_8C98,"");
|
|
self.var_8C98 = undefined;
|
|
}
|
|
|
|
self setmodel("mp_fullbody_juggernaut_heavy_black");
|
|
self method_8369("viewhands_juggernaut_ally");
|
|
self method_82C6("vestheavy");
|
|
}
|
|
|
|
//Function Number: 9
|
|
func_F767()
|
|
{
|
|
if(isdefined(self.var_8C98))
|
|
{
|
|
self detach(self.var_8C98,"");
|
|
self.var_8C98 = undefined;
|
|
}
|
|
|
|
self setmodel("mp_fullbody_heavy");
|
|
self method_8369("viewhands_juggernaut_ally");
|
|
self attach("mp_warfighter_head_1","",1);
|
|
self.var_8C98 = "mp_warfighter_head_1";
|
|
self method_82C6("nylon");
|
|
}
|
|
|
|
//Function Number: 10
|
|
func_55F4()
|
|
{
|
|
if(scripts\mp\_utility::func_9E59())
|
|
{
|
|
self.var_A4A4 = 1;
|
|
self setclientomnvar("ui_juggernaut",0);
|
|
}
|
|
}
|
|
|
|
//Function Number: 11
|
|
func_626C()
|
|
{
|
|
if(scripts\mp\_utility::func_9E59())
|
|
{
|
|
self.var_A4A4 = undefined;
|
|
self setclientomnvar("ui_juggernaut",1);
|
|
}
|
|
}
|
|
|
|
//Function Number: 12
|
|
func_139F1()
|
|
{
|
|
self endon("death");
|
|
self endon("disconnect");
|
|
self endon("jugg_removed");
|
|
level endon("game_ended");
|
|
for(;;)
|
|
{
|
|
if(!isdefined(self.var_A4A4) && scripts\mp\_utility::func_9FC6())
|
|
{
|
|
self waittill("black_out_done");
|
|
func_55F4();
|
|
}
|
|
|
|
wait(0.05);
|
|
}
|
|
}
|
|
|
|
//Function Number: 13
|
|
func_13A13()
|
|
{
|
|
self endon("death");
|
|
self endon("disconnect");
|
|
self endon("jugg_removed");
|
|
level endon("game_ended");
|
|
for(;;)
|
|
{
|
|
if(isdefined(self.var_A4A4) && !scripts\mp\_utility::func_9FC6())
|
|
{
|
|
func_626C();
|
|
}
|
|
|
|
wait(0.05);
|
|
}
|
|
}
|
|
|
|
//Function Number: 14
|
|
func_988F(param_00,param_01,param_02,param_03)
|
|
{
|
|
level.var_B331 = param_00;
|
|
level.var_B333 = param_01;
|
|
level.var_B332 = param_03;
|
|
game["allies_model"]["JUGGERNAUT_CUSTOM"] = param_02;
|
|
game["axis_model"]["JUGGERNAUT_CUSTOM"] = param_02;
|
|
} |