Files
IL-GSC/IW/PC/ALL/scripts/mp/perks/_perkfunctions.gsc
2023-10-27 03:49:01 -04:00

6433 lines
117 KiB
Plaintext

/*******************************************************************
* Decompiled By: Bog
* Decompiled File: scripts\mp\perks\_perkfunctions.gsc
* Game: Call of Duty: Infinite Warfare
* Platform: PC
* Function Count: 465
* Decompile Time: 21064 ms
* Timestamp: 10/27/2023 12:30:26 AM
*******************************************************************/
//Function Number: 1
func_F7D0()
{
}
//Function Number: 2
func_12D01()
{
}
//Function Number: 3
func_F6DC()
{
}
//Function Number: 4
func_12CA9()
{
}
//Function Number: 5
func_F650()
{
if(!isplayer(self))
{
return;
}
func_2694();
func_2695();
}
//Function Number: 6
func_2695()
{
self waittill("death");
self endon("disconnect");
self endon("endAutoSpotAdsWatcher");
level endon("game_ended");
self method_8021();
}
//Function Number: 7
func_12C76()
{
if(!isplayer(self))
{
return;
}
self notify("endAutoSpotAdsWatcher");
self method_8021();
}
//Function Number: 8
func_2694()
{
self endon("death");
self endon("disconnect");
self endon("endAutoSpotAdsWatcher");
level endon("game_ended");
var_00 = 0;
for(;;)
{
wait(0.05);
if(self isusingturret())
{
self method_8021();
continue;
}
var_01 = self method_822E();
if(var_01 < 1 && var_00)
{
var_00 = 0;
self method_8021();
}
if(var_01 < 1 && !var_00)
{
continue;
}
if(var_01 == 1 && !var_00)
{
var_00 = 1;
self method_8022();
}
}
}
//Function Number: 9
func_F81B()
{
self.var_11B2C = "specialty_regenfaster";
}
//Function Number: 10
func_12D19()
{
self.var_11B2C = undefined;
}
//Function Number: 11
func_11906()
{
self.var_8C1A = undefined;
scripts\mp\_utility::func_E150("specialty_regenfaster");
self setclientdvar("ui_regen_faster_end_milliseconds",0);
self notify("timeOutRegenFaster");
}
//Function Number: 12
func_F73A()
{
self.var_FC6B = 0.25;
}
//Function Number: 13
func_12CCC()
{
self.var_FC6B = 0;
}
//Function Number: 14
func_F83C()
{
thread func_BA14();
}
//Function Number: 15
func_BA14()
{
self endon("death");
self endon("disconnect");
level endon("game_ended");
self endon("stop_monitorSharpFocus");
for(;;)
{
func_12F1A();
self waittill("weapon_change");
}
}
//Function Number: 16
func_12F1A()
{
var_00 = self getcurrentweapon();
var_01 = undefined;
if(level.tactical)
{
if(weaponclass(var_00) == "sniper")
{
var_01 = 0.85;
}
else
{
var_01 = 0.5;
}
}
else if(weaponclass(var_00) == "sniper")
{
var_01 = 0.85;
}
else
{
var_01 = 0.25;
}
scripts\mp\_weapons::func_12F58(var_01);
}
//Function Number: 17
func_12D29()
{
self notify("stop_monitorSharpFocus");
scripts\mp\_weapons::func_12F58(1);
}
//Function Number: 18
func_FB0D()
{
self.var_C826 = 0.2;
self.overrideviewkickscalesniper = 0.425;
scripts\mp\_weapons::func_12F58();
}
//Function Number: 19
func_12D64()
{
self.var_C826 = undefined;
self.overrideviewkickscalesniper = undefined;
scripts\mp\_weapons::func_12F58();
}
//Function Number: 20
func_F633()
{
self.var_13C70 = 0.08;
scripts\mp\_weapons::func_12ED5();
}
//Function Number: 21
func_12C6D()
{
self.var_13C70 = undefined;
scripts\mp\_weapons::func_12ED5();
}
//Function Number: 22
func_F632()
{
self.var_13C6E = 1;
var_00 = scripts\mp\_class::func_3224(self.var_AE7F,self.var_AE86,self.var_AE88,self.var_AE90,self.var_AE91);
var_01 = scripts\mp\_class::func_3224(self.var_AE94,self.var_AE9A,self.var_AE9C,self.var_AEA4,self.var_AEA5);
if(scripts\mp\_utility::func_8225(var_00) == "weapon_projectile")
{
self setweaponammoclip(var_00,weaponclipsize(var_00));
}
if(scripts\mp\_utility::func_8225(var_01) == "weapon_projectile")
{
self setweaponammoclip(var_01,weaponclipsize(var_01));
}
}
//Function Number: 23
func_12C6C()
{
self.var_13C6E = undefined;
}
//Function Number: 24
func_F6D7()
{
self endon("death");
self endon("disconnect");
self endon("endDoubleLoad");
level endon("game_ended");
for(;;)
{
self waittill("reload");
var_00 = self getweaponslist("primary");
foreach(var_02 in var_00)
{
var_03 = self getweaponammoclip(var_02);
var_04 = weaponclipsize(var_02);
var_05 = var_04 - var_03;
var_06 = self getweaponammostock(var_02);
if(var_03 != var_04 && var_06 > 0)
{
if(var_03 + var_06 >= var_04)
{
self setweaponammoclip(var_02,var_04);
self setweaponammostock(var_02,var_06 - var_05);
continue;
}
self setweaponammoclip(var_02,var_03 + var_06);
if(var_06 - var_05 > 0)
{
self setweaponammostock(var_02,var_06 - var_05);
continue;
}
self setweaponammostock(var_02,0);
}
}
}
}
//Function Number: 25
func_12CA8()
{
self notify("endDoubleLoad");
}
//Function Number: 26
func_F78F(param_00)
{
if(!isdefined(param_00))
{
param_00 = 10;
}
else
{
param_00 = int(param_00) * 2;
}
scripts\mp\_utility::setrecoilscale(param_00);
self.recoilscale = param_00;
}
//Function Number: 27
func_12CEC()
{
scripts\mp\_utility::setrecoilscale(0);
self.recoilscale = 0;
}
//Function Number: 28
setfastcrouch()
{
thread watchfastcrouch();
}
//Function Number: 29
watchfastcrouch()
{
self endon("death");
self endon("disconnect");
self endon("fastcrouch_unset");
for(;;)
{
var_00 = self getstance() == "crouch" && !self method_81BE();
if(!isdefined(self.fastcrouchspeedmod))
{
if(var_00)
{
self.fastcrouchspeedmod = 0.3;
scripts\mp\_weapons::func_12ED5();
}
}
else if(!var_00)
{
self.fastcrouchspeedmod = undefined;
scripts\mp\_weapons::func_12ED5();
}
scripts\common\utility::func_136F7();
}
}
//Function Number: 30
unsetfastcrouch()
{
self notify("fastcrouch_unset");
if(isdefined(self.fastcrouchspeedmod))
{
self.fastcrouchspeedmod = undefined;
scripts\mp\_weapons::func_12ED5();
}
}
//Function Number: 31
func_F821()
{
self endon("unsetRShieldRadar");
wait(0.75);
self method_81F3();
thread func_F822();
}
//Function Number: 32
func_F822()
{
self endon("unsetRShieldRadar");
scripts\common\utility::waittill_any_3("disconnect","death");
if(isdefined(self))
{
func_12D1D();
}
}
//Function Number: 33
func_12D1D()
{
self method_8079();
self notify("unsetRShieldRadar");
}
//Function Number: 34
func_F823()
{
self method_81F4();
thread func_F824();
}
//Function Number: 35
func_F824()
{
self endon("unsetRShieldScrambler");
scripts\common\utility::waittill_any_3("disconnect","death");
if(isdefined(self))
{
func_12D1E();
}
}
//Function Number: 36
func_12D1E()
{
self method_807C();
self notify("unsetRShieldScrambler");
}
//Function Number: 37
func_F869(param_00)
{
scripts\mp\_utility::func_8387("specialty_hard_shell");
if(!isdefined(param_00))
{
param_00 = 10;
}
param_00 = int(param_00);
if(param_00 == 10)
{
self.stunscalar = 0;
return;
}
self.stunscalar = param_00 / 10;
}
//Function Number: 38
func_12D3C()
{
self.stunscalar = 1;
}
//Function Number: 39
func_20E0(param_00,param_01,param_02)
{
if(param_01 scripts\mp\_utility::_hasperk("specialty_stun_resistance"))
{
if(isdefined(param_01.stunscalar) && isdefined(param_02))
{
param_02 = param_02 * param_01.stunscalar;
}
var_03 = scripts\common\utility::func_116D7(isdefined(param_00.var_222),param_00.var_222,param_00);
var_04 = scripts\common\utility::func_116D7(isdefined(param_01.var_222),param_01.var_222,param_01);
if(isplayer(var_03) && var_03 != param_01)
{
param_00 scripts\mp\_damagefeedback::func_12E84("hittacresist",undefined,undefined,undefined,1);
}
if(scripts\mp\_utility::func_9FB3(scripts\mp\_utility::playersareenemies(var_03,var_04)))
{
param_01 scripts\mp\_missions::func_E280(var_03);
}
}
return param_02;
}
//Function Number: 40
func_FB17()
{
if(isagent(self))
{
return;
}
self endon("unsetWeaponLaser");
wait(0.5);
thread func_FB18();
}
//Function Number: 41
func_12D68()
{
self notify("unsetWeaponLaser");
if(isdefined(self.var_CA6A) && self.var_CA6A)
{
scripts\mp\_utility::func_561C();
}
self.var_CA6A = undefined;
self.var_CA69 = undefined;
}
//Function Number: 42
func_FB1C(param_00)
{
for(;;)
{
param_00 = getweaponbasename(param_00);
if(isdefined(param_00) && param_00 == "iw6_kac_mp" || param_00 == "iw6_arx160_mp")
{
break;
}
self waittill("weapon_change",param_00);
}
}
//Function Number: 43
func_FB18()
{
self endon("death");
self endon("disconnect");
self endon("unsetWeaponLaser");
self.var_CA6A = 0;
var_00 = self getcurrentweapon();
for(;;)
{
func_FB1C(var_00);
if(self.var_CA6A == 0)
{
self.var_CA6A = 1;
scripts\mp\_utility::func_6282();
}
childthread func_FB19();
childthread func_FB1A(1);
self.var_CA69 = undefined;
self waittill("weapon_change",var_00);
if(self.var_CA6A == 1)
{
self.var_CA6A = 0;
scripts\mp\_utility::func_561C();
}
}
}
//Function Number: 44
func_FB1A(param_00)
{
self endon("weapon_change");
for(;;)
{
self waittill("weapon_switch_started");
childthread func_FB1B(param_00);
}
}
//Function Number: 45
func_FB1B(param_00)
{
self notify("setWeaponLaser_onWeaponSwitchStart");
self endon("setWeaponLaser_onWeaponSwitchStart");
if(self.var_CA6A == 1)
{
self.var_CA69 = 1;
self.var_CA6A = 0;
scripts\mp\_utility::func_561C();
}
wait(param_00);
self.var_CA69 = undefined;
if(self.var_CA6A == 0 && self method_822E() <= 0.6)
{
self.var_CA6A = 1;
scripts\mp\_utility::func_6282();
}
}
//Function Number: 46
func_FB19()
{
self endon("weapon_change");
for(;;)
{
if(!isdefined(self.var_CA69) || self.var_CA69 == 0)
{
if(self method_822E() > 0.6)
{
if(self.var_CA6A == 1)
{
self.var_CA6A = 0;
scripts\mp\_utility::func_561C();
}
}
else if(self.var_CA6A == 0)
{
self.var_CA6A = 1;
scripts\mp\_utility::func_6282();
}
}
scripts\common\utility::func_136F7();
}
}
//Function Number: 47
func_F860()
{
self method_829B(0.5);
}
//Function Number: 48
func_12D37()
{
self notify("end_SteadyAimPro");
self method_829B(1);
}
//Function Number: 49
func_2B69(param_00,param_01)
{
self endon("death");
self endon("disconnect");
self endon("end_perkUseTracker");
level endon("game_ended");
for(;;)
{
self waittill("empty_offhand");
if(!scripts\common\utility::func_9EC1())
{
continue;
}
self [[ param_01 ]](scripts\mp\_utility::_hasperk("specialty_blastshield"));
}
}
//Function Number: 50
func_CA67()
{
self endon("disconnect");
self waittill("death");
self.var_1439 = undefined;
}
//Function Number: 51
func_F6DE()
{
if(isdefined(self.endgame))
{
return;
}
self.maxhealth = scripts\mp\_tweakables::func_81E7("player","maxhealth") * 4;
self.health = self.maxhealth;
self.endgame = 1;
self.var_250E[0] = "";
self visionsetnakedforplayer("end_game",5);
thread func_6325(7);
scripts\mp\_gamelogic::func_F73B(self,1);
}
//Function Number: 52
func_12CAA()
{
self notify("stopEndGame");
self.endgame = undefined;
scripts\mp\_utility::func_E2D8(1);
if(!isdefined(self.var_632B))
{
return;
}
self.var_632B scripts\mp\_hud_util::destroyelem();
self.var_6328 scripts\mp\_hud_util::destroyelem();
}
//Function Number: 53
func_6325(param_00)
{
self endon("death");
self endon("disconnect");
self endon("joined_team");
level endon("game_ended");
self endon("stopEndGame");
wait(param_00 + 1);
scripts\mp\_utility::func_1417();
}
//Function Number: 54
func_F827()
{
self.var_C2AD = 1.2;
}
//Function Number: 55
func_12D21()
{
self.var_C2AD = 1;
}
//Function Number: 56
func_F698()
{
self endon("death");
self endon("disconnect");
self endon("unsetCombatSpeed");
self.var_93CF = 0;
func_12C96();
for(;;)
{
self waittill("damage",var_00,var_01);
if(!isdefined(var_01.team))
{
continue;
}
if(level.teambased && var_01.team == self.team)
{
continue;
}
if(self.var_93CF)
{
continue;
}
func_F699();
self.var_93CF = 1;
thread func_636C();
}
}
//Function Number: 57
func_636C()
{
self notify("endOfSpeedWatcher");
self endon("endOfSpeedWatcher");
self endon("death");
self endon("disconnect");
self waittill("healed");
func_12C96();
self.var_93CF = 0;
}
//Function Number: 58
func_F699()
{
if(isdefined(self.var_9E59) && self.var_9E59)
{
return;
}
if(self.var_13CCF <= 0.8)
{
self.var_440B = 1.4;
}
else if(self.var_13CCF <= 0.9)
{
self.var_440B = 1.3;
}
else
{
self.var_440B = 1.2;
}
scripts\mp\_weapons::func_12ED5();
}
//Function Number: 59
func_12C96()
{
self.var_440B = 1;
scripts\mp\_weapons::func_12ED5();
}
//Function Number: 60
func_12C95()
{
func_12C96();
self notify("unsetCombatSpeed");
}
//Function Number: 61
func_F788()
{
if(!isdefined(self.var_47ED))
{
self.var_BCF6 = scripts\mp\_utility::func_ACD8();
scripts\mp\_weapons::func_12ED5();
}
}
//Function Number: 62
func_12CE6()
{
self.var_BCF6 = 1;
scripts\mp\_weapons::func_12ED5();
}
//Function Number: 63
func_F663()
{
self.killstreakscaler = 1.5;
}
//Function Number: 64
func_12C7F()
{
self.killstreakscaler = 1;
}
//Function Number: 65
func_F862()
{
scripts\mp\_utility::func_8387("specialty_bulletaccuracy");
scripts\mp\_utility::func_8387("specialty_holdbreath");
}
//Function Number: 66
func_12D39()
{
scripts\mp\_utility::func_E150("specialty_bulletaccuracy");
scripts\mp\_utility::func_E150("specialty_holdbreath");
}
//Function Number: 67
func_F6C1()
{
}
//Function Number: 68
func_12CA1()
{
}
//Function Number: 69
func_F78A()
{
if(!scripts\mp\killstreaks\_emp_common::isemped())
{
self method_81F4();
}
}
//Function Number: 70
func_12CE9()
{
self method_807C();
}
//Function Number: 71
func_F885()
{
self thermalvisionon();
}
//Function Number: 72
func_12D49()
{
self thermalvisionoff();
}
//Function Number: 73
func_F7C6()
{
thread func_C50C();
}
//Function Number: 74
func_12CF9()
{
self notify("stop_oneManArmyTracker");
}
//Function Number: 75
func_C50C()
{
self endon("death");
self endon("disconnect");
level endon("game_ended");
self endon("stop_oneManArmyTracker");
for(;;)
{
self waittill("weapon_change",var_00);
if(var_00 != "onemanarmy_mp")
{
continue;
}
thread func_F1CC();
}
}
//Function Number: 76
func_9EC5(param_00)
{
if(param_00 == game["menu_onemanarmy"])
{
return 1;
}
if(isdefined(game["menu_onemanarmy_defaults_splitscreen"]) && param_00 == game["menu_onemanarmy_defaults_splitscreen"])
{
return 1;
}
if(isdefined(game["menu_onemanarmy_custom_splitscreen"]) && param_00 == game["menu_onemanarmy_custom_splitscreen"])
{
return 1;
}
return 0;
}
//Function Number: 77
func_F1CC()
{
self endon("death");
self endon("disconnect");
level endon("game_ended");
scripts\common\utility::func_1C76(0);
scripts\common\utility::func_1C58(0);
scripts\common\utility::func_1C6E(0);
thread func_4293();
self waittill("menuresponse",var_00,var_01);
scripts\common\utility::func_1C76(1);
scripts\common\utility::func_1C58(1);
scripts\common\utility::func_1C6E(1);
if(var_01 == "back" || !func_9EC5(var_00) || scripts\mp\_utility::func_9FC6())
{
if(self getcurrentweapon() == "onemanarmy_mp")
{
scripts\common\utility::func_1C76(0);
scripts\common\utility::func_1C58(0);
scripts\common\utility::func_1C6E(0);
scripts\mp\_utility::_switchtoweapon(scripts\common\utility::getlastweapon());
self waittill("weapon_change");
scripts\common\utility::func_1C76(1);
scripts\common\utility::func_1C58(1);
scripts\common\utility::func_1C6E(1);
}
return;
}
thread func_8384(var_01);
}
//Function Number: 78
func_4293()
{
self endon("menuresponse");
self endon("disconnect");
level endon("game_ended");
self waittill("death");
scripts\common\utility::func_1C76(1);
scripts\common\utility::func_1C58(1);
scripts\common\utility::func_1C6E(1);
}
//Function Number: 79
func_8384(param_00)
{
self endon("death");
self endon("disconnect");
level endon("game_ended");
if(scripts\mp\_utility::_hasperk("specialty_omaquickchange"))
{
var_01 = 3;
scripts\mp\_utility::func_D4FB(self,"foly_onemanarmy_bag3_plr","foly_onemanarmy_bag3_npc");
}
else
{
var_01 = 6;
scripts\mp\_utility::func_D4FB(self,"foly_onemanarmy_bag6_plr","foly_onemanarmy_bag6_npc");
}
thread func_C4A0(var_01);
scripts\common\utility::allow_weapon(0);
scripts\common\utility::func_1C58(0);
scripts\common\utility::func_1C6E(0);
wait(var_01);
scripts\common\utility::allow_weapon(1);
scripts\common\utility::func_1C58(1);
scripts\common\utility::func_1C6E(1);
self.var_C47E = 1;
scripts\mp\_class::func_8379(self.pers["team"],param_00);
if(isdefined(self.var_3AF4))
{
self attach(self.var_3AF4,"J_spine4",1);
}
self notify("changed_kit");
level notify("changed_kit");
}
//Function Number: 80
func_C4A0(param_00)
{
self endon("disconnect");
var_01 = scripts\mp\_hud_util::createprimaryprogressbar();
var_02 = scripts\mp\_hud_util::createprimaryprogressbartext();
var_02 settext(&"MPUI_CHANGING_KIT");
var_01 scripts\mp\_hud_util::updatebar(0,1 / param_00);
var_03 = 0;
while(var_03 < param_00 && isalive(self) && !level.var_7669)
{
wait(0.05);
var_03 = var_03 + 0.05;
}
var_01 scripts\mp\_hud_util::destroyelem();
var_02 scripts\mp\_hud_util::destroyelem();
}
//Function Number: 81
func_F634()
{
self.var_11B2C = "specialty_afterburner";
self method_8434(0,scripts\common\utility::func_116D7(scripts\mp\_utility::func_9D46(),600,650));
self method_8430(0,scripts\common\utility::func_116D7(scripts\mp\_utility::func_9D46(),900,900));
}
//Function Number: 82
func_12C6E()
{
self.var_11B2C = undefined;
self method_8434(0,400);
self method_8430(0,900);
}
//Function Number: 83
func_F667()
{
self method_8376("primaryoffhand","icon_perks_blast_shield");
}
//Function Number: 84
func_12C82()
{
self method_8376("primaryoffhand","none");
}
//Function Number: 85
func_F719()
{
}
//Function Number: 86
func_12CC1()
{
}
//Function Number: 87
func_F870()
{
var_00 = "secondary";
var_01 = scripts\mp\_powers::func_808C(var_00);
if(isdefined(var_01))
{
scripts\mp\_powers::func_E15E(var_01);
}
scripts\mp\_powers::func_8397("power_tacInsert",var_00,0);
thread func_BA34();
}
//Function Number: 88
func_12D41()
{
self notify("end_monitorTIUse");
}
//Function Number: 89
func_41D2()
{
scripts\common\utility::waittill_any_3("disconnect","joined_team","joined_spectators");
if(isdefined(self.var_F851))
{
func_51D7(self.var_F851);
}
}
//Function Number: 90
func_12F47()
{
self endon("death");
self endon("disconnect");
level endon("game_ended");
self endon("end_monitorTIUse");
while(scripts\mp\_utility::func_9F19(self))
{
if(func_9FE9())
{
self.var_11947 = self.origin;
}
wait(0.05);
}
}
//Function Number: 91
func_9FE9()
{
if(canspawn(self.origin) && self isonground() && !scripts\mp\_utility::func_11A44())
{
return 1;
}
return 0;
}
//Function Number: 92
func_11899(param_00)
{
if(scripts\mp\_utility::func_9F19(param_00.var_222))
{
param_00.var_222 func_51D7(self);
}
}
//Function Number: 93
func_BA34()
{
self endon("death");
self endon("disconnect");
level endon("game_ended");
self endon("end_monitorTIUse");
thread func_12F47();
thread func_41D2();
for(;;)
{
self waittill("grenade_fire",var_00,var_01);
if(var_01 != "flare_mp")
{
continue;
}
if(isdefined(self.var_F851))
{
func_51D7(self.var_F851);
}
if(!isdefined(self.var_11947))
{
continue;
}
if(scripts\mp\_utility::touchingbadtrigger())
{
continue;
}
var_02 = self.var_11947 + (0,0,16);
var_03 = self.var_11947 - (0,0,2048);
var_04 = playerphysicstrace(var_02,var_03) + (0,0,1);
var_05 = [];
var_05[0] = self;
var_06 = scripts\common\trace::func_48BC(1,1,1,1,0,1,1);
var_07 = scripts\common\trace::func_DCED(var_02,var_03,var_05,var_06,0);
var_08 = spawn("script_model",var_04);
var_08.angles = self.angles;
var_08.team = self.team;
var_08.var_222 = self;
var_08.var_6578 = spawn("script_origin",var_04);
var_08 thread func_83EC(self);
var_08.var_D424 = self.var_11947;
var_08 method_831F(self);
var_08 scripts\mp\sentientpoolmanager::registersentient("Tactical_Static",self);
var_08 scripts\mp\_weapons::func_69FF(var_07["entity"]);
scripts\mp\_weapons::func_C5AC(var_08);
self.var_F851 = var_08;
}
}
//Function Number: 94
func_83EC(param_00)
{
self setmodel(level.var_108D3["enemy"]);
if(level.teambased)
{
scripts\mp\_entityheadicons::func_F877(self.team,(0,0,20));
}
else
{
scripts\mp\_entityheadicons::func_F7F2(param_00,(0,0,20));
}
thread func_83E8(param_00);
thread func_83E9(param_00);
thread func_83EE(param_00);
thread func_83EF(param_00);
var_01 = spawn("script_model",self.origin);
var_01.angles = self.angles;
var_01 setmodel(level.var_108D3["friendly"]);
var_01 method_82C7(0);
var_01 linkto(self);
var_01 playloopsound("tactical_insert_lp");
thread func_83ED(self,var_01,param_00);
self waittill("death");
var_01 stoploopsound();
var_01 delete();
}
//Function Number: 95
func_83ED(param_00,param_01,param_02)
{
param_00 endon("death");
wait(0.05);
var_03 = [];
var_03["enemy"] = param_00;
var_03["friendly"] = param_01;
for(;;)
{
foreach(var_05 in var_03)
{
var_05 hide();
}
foreach(var_08 in level.players)
{
var_09 = "friendly";
if(param_02 scripts\mp\_utility::func_9DD6(var_08))
{
var_09 = "enemy";
}
var_05 = var_03[var_09];
var_05 show();
scripts\common\utility::func_136F7();
playfxontagforclients(level.var_108D2[var_09],var_05,"tag_fx",var_08);
}
level waittill("joined_team");
foreach(var_09, var_05 in var_03)
{
stopfxontag(level.var_108D2[var_09],var_05,"tag_fx");
}
scripts\common\utility::func_136F7();
}
}
//Function Number: 96
func_51BF(param_00)
{
self waittill("death");
if(isdefined(param_00))
{
param_00 delete();
}
}
//Function Number: 97
func_83E8(param_00)
{
scripts\mp\_damage::func_B9C6(100,"tactical_insertion",::func_83EB,::func_83EA,1);
}
//Function Number: 98
func_83EB(param_00,param_01,param_02,param_03,param_04)
{
return scripts\mp\_damage::func_89C3(param_01,param_02);
}
//Function Number: 99
func_83EA(param_00,param_01,param_02,param_03,param_04)
{
if(isdefined(self.var_222) && param_00 != self.var_222)
{
param_00 notify("destroyed_insertion",self.var_222);
param_00 notify("destroyed_equipment");
self.var_222 thread scripts\mp\_utility::func_AAEC("ti_destroyed",undefined,undefined,self.origin);
}
param_00 thread func_51D7(self);
}
//Function Number: 100
func_83EE(param_00)
{
self endon("death");
level endon("game_ended");
param_00 endon("disconnect");
self setcursorhint("HINT_NOICON");
self sethintstring(&"MP_PATCH_PICKUP_TI");
thread func_12E8B(param_00);
for(;;)
{
self waittill("trigger",var_01);
var_01 playsound("tactical_insert_flare_pu");
if(!var_01 scripts\mp\_utility::func_9E59())
{
var_01 thread func_F870();
}
var_01 thread func_51D7(self);
}
}
//Function Number: 101
func_12E8B(param_00)
{
self endon("death");
for(;;)
{
scripts\mp\_utility::func_F838(param_00);
level scripts\common\utility::waittill_either("joined_team","player_spawned");
}
}
//Function Number: 102
func_83EF(param_00)
{
self endon("death");
param_00 waittill("disconnect");
thread func_51D7(self);
}
//Function Number: 103
func_51D7(param_00)
{
if(isdefined(param_00.var_6578))
{
param_00.var_6578 delete();
}
var_01 = param_00.origin;
var_02 = param_00.angles;
var_03 = param_00 getlinkedparent();
param_00 delete();
var_04 = spawn("script_model",var_01);
var_04.angles = var_02;
var_04 setmodel(level.var_108D3["friendly"]);
var_04 method_82C7(0);
if(isdefined(var_03))
{
var_04 linkto(var_03);
}
thread func_5F2B(var_04);
}
//Function Number: 104
func_5F2B(param_00)
{
wait(1);
stopfxontag(level.var_108D2["friendly"],param_00,"tag_fx");
stopfxontag(level.var_108D2["enemy"],param_00,"tag_fx");
param_00 delete();
}
//Function Number: 105
func_83E9(param_00)
{
self endon("death");
level endon("game_ended");
param_00 endon("disconnect");
self.var_6578 setcursorhint("HINT_NOICON");
self.var_6578 sethintstring(&"MP_PATCH_DESTROY_TI");
self.var_6578 scripts\mp\_utility::func_B2A0(param_00);
for(;;)
{
self.var_6578 waittill("trigger",var_01);
var_01 notify("destroyed_insertion",param_00);
var_01 notify("destroyed_equipment");
if(isdefined(param_00) && var_01 != param_00)
{
param_00 thread scripts\mp\_utility::func_AAEC("ti_destroyed",undefined,undefined,self.origin);
}
var_01 thread func_51D7(self);
}
}
//Function Number: 106
func_F7D5(param_00)
{
if(isplayer(self))
{
var_01 = 0.5;
if(!scripts\mp\_utility::_hasperk("specialty_engineer") && !scripts\mp\_utility::_hasperk("specialty_noscopeoutline"))
{
self.var_C881 = 1;
var_02 = scripts\mp\_utility::func_C794(self,"orange",param_00,0,0,"perk");
thread func_13AE8(var_02,var_01);
thread func_13AE9(var_02);
}
}
}
//Function Number: 107
func_13AE8(param_00,param_01)
{
self notify("painted_again");
self endon("painted_again");
self endon("disconnect");
level endon("game_ended");
scripts\common\utility::waittill_any_timeout_1(param_01,"death");
self.var_C881 = 0;
scripts\mp\_utility::func_C78F(param_00,self);
self notify("painted_end");
}
//Function Number: 108
func_13AE9(param_00)
{
self endon("disconnect");
level endon("game_ended");
scripts\common\utility::waittill_any_3("painted_again","painted_end");
scripts\mp\_utility::func_C78F(param_00,self);
}
//Function Number: 109
func_9ED2()
{
return isdefined(self.var_C881) && self.var_C881;
}
//Function Number: 110
func_F64B()
{
}
//Function Number: 111
func_12C71()
{
}
//Function Number: 112
func_F819()
{
if(isdefined(self.var_D8D6))
{
self givemaxammo(self.var_D8D6);
}
if(isdefined(self.var_F0BB))
{
self givemaxammo(self.var_F0BB);
}
}
//Function Number: 113
func_12D17()
{
}
//Function Number: 114
func_F818()
{
if(isdefined(self.var_D8E1))
{
self givemaxammo(self.var_D8E1);
}
if(isdefined(self.var_F0C4))
{
self givemaxammo(self.var_F0C4);
}
}
//Function Number: 115
func_12D16()
{
}
//Function Number: 116
func_F737()
{
thread func_F738();
}
//Function Number: 117
func_F738()
{
self endon("disconnect");
self endon("death");
level endon("game_ended");
self endon("unsetGunsmith");
self waittill("giveLoadout");
if(self.var_AE86.size == 0 && self.var_AE9A.size == 0)
{
return;
}
for(;;)
{
self waittill("weapon_change",var_00);
if(var_00 == "none")
{
continue;
}
if(scripts\mp\_utility::func_9E6C(var_00))
{
continue;
}
if(!scripts\mp\_utility::isstrstart(var_00,"iw6_") && !scripts\mp\_utility::isstrstart(var_00,"iw7_"))
{
continue;
}
var_01 = undefined;
if(scripts\mp\_utility::func_8225(var_00) == "weapon_pistol")
{
if(self.var_AE9A.size > 0)
{
var_01 = self.var_AE9A;
}
}
else if(self.var_AE86.size > 0)
{
var_01 = self.var_AE86;
}
if(!isdefined(var_01))
{
continue;
}
var_02 = 0;
var_03 = scripts\mp\_utility::func_821A(var_00);
if(var_03.size == 0)
{
var_02 = 1;
}
else
{
foreach(var_05 in var_01)
{
if(!scripts\common\utility::func_2286(var_03,var_05))
{
var_02 = 1;
break;
}
}
}
if(!var_02)
{
continue;
}
var_07 = [];
var_08 = scripts\mp\_utility::func_8217(var_00);
foreach(var_05 in var_01)
{
if(scripts\common\utility::func_2286(var_08,var_05))
{
var_07[var_07.size] = var_05;
}
}
var_01 = var_07;
var_0B = [];
foreach(var_0D in var_03)
{
var_0E = 1;
foreach(var_10 in var_01)
{
if(!scripts\mp\_utility::func_249D(var_10,var_0D))
{
var_0E = 0;
break;
}
}
if(var_0E)
{
var_0B[var_0B.size] = var_0D;
}
}
var_03 = var_0B;
var_13 = var_01.size + var_03.size;
if(var_13 > 4)
{
var_03 = scripts\common\utility::array_randomize(var_03);
}
for(var_14 = 0;var_01.size < 4 && var_14 < var_03.size;var_14++)
{
var_01[var_01.size] = var_03[var_14];
}
var_15 = getweaponbasename(var_00);
var_16 = var_15;
foreach(var_14, var_05 in var_01)
{
var_18 = scripts\mp\_utility::func_2496(var_05,var_00);
var_01[var_14] = var_18;
}
var_01 = scripts\common\utility::func_1D3A(var_01);
foreach(var_05 in var_01)
{
var_16 = var_16 + "_" + var_05;
}
if(var_16 != var_15)
{
var_1B = self getweaponammoclip(var_00);
var_1C = self getweaponammostock(var_00);
scripts\mp\_utility::func_141E(var_00);
self giveweapon(var_16);
self setweaponammoclip(var_16,var_1B);
self setweaponammostock(var_16,var_1C);
scripts\mp\_utility::_switchtoweapon(var_16);
}
}
}
//Function Number: 118
func_12CCB()
{
self notify("unsetGunsmith");
}
//Function Number: 119
func_F71F()
{
self setclientomnvar("ui_gambler_show",-1);
func_F720();
}
//Function Number: 120
func_F720()
{
}
//Function Number: 121
func_765A()
{
if(!isai(self))
{
return self getplayerdata(level.var_AEA6,"squadMembers","loadouts",self.var_4006,"abilitiesPicked",scripts\mp\_utility::func_7D91(6,0));
}
else
{
var_00 = [];
if(isdefined(self.pers["loadoutPerks"]))
{
var_00 = scripts\common\utility::array_combine(var_00,self.pers["loadoutPerks"]);
}
foreach(var_02 in var_00)
{
if(scripts\mp\_utility::func_7DF6(var_02) == "specialty_gambler")
{
return 1;
}
}
}
return 0;
}
//Function Number: 122
func_8367(param_00)
{
self endon("death");
self endon("disconnect");
self endon("unsetGambler");
level endon("game_ended");
if(!scripts\mp\_utility::func_766C("prematch_done"))
{
scripts\mp\_utility::func_7670("prematch_done");
}
else if(scripts\mp\_utility::func_766C("prematch_done") && self.var_110F4 != "specialist")
{
self waittill("giveLoadout");
}
if(!isdefined(self.var_1519))
{
self.var_1519 = 0;
}
if(!self.var_1519)
{
var_01 = func_80AD(param_00);
self.var_7658 = var_01;
}
else
{
var_01 = self.var_7658;
}
scripts\mp\_utility::func_8387(var_01.var_92B8);
if(var_01.var_92B8 == "specialty_hardline")
{
scripts\mp\killstreaks\_killstreaks::func_F866();
}
if(func_1012B())
{
self playlocalsound("mp_suitcase_pickup");
self setclientomnvar("ui_gambler_show",var_01.var_E76D);
thread func_7659();
}
if(level.gametype != "infect")
{
self.var_1519 = 1;
}
}
//Function Number: 123
func_1012B()
{
var_00 = 1;
if(!level.ingraceperiod && self.var_1519)
{
var_00 = 0;
}
if(!scripts\mp\_utility::func_1C7D() && level.gametype != "infect")
{
var_00 = 0;
}
return var_00;
}
//Function Number: 124
func_7659()
{
self endon("death");
self endon("disconnect");
self endon("unsetGambler");
level endon("game_ended");
self waittill("luinotifyserver",var_00,var_01);
if(var_00 == "gambler_anim_complete")
{
self setclientomnvar("ui_gambler_show",-1);
}
}
//Function Number: 125
func_80AD(param_00)
{
var_01 = [];
var_01 = thread func_10437(param_00);
var_01 = thread func_F674(var_01);
var_02 = randomint(level.var_151A["sum"]);
var_03 = undefined;
foreach(var_05 in var_01)
{
if(!var_05.var_13CE8 || var_05.var_92B8 == "specialty_gambler")
{
continue;
}
if(var_05.var_13CE8 > var_02)
{
var_03 = var_05;
break;
}
}
return var_03;
}
//Function Number: 126
func_10437(param_00)
{
var_01 = [];
var_02 = [];
for(var_03 = 1;var_03 < param_00.size;var_03++)
{
var_04 = param_00[var_03].var_13CE8;
var_01 = param_00[var_03];
for(var_05 = var_03 - 1;var_05 >= 0 && func_9D1D(param_00[var_05].var_13CE8,var_04);var_05--)
{
var_02 = param_00[var_05];
param_00[var_05] = var_01;
param_00[var_05 + 1] = var_02;
}
}
return param_00;
}
//Function Number: 127
func_9D1D(param_00,param_01)
{
return param_00 < param_01;
}
//Function Number: 128
func_F674(param_00)
{
level.var_151A["sum"] = 0;
foreach(var_02 in param_00)
{
if(!var_02.var_13CE8)
{
continue;
}
level.var_151A["sum"] = level.var_151A["sum"] + var_02.var_13CE8;
var_02.var_13CE8 = level.var_151A["sum"];
}
return param_00;
}
//Function Number: 129
func_12CC5()
{
self notify("unsetGambler");
}
//Function Number: 130
func_F69B()
{
}
//Function Number: 131
func_12C97()
{
}
//Function Number: 132
func_F871()
{
thread func_F872();
}
//Function Number: 133
func_F872()
{
self endon("death");
self endon("disconnect");
self endon("unsetTagger");
level endon("game_ended");
for(;;)
{
self waittill("eyesOn");
var_00 = self method_8156();
foreach(var_02 in var_00)
{
if(level.teambased && var_02.team == self.team)
{
continue;
}
if(isalive(var_02) && var_02.sessionstate == "playing")
{
if(!isdefined(var_02.var_CA55))
{
var_02.var_CA55 = 0;
}
if(!var_02.var_CA55)
{
var_02.var_CA55 = 1;
}
var_02 thread func_C7B2(self);
}
}
}
}
//Function Number: 134
func_C7B2(param_00)
{
self endon("death");
self endon("disconnect");
self endon("eyesOff");
level endon("game_ended");
for(;;)
{
var_01 = 1;
var_02 = param_00 method_8156();
foreach(var_04 in var_02)
{
if(var_04 == self)
{
var_01 = 0;
break;
}
}
if(var_01)
{
self.var_CA55 = 0;
self notify("eyesOff");
}
wait(0.5);
}
}
//Function Number: 135
func_12D42()
{
self notify("unsetTagger");
}
//Function Number: 136
func_F7E9()
{
thread func_F7EA();
}
//Function Number: 137
func_F7EA()
{
self endon("death");
self endon("disconnect");
self endon("unsetPitcher");
level endon("game_ended");
scripts\mp\_utility::func_8387("specialty_throwback");
self method_82F3(1.5);
for(;;)
{
self method_82F4(1.25);
self waittill("grenade_pullback",var_00);
if(var_00 == "airdrop_marker_mp" || var_00 == "killstreak_uplink_mp" || var_00 == "deployable_vest_marker_mp" || var_00 == "deployable_weapon_crate_marker_mp" || var_00 == "airdrop_juggernaut_mp")
{
self method_82F4(1);
}
self waittill("grenade_fire",var_01,var_02);
}
}
//Function Number: 138
func_12D0C()
{
self method_82F3(1);
self method_82F4(1);
scripts\mp\_utility::func_E150("specialty_throwback");
self notify("unsetPitcher");
}
//Function Number: 139
func_F670()
{
self.var_11B2C = "specialty_boom";
}
//Function Number: 140
func_F671(param_00)
{
self endon("death");
self endon("disconnect");
self endon("unsetBoom");
level endon("game_ended");
param_00 endon("death");
param_00 endon("disconnect");
scripts\common\utility::func_136F7();
function_0222(self.origin,param_00,800,1500);
param_00 func_2CA9(self.origin,self);
}
//Function Number: 141
func_2CA9(param_00,param_01)
{
foreach(var_03 in level.players)
{
if(param_01 == var_03)
{
continue;
}
if(scripts\mp\_utility::func_9DD6(var_03) && isalive(var_03) && !var_03 scripts\mp\_utility::_hasperk("specialty_gpsjammer") && distancesquared(param_00,var_03.origin) <= 490000)
{
scripts\mp\_missions::func_D991("ch_trait_ping");
}
}
}
//Function Number: 142
func_2CA8(param_00,param_01)
{
self endon("disconnect");
param_00 endon("removearchetype");
var_02 = scripts\common\utility::waittill_any_timeout_1(7,"death");
if(var_02 == "timeout" && isdefined(self.var_B370[param_01]))
{
self.var_B370[param_01] = undefined;
return;
}
self waittill("spawned_player");
self.var_B370 = undefined;
}
//Function Number: 143
func_12C87()
{
self.var_11B2C = undefined;
self notify("unsetBoom");
}
//Function Number: 144
func_4C8E(param_00)
{
self endon("death");
self endon("faux_spawn");
self endon("disconnect");
self endon("unset_custom_juiced");
level endon("game_ended");
self.var_9E62 = 1;
self.var_BCF6 = 1.1;
scripts\mp\_weapons::func_12ED5();
scripts\mp\_utility::func_8387("specialty_fastreload");
scripts\mp\_utility::func_8387("specialty_quickdraw");
scripts\mp\_utility::func_8387("specialty_stalker");
scripts\mp\_utility::func_8387("specialty_fastoffhand");
scripts\mp\_utility::func_8387("specialty_fastsprintrecovery");
scripts\mp\_utility::func_8387("specialty_quickswap");
thread func_12C9C();
thread func_12C9E();
thread func_12C9D();
var_01 = param_00 * 1000 + gettime();
if(!isai(self))
{
self setclientomnvar("ui_juiced_end_milliseconds",var_01);
}
wait(param_00);
func_12C9B();
}
//Function Number: 145
func_12C9B(param_00)
{
if(!isdefined(param_00))
{
if(scripts\mp\_utility::func_9E59())
{
if(isdefined(self.var_A4AA))
{
self.var_BCF6 = self.var_A4AA;
}
else
{
self.var_BCF6 = 0.7;
}
}
else
{
self.var_BCF6 = 1;
if(scripts\mp\_utility::_hasperk("specialty_lightweight"))
{
self.var_BCF6 = scripts\mp\_utility::func_ACD8();
}
}
scripts\mp\_weapons::func_12ED5();
}
scripts\mp\_utility::func_E150("specialty_fastreload");
scripts\mp\_utility::func_E150("specialty_quickdraw");
scripts\mp\_utility::func_E150("specialty_stalker");
scripts\mp\_utility::func_E150("specialty_fastoffhand");
scripts\mp\_utility::func_E150("specialty_fastsprintrecovery");
scripts\mp\_utility::func_E150("specialty_quickswap");
self.var_9E62 = undefined;
if(!isai(self))
{
self setclientomnvar("ui_juiced_end_milliseconds",0);
}
self notify("unset_custom_juiced");
}
//Function Number: 146
func_12C9E()
{
self endon("disconnect");
self endon("unset_custom_juiced");
for(;;)
{
wait(0.05);
if(scripts\mp\_utility::func_9FC6())
{
thread func_12C9B();
break;
}
}
}
//Function Number: 147
func_12C9C()
{
self endon("disconnect");
self endon("unset_custom_juiced");
scripts\common\utility::waittill_any_3("death","faux_spawn");
thread func_12C9B(1);
}
//Function Number: 148
func_12C9D()
{
self endon("disconnect");
self endon("unset_custom_juiced");
level scripts\common\utility::waittill_any_3("round_end_finished","game_ended");
thread func_12C9B();
}
//Function Number: 149
func_F897()
{
}
//Function Number: 150
func_F898()
{
self endon("death");
self endon("disconnect");
self endon("unsetTriggerHappy");
level endon("game_ended");
var_00 = self.var_A978;
var_01 = self getweaponammostock(var_00);
var_02 = self getweaponammoclip(var_00);
self method_817C(var_00);
var_03 = self getweaponammoclip(var_00);
var_04 = var_03 - var_02;
var_05 = var_01 - var_04;
if(var_04 > var_01)
{
self setweaponammoclip(var_00,var_02 + var_01);
var_05 = 0;
}
self setweaponammostock(var_00,var_05);
self playlocalsound("ammo_crate_use");
self setclientomnvar("ui_trigger_happy",1);
wait(0.2);
self setclientomnvar("ui_trigger_happy",0);
}
//Function Number: 151
func_12D51()
{
self setclientomnvar("ui_trigger_happy",0);
self notify("unsetTriggerHappy");
}
//Function Number: 152
func_F754()
{
}
//Function Number: 153
func_12CD7()
{
}
//Function Number: 154
func_F668()
{
}
//Function Number: 155
func_12C83()
{
}
//Function Number: 156
func_F810()
{
}
//Function Number: 157
func_12D13()
{
}
//Function Number: 158
func_F6F4()
{
self endon("death");
self endon("disconnect");
self endon("unset_extraammo");
level endon("game_ended");
if(self.var_81D1)
{
self waittill("giveLoadout");
}
var_00 = scripts\mp\_utility::func_81F6();
foreach(var_02 in var_00)
{
if(isdefined(var_02) && var_02 != "none")
{
self givemaxammo(var_02);
}
}
}
//Function Number: 159
func_12CB3()
{
self notify("unset_extraammo");
}
//Function Number: 160
func_F6F8()
{
self endon("death");
self endon("disconnect");
self endon("unset_extraequipment");
level endon("game_ended");
if(self.var_81D1)
{
self waittill("giveLoadout");
}
var_00 = self.var_AE78;
if(isdefined(var_00) && var_00 != "specialty_null")
{
if(var_00 != "specialty_tacticalinsertion" && var_00 != "smoke_grenade_mp" && var_00 != "player_trophy_system_mp" && var_00 != "shoulder_cannon_mp")
{
self setweaponammoclip(var_00,2);
}
}
}
//Function Number: 161
func_12CB7()
{
self notify("unset_extraequipment");
}
//Function Number: 162
func_F6F6()
{
self endon("death");
self endon("disconnect");
self endon("unset_extradeadly");
level endon("game_ended");
}
//Function Number: 163
func_12CB5()
{
self notify("unset_extradeadly");
}
//Function Number: 164
func_10D79(param_00)
{
if(isdefined(param_00) && param_00 != self)
{
var_01 = self getweaponslistoffhands();
var_02 = 1;
var_03 = 0;
foreach(var_05 in var_01)
{
if(var_05 != "throwingknife_mp")
{
var_03 = self getweaponammoclip(var_05);
var_02 = var_02 + var_03;
}
}
var_07 = 1;
var_08 = spawn("script_origin",self.origin);
var_08.var_222 = param_00;
if(!isdefined(var_08.team))
{
var_08.team = param_00.team;
}
var_08.var_42E0 = var_02;
var_08 thread scripts\mp\_weapons::func_42D8(var_07);
var_08 notify("explode",var_08.origin);
var_08 delete();
}
}
//Function Number: 165
func_F65B()
{
lib_0D69::func_116E(1);
lib_0DD9::func_28F2();
}
//Function Number: 166
func_12C7B()
{
lib_0D69::func_116E(0);
lib_0DD9::func_28F6();
}
//Function Number: 167
func_F7CF()
{
}
//Function Number: 168
func_12D00()
{
}
//Function Number: 169
func_F62C()
{
lib_0DCD::func_1664();
}
//Function Number: 170
func_12C66()
{
lib_0DCD::func_1667();
}
//Function Number: 171
func_F782()
{
if(!isdefined(level._effect["life_pack_pickup"]))
{
level._effect["life_pack_pickup"] = loadfx("vfx/iw7/_requests/mp/vfx_health_pickup");
}
thread func_13ABD();
}
//Function Number: 172
func_13ABD()
{
self endon("death");
self endon("disconnect");
self notify("unset_lifepack");
self endon("unset_lifepack");
for(;;)
{
self waittill("got_a_kill",var_00,var_01,var_02);
var_03 = self.origin;
var_04 = 20;
var_05 = 20;
var_06 = spawn("script_model",self.origin + (0,0,10));
var_06 setmodel("weapon_life_pack");
var_06.var_222 = self;
var_06.team = self.team;
var_06 method_8429(self);
var_07 = spawn("trigger_radius",self.origin,0,var_04,var_05);
var_07 thread func_13AC1(var_06);
var_07 thread func_13ABC(var_06);
var_06 thread func_90F0();
var_06 rotateyaw(1000,30,0.2,0.2);
var_06 thread func_13ABE(10,var_07);
var_06 thread func_13AC0();
foreach(var_09 in level.players)
{
var_06 func_F784(var_09);
}
}
}
//Function Number: 173
func_160B(param_00,param_01,param_02)
{
self.var_AC67 = 1;
if(isdefined(param_01) && param_01 > 0)
{
thread func_13ABB(param_01);
}
if(isdefined(param_02) && param_02)
{
thread func_13AC2();
}
scripts\mp\_utility::func_8387("specialty_regenfaster");
self setclientomnvar("ui_life_link",1);
self notify("enabled_life_pack_boost");
self.var_AC70 = param_00;
scripts\mp\_gamescore::func_11AC9(param_00,self,"medic_lifepack");
}
//Function Number: 174
func_13ABB(param_00)
{
self endon("death");
self endon("disconnect");
wait(param_00);
if(isdefined(self.var_AC67))
{
func_55F9();
}
}
//Function Number: 175
func_55F9()
{
if(isdefined(self) && isdefined(self.var_AC67))
{
self.var_AC67 = undefined;
self setclientomnvar("ui_life_link",0);
self notify("disabled_life_pack_boost");
scripts\mp\_utility::func_E150("specialty_regenfaster");
scripts\mp\_gamescore::func_12D6E(self.var_AC70,self,"medic_lifepack");
self.var_AC70 = undefined;
}
}
//Function Number: 176
func_F784(param_00)
{
if(level.teambased && param_00.team == self.team && param_00 != self.var_222)
{
func_F783(param_00);
self showtoplayer(param_00);
thread func_13ABF(param_00);
return;
}
self method_8429(param_00);
}
//Function Number: 177
func_F783(param_00)
{
if(isdefined(param_00.var_AC67))
{
if(isdefined(param_00.var_AC6F) && param_00.var_AC6F.size > 0)
{
foreach(var_02 in param_00.var_AC6F)
{
if(self == var_02.var_C858)
{
scripts\mp\_utility::func_C78F(var_02.var_92B8,var_02.var_C858);
param_00.var_AC6F = scripts\common\utility::func_22A9(param_00.var_AC6F,var_02);
var_02 = undefined;
}
}
return;
}
return;
}
if(!isdefined(var_03.var_AC6F))
{
var_03.var_AC6F = [];
}
var_04 = spawnstruct();
var_04.var_92B8 = scripts\mp\_utility::func_C794(self,"cyan",var_03,1,0,"equipment");
var_04.var_C858 = self;
var_03.var_AC6F = scripts\common\utility::array_add_safe(var_03.var_AC6F,var_04);
}
//Function Number: 178
func_13ABF(param_00)
{
self endon("death");
for(;;)
{
param_00 scripts\common\utility::waittill_any_3("enabled_life_pack_boost","disabled_life_pack_boost");
func_F783(param_00);
}
}
//Function Number: 179
func_90F0()
{
self endon("death");
self endon("phase_resource_pickup");
var_00 = self.origin;
for(;;)
{
self moveto(var_00 + (0,0,15),1,0.2,0.2);
wait(1);
self moveto(var_00,1,0.2,0.2);
wait(1);
}
}
//Function Number: 180
func_13AC1(param_00)
{
self endon("death");
for(;;)
{
self waittill("trigger",var_01);
if(!isplayer(var_01))
{
continue;
}
if(var_01.team != param_00.team)
{
continue;
}
if(isdefined(var_01.var_AC67))
{
continue;
}
if(var_01 == param_00.var_222)
{
continue;
}
var_01 func_160B(param_00.var_222,5,1);
var_01 playlocalsound("scavenger_pack_pickup");
var_02 = spawnfx(scripts\common\utility::getfx("life_pack_pickup"),self.origin);
triggerfx(var_02);
var_02 thread scripts\mp\_utility::func_5106(2);
foreach(var_04 in level.players)
{
if(var_04.team == var_01.team)
{
continue;
}
var_02 method_8429(var_04);
}
param_00 delete();
}
}
//Function Number: 181
func_13ABC(param_00)
{
self endon("death");
param_00 waittill("death");
if(isdefined(self))
{
self delete();
}
}
//Function Number: 182
func_13ABE(param_00,param_01)
{
self endon("death");
wait(param_00);
param_01 delete();
self delete();
}
//Function Number: 183
func_13AC0()
{
self endon("death");
self.var_222 waittill("disconnect");
if(isdefined(self))
{
self delete();
}
}
//Function Number: 184
func_13AC2()
{
self endon("disconnect");
self waittill("death");
func_55F9();
}
//Function Number: 185
func_12CE4()
{
func_55F9();
self notify("unset_lifepack");
}
//Function Number: 186
func_F891()
{
if(!isdefined(level._effect["toughen_up_screen"]))
{
level._effect["toughen_up_screen"] = loadfx("vfx/iw7/_requests/mp/vfx_toughen_up_scrn");
}
thread func_13B87();
}
//Function Number: 187
func_13B87()
{
self endon("death");
self endon("disconnect");
self endon("unsetToughenUp");
level endon("game_ended");
var_00 = 0;
var_01 = 15;
var_02 = 7.5;
var_03 = 4;
var_04 = 5;
var_05 = 2;
var_06 = [];
var_06 = scripts\common\utility::array_add_safe(var_06,(35,0,10));
var_06 = scripts\common\utility::array_add_safe(var_06,(0,35,10));
var_06 = scripts\common\utility::array_add_safe(var_06,(-35,0,10));
var_06 = scripts\common\utility::array_add_safe(var_06,(0,-35,10));
self waittill("spawned_player");
for(;;)
{
self waittill("got_a_kill",var_07,var_08,var_09);
if(!isdefined(self.var_11A47))
{
self.var_11A47 = 1;
var_0A = function_01E1(scripts\common\utility::getfx("toughen_up_screen"),self geteye(),self);
triggerfx(var_0A);
thread func_24AD("j_forehead",level.var_3257["section"].var_741D);
thread func_24AD("tag_reflector_arm_le",level.var_3257["section"].var_741D);
thread func_24AD("tag_reflector_arm_ri",level.var_3257["section"].var_741D);
thread func_24AD("j_spineupper",level.var_3257["section"].var_741D);
thread func_24AD("tag_shield_back",level.var_3257["section"].var_741D);
thread func_24AD("j_hip_le",level.var_3257["section"].var_741D);
thread func_24AD("j_hip_ri",level.var_3257["section"].var_741D);
if(var_05 == 1)
{
scripts\mp\_utility::func_F741(var_01);
thread func_13B89(var_04);
}
else
{
scripts\mp\_lightarmor::func_F786(self,100);
thread func_13B8A();
}
var_0A thread func_13B8D(self);
continue;
}
if(var_05 == 1)
{
self notify("toughen_up_reset");
thread func_13B89(var_04);
}
}
}
//Function Number: 188
func_24AD(param_00,param_01,param_02,param_03,param_04)
{
var_05 = self gettagorigin(param_00);
var_06 = spawn("script_model",var_05);
var_06 setmodel(param_01);
var_07 = (0,0,0);
var_08 = (0,0,0);
if(isdefined(param_02))
{
var_07 = param_02;
}
if(isdefined(param_03))
{
var_08 = param_03;
}
var_06.angles = self.angles;
var_06 linkto(self,param_00,var_07,var_08);
var_06 thread func_13B8D(self);
var_06 thread func_13B88();
return var_06;
}
//Function Number: 189
func_F892(param_00,param_01,param_02,param_03)
{
var_04 = spawn("script_model",self.origin + (0,0,50));
var_04.team = self.var_222.team;
if(param_03 == "friendly")
{
var_04 setmodel(level.var_3257["section"].var_741D);
}
else
{
var_04 setmodel(level.var_3257["section"].var_6564);
}
var_04 linkto(self,"tag_origin",param_01,(0,90 * param_02 + 1,0));
var_04 hide();
var_04 thread func_13B8D(self.var_222);
var_04 thread func_13B88();
var_04 thread func_F893(param_03,self.var_222);
}
//Function Number: 190
func_13B8A()
{
self endon("disconnect");
self waittill("remove_light_armor");
}
//Function Number: 191
func_13B8D(param_00)
{
self endon("death");
param_00 scripts\common\utility::waittill_any_3("death","disconnect","toughen_up_end");
param_00.var_11A47 = undefined;
if(param_00 scripts\mp\_lightarmor::func_8C07(param_00))
{
param_00 func_12CE5();
}
if(isdefined(self))
{
self delete();
}
}
//Function Number: 192
func_13B88()
{
self endon("death");
level waittill("game_ended");
if(isdefined(self))
{
self delete();
}
}
//Function Number: 193
func_13B89(param_00)
{
self endon("death");
self endon("toughen_up_reset");
while(param_00 > 0)
{
param_00 = param_00 - 1;
wait(1);
}
self notify("toughen_up_end");
}
//Function Number: 194
func_F893(param_00,param_01)
{
foreach(var_03 in level.players)
{
if(!isdefined(var_03))
{
continue;
}
if(var_03 == param_01)
{
continue;
}
if(!lib_0DF8::func_9DDF(var_03))
{
if(func_3911(var_03,param_00))
{
self showtoplayer(var_03);
}
}
thread func_13B8C(var_03,param_00);
thread func_13B8B(var_03,param_00);
}
}
//Function Number: 195
func_13B8C(param_00,param_01)
{
param_00 endon("disconnect");
level endon("game_ended");
self endon("death");
for(;;)
{
param_00 waittill("spawned_player");
self method_8429(param_00);
if(func_3911(param_00,param_01))
{
self showtoplayer(param_00);
}
thread func_13B8B(param_00,param_01);
}
}
//Function Number: 196
func_3911(param_00,param_01)
{
var_02 = 0;
if((param_01 == "friendly" && param_00.team == self.team) || param_01 == "enemy" && param_00.team != self.team)
{
var_02 = 1;
}
return var_02;
}
//Function Number: 197
func_13B8B(param_00,param_01)
{
}
//Function Number: 198
func_12D4D()
{
scripts\mp\_utility::func_41B4();
func_12CE5();
self notify("unsetToughenUp");
}
//Function Number: 199
func_F82D()
{
thread lib_0D6F::func_13B32();
thread func_12F0D();
}
//Function Number: 200
func_12F0D()
{
self endon("death");
self endon("disconnect");
self endon("unsetScoutPing");
var_00 = 50;
var_01 = 1200;
for(;;)
{
var_02 = var_00;
var_03 = var_01;
if(isdefined(self.var_EC82))
{
var_02 = self.var_EC82;
}
if(isdefined(self.var_EC83))
{
var_03 = self.var_EC83;
}
var_02 = int(var_02);
var_03 = int(var_03);
if(var_02 != var_00)
{
function_02A1(self.origin,self.team,var_02,var_03);
}
wait(var_01 / 1200);
}
}
//Function Number: 201
func_12F0E(param_00)
{
var_01 = 0;
var_02 = 150;
var_03 = 3000;
if(isdefined(self.var_EC80))
{
var_01 = self.var_EC80;
}
if(isdefined(self.var_EC81))
{
if(param_00 > self.var_EC81)
{
var_04 = param_00 - self.var_EC81;
var_01 = var_01 + var_04 / 10;
}
else if(param_00 < self.var_EC81)
{
var_04 = self.var_EC81 - param_00;
var_01 = var_01 - var_04 / 10;
}
}
if(isdefined(self.var_EC80))
{
if(var_01 > self.var_EC80 || var_01 < self.var_EC80)
{
var_02 = var_02 + var_02 * var_01 * 1.5;
var_03 = var_03 - var_03 * var_01 / 1.5;
self.var_EC82 = var_02;
self.var_EC83 = var_03;
}
}
if(param_00 == 0)
{
self.var_EC82 = undefined;
self.var_EC83 = undefined;
}
self.var_EC80 = var_01;
self.var_EC81 = param_00;
}
//Function Number: 202
func_12D26()
{
self.var_EC82 = undefined;
self.var_EC83 = undefined;
self.var_EC80 = undefined;
self.var_EC81 = undefined;
self notify("unsetScoutPing");
thread lib_0D6F::func_3886();
}
//Function Number: 203
func_F6A1()
{
thread func_139D8();
}
//Function Number: 204
func_12C9A()
{
}
//Function Number: 205
func_3E41()
{
self endon("disconnect");
self waittill("spawned_player");
thread func_139D8();
}
//Function Number: 206
func_139D8()
{
self endon("death");
self endon("disconnect");
self endon("removeArchetype");
for(;;)
{
self waittill("got_a_kill",var_00,var_01,var_02);
var_03 = var_00 method_8113();
var_04 = "primary";
var_05 = "none";
var_06 = getarraykeys(var_00.var_D782);
foreach(var_08 in var_06)
{
if(var_00.var_D782[var_08].var_10307 == var_04)
{
var_05 = var_08;
}
}
if(var_05 == "none")
{
continue;
}
var_0A = 20;
var_0B = 20;
var_0C = spawn("script_model",var_03.origin + (0,0,10));
var_0C.var_222 = self;
var_0C.team = self.team;
var_0D = spawn("trigger_radius",var_03.origin,0,var_0A,var_0B);
var_0D thread func_139D9(var_0C);
var_0C thread func_139DA(30,var_0D);
var_0C thread func_139DB();
var_0C func_B29E(var_05);
}
}
//Function Number: 207
func_12F4D()
{
self endon("death");
for(;;)
{
if(isdefined(self))
{
self.origin = self.origin;
if(isdefined(self.var_2C68))
{
self.var_2C68.origin = self.origin;
}
}
else
{
return;
}
wait(0.05);
}
}
//Function Number: 208
func_4650(param_00,param_01,param_02)
{
self endon("spawned_player");
self endon("disconnect");
self endon("death");
self.trigger setcursorhint("HINT_NOICON");
switch(param_02)
{
case "power_c4":
self.trigger sethintstring(&"MP_PICKUP_C4");
break;
case "power_biospike":
self.trigger sethintstring(&"MP_PICKUP_BIOSPIKE");
break;
case "power_bouncingBetty":
self.trigger sethintstring(&"MP_PICKUP_BOUNCING_BETTY");
break;
case "power_semtex":
self.trigger sethintstring(&"MP_PICKUP_SEMTEX");
break;
case "power_smokeGrenade":
self.trigger sethintstring(&"MP_PICKUP_SMOKE_GRENADE");
break;
case "power_domeshield":
self.trigger sethintstring(&"MP_PICKUP_DOME_SHIELD");
break;
case "power_shardBall":
self.trigger sethintstring(&"MP_PICKUP_SHARD_BALL");
break;
case "power_splashGrenade":
self.trigger sethintstring(&"MP_PICKUP_SPLASH_GRENADE");
break;
case "power_clusterGrenade":
self.trigger sethintstring(&"MP_PICKUP_CLUSTER_GRENADE");
break;
case "power_smokeWall":
self.trigger sethintstring(&"MP_PICKUP_SMOKE_WALL");
break;
case "power_empGrenade":
self.trigger sethintstring(&"MP_PICKUP_EMP_GRENADE");
break;
case "power_blackholeGrenade":
self.trigger sethintstring(&"MP_PICKUP_BLACKHOLE_GRENADE");
break;
case "power_blinkKnife":
self.trigger sethintstring(&"MP_PICKUP_TELEPORT_KNIFE");
break;
case "power_throwingReap":
self.trigger sethintstring(&"MP_PICKUP_THROWING_REAP");
break;
case "power_thermobaric":
self.trigger sethintstring(&"MP_PICKUP_THERMOBARIC");
break;
case "power_playerTrophySystem":
self.trigger sethintstring(&"MP_PICKUP_PLAYER_TROPHY");
break;
case "power_discMarker":
self.trigger sethintstring(&"MP_PICKUP_DISC_MARKER");
break;
case "power_caseBomb":
self.trigger sethintstring(&"MP_PICKUP_CASE_BOMB");
break;
case "power_transponder":
self.trigger sethintstring(&"MP_PICKUP_TRANSPONDER");
break;
case "power_gasGrenade":
self.trigger sethintstring(&"MP_PICKUP_GAS_GRENADE");
break;
case "power_blackoutGrenade":
self.trigger sethintstring(&"MP_PICKUP_BLACKOUT_GRENADE");
break;
case "power_copycatGrenade":
self.trigger sethintstring(&"MP_PICKUP_COPYCAT_GRENADE");
break;
case "power_arcGrenade":
self.trigger sethintstring(&"MP_PICKUP_ARC_MINE");
break;
}
self.trigger makeusable();
foreach(var_04 in level.players)
{
if(var_04 == param_00)
{
self.trigger enableplayeruse(var_04);
continue;
}
self.trigger disableplayeruse(var_04);
}
self.trigger thread scripts\mp\_utility::notusableforjoiningplayers(param_00);
if(isdefined(param_01) && param_01)
{
thread func_12F4D();
}
for(;;)
{
self.trigger waittill("trigger",param_00);
param_00 playlocalsound("scavenger_pack_pickup");
var_06 = param_02;
var_07 = "primary";
param_00 notify("start_copycat");
param_00 notify("corpse_steal");
var_08 = "none";
var_09 = getarraykeys(param_00.var_D782);
foreach(var_0B in var_09)
{
if(param_00.var_D782[var_0B].var_10307 == var_07)
{
var_08 = var_0B;
}
}
param_00 scripts\mp\_powers::func_E15E(var_08);
param_00 scripts\mp\_powers::func_8397(var_06,var_07,1);
param_00 thread scripts\mp\_weapons::func_139D7(var_06,var_07);
self.trigger delete();
self delete();
self notify("death");
}
}
//Function Number: 209
func_B29E(param_00)
{
if(scripts\mp\_utility::func_9F19(self.var_222))
{
self method_831F(self.var_222);
self.trigger = spawn("script_origin",self.origin,0,1,1);
self.trigger.var_222 = self;
thread func_4650(self.var_222,1,param_00);
}
}
//Function Number: 210
func_139D9(param_00)
{
self endon("death");
param_00 waittill("death");
if(isdefined(self))
{
self delete();
}
}
//Function Number: 211
func_139DA(param_00,param_01)
{
self endon("death");
wait(param_00);
self.trigger delete();
param_01 delete();
self delete();
}
//Function Number: 212
func_139DB()
{
self endon("death");
self.var_222 waittill("disconnect");
if(isdefined(self))
{
self delete();
}
}
//Function Number: 213
func_F7E6()
{
thread func_13AEE();
thread func_13AED();
}
//Function Number: 214
func_13AEE()
{
self endon("death");
self endon("disconnect");
for(;;)
{
self waittill("phase_shift_start");
self.var_CAB0 = 0.2;
scripts\mp\_weapons::func_12ED5();
}
}
//Function Number: 215
func_13AED()
{
self endon("death");
self endon("disconnect");
for(;;)
{
self waittill("phase_shift_completed");
self.var_CAB0 = undefined;
scripts\mp\_weapons::func_12ED5();
}
}
//Function Number: 216
func_12D0A()
{
self.var_CAB0 = undefined;
}
//Function Number: 217
func_F6CC()
{
self.var_11B2C = "specialty_dodge";
self method_8412(1);
if(scripts\mp\_utility::func_9D46())
{
self method_8454(6);
}
else
{
self method_8454(3);
}
lib_0DCE::func_139F9();
}
//Function Number: 218
func_12CA4()
{
self.var_11B2C = undefined;
self method_8412(0);
}
//Function Number: 219
func_F6F7()
{
self method_842E(1,100);
self method_842C(1,100);
}
//Function Number: 220
func_12CB6()
{
self method_842E(1,50);
self method_842C(1,50);
}
//Function Number: 221
func_F846()
{
self.var_11B2C = "specialty_sixth_sense";
func_12F1B(0,0);
thread func_10225();
}
//Function Number: 222
func_12D2E()
{
self.var_11B2C = undefined;
self.var_10224 = undefined;
self notify("removeSixthSense");
func_12F1B(0,0);
}
//Function Number: 223
func_F6E9()
{
}
//Function Number: 224
func_12CAD()
{
}
//Function Number: 225
func_10225()
{
self endon("death");
self endon("disconnect");
self endon("removeSixthSense");
self endon("round_switch");
thread watchdeathsixthsense();
for(;;)
{
var_00 = 0;
var_01 = level.players;
var_02 = 0;
var_03 = scripts\mp\_utility::_hasperk("specialty_enhanced_sixth_sense");
if(!scripts\mp\killstreaks\_emp_common::isemped())
{
foreach(var_05 in var_01)
{
if(!isdefined(var_05) || !scripts\mp\_utility::func_9F19(var_05))
{
continue;
}
if(var_05.team == self.team)
{
continue;
}
if(var_05 scripts\mp\_utility::_hasperk("specialty_coldblooded"))
{
continue;
}
if(!lib_0DF8::func_213D(self,var_05))
{
continue;
}
var_06 = self.origin - var_05.origin;
var_07 = anglestoforward(var_05 getplayerangles());
var_08 = vectordot(var_06,var_07);
if(var_08 <= 0)
{
continue;
}
var_09 = vectornormalize(var_06);
var_0A = vectornormalize(var_07);
var_08 = vectordot(var_09,var_0A);
if(var_08 < 0.9659258)
{
continue;
}
var_00++;
var_0B = var_05 geteye();
var_0C = self geteye();
if(bullettracepassed(var_0B,var_0C,0,self))
{
thread watchperceptionchallengedeath();
thread watchperceptionchallengeprogress();
var_02 = var_02 | func_8125(var_05);
thread markassixthsensesource(var_05);
continue;
}
if(var_00 >= 3)
{
scripts\common\utility::func_136F7();
var_00 = 0;
}
}
}
if(var_02 > 4)
{
var_02 = 255;
}
else
{
var_02 = 0;
}
func_12F1B(var_02,var_03);
scripts\common\utility::func_136F7();
}
}
//Function Number: 226
watchperceptionchallengedeath()
{
self endon("disconnect");
if(scripts\mp\_utility::func_9FB3(self.startperceptionchallengewatch))
{
return;
}
scripts\common\utility::waittill_any_3("removesixthsense","death","perceptionChallengeCheckDone");
self.startperceptionchallengewatch = 0;
}
//Function Number: 227
watchperceptionchallengeprogress()
{
self endon("disconnect");
self endon("removesixthsense");
self endon("death");
if(scripts\mp\_utility::func_9FB3(self.startperceptionchallengewatch))
{
return;
}
self.startperceptionchallengewatch = 1;
wait(10);
scripts\mp\_missions::func_D991("ch_trait_perception");
self notify("perceptionChallengeCheckDone");
}
//Function Number: 228
watchdeathsixthsense()
{
self endon("disconnect");
self endon("removesixthsense");
self waittill("death");
self setclientomnvar("ui_edge_glow",0);
}
//Function Number: 229
func_12F1B(param_00,param_01)
{
var_02 = 0;
if(isdefined(self.var_10224))
{
var_02 = self.var_10224;
}
if(isdefined(param_01) && param_01)
{
if(var_02 != param_00)
{
self.var_10224 = param_00;
}
}
self setclientomnvar("ui_edge_glow",param_00);
}
//Function Number: 230
func_8125(param_00)
{
var_01 = anglestoforward(self getplayerangles());
var_02 = (var_01[0],var_01[1],var_01[2]);
var_02 = vectornormalize(var_02);
var_03 = param_00.origin - self.origin;
var_04 = (var_03[0],var_03[1],var_03[2]);
var_04 = vectornormalize(var_04);
var_05 = vectordot(var_02,var_04);
if(var_05 >= 0.9238795)
{
return 2;
}
if(var_05 >= 0.3826834)
{
return scripts\common\utility::func_116D7(scripts\mp\_utility::func_9E7A(self.origin,var_02,param_00.origin),4,1);
}
if(var_05 >= -0.3826834)
{
return scripts\common\utility::func_116D7(scripts\mp\_utility::func_9E7A(self.origin,var_02,param_00.origin),128,64);
}
if(var_05 >= -0.9238795)
{
return scripts\common\utility::func_116D7(scripts\mp\_utility::func_9E7A(self.origin,var_02,param_00.origin),32,8);
}
return 16;
}
//Function Number: 231
markassixthsensesource(param_00)
{
level endon("game_ended");
self endon("disconnect");
var_01 = param_00 getentitynumber();
if(!isdefined(self.sixthsensesource))
{
self.sixthsensesource = [];
}
else if(isdefined(self.sixthsensesource[var_01]))
{
self notify("markAsSixthSenseSource");
self endon("markAsSixthSenseSource");
}
self.sixthsensesource[var_01] = 1;
param_00 scripts\common\utility::waittill_any_timeout_1(10,"death");
self.sixthsensesource[var_01] = 0;
}
//Function Number: 232
func_F67B()
{
self endon("death");
self endon("disconnect");
self endon("removeArchetype");
for(;;)
{
var_00 = 0;
var_01 = level.players;
var_02 = 0;
if(!scripts\mp\killstreaks\_emp_common::isemped())
{
foreach(var_04 in var_01)
{
if(!isdefined(var_04) || !scripts\mp\_utility::func_9F19(var_04))
{
continue;
}
if(var_04.team == self.team)
{
continue;
}
if(var_04 scripts\mp\_utility::_hasperk("specialty_empimmune"))
{
continue;
}
if(!lib_0DF8::func_213D(self,var_04))
{
continue;
}
var_05 = self.origin - var_04.origin;
var_06 = anglestoforward(var_04 getplayerangles());
var_07 = vectordot(var_05,var_06);
if(var_07 <= 0)
{
continue;
}
var_08 = vectornormalize(var_05);
var_09 = vectornormalize(var_06);
var_07 = vectordot(var_08,var_09);
if(var_07 < 0.9659258)
{
continue;
}
var_00++;
var_0A = var_04 geteye();
var_0B = self geteye();
if(bullettracepassed(var_0A,var_0B,0,self))
{
var_02 = 1;
break;
}
if(var_00 >= 3)
{
scripts\common\utility::func_136F7();
var_00 = 0;
}
}
scripts\common\utility::func_136F7();
}
func_12E6C(var_02);
scripts\common\utility::func_136F7();
}
}
//Function Number: 233
func_12E6C(param_00)
{
}
//Function Number: 234
func_12C8C()
{
}
//Function Number: 235
func_F704()
{
scripts\mp\_utility::func_8387("specialty_pistoldeath");
}
//Function Number: 236
func_12CBD()
{
scripts\mp\_utility::func_E150("specialty_pistoldeath");
}
//Function Number: 237
func_F67E()
{
thread scripts\mp\killstreaks\_killstreaks::func_8374("airdrop_assault",0,0,self);
}
//Function Number: 238
func_12C8D()
{
}
//Function Number: 239
func_F89F()
{
thread scripts\mp\killstreaks\_killstreaks::func_8374("uav",0,0,self);
}
//Function Number: 240
func_12D53()
{
}
//Function Number: 241
func_F864()
{
scripts\mp\_utility::func_8387("specialty_bulletdamage");
thread func_13B63();
}
//Function Number: 242
func_13B63()
{
self notify("watchStoppingPowerKill");
self endon("watchStoppingPowerKill");
self endon("disconnect");
level endon("game_ended");
self waittill("killed_enemy");
func_12D3A();
}
//Function Number: 243
func_12D3A()
{
scripts\mp\_utility::func_E150("specialty_bulletdamage");
self notify("watchStoppingPowerKill");
}
//Function Number: 244
func_F678()
{
scripts\mp\_utility::func_8387("specialty_pistoldeath");
}
//Function Number: 245
func_12C8A()
{
if(scripts\mp\_utility::_hasperk("specialty_pistoldeath"))
{
scripts\mp\_utility::func_E150("specialty_pistoldeath");
}
}
//Function Number: 246
func_F769(param_00)
{
self endon("death");
self endon("faux_spawn");
self endon("disconnect");
self endon("unset_juiced");
level endon("game_ended");
self.var_9E62 = 1;
self.var_BCF6 = 1.25;
scripts\mp\_weapons::func_12ED5();
scripts\mp\_utility::func_8387("specialty_fastreload");
scripts\mp\_utility::func_8387("specialty_quickdraw");
scripts\mp\_utility::func_8387("specialty_stalker");
scripts\mp\_utility::func_8387("specialty_fastoffhand");
scripts\mp\_utility::func_8387("specialty_fastsprintrecovery");
scripts\mp\_utility::func_8387("specialty_quickswap");
thread func_12CDD();
thread func_12CDF();
thread func_12CDE();
if(!isdefined(param_00))
{
param_00 = 10;
}
var_01 = param_00 * 1000 + gettime();
if(!isai(self))
{
self setclientomnvar("ui_juiced_end_milliseconds",var_01);
}
wait(param_00);
func_12CDC();
}
//Function Number: 247
func_12CDC(param_00)
{
if(!isdefined(param_00))
{
if(scripts\mp\_utility::func_9E59())
{
if(isdefined(self.var_A4AA))
{
self.var_BCF6 = self.var_A4AA;
}
else
{
self.var_BCF6 = 0.7;
}
}
else
{
self.var_BCF6 = 1;
if(scripts\mp\_utility::_hasperk("specialty_lightweight"))
{
self.var_BCF6 = scripts\mp\_utility::func_ACD8();
}
}
scripts\mp\_weapons::func_12ED5();
}
scripts\mp\_utility::func_E150("specialty_fastreload");
scripts\mp\_utility::func_E150("specialty_quickdraw");
scripts\mp\_utility::func_E150("specialty_stalker");
scripts\mp\_utility::func_E150("specialty_fastoffhand");
scripts\mp\_utility::func_E150("specialty_fastsprintrecovery");
scripts\mp\_utility::func_E150("specialty_quickswap");
self.var_9E62 = undefined;
if(!isai(self))
{
self setclientomnvar("ui_juiced_end_milliseconds",0);
}
self notify("unset_juiced");
}
//Function Number: 248
func_12CDF()
{
self endon("disconnect");
self endon("unset_juiced");
for(;;)
{
wait(0.05);
if(scripts\mp\_utility::func_9FC6())
{
thread func_12CDC();
break;
}
}
}
//Function Number: 249
func_12CDD()
{
self endon("disconnect");
self endon("unset_juiced");
scripts\common\utility::waittill_any_3("death","faux_spawn");
thread func_12CDC(1);
}
//Function Number: 250
func_12CDE()
{
self endon("disconnect");
self endon("unset_juiced");
level scripts\common\utility::waittill_any_3("round_end_finished","game_ended");
thread func_12CDC();
}
//Function Number: 251
func_8C03()
{
return isdefined(self.var_9E62);
}
//Function Number: 252
func_F696()
{
self endon("death");
self endon("disconnect");
self endon("unset_combathigh");
level endon("end_game");
self.var_4D2D = 0;
if(level.splitscreen)
{
var_00 = 56;
var_01 = 21;
}
else
{
var_00 = 112;
var_01 = 32;
}
if(isdefined(self.var_A4B1))
{
self.var_A4B1 destroy();
}
if(isdefined(self.var_A4B0))
{
self.var_A4B0 destroy();
}
self.var_4404 = newclienthudelem(self);
self.var_4404.x = 0;
self.var_4404.y = 0;
self.var_4404.alignx = "left";
self.var_4404.aligny = "top";
self.var_4404.horzalign = "fullscreen";
self.var_4404.vertalign = "fullscreen";
self.var_4404 setshader("combathigh_overlay",640,480);
self.var_4404.sort = -10;
self.var_4404.archived = 1;
self.var_4405 = scripts\mp\_hud_util::createtimer("hudsmall",1);
self.var_4405 scripts\mp\_hud_util::setpoint("CENTER","CENTER",0,var_00);
self.var_4405 settimer(10);
self.var_4405.color = (0.8,0.8,0);
self.var_4405.archived = 0;
self.var_4405.foreground = 1;
self.var_4403 = scripts\mp\_hud_util::createicon("specialty_painkiller",var_01,var_01);
self.var_4403.alpha = 0;
self.var_4403 scripts\mp\_hud_util::setparent(self.var_4405);
self.var_4403 scripts\mp\_hud_util::setpoint("BOTTOM","TOP");
self.var_4403.archived = 1;
self.var_4403.sort = 1;
self.var_4403.foreground = 1;
self.var_4404.alpha = 0;
self.var_4404 fadeovertime(1);
self.var_4403 fadeovertime(1);
self.var_4404.alpha = 1;
self.var_4403.alpha = 0.85;
thread func_12C93();
thread func_12C94();
wait(8);
self.var_4403 fadeovertime(2);
self.var_4403.alpha = 0;
self.var_4404 fadeovertime(2);
self.var_4404.alpha = 0;
self.var_4405 fadeovertime(2);
self.var_4405.alpha = 0;
wait(2);
self.var_4D2D = undefined;
scripts\mp\_utility::func_E150("specialty_combathigh");
}
//Function Number: 253
func_12C93()
{
self endon("disconnect");
self endon("unset_combathigh");
self waittill("death");
thread scripts\mp\_utility::func_E150("specialty_combathigh");
}
//Function Number: 254
func_12C94()
{
self endon("disconnect");
self endon("unset_combathigh");
for(;;)
{
wait(0.05);
if(scripts\mp\_utility::func_9FC6())
{
thread scripts\mp\_utility::func_E150("specialty_combathigh");
break;
}
}
}
//Function Number: 255
func_12C92()
{
self notify("unset_combathigh");
self.var_4404 destroy();
self.var_4403 destroy();
self.var_4405 destroy();
}
//Function Number: 256
func_F785()
{
scripts\mp\_lightarmor::func_F786(self,150);
}
//Function Number: 257
func_12CE5()
{
scripts\mp\_lightarmor::func_ACAC();
}
//Function Number: 258
func_F81D()
{
self notify("stopRevenge");
wait(0.05);
if(!isdefined(self.var_A9A3))
{
return;
}
if(level.teambased && self.team == self.var_A9A3.team)
{
return;
}
var_00 = spawnstruct();
var_00.var_10158 = self;
var_00.var_928E = "compassping_revenge";
var_00.var_C364 = (0,0,64);
var_00.width = 10;
var_00.height = 10;
var_00.archived = 0;
var_00.var_50AE = 1.5;
var_00.var_4554 = 0;
var_00.var_CB9B = 1;
var_00.var_6ABA = 0;
var_00.var_9B3F = 0;
self.var_E48E = var_00;
self.var_A9A3 scripts\mp\_entityheadicons::func_F73D(var_00.var_10158,var_00.var_928E,var_00.var_C364,var_00.width,var_00.height,var_00.archived,var_00.var_50AE,var_00.var_4554,var_00.var_CB9B,var_00.var_6ABA,var_00.var_9B3F);
thread func_13B2A();
thread func_13B2C();
thread func_13B2B();
thread func_13B2D();
thread func_13B64();
}
//Function Number: 259
func_13B2A()
{
self endon("stopRevenge");
self endon("disconnect");
var_00 = self.var_A9A3;
for(;;)
{
var_00 waittill("spawned_player");
var_00 scripts\mp\_entityheadicons::func_F73D(self.var_E48E.var_10158,self.var_E48E.var_928E,self.var_E48E.var_C364,self.var_E48E.width,self.var_E48E.height,self.var_E48E.archived,self.var_E48E.var_50AE,self.var_E48E.var_4554,self.var_E48E.var_CB9B,self.var_E48E.var_6ABA,self.var_E48E.var_9B3F);
}
}
//Function Number: 260
func_13B2C()
{
self endon("stopRevenge");
self waittill("killed_enemy");
self notify("stopRevenge");
}
//Function Number: 261
func_13B2B()
{
self endon("stopRevenge");
self.var_A9A3 waittill("disconnect");
self notify("stopRevenge");
}
//Function Number: 262
func_13B64()
{
var_00 = self.var_A9A3;
self waittill("stopRevenge");
if(!isdefined(var_00))
{
return;
}
foreach(var_02 in var_00.var_6647)
{
if(!isdefined(var_02))
{
continue;
}
var_02 destroy();
}
}
//Function Number: 263
func_13B2D()
{
var_00 = self.var_C2BB;
var_01 = self.var_A9A3;
var_01 endon("disconnect");
level endon("game_ended");
self endon("stopRevenge");
self waittill("disconnect");
if(!isdefined(var_01))
{
return;
}
foreach(var_03 in var_01.var_6647)
{
if(!isdefined(var_03))
{
continue;
}
var_03 destroy();
}
}
//Function Number: 264
func_12D1A()
{
self notify("stopRevenge");
}
//Function Number: 265
func_F7E5()
{
self.var_38EB = 1;
thread lib_0D67::func_CAAF();
}
//Function Number: 266
func_12D09()
{
self.var_38EB = 0;
}
//Function Number: 267
func_F880()
{
self.var_3925 = 1;
thread lib_0D67::func_1166B();
}
//Function Number: 268
func_12D46()
{
self.var_3925 = 0;
}
//Function Number: 269
func_F7E4()
{
self.var_8C1C = 1;
thread lib_0D67::func_E88E();
}
//Function Number: 270
func_12D08()
{
self.var_8C1C = 0;
}
//Function Number: 271
func_F7E0()
{
lib_0DE9::func_8659("phase");
}
//Function Number: 272
func_12D05()
{
lib_0DE9::func_865A();
}
//Function Number: 273
func_F62F()
{
self.var_8BC2 = 1;
}
//Function Number: 274
func_12C68()
{
self.var_8BC2 = 0;
}
//Function Number: 275
func_F630()
{
self.var_8BC3 = 1;
self notify("force_regeneration");
}
//Function Number: 276
func_12C69()
{
self.var_8BC3 = 1;
}
//Function Number: 277
func_F6F1()
{
lib_0D6F::func_F6F2();
}
//Function Number: 278
func_12CB1()
{
}
//Function Number: 279
func_F64E()
{
lib_0D6C::func_261D();
}
//Function Number: 280
func_12C74()
{
}
//Function Number: 281
func_F64D()
{
lib_0D68::func_2616();
}
//Function Number: 282
func_12C73()
{
}
//Function Number: 283
func_F64F()
{
lib_0D6F::func_2620();
}
//Function Number: 284
func_12C75()
{
}
//Function Number: 285
func_F790()
{
self.var_11B2E = "specialty_mark_targets";
scripts\mp\perks\_perk_mark_targets::func_B381();
}
//Function Number: 286
func_12CED()
{
self.var_11B2C = undefined;
}
//Function Number: 287
func_F65A()
{
lib_0D6B::func_F6E6("battery");
}
//Function Number: 288
func_12C7A()
{
}
//Function Number: 289
func_F67A()
{
}
//Function Number: 290
func_12C8B()
{
}
//Function Number: 291
func_F669()
{
self.var_8CC1 = 1;
self notify("force_regen");
}
//Function Number: 292
func_12C84()
{
self.var_8CC1 = undefined;
self notify("force_regen");
}
//Function Number: 293
func_F82C()
{
lib_0D6B::func_F6E6("scorestreak");
}
//Function Number: 294
func_12D25()
{
}
//Function Number: 295
func_F86B()
{
self.var_11B2C = "specialty_superpack";
lib_0D6B::func_F6E6("super");
}
//Function Number: 296
func_12D3E()
{
self.var_11B2C = undefined;
}
//Function Number: 297
func_F84F()
{
}
//Function Number: 298
func_12D32()
{
}
//Function Number: 299
func_F6CE()
{
scripts\mp\_utility::func_17C0("dodgeDefense",0.5,0,::func_5804);
}
//Function Number: 300
func_12CA5()
{
scripts\mp\_utility::func_E0E6("dodgeDefense",0);
}
//Function Number: 301
func_5804(param_00,param_01,param_02,param_03,param_04,param_05,param_06)
{
if(!isdefined(param_02.var_5812) && param_02.var_5812 && param_02 scripts\mp\_utility::_hasperk("specialty_dodge_defense"))
{
return 1;
}
return 0;
}
//Function Number: 302
func_F6CF()
{
}
//Function Number: 303
func_12CA6()
{
}
//Function Number: 304
func_F72D()
{
self.var_11B2C = "specialty_ground_pound";
lib_0DE9::func_8659();
}
//Function Number: 305
func_12CC7()
{
self.var_11B2C = undefined;
lib_0DE9::func_865A();
}
//Function Number: 306
func_F793()
{
self giveweapon("iw7_fistsperk_mp");
self method_84E8("iw7_fistsperk_mp");
if(self hasweapon("iw7_fists_mp"))
{
var_00 = self getcurrentweapon();
scripts\mp\_utility::func_141E("iw7_fists_mp");
self giveweapon("iw7_fistslethal_mp");
if(var_00 == "iw7_fists_mp")
{
scripts\mp\_utility::_switchtoweapon("iw7_fistslethal_mp");
if(isdefined(self.var_81D1) && self.var_81D1 && isdefined(self.var_10922) && self.var_10922 == "iw7_fists_mp")
{
self method_833B("iw7_fistslethal_mp");
self.var_10922 = "iw7_fistslethal_mp";
return;
}
}
}
}
//Function Number: 307
func_12CEE()
{
scripts\mp\_utility::func_141E("iw7_fistsperk_mp");
if(self hasweapon("iw7_fistslethal_mp"))
{
var_00 = self getcurrentweapon();
scripts\mp\_utility::func_141E("iw7_fistslethal_mp");
self giveweapon("iw7_fists_mp");
if(var_00 == "iw7_fistslethal_mp")
{
scripts\mp\_utility::_switchtoweapon("iw7_fists_mp");
}
}
}
//Function Number: 308
func_F807()
{
}
//Function Number: 309
func_12D0F()
{
}
//Function Number: 310
sethardline()
{
self endon("death");
self endon("disconnect");
self endon("perk_end_hardline");
self.hardlineactive["kills"] = 0;
self.hardlineactive["assists"] = 0;
thread watchhardlineassists();
while(self.hardlineactive["kills"] < 8)
{
self waittill("got_a_kill",var_00,var_01,var_02);
if(isdefined(var_01) && !scripts\mp\_utility::func_9E6C(var_01))
{
self.hardlineactive["kills"] = self.hardlineactive["kills"] + 1;
}
}
self.hardlineactive = undefined;
}
//Function Number: 311
watchhardlineassists()
{
self endon("death");
self endon("disconnect");
self endon("perk_end_hardline");
for(;;)
{
self waittill("assist_hardline");
if(self.hardlineactive["assists"] == 1)
{
self.hardlineactive["kills"] = self.hardlineactive["kills"] + 1;
self.hardlineactive["assists"] = 0;
continue;
}
self.hardlineactive["assists"] = self.hardlineactive["assists"] + 1;
}
}
//Function Number: 312
unsethardline()
{
self.hardlineactive = undefined;
self notify("perk_end_hardline");
}
//Function Number: 313
func_F74A()
{
for(;;)
{
foreach(var_01 in level.players)
{
if(!scripts\mp\_utility::func_9F19(var_01))
{
continue;
}
if(var_01.team == self.team)
{
continue;
}
if(var_01 scripts\mp\_utility::_hasperk("specialty_coldblooded"))
{
continue;
}
if(var_01 scripts\mp\_utility::_hasperk("specialty_gpsjammer"))
{
continue;
}
if(length2d(var_01 getvelocity()) < 150 && !isdefined(var_01.var_37EE) && distance2d(self.origin,var_01.origin) < 1024)
{
thread func_49EE(var_01);
}
}
scripts\common\utility::func_136F7();
}
}
//Function Number: 314
func_49EE(param_00)
{
param_00 endon("death");
param_00 endon("disconnect");
if(!isdefined(self) || !scripts\mp\_utility::func_9F19(self))
{
return;
}
param_00.var_37EE = 1;
var_01 = scripts\mp\objidpoolmanager::requestminimapid(1);
if(var_01 != -1)
{
scripts\mp\objidpoolmanager::minimap_objective_add(var_01,"active",param_00.origin,"cb_compassping_sniper_enemy",self);
scripts\mp\objidpoolmanager::minimap_objective_team(var_01,self.team);
param_00 thread func_13A35(var_01);
}
while(length2d(param_00 getvelocity()) < 150)
{
wait(2);
}
scripts\mp\objidpoolmanager::returnminimapid(var_01);
param_00.var_37EE = undefined;
}
//Function Number: 315
func_13A35(param_00)
{
scripts\common\utility::waittill_any_3("death","disconnect");
scripts\mp\objidpoolmanager::returnminimapid(param_00);
self.var_37EE = undefined;
}
//Function Number: 316
func_12CD3()
{
}
//Function Number: 317
func_F7CD()
{
}
//Function Number: 318
func_12CFE()
{
}
//Function Number: 319
func_F894()
{
thread func_E8A9();
thread func_E8AA();
}
//Function Number: 320
func_12D4E()
{
}
//Function Number: 321
func_F7DE()
{
self.var_11B2C = "specialty_personal_trophy";
thread scripts\mp\_playertrophy_system::func_D446();
}
//Function Number: 322
func_12D04()
{
self.var_11B2C = undefined;
thread scripts\mp\_playertrophy_system::func_D448();
}
//Function Number: 323
func_F6CA()
{
thread lib_0D6C::func_56E7();
}
//Function Number: 324
func_12CA3()
{
}
//Function Number: 325
func_F6EB()
{
self.var_11B2C = "specialty_equipment_ping";
}
//Function Number: 326
func_12CAE()
{
self.var_11B2C = undefined;
}
//Function Number: 327
func_F825()
{
self.var_11B2C = "specialty_rugged_eqp";
}
//Function Number: 328
func_12D1F()
{
self.var_11B2C = undefined;
thread lib_0E19::supertrophy_onruggedequipmentunset();
thread lib_0DF0::microturret_onruggedequipmentunset();
}
//Function Number: 329
func_6BC4(param_00,param_01)
{
}
//Function Number: 330
func_F78D()
{
self.var_11B2C = "specialty_man_at_arms";
}
//Function Number: 331
func_12CEB()
{
self.var_11B2C = undefined;
}
//Function Number: 332
func_F7CB()
{
self endon("disconnect");
self endon("unsetOutlineKillstreaks");
self.engstructks = engineer_createengstruct();
var_00 = self.engstructks;
thread engineer_watchownerdisconnect(var_00,"unsetOutlineKillstreaks");
for(;;)
{
var_01 = level.var_1655;
if(isdefined(var_01))
{
foreach(var_03 in var_01)
{
if(isdefined(var_03.model))
{
if(engineer_shouldoutlineent(var_03,var_00))
{
engineer_addoutlinedent(var_03,var_00);
}
}
}
}
wait(0.1);
}
}
//Function Number: 333
func_12CFC()
{
self notify("unsetOutlineKillstreaks");
if(isdefined(self.engstructks))
{
thread engineer_clearoutlinedents(self.engstructks);
}
self.engstructks = undefined;
}
//Function Number: 334
func_F6E4()
{
self endon("disconnect");
self endon("unsetEngineer");
self.engstructeqp = engineer_createengstruct();
var_00 = self.engstructeqp;
thread engineer_watchownerdisconnect(var_00,"unsetEngineer");
for(;;)
{
var_01 = func_7D96();
foreach(var_03 in var_01)
{
if(engineer_shouldoutlineent(var_03,var_00))
{
engineer_addoutlinedent(var_03,var_00);
}
}
wait(0.1);
}
}
//Function Number: 335
func_12CAB()
{
self notify("unsetEngineer");
if(isdefined(self.engstructeqp))
{
thread engineer_clearoutlinedents(self.engstructeqp);
}
self.engstructeqp = undefined;
}
//Function Number: 336
engineer_createengstruct()
{
var_00 = spawnstruct();
var_00.var_222 = self;
var_00.var_C78E = [];
var_00.outlinedids = [];
return var_00;
}
//Function Number: 337
engineer_addoutlinedent(param_00,param_01)
{
var_02 = param_00 getentitynumber();
var_03 = param_01.outlinedids[var_02];
if(isdefined(var_03))
{
thread engineer_removeoutlinedent(var_02,param_01);
}
var_03 = scripts\mp\_utility::func_C794(param_00,"red",param_01.var_222,0,1,"level_script");
param_01.var_C78E[var_02] = param_00;
param_01.outlinedids[var_02] = var_03;
thread engineer_removeoutlinedentondeath(var_02,param_01);
}
//Function Number: 338
engineer_removeoutlinedent(param_00,param_01)
{
param_01 notify("engineer_removeOutlinedEnt_" + param_00);
var_02 = param_01.var_C78E[param_00];
var_03 = param_01.outlinedids[param_00];
scripts\mp\_utility::func_C78F(var_03,var_02);
param_01.var_C78E[param_00] = undefined;
param_01.outlinedids[param_00] = undefined;
}
//Function Number: 339
engineer_removeoutlinedentondeath(param_00,param_01)
{
param_01 endon("engineer_clearOutlinedEnts");
param_01 endon("engineer_removeOutlinedEnt_" + param_00);
var_02 = param_01.var_C78E[param_00];
var_02 waittill("death");
thread engineer_removeoutlinedent(param_00,param_01);
}
//Function Number: 340
engineer_clearoutlinedents(param_00)
{
param_00 notify("engineer_clearOutlinedEnts");
foreach(var_03, var_02 in param_00.outlinedids)
{
scripts\mp\_utility::func_C78F(var_02,param_00.var_C78E[var_03]);
}
}
//Function Number: 341
engineer_shouldoutlineent(param_00,param_01)
{
var_02 = param_00 getentitynumber();
if(isdefined(param_01.outlinedids[var_02]))
{
return 0;
}
var_03 = param_00.var_222;
if(!scripts\mp\_utility::func_9FB3(scripts\mp\_utility::playersareenemies(var_03,param_01.var_222)))
{
return 0;
}
return 1;
}
//Function Number: 342
engineer_watchownerdisconnect(param_00,param_01)
{
if(isdefined(param_01))
{
param_00.var_222 endon(param_01);
}
param_00 endon("engineer_clearOutlinedEnts");
param_00.var_222 waittill("disconnect");
thread engineer_clearoutlinedents(param_00);
}
//Function Number: 343
func_7D96()
{
return scripts\common\utility::func_22AF(scripts\common\utility::func_2282([level.var_B779,level.var_B726,level.var_69D6,level.var_11267.var_12801,level.var_590F,level.var_2ABD,level.spidergrenade.activeagents,level.spidergrenade.proxies]));
}
//Function Number: 344
func_F693()
{
}
//Function Number: 345
func_12C90()
{
}
//Function Number: 346
func_FB15()
{
self.var_11B2C = "specialty_wall_lock";
thread lib_0D70::func_E8AC();
}
//Function Number: 347
func_12D66()
{
self.var_11B2C = undefined;
}
//Function Number: 348
func_F826()
{
self.var_11B2C = "specialty_rush";
thread lib_0D6F::func_B947();
}
//Function Number: 349
func_12D20()
{
self notify("removeCombatHigh");
self.speedonkillmod = undefined;
self.var_11B2C = undefined;
}
//Function Number: 350
func_F747()
{
thread func_E859();
}
//Function Number: 351
func_12CD2()
{
}
//Function Number: 352
func_F7A4()
{
self.var_11B2C = "specialty_momentum";
thread func_E863();
}
//Function Number: 353
func_E863()
{
self endon("death");
self endon("disconnect");
self endon("momentum_unset");
for(;;)
{
if(self method_81BD())
{
func_848B();
self.var_BCF6 = 1;
scripts\mp\_weapons::func_12ED5();
}
wait(0.1);
}
}
//Function Number: 354
func_848B()
{
self endon("death");
self endon("disconnect");
self endon("game_ended");
self endon("momentum_reset");
self endon("momentum_unset");
thread func_B944();
thread func_B943();
var_00 = 0;
while(var_00 < 0.06)
{
self.var_BCF6 = self.var_BCF6 + 0.01;
scripts\mp\_weapons::func_12ED5();
wait(0.2083333);
var_00 = var_00 + 0.01;
}
self notify("momentum_max_speed");
thread momentum_endaftermax();
self waittill("momentum_reset");
}
//Function Number: 355
momentum_endaftermax()
{
self endon("momentum_unset");
self waittill("momentum_reset");
}
//Function Number: 356
func_B944()
{
self endon("death");
self endon("disconnect");
self endon("momentum_unset");
for(;;)
{
if(!self method_81BD() || self method_81BE() || !self isonground() || self method_8446())
{
wait(0.4);
if(!self method_81BD() || self method_81BE() || !self isonground() || self method_8446())
{
self notify("momentum_reset");
break;
}
}
scripts\common\utility::func_136F7();
}
}
//Function Number: 357
func_B943()
{
self endon("death");
self endon("disconnect");
self waittill("damage");
self notify("momentum_reset");
}
//Function Number: 358
func_12CF2()
{
self notify("momentum_unset");
self.var_11B2C = undefined;
}
//Function Number: 359
func_F829()
{
self.var_11B2C = "specialty_scavenger_eqp";
lib_0D6B::func_F6E6("equipment");
}
//Function Number: 360
func_12D22()
{
self.var_11B2C = undefined;
}
//Function Number: 361
func_F854()
{
thread lib_0D67::func_1091C();
}
//Function Number: 362
func_12D34()
{
foreach(var_01 in level.players)
{
var_01 notify("end_spawnview");
}
}
//Function Number: 363
func_F73C()
{
thread lib_0DEB::func_E855();
}
//Function Number: 364
func_12CCD()
{
}
//Function Number: 365
func_F71D()
{
self.var_11B2C = "specialty_ftlslide";
if(scripts\mp\_utility::func_9D46() && level.tactical)
{
self method_845A("assassin_mlgslide_mp_tactical");
return;
}
if(scripts\mp\_utility::func_9D46())
{
self method_845A("assassin_mlgslide_mp");
return;
}
if(level.tactical)
{
self method_845A("assassin_slide_mp_tactical");
return;
}
self method_845A("assassin_slide_mp");
}
//Function Number: 366
func_12CC3()
{
self.var_11B2C = undefined;
}
//Function Number: 367
func_F753()
{
thread lib_0D70::func_E7FE();
}
//Function Number: 368
func_12CD6()
{
}
//Function Number: 369
func_F721()
{
thread func_12EA3();
}
//Function Number: 370
func_12CC6()
{
thread func_E127();
}
//Function Number: 371
func_F86D()
{
self endon("disconnect");
self.var_11B2C = "specialty_support_killstreaks";
self waittill("equipKillstreaksFinished");
if(!isdefined(self.pers["killstreaks"][1]))
{
foreach(var_01 in self.pers["killstreaks"])
{
var_01.var_5FB9 = 0;
}
}
}
//Function Number: 372
func_12D40()
{
self notify("end_support_killstreaks");
self.var_11B2C = undefined;
}
//Function Number: 373
func_F7D2()
{
self.var_C829 = 0.98;
scripts\mp\_weapons::func_12ED5();
}
//Function Number: 374
func_12D02()
{
self.var_C829 = undefined;
}
//Function Number: 375
func_F657()
{
self setclientomnvar("ui_uplink_carrier_hud",1);
if(level.var_218A == 0)
{
self setclientomnvar("ui_uplink_carrier_armor_max",100);
}
else
{
self setclientomnvar("ui_uplink_carrier_armor_max",level.var_3AEC);
}
if(level.var_D6AF != 0)
{
self setclientomnvar("ui_uplink_timer_hud",1);
}
}
//Function Number: 376
func_12C77()
{
self notify("unsetBallCarrier");
self setclientomnvar("ui_uplink_carrier_hud",0);
self setclientomnvar("ui_uplink_carrier_armor",-1);
if(level.var_D6AF != 0)
{
self setclientomnvar("ui_uplink_timer_hud",0);
}
}
//Function Number: 377
func_F694()
{
self.var_11B2C = "specialty_cloak_aerial";
}
//Function Number: 378
func_12C91()
{
self.var_11B2C = undefined;
}
//Function Number: 379
func_F852()
{
self.var_11B2C = "specialty_spawn_radar";
self.var_8C2B = 1;
}
//Function Number: 380
func_12D33()
{
self.var_11B2C = undefined;
self.var_8C2B = 1;
}
//Function Number: 381
func_F752()
{
}
//Function Number: 382
func_12CD5()
{
}
//Function Number: 383
func_F886()
{
}
//Function Number: 384
func_12D4A()
{
}
//Function Number: 385
func_F631()
{
self.var_11B2C = "specialty_ads_awareness";
thread func_E832();
self setscriptablepartstate("heightened_senses","default");
}
//Function Number: 386
func_E832()
{
self endon("death");
self endon("disconnect");
self endon("unsetADSAwareness");
self.awarenessradius = 256;
self.awarenessqueryrate = 2;
thread awarenessmonitorstance();
for(;;)
{
wait(self.awarenessqueryrate);
foreach(var_01 in level.players)
{
if(var_01.team == self.team)
{
continue;
}
if(var_01 scripts\mp\_utility::_hasperk("specialty_coldblooded"))
{
continue;
}
if(var_01 isonground() && !var_01 method_81BD() && !var_01 method_8446() && !var_01 method_81BE())
{
continue;
}
if(distance2d(var_01.origin,self.origin) < self.awarenessradius)
{
thread playincomingwarning(var_01);
}
}
}
}
//Function Number: 387
playincomingwarning(param_00)
{
self setscriptablepartstate("heightened_senses","scrn_pulse");
self playrumbleonentity("damage_heavy");
param_00 playsoundtoplayer("ghost_senses_ping",self);
wait(0.2);
if(isdefined(self))
{
self setscriptablepartstate("heightened_senses","default");
if(scripts\mp\_utility::func_9F19(self))
{
self playrumbleonentity("damage_heavy");
if(isdefined(param_00) && scripts\mp\_utility::func_9F19(param_00))
{
param_00 playsoundtoplayer("ghost_senses_ping",self);
return;
}
}
}
}
//Function Number: 388
awarenessmonitorstance()
{
self endon("death");
self endon("disconnect");
for(;;)
{
var_00 = self getstance();
var_01 = self getvelocity();
switch(var_00)
{
case "stand":
self.awarenessradius = 400;
self.awarenessqueryrate = 2;
break;
case "crouch":
self.awarenessradius = 650;
self.awarenessqueryrate = 1;
break;
case "prone":
self.awarenessradius = 700;
self.awarenessqueryrate = 0.5;
break;
}
wait(0.01);
}
}
//Function Number: 389
awarenessaudiopulse()
{
self endon("death");
self endon("disconnect");
self endon("stop_awareness");
for(;;)
{
playsoundatpos(self.origin + (0,0,5),"ghost_senses_ping");
wait(2);
}
}
//Function Number: 390
func_12C6B()
{
self notify("unsetADSAwareness");
self.var_11B2C = undefined;
self setscriptablepartstate("heightened_senses","default");
}
//Function Number: 391
func_F815()
{
self.var_11B2C = "specialty_rearguard";
scripts\mp\perks\_perk_rearguard_shield::func_E814();
}
//Function Number: 392
func_12D14()
{
self.var_11B2C = undefined;
self.var_8C19 = undefined;
}
//Function Number: 393
func_F675()
{
self.var_3248 = spawnstruct();
self.var_3248.player = self;
self.var_3248.var_639D = [];
self.var_3248.var_655F = [];
self.var_3248.var_6556 = [];
self.var_3248 thread func_139B6();
self.var_3248 thread func_139B7();
}
//Function Number: 394
func_12C88()
{
self notify("unsetBulletOutline");
self.var_3248 = undefined;
}
//Function Number: 395
func_139B6()
{
self.player endon("death");
self.player endon("disconnect");
self.player endon("unsetBulletOutline");
while(isdefined(self.player))
{
var_00 = gettime();
foreach(var_03, var_02 in self.var_639D)
{
if(!isdefined(var_02))
{
func_324C(undefined,var_03);
continue;
}
if(var_02 scripts\mp\_utility::_hasperk("specialty_noscopeoutline"))
{
func_324C(var_02,var_03);
continue;
}
if(var_00 >= self.var_6556[var_03])
{
func_324C(var_02,var_03);
}
}
scripts\common\utility::func_136F7();
}
}
//Function Number: 396
func_139B7()
{
self.player scripts\common\utility::waittill_any_3("disconnect","unsetBulletOutline");
foreach(var_02, var_01 in self.var_639D)
{
if(isdefined(var_01))
{
func_324C(var_01,var_02);
}
}
}
//Function Number: 397
func_3249(param_00,param_01,param_02)
{
var_03 = param_00 getentitynumber();
var_04 = gettime() + param_01 * 1000;
self.var_639D[var_03] = param_00;
if(!isdefined(self.var_655F[var_03]))
{
self.var_655F[var_03] = scripts\mp\_utility::func_C794(param_00,"red",self.player,1,0,"perk");
}
if(!isdefined(self.var_6556[var_03]) || !isdefined(param_02) || param_02)
{
self.var_6556[var_03] = var_04;
}
}
//Function Number: 398
func_324C(param_00,param_01)
{
if(!isdefined(param_01))
{
param_01 = param_00 getentitynumber();
}
self.var_639D[param_01] = undefined;
self.var_6556[param_01] = undefined;
if(isdefined(param_00))
{
scripts\mp\_utility::func_C78F(self.var_655F[param_01],param_00);
}
self.var_655F[param_01] = undefined;
}
//Function Number: 399
func_324B(param_00,param_01,param_02,param_03)
{
if(!param_03 == "MOD_HEAD_SHOT" || param_03 == "MOD_RIFLE_BULLET" || param_03 == "MOD_PISTOL_BULLET" || param_03 == "MOD_EXPLOSIVE_BULLET")
{
return;
}
if(!isdefined(param_00) || !isdefined(param_01))
{
return;
}
if(!isplayer(param_00) || scripts\mp\_utility::func_9F22(param_00) || !isplayer(param_01) || scripts\mp\_utility::func_9F22(param_01))
{
return;
}
var_04 = param_00;
if(isdefined(param_00.var_222))
{
var_04 = param_00.var_222;
}
var_05 = param_01;
if(isdefined(param_01.var_222))
{
var_05 = param_01.var_222;
}
if(!scripts\mp\_utility::func_9FB3(scripts\mp\_utility::playersareenemies(var_04,var_05)))
{
return;
}
if(isplayer(param_00) && isplayer(param_01) && scripts\mp\_utility::func_C7A0(param_00 geteye(),param_01 geteye()))
{
return;
}
if(isdefined(param_00.var_3248) && !param_01 scripts\mp\_utility::_hasperk("specialty_noscopeoutline"))
{
param_00.var_3248 func_3249(param_01,1);
}
if(isdefined(param_01.var_3248) && !param_00 scripts\mp\_utility::_hasperk("specialty_noscopeoutline"))
{
param_01.var_3248 func_3249(param_00,2,0);
}
}
//Function Number: 400
func_E8A9()
{
self endon("death");
self endon("disconnect");
var_00 = scripts\mp\_utility::func_81EC();
for(;;)
{
foreach(var_02 in level.players)
{
if(!isdefined(var_02) || !scripts\mp\_utility::func_9F19(var_02))
{
continue;
}
if(var_02.team == self.team || var_02 == self)
{
continue;
}
if(var_02 scripts\mp\_utility::_hasperk("specialty_empimmune"))
{
continue;
}
if(var_02 lib_0DDF::func_9FC1())
{
thread func_B375(var_02,var_00);
}
}
scripts\common\utility::func_136F7();
}
}
//Function Number: 401
func_E8AA()
{
self endon("death");
self endon("disconnect");
self endon("track_killstreak_end");
for(;;)
{
if(scripts\mp\_utility::func_9FC6())
{
scripts\common\utility::func_136F7();
scripts\mp\_utility::func_E150("specialty_tracker");
while(scripts\mp\_utility::func_9FC6())
{
scripts\common\utility::func_136F7();
}
scripts\mp\_utility::func_8387("specialty_tracker");
break;
}
scripts\common\utility::func_136F7();
}
}
//Function Number: 402
func_B375(param_00,param_01)
{
if(!isdefined(param_00.var_61AA))
{
param_00.var_61AA = [];
}
if(isdefined(param_00.var_61AA[param_01]) && param_00.var_61AA[param_01] == "active")
{
return;
}
param_00.var_61AA[param_01] = "active";
thread func_61C2(param_00,param_01);
param_00 scripts\common\utility::waittill_any_3("death","cloak_end");
param_00.var_61AA[param_01] = undefined;
}
//Function Number: 403
func_61C2(param_00,param_01)
{
var_02 = ["j_shoulder_ri","j_shoulder_le","j_hip_ri","j_hip_le","j_spine4","j_wrist_ri","j_wrist_le"];
while(param_00 lib_0DDF::func_9FC1())
{
playfxontagforclients(scripts\common\utility::getfx("tracker_cloak_tag"),param_00,var_02[randomint(var_02.size - 1)],self);
wait(0.25);
}
param_00.var_61AA[param_01] = undefined;
}
//Function Number: 404
func_12EA3()
{
self endon("remove_gpsjammer");
self endon("death");
self endon("disconnect");
if(isai(self))
{
while(isdefined(self.var_26B9) && self.var_26B9 > 0)
{
scripts\common\utility::func_136F7();
}
}
if(level.var_B7CC == 0)
{
return;
}
if(level.var_1190C < 0.05)
{
return;
}
var_00 = 1;
var_01 = 0;
var_02 = 0;
var_03 = 0;
var_04 = 0;
var_05 = 0;
var_06 = self.origin;
var_07 = 0;
if(1)
{
var_07 = 1;
self method_8522(1);
thread ghostadvanceduavwatcher();
return;
}
thread ghostadvanceduavwatcher();
for(;;)
{
var_07 = 0;
if(scripts\mp\_utility::func_9FC6() || scripts\common\utility::istrue(self.var_9EE6) || scripts\common\utility::istrue(self.var_9DBC) || self ismantling())
{
var_07 = 1;
}
else
{
if(var_05 > 1)
{
var_05 = 0;
if(distancesquared(var_06,self.origin) < level.var_B75E)
{
var_02 = 1;
}
else
{
var_02 = 0;
}
var_06 = self.origin;
}
var_08 = self getvelocity();
var_09 = lengthsquared(var_08);
if(var_09 > level.var_B7CC && var_02 == 0)
{
var_07 = 1;
}
}
if(var_07 == 1)
{
var_03 = 0;
if(var_00 == 0)
{
var_01 = 0;
var_00 = 1;
self method_8522(1);
}
}
else
{
var_03++;
if(var_00 == 1 && var_03 >= level.var_848A)
{
var_01 = 1;
var_00 = 0;
self method_8522(0);
}
}
if(var_01 == 1)
{
level notify("radar_status_change");
}
var_05 = var_05 + level.var_1190C;
wait(level.var_1190C);
}
}
//Function Number: 405
ghostadvanceduavwatcher()
{
self endon("death");
self endon("disconnect");
self endon("remove_gpsjammer");
for(;;)
{
if(level.teambased)
{
if(isdefined(level.activeadvanceduavs) && scripts\mp\_utility::func_9FB3(level.activeadvanceduavs[scripts\mp\_utility::getotherteam(self.team)]))
{
self method_8522(0);
while(scripts\mp\_utility::func_9FB3(level.activeadvanceduavs[scripts\mp\_utility::getotherteam(self.team)]))
{
scripts\common\utility::func_136F7();
}
self method_8522(1);
}
}
else
{
foreach(var_01 in level.players)
{
if(var_01 == self)
{
continue;
}
if(scripts\mp\_utility::func_9FB3(level.activeadvanceduavs[var_01.var_86BD]) && level.activeadvanceduavs[var_01.var_86BD] > 0)
{
self method_8522(0);
while(scripts\mp\_utility::func_9FB3(level.activeadvanceduavs[var_01.var_86BD]) && level.activeadvanceduavs[var_01.var_86BD] > 0)
{
level waittill("uav_update");
}
self method_8522(1);
}
}
}
scripts\common\utility::func_136F7();
}
}
//Function Number: 406
func_E127()
{
self notify("remove_gpsjammer");
self method_8522(0);
}
//Function Number: 407
func_F72F()
{
level._effect["groundPoundShield_impact"] = loadfx("vfx/iw7/_requests/mp/vfx_debug_warning.vfx");
thread lib_0DE9::func_8655(6,8,::func_866A,"groundPoundShield_unset");
}
//Function Number: 408
func_12CC9()
{
self notify("groundPoundShield_unset");
}
//Function Number: 409
func_866A(param_00)
{
thread func_866C();
}
//Function Number: 410
func_866C()
{
self endon("death");
self endon("disconnect");
self endon("groundPound_unset");
self endon("groundPoundLand");
wait(0.25);
func_866B();
}
//Function Number: 411
func_866B()
{
if(isdefined(self.var_865C))
{
thread func_8662(self.var_865C);
}
var_00 = self.origin + anglestoforward(self.angles) * 5;
var_01 = self.angles + (0,90,0);
var_02 = spawn("script_model",var_00);
var_02.angles = var_01;
var_02 setmodel("weapon_shinguard_col_wm");
var_03 = spawn("script_model",var_00);
var_03.angles = var_01;
var_03 setmodel("weapon_shinguard_fr_wm");
var_03.var_C79D = scripts\mp\_utility::func_C793(var_03,"cyan",0,0,"equipment");
var_04 = spawn("script_model",var_00);
var_04.angles = var_01;
var_04 setmodel("weapon_shinguard_en_wm");
var_04.var_C79D = scripts\mp\_utility::func_C793(var_04,"orange",0,0,"equipment");
var_02.var_13434 = var_03;
var_02.var_13433 = var_04;
var_02.var_222 = self;
var_02 setcandamage(1);
var_02 method_847F(1);
var_02.health = 9999;
var_02.var_FC9B = 210;
self.var_865C = var_02;
var_05 = level.var_3CB5;
foreach(var_07 in var_05)
{
if(!isdefined(var_07))
{
continue;
}
if(level.teambased && var_07.team == self.team)
{
var_04 method_8429(var_07);
continue;
}
var_03 method_8429(var_07);
}
thread func_8669(var_02);
thread func_8665(var_02);
thread func_8666(var_02,3.25);
thread func_8664(var_02);
thread func_8660(var_02);
thread func_8668(var_02);
thread func_8658();
return var_02;
}
//Function Number: 412
func_8662(param_00)
{
self notify("groundPoundShield_end");
if(!isdefined(param_00))
{
return;
}
thread func_8663();
thread func_8661(param_00);
}
//Function Number: 413
func_865D(param_00)
{
self notify("groundPoundShield_end");
if(!isdefined(param_00))
{
return;
}
thread func_865E();
thread func_8661(param_00);
}
//Function Number: 414
func_8668(param_00)
{
self endon("death");
self endon("disconnect");
self endon("groundPound_unset");
self endon("groundPoundShield_end");
self endon("groundPoundShield_deleteShield");
for(;;)
{
param_00 waittill("damage",var_01,var_02,var_03,var_04,var_05,var_06,var_07,var_08,var_09,var_0A);
if(isdefined(var_02))
{
if(var_02 == self || var_02.team != self.team)
{
param_00.var_FC9B = param_00.var_FC9B - var_01;
}
}
param_00.health = 9999;
thread func_865F(var_02,var_04,var_03);
if(param_00.var_FC9B <= 0)
{
thread func_865D(param_00);
return;
}
else if(param_00.var_FC9B <= 105)
{
if(param_00.var_13434.model != "weapon_shinguard_dam_wm")
{
param_00.var_13434 setmodel("weapon_shinguard_dam_wm");
scripts\mp\_utility::func_C7AA(param_00.var_13434);
}
if(param_00.var_13433.model != "weapon_shinguard_dam_wm")
{
param_00.var_13433 setmodel("weapon_shinguard_dam_wm");
scripts\mp\_utility::func_C7AA(param_00.var_13433);
}
}
}
}
//Function Number: 415
func_8664(param_00)
{
self endon("death");
self endon("disconnect");
self endon("groundPound_unset");
self endon("groundPoundShield_end");
self endon("groundPoundShield_deleteShield");
var_01 = self isjumping();
var_02 = undefined;
for(;;)
{
var_02 = var_01;
var_01 = self isjumping();
if(!var_02 && var_01)
{
thread func_8662(param_00);
return;
}
scripts\common\utility::func_136F7();
}
}
//Function Number: 416
func_8666(param_00,param_01)
{
self endon("death");
self endon("disconnect");
self endon("groundPound_unset");
self endon("groundPoundShield_end");
self endon("groundPoundShield_deleteShield");
wait(param_01);
thread func_8662(param_00);
}
//Function Number: 417
func_8665(param_00)
{
self endon("death");
self endon("disconnect");
self endon("groundPound_unset");
self endon("groundPoundShield_end");
self endon("groundPoundShield_deleteShield");
while(isdefined(param_00))
{
if(lengthsquared(param_00.origin - self.origin) > 11664)
{
thread func_8662(param_00);
return;
}
scripts\common\utility::func_136F7();
}
}
//Function Number: 418
func_8660(param_00)
{
self endon("groundPoundShield_deleteShield");
scripts\common\utility::waittill_any_3("death","disconnect","groundPound_unset");
thread func_8661(param_00);
}
//Function Number: 419
func_8669(param_00)
{
self endon("groundPoundShield_deleteShield");
var_01 = self.team;
for(;;)
{
level waittill("joined_team",var_02);
if(level.teambased && var_02.team == var_01)
{
param_00.var_13434 showtoplayer(var_02);
param_00.var_13433 method_8429(var_02);
continue;
}
param_00.var_13434 method_8429(var_02);
param_00.var_13433 showtoplayer(var_02);
}
}
//Function Number: 420
func_8661(param_00)
{
self notify("groundPoundShield_deleteShield");
scripts\mp\_utility::func_C78F(param_00.var_13434.var_C79D,param_00.var_13434);
scripts\mp\_utility::func_C78F(param_00.var_13433.var_C79D,param_00.var_13433);
param_00.var_13434 delete();
param_00.var_13433 delete();
param_00 delete();
}
//Function Number: 421
func_8658()
{
self endon("disconnect");
self endon("groundPound_unset");
self endon("groundPoundShield_end");
self endon("groundPoundShield_deleteShield");
self playlocalsound("heavy_shield_up");
self playsoundtoteam("heavy_shield_up_npc","axis",self);
self playsoundtoteam("heavy_shield_up_npc","allies",self);
}
//Function Number: 422
func_8663()
{
self endon("disconnect");
self endon("groundPound_unset");
self endon("groundPoundShield_end");
self endon("groundPoundShield_deleteShield");
self playlocalsound("heavy_shield_down");
self playsoundtoteam("heavy_shield_down_npc","axis",self);
self playsoundtoteam("heavy_shield_down_npc","allies",self);
}
//Function Number: 423
func_865F(param_00,param_01,param_02)
{
self endon("disconnect");
self endon("groundPound_unset");
self endon("groundPoundShield_end");
self endon("groundPoundShield_deleteShield");
playfx(scripts\common\utility::getfx("groundPoundShield_impact"),param_01,-1 * param_02);
playsoundatpos(param_01,"ds_shield_impact");
param_00 scripts\mp\_damagefeedback::func_12E84("hitbulletstorm");
}
//Function Number: 424
func_865E()
{
self endon("disconnect");
self endon("groundPound_unset");
self endon("groundPoundShield_end");
self endon("groundPoundShield_deleteShield");
}
//Function Number: 425
func_F730()
{
level._effect["groundPoundShock_impact_sm"] = loadfx("vfx/iw7/_requests/mp/vfx_debug_warning.vfx");
level._effect["groundPoundShock_impact_lrg"] = loadfx("vfx/iw7/_requests/mp/vfx_debug_warning.vfx");
thread lib_0DE9::func_8655(7,8,::func_866E,"groundPoundShock_unset");
}
//Function Number: 426
func_12CCA()
{
self notify("groundPoundShock_unset");
}
//Function Number: 427
func_866E(param_00)
{
self endon("death");
self endon("disconnect");
self endon("groundPound_unset");
self endon("groundPoundShock_unset");
var_01 = undefined;
var_02 = undefined;
switch(param_00)
{
case "groundPoundLandTier0":
var_02 = scripts\common\utility::getfx("groundPoundShock_impact_sm");
var_01 = 144;
break;
case "groundPoundLandTier1":
var_02 = scripts\common\utility::getfx("groundPoundShock_impact_sm");
var_01 = 180;
break;
case "groundPoundLandTier2":
var_02 = scripts\common\utility::getfx("groundPoundShock_impact_lrg");
var_01 = 216;
break;
}
thread func_866F(var_01,var_02);
var_03 = undefined;
if(level.teambased)
{
var_03 = scripts\mp\_utility::func_81A0(scripts\mp\_utility::getotherteam(self.team));
}
else
{
var_03 = level.var_3CB5;
}
var_04 = var_01 * var_01;
var_05 = scripts\common\trace::func_48BC(0,1,0,0,1,0,0);
foreach(var_07 in var_03)
{
if(!isdefined(var_07) || var_07 == self || !var_07 scripts\mp\killstreaks\_emp_common::func_FFC5())
{
continue;
}
if(lengthsquared(var_07 geteye() - self geteye()) > var_04)
{
continue;
}
var_08 = function_0287(self geteye(),var_07 geteye(),var_05,undefined,0,"physicsquery_closest");
if(isdefined(var_08) && var_08.size > 0)
{
continue;
}
thread func_866D(var_07);
}
var_0A = scripts\mp\_weapons::func_7E8C(self.origin,var_01,0,undefined);
foreach(var_0C in var_0A)
{
if(isdefined(var_0C.var_222) && !scripts\mp\_weapons::func_7415(self,var_0C.var_222))
{
continue;
}
var_0C notify("emp_damage",self,3);
}
}
//Function Number: 428
func_866D(param_00)
{
param_00 endon("death");
param_00 endon("disconnect");
param_00 scripts\mp\killstreaks\_emp_common::func_20C3();
scripts\mp\_gamescore::func_11ACE(self,param_00,"groundpound_mp");
param_00 shellshock("concussion_grenade_mp",3);
wait(3);
param_00 scripts\mp\killstreaks\_emp_common::func_E0F3();
if(isdefined(self))
{
scripts\mp\_gamescore::func_12D6F(self,param_00,"groundpound_mp");
}
}
//Function Number: 429
func_866F(param_00,param_01)
{
playfx(param_01,self.origin + (0,0,20),(0,0,1));
}
//Function Number: 430
func_F72E()
{
thread lib_0DE9::func_8655(8,8,::func_865B,"groundPoundBoost_unset");
}
//Function Number: 431
func_12CC8()
{
self notify("groundPoundBoost_unset");
}
//Function Number: 432
func_865B(param_00)
{
scripts\common\utility::func_F367(self method_842D(0));
}
//Function Number: 433
func_F65D()
{
level._effect["battleSlideShield_damage"] = loadfx("vfx/iw7/_requests/mp/vfx_debug_warning.vfx");
thread func_2904();
}
//Function Number: 434
func_12C7D()
{
self notify("battleSlideShield_unset");
}
//Function Number: 435
func_2904()
{
self endon("death");
self endon("disconnect");
self endon("battleSlide_unset");
self notify("battleSlideShield_monitor");
self endon("battleSlideShield_monitor");
for(;;)
{
self waittill("sprint_slide_begin");
thread func_2906();
}
}
//Function Number: 436
func_2905(param_00)
{
self endon("disconnect");
self endon("battleSlide_unset");
while(isdefined(param_00))
{
param_00 waittill("damage",var_01,var_02,var_03,var_04,var_05,var_06,var_07,var_08,var_09,var_0A);
thread func_28FB(param_00,var_02,var_04,var_03);
if(param_00.health <= 0)
{
thread func_28F9(param_00);
param_00 delete();
continue;
}
if(param_00.health <= 125)
{
if(param_00.model != "weapon_shinguard_dam_wm")
{
param_00 setmodel("weapon_shinguard_dam_wm");
}
continue;
}
if(param_00.model != "weapon_shinguard_wm")
{
param_00 setmodel("weapon_shinguard_wm");
}
}
}
//Function Number: 437
func_2906()
{
if(isdefined(self.var_28F8))
{
thread func_2900(self.var_28F8);
}
var_00 = scripts\common\utility::spawn_tag_origin();
var_00 setmodel("weapon_shinguard_wm");
var_00 setcandamage(1);
var_00.health = 250;
var_00 linkto(self,"tag_origin",(30,0,0),(0,90,0));
var_00 show();
self.var_28F8 = var_00;
thread func_28FD(var_00);
thread func_28FE(var_00);
thread func_28FF(var_00);
thread func_2909(var_00);
thread func_2905(var_00);
thread func_28FC(var_00);
thread func_2907(var_00);
return var_00;
}
//Function Number: 438
func_2900(param_00)
{
self notify("battleSlideShield_end");
if(!isdefined(param_00))
{
return;
}
thread func_2901(param_00);
param_00 delete();
}
//Function Number: 439
func_28FC(param_00)
{
param_00 endon("death");
scripts\common\utility::waittill_any_3("death","disconnect","battleSlide_unset");
param_00 delete();
}
//Function Number: 440
func_28FD(param_00)
{
self endon("death");
self endon("disconnect");
self endon("battleSlide_unset");
self endon("battleSlideShield_unlink");
self endon("battleSlideShield_end");
param_00 endon("death");
for(;;)
{
if(!self isonground())
{
param_00 delete();
self notify("battleSlideShield_end");
return;
}
scripts\common\utility::func_136F7();
}
}
//Function Number: 441
func_28FE(param_00)
{
self endon("death");
self endon("disconnect");
self endon("battleSlide_unset");
self endon("battleSlideShield_unlink");
self endon("battleSlideShield_end");
param_00 endon("death");
self waittill("sprint_begin");
param_00 delete();
self notify("battleSlideShield_end");
}
//Function Number: 442
func_2902(param_00)
{
self endon("death");
self endon("disconnect");
self endon("battleSlide_unset");
self endon("battleSlideShield_end");
param_00 endon("death");
for(;;)
{
if(lengthsquared(param_00.origin - self.origin) > 11664)
{
thread func_2900(param_00);
return;
}
scripts\common\utility::func_136F7();
}
}
//Function Number: 443
func_2903(param_00)
{
self endon("death");
self endon("disconnect");
self endon("battleSlide_unset");
self endon("battleSlideShield_end");
param_00 endon("death");
wait(3.5);
thread func_2900(param_00);
}
//Function Number: 444
func_2908(param_00)
{
if(!isdefined(param_00))
{
return;
}
param_00 unlink();
self notify("battleSlideShield_unlink");
thread func_2903(param_00);
thread func_2902(param_00);
self notify("battleSlideShield_unlink");
}
//Function Number: 445
func_28FF(param_00)
{
self endon("death");
self endon("disconnect");
self endon("battleSlide_unset");
self endon("battleSlideShield_unlink");
self endon("battleSlideShield_end");
param_00 endon("death");
self waittill("sprint_slide_end");
wait(0.75);
param_00 delete();
self notify("battleSlideShield_end");
}
//Function Number: 446
func_2909(param_00)
{
self endon("death");
self endon("disconnect");
self endon("battleSlide_unset");
self endon("battleSlideShield_unlink");
self endon("battleSlideShield_end");
param_00 endon("death");
self waittill("sprint_slide_end");
for(;;)
{
if(lengthsquared(self getvelocity()) < 100)
{
thread func_2908(param_00);
return;
}
scripts\common\utility::func_136F7();
}
}
//Function Number: 447
func_28F9(param_00)
{
if(!isdefined(param_00))
{
return;
}
thread func_28FA(param_00);
self notify("battleSlideShield_end");
}
//Function Number: 448
func_2907(param_00)
{
self endon("disconnect");
self endon("battleSlide_unset");
param_00 endon("death");
self playlocalsound("heavy_shield_up");
self playsoundtoteam("heavy_shield_up_npc","axis",self);
self playsoundtoteam("heavy_shield_up_npc","allies",self);
}
//Function Number: 449
func_2901(param_00)
{
self endon("disconnect");
self endon("battleSlide_unset");
param_00 endon("death");
self playlocalsound("heavy_shield_down");
self playsoundtoteam("heavy_shield_down_npc","axis",self);
self playsoundtoteam("heavy_shield_down_npc","allies",self);
}
//Function Number: 450
func_28FB(param_00,param_01,param_02,param_03)
{
self endon("disconnect");
self endon("battleSlide_unset");
param_00 endon("death");
playfx(scripts\common\utility::getfx("battleSlideShield_damage"),param_02,-1 * param_03);
playsoundatpos(param_02,"ds_shield_impact");
param_01 scripts\mp\_damagefeedback::func_12E84("hitbulletstorm");
}
//Function Number: 451
func_28FA(param_00)
{
}
//Function Number: 452
func_F65C()
{
}
//Function Number: 453
func_12C7C()
{
}
//Function Number: 454
func_7DF8()
{
return 100;
}
//Function Number: 455
func_F888()
{
level._effect["thrusterRadFr"] = loadfx("vfx/iw7/core/mp/powers/thrust_blast/vfx_thrust_blast_radius_fr");
level._effect["thrusterRadEn"] = loadfx("vfx/iw7/core/mp/powers/thrust_blast/vfx_thrust_blast_radius_en");
func_11886();
}
//Function Number: 456
func_12D4B()
{
if(isdefined(self.var_1188A))
{
self.var_1188A delete();
}
self notify("thruster_unset");
}
//Function Number: 457
func_11886()
{
self endon("death");
self endon("disconnect");
self endon("thruster_unset");
level endon("game_ended");
for(;;)
{
self waittill("doubleJumpBoostBegin");
thread func_11878();
thread func_11870();
}
}
//Function Number: 458
func_11878()
{
self endon("death");
self endon("disconnect");
self endon("thruster_unset");
level endon("game_ended");
self endon("doubleJumpBoostEnd");
if(!scripts\mp\_utility::_hasperk("specialty_quieter"))
{
self playsoundonmovingent("demolition_jump_expl");
}
thread func_11885();
if(!isdefined(self.var_1188A))
{
self.var_1188A = spawn("script_model",self.origin);
self.var_1188A setmodel("tag_origin");
}
else
{
self.var_1188A.origin = self.origin;
}
wait(0.05);
for(;;)
{
self playrumbleonentity("damage_light");
scripts\mp\_shellshock::func_1245(0.1,0.3,self.origin,120);
var_00 = playerphysicstrace(self.origin + (0,0,10),self.origin - (0,0,600)) + (0,0,1);
self.var_1188A.origin = var_00;
self.var_1188A.angles = (90,0,0);
wait(0.05);
scripts\mp\_utility::func_D486(self.var_1188A,"tag_origin",self.team,scripts\common\utility::getfx("thrusterRadFr"),scripts\common\utility::getfx("thrusterRadEn"));
wait(0.33);
}
}
//Function Number: 459
func_11870()
{
self endon("death");
self endon("disconnect");
self endon("thruster_unset");
level endon("game_ended");
self endon("doubleJumpBoostEnd");
for(;;)
{
scripts\mp\_utility::func_DC0B(self.origin,12,64,5,12,self,undefined,"MOD_IMPACT","thruster_mp",1);
wait(0.05);
}
}
//Function Number: 460
func_11885()
{
self endon("death");
self endon("disconnect");
level endon("game_ended");
scripts\common\utility::waittill_any_3("doubleJumpBoostEnd","thruster_unset");
wait(0.05);
}
//Function Number: 461
func_E859()
{
self endon("death");
self endon("disconnect");
self endon("removeArchetype");
level endon("game_ended");
for(;;)
{
if(self method_8416() && self method_822E() > 0.3 && self method_842B(0) > 0)
{
func_68D6();
thread func_13AA5();
self waittill("hover_ended");
func_6334();
}
wait(0.1);
}
}
//Function Number: 462
func_13AA5()
{
self endon("death");
self endon("disconnect");
self endon("removeArchetype");
level endon("game_ended");
self endon("walllock_ended");
while(self method_822E() > 0.3)
{
wait(0.05);
}
self notify("hover_ended");
}
//Function Number: 463
func_68D6()
{
self endon("death");
self endon("disconnect");
self endon("removeArchetype");
level endon("game_ended");
self.var_9E37 = 1;
self allowmovement(0);
self allowjump(0);
self playlocalsound("ghost_wall_attach");
var_00 = scripts\common\utility::spawn_tag_origin();
self playerlinkto(var_00);
thread func_B2F5(var_00);
}
//Function Number: 464
func_B2F5(param_00)
{
self endon("death");
self endon("disconnect");
self endon("removeArchetype");
level endon("game_ended");
var_01 = self method_8433(0);
self method_8434(0,1);
wait(2);
self notify("hover_ended");
self method_8434(0,var_01);
self method_842C(0,0);
}
//Function Number: 465
func_6334()
{
self endon("death");
self endon("disconnect");
self endon("removeArchetype");
level endon("game_ended");
self.var_9E37 = undefined;
self allowmovement(1);
self allowjump(1);
self playlocalsound("ghost_wall_detach");
self unlink();
}