mirror of
https://github.com/InfinityLoader/IL-GSC.git
synced 2025-06-26 09:27:54 -05:00
2427 lines
45 KiB
Plaintext
2427 lines
45 KiB
Plaintext
/*******************************************************************
|
|
* Decompiled By: Bog
|
|
* Decompiled File: scripts\mp\killstreaks\_killstreaks.gsc
|
|
* Game: Call of Duty: Infinite Warfare
|
|
* Platform: PC
|
|
* Function Count: 101
|
|
* Decompile Time: 5065 ms
|
|
* Timestamp: 10/27/2023 12:29:02 AM
|
|
*******************************************************************/
|
|
|
|
//Function Number: 1
|
|
func_9888()
|
|
{
|
|
level.var_A697 = [];
|
|
var_00 = 1;
|
|
for(;;)
|
|
{
|
|
var_01 = scripts\mp\_utility::func_7F4B(var_00);
|
|
if(!isdefined(var_01) || var_01 == "")
|
|
{
|
|
break;
|
|
}
|
|
|
|
var_02 = var_01;
|
|
var_03 = scripts\mp\_utility::func_7F3C(var_02);
|
|
var_04 = scripts\mp\_utility::func_7F3B(var_02);
|
|
game["dialog"][var_02] = var_04;
|
|
var_05 = scripts\mp\_utility::func_7F34(var_02);
|
|
game["dialog"]["allies_friendly_" + var_02 + "_inbound"] = "friendly_" + var_05;
|
|
game["dialog"]["allies_enemy_" + var_02 + "_inbound"] = "enemy_" + var_05;
|
|
var_06 = scripts\mp\_utility::func_7F3E(var_02);
|
|
game["dialog"]["axis_friendly_" + var_02 + "_inbound"] = "friendly_" + var_06;
|
|
game["dialog"]["axis_enemy_" + var_02 + "_inbound"] = "enemy_" + var_06;
|
|
var_07 = scripts\mp\_utility::func_7F4E(var_02);
|
|
scripts\mp\_rank::func_DF0A("killstreak_" + var_02,"value",var_07);
|
|
level.var_A697[level.var_A697.size] = var_02;
|
|
var_00++;
|
|
}
|
|
}
|
|
|
|
//Function Number: 2
|
|
func_C56E()
|
|
{
|
|
for(;;)
|
|
{
|
|
level waittill("connected",var_00);
|
|
if(!isdefined(var_00.pers["killstreaks"]))
|
|
{
|
|
var_00.pers["killstreaks"] = [];
|
|
}
|
|
|
|
if(!isdefined(var_00.pers["startedMapSelect"]))
|
|
{
|
|
var_00.pers["startedMapSelect"] = 0;
|
|
}
|
|
|
|
var_00 visionsetmissilecamforplayer(game["thermal_vision"]);
|
|
var_00 thread func_C57B();
|
|
var_00 thread func_B9CB();
|
|
var_00 thread func_110C3();
|
|
var_00 thread monitorrigswitch();
|
|
}
|
|
}
|
|
|
|
//Function Number: 3
|
|
func_C57B()
|
|
{
|
|
self endon("disconnect");
|
|
for(;;)
|
|
{
|
|
self waittill("spawned_player");
|
|
self.var_13111 = undefined;
|
|
func_F1C5();
|
|
thread func_A6BA();
|
|
thread func_A69C();
|
|
thread func_A69B();
|
|
thread func_A69D();
|
|
thread func_A6B8();
|
|
thread func_A6B0();
|
|
thread func_FAC6();
|
|
if(!isdefined(self.var_5FBE))
|
|
{
|
|
self.var_5FBE = 0;
|
|
}
|
|
|
|
if(!scripts\mp\_utility::func_9FB3(self.var_AE15))
|
|
{
|
|
scripts\mp\_utility::initpersstat("streakPoints");
|
|
self.var_110EE = scripts\mp\_utility::getpersstat("streakPoints");
|
|
self.var_AE15 = 1;
|
|
}
|
|
|
|
func_F866();
|
|
func_12EBC();
|
|
func_12F2E(self.var_110EE);
|
|
}
|
|
}
|
|
|
|
//Function Number: 4
|
|
monitorrigswitch()
|
|
{
|
|
self endon("disconnect");
|
|
level endon("game_ended");
|
|
for(;;)
|
|
{
|
|
self waittill("giveLoadout");
|
|
if(scripts\mp\_utility::func_9FB3(level.var_3B1E))
|
|
{
|
|
continue;
|
|
}
|
|
|
|
if(isdefined(self.oldperks) && isdefined(self.var_CA5B) && self.oldperks.size > 0)
|
|
{
|
|
if(scripts\mp\_utility::func_2287(self.var_CA5B,"specialty_support_killstreaks") && scripts\mp\_utility::func_2287(self.oldperks,"specialty_support_killstreaks"))
|
|
{
|
|
continue;
|
|
}
|
|
else if(!scripts\mp\_utility::func_2287(self.oldperks,"specialty_support_killstreaks"))
|
|
{
|
|
continue;
|
|
}
|
|
else
|
|
{
|
|
func_E275();
|
|
func_12EBC();
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
//Function Number: 5
|
|
func_B9CB()
|
|
{
|
|
while(isdefined(self))
|
|
{
|
|
if(scripts\mp\_utility::func_2DD9())
|
|
{
|
|
self waittill("disconnect");
|
|
continue;
|
|
}
|
|
|
|
scripts\common\utility::waittill_any_3("disconnect","joined_team","joined_spectators");
|
|
self notify("killstreak_disowned");
|
|
}
|
|
}
|
|
|
|
//Function Number: 6
|
|
func_FAC6()
|
|
{
|
|
self endon("death");
|
|
self endon("disconnect");
|
|
level endon("game_ended");
|
|
if(isbot(self))
|
|
{
|
|
return;
|
|
}
|
|
|
|
scripts\mp\_utility::func_7670("prematch_done");
|
|
self notifyonplayercommand("ks_select_up","+actionslot 1");
|
|
self notifyonplayercommand("ks_select_down","+actionslot 2");
|
|
self notifyonplayercommand("ks_action_3","+actionslot 3");
|
|
self notifyonplayercommand("ks_action_4","+actionslot 4");
|
|
self notifyonplayercommand("ks_action_5","+actionslot 5");
|
|
self notifyonplayercommand("ks_action_6","+actionslot 6");
|
|
scripts\mp\_utility::_setactionslot(4,"");
|
|
}
|
|
|
|
//Function Number: 7
|
|
func_12F2F()
|
|
{
|
|
if(!isdefined(self.pers["killstreaks"]))
|
|
{
|
|
return;
|
|
}
|
|
|
|
if(self.var_110EE == self.var_D8B3)
|
|
{
|
|
return;
|
|
}
|
|
|
|
var_00 = self.var_110EE;
|
|
self method_80BF(int(min(self.var_110EE,16384)));
|
|
if(self.var_110EE >= self.var_BFB0)
|
|
{
|
|
func_F866();
|
|
}
|
|
}
|
|
|
|
//Function Number: 8
|
|
func_E274()
|
|
{
|
|
self method_80BF(0);
|
|
self setclientomnvar("ui_score_streak_cost",0);
|
|
self setclientomnvar("ui_score_streak_two_cost",0);
|
|
self setclientomnvar("ui_score_streak_three_cost",0);
|
|
func_F866();
|
|
}
|
|
|
|
//Function Number: 9
|
|
func_F866()
|
|
{
|
|
if(!isdefined(self.var_110F4))
|
|
{
|
|
self.var_BFB0 = 0;
|
|
self method_80C0(0);
|
|
return;
|
|
}
|
|
|
|
if(func_7FA2() == 0)
|
|
{
|
|
self.var_BFB0 = 0;
|
|
self method_80C0(0);
|
|
return;
|
|
}
|
|
|
|
var_00 = self.var_BFB0;
|
|
var_01 = func_7FEE();
|
|
if(!isdefined(var_01))
|
|
{
|
|
return;
|
|
}
|
|
|
|
var_02 = func_817B(var_01);
|
|
self.var_BFB0 = var_02;
|
|
if(scripts\mp\_utility::_hasperk("specialty_support_killstreaks") && isdefined(self.pers["killstreaks"][1]) && !scripts\mp\_utility::func_9FB3(self.var_5FBD))
|
|
{
|
|
var_03 = 0;
|
|
foreach(var_05 in self.pers["killstreaks"])
|
|
{
|
|
if(scripts\mp\_utility::func_9FB3(var_05.var_5FB9))
|
|
{
|
|
var_03 = 1;
|
|
continue;
|
|
}
|
|
|
|
var_03 = 0;
|
|
}
|
|
|
|
if(var_03 && !isdefined(self.var_5FBD))
|
|
{
|
|
self.var_5FBD = 1;
|
|
self.var_BFB0 = 0;
|
|
self method_80C0(0);
|
|
self method_80BF(0);
|
|
self setclientomnvar("ui_score_streak_cost",0);
|
|
self setclientomnvar("ui_score_streak_two_cost",0);
|
|
self setclientomnvar("ui_score_streak_three_cost",0);
|
|
scripts\mp\_hud_message::func_10122("KILLSTREAKS_SUPPORT_NO_WRAP");
|
|
return;
|
|
}
|
|
}
|
|
|
|
self method_80C0(var_02);
|
|
}
|
|
|
|
//Function Number: 10
|
|
func_7FEE()
|
|
{
|
|
if(self.var_110EE == func_7FA2() && self.var_110F4 != "specialist")
|
|
{
|
|
var_00 = 0;
|
|
}
|
|
else
|
|
{
|
|
var_00 = self.var_110EE;
|
|
}
|
|
|
|
foreach(var_02 in self.var_A6AB)
|
|
{
|
|
var_03 = func_817B(var_02);
|
|
if(var_03 > var_00)
|
|
{
|
|
return var_02;
|
|
}
|
|
}
|
|
|
|
return undefined;
|
|
}
|
|
|
|
//Function Number: 11
|
|
func_12F2E(param_00)
|
|
{
|
|
if(scripts\mp\_utility::func_9FB3(self.var_5FBD) && scripts\mp\_utility::_hasperk("specialty_support_killstreaks"))
|
|
{
|
|
self setclientomnvar("ui_score_streak",0);
|
|
self setclientomnvar("ui_score_streak_two",0);
|
|
self setclientomnvar("ui_score_streak_three",0);
|
|
self setclientomnvar("ui_score_streak_cost",0);
|
|
self setclientomnvar("ui_score_streak_two_cost",0);
|
|
self setclientomnvar("ui_score_streak_three_cost",0);
|
|
self setclientomnvar("ui_score_streak",0);
|
|
return;
|
|
}
|
|
|
|
var_01 = 0;
|
|
if(isdefined(self.var_A6AB))
|
|
{
|
|
foreach(var_03 in self.var_A6AB)
|
|
{
|
|
if(var_01 == 0)
|
|
{
|
|
var_04 = func_817B(var_03);
|
|
self setclientomnvar("ui_score_streak_cost",var_04);
|
|
self setclientomnvar("ui_score_streak",param_00);
|
|
var_01++;
|
|
continue;
|
|
}
|
|
|
|
if(var_01 == 1)
|
|
{
|
|
var_04 = func_817B(var_03);
|
|
self setclientomnvar("ui_score_streak_two_cost",var_04);
|
|
self setclientomnvar("ui_score_streak_two",param_00);
|
|
var_01++;
|
|
continue;
|
|
}
|
|
|
|
var_04 = func_817B(var_03);
|
|
self setclientomnvar("ui_score_streak_three_cost",var_04);
|
|
self setclientomnvar("ui_score_streak_three",param_00);
|
|
}
|
|
}
|
|
}
|
|
|
|
//Function Number: 12
|
|
func_7FA2()
|
|
{
|
|
var_00 = 0;
|
|
foreach(var_02 in self.var_A6AB)
|
|
{
|
|
var_03 = func_817B(var_02);
|
|
if(var_03 > var_00)
|
|
{
|
|
var_00 = var_03;
|
|
}
|
|
}
|
|
|
|
return var_00;
|
|
}
|
|
|
|
//Function Number: 13
|
|
func_12EBC()
|
|
{
|
|
if(!scripts\mp\_utility::func_9F19(self))
|
|
{
|
|
return;
|
|
}
|
|
|
|
var_00 = self.pers["killstreaks"];
|
|
for(var_01 = 0;var_01 <= 3;var_01++)
|
|
{
|
|
var_02 = var_00[var_01];
|
|
if(isdefined(var_02) && isdefined(var_02.var_110EA))
|
|
{
|
|
self setclientomnvar("ui_score_streak_index_" + var_01,scripts\mp\_utility::func_7F44(var_02.var_110EA));
|
|
self setclientomnvar("ui_score_streak_available_" + var_01,var_00[var_01].var_269A);
|
|
continue;
|
|
}
|
|
|
|
self setclientomnvar("ui_score_streak_index_" + var_01,0);
|
|
self setclientomnvar("ui_score_streak_available_" + var_01,0);
|
|
}
|
|
|
|
var_03 = func_8111();
|
|
if(isdefined(var_03))
|
|
{
|
|
self setclientomnvar("ui_score_streak_selected_slot",var_03);
|
|
return;
|
|
}
|
|
|
|
self setclientomnvar("ui_score_streak_selected_slot",-1);
|
|
}
|
|
|
|
//Function Number: 14
|
|
func_A6B8()
|
|
{
|
|
self endon("disconnect");
|
|
self endon("faux_spawn");
|
|
self notify("killstreakTeamChangeWatcher");
|
|
self endon("killstreakTeamChangeWatcher");
|
|
for(;;)
|
|
{
|
|
self waittill("joined_team");
|
|
func_41C0();
|
|
}
|
|
}
|
|
|
|
//Function Number: 15
|
|
func_A6BA()
|
|
{
|
|
self endon("disconnect");
|
|
self endon("death");
|
|
self endon("joined_team");
|
|
self endon("faux_spawn");
|
|
self endon("spawned");
|
|
level endon("game_ended");
|
|
self notify("killstreakTriggeredWatcher");
|
|
self endon("killstreakTriggeredWatcher");
|
|
for(;;)
|
|
{
|
|
var_00 = scripts\common\utility::func_13734("ks_action_3","ks_action_4","ks_action_5","ks_action_6");
|
|
var_01 = func_81D9(var_00);
|
|
if(!isdefined(var_01))
|
|
{
|
|
continue;
|
|
}
|
|
|
|
var_02 = func_7F45(var_01);
|
|
if(!isdefined(var_02) || !var_02.var_269A)
|
|
{
|
|
continue;
|
|
}
|
|
|
|
if(!scripts\common\utility::func_9FBE())
|
|
{
|
|
scripts\mp\_hud_message::func_10122("KILLSTREAKS_CANNOT_BE_USED",undefined);
|
|
continue;
|
|
}
|
|
|
|
if(isdefined(var_02.var_394))
|
|
{
|
|
var_03 = func_392B(var_02.var_394,var_02);
|
|
if(isdefined(var_03))
|
|
{
|
|
var_04 = undefined;
|
|
if(var_03 == "KILLSTREAKS_UNAVAILABLE_FOR_N")
|
|
{
|
|
var_04 = level.var_A6AA - level.var_8487 - level.ingraceperiod;
|
|
}
|
|
|
|
scripts\mp\_hud_message::func_10122(var_03,var_04);
|
|
continue;
|
|
}
|
|
}
|
|
|
|
if(isdefined(self.var_13111))
|
|
{
|
|
self notify("killstreak_trigger_blocked",var_02);
|
|
continue;
|
|
}
|
|
|
|
var_05 = var_02.var_110F1;
|
|
if(isdefined(var_05.var_127BD))
|
|
{
|
|
if(!self [[ var_05.var_127BD ]](var_02))
|
|
{
|
|
continue;
|
|
}
|
|
}
|
|
|
|
self.var_AA35 = var_02;
|
|
if(!scripts\common\utility::func_9C70())
|
|
{
|
|
func_F837(var_01);
|
|
}
|
|
|
|
if(var_02.var_EF88 == "no_fire_weapon")
|
|
{
|
|
thread func_127C7(var_02.var_394,var_02,1);
|
|
}
|
|
else if(var_02.var_EF88 == "gesture_script_weapon")
|
|
{
|
|
self giveandfireoffhand(var_02.var_394);
|
|
}
|
|
else if(isdefined(var_02.var_394) && var_02.var_394 != "none")
|
|
{
|
|
thread func_127C7(var_02.var_394,var_02);
|
|
}
|
|
else
|
|
{
|
|
var_01 = func_8111();
|
|
thread func_A69A(var_02);
|
|
}
|
|
|
|
var_06 = int(tablelookup("mp/killstreaktable.csv",1,var_02.var_110EA,4));
|
|
if(var_06 >= 1000)
|
|
{
|
|
var_07 = tablelookup("mp/killstreaktable.csv",1,var_02.var_110EA,0);
|
|
if(var_07 != "")
|
|
{
|
|
var_08 = int(var_07);
|
|
scripts\mp\_utility::func_F79E(20,self.team,self getentitynumber(),var_08);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
//Function Number: 16
|
|
func_81D9(param_00)
|
|
{
|
|
var_01 = undefined;
|
|
if(!isai(self) && scripts\common\utility::func_9C70())
|
|
{
|
|
if(param_00 == "ks_action_4")
|
|
{
|
|
var_01 = func_8111();
|
|
}
|
|
}
|
|
else if(level.gametype == "grnd" && !scripts\common\utility::func_9C70())
|
|
{
|
|
switch(param_00)
|
|
{
|
|
case "ks_action_3":
|
|
var_01 = 0;
|
|
break;
|
|
|
|
case "ks_action_4":
|
|
var_01 = 0;
|
|
break;
|
|
|
|
case "ks_action_5":
|
|
var_01 = 0;
|
|
break;
|
|
|
|
case "ks_action_6":
|
|
var_01 = 0;
|
|
break;
|
|
}
|
|
}
|
|
else
|
|
{
|
|
switch(param_00)
|
|
{
|
|
case "ks_action_3":
|
|
var_01 = 1;
|
|
break;
|
|
|
|
case "ks_action_4":
|
|
var_01 = 2;
|
|
break;
|
|
|
|
case "ks_action_5":
|
|
var_01 = 3;
|
|
break;
|
|
|
|
case "ks_action_6":
|
|
var_01 = 0;
|
|
break;
|
|
}
|
|
}
|
|
|
|
return var_01;
|
|
}
|
|
|
|
//Function Number: 17
|
|
func_392B(param_00,param_01)
|
|
{
|
|
if(scripts\mp\_utility::func_10060(param_01.var_110EA))
|
|
{
|
|
if(isdefined(level.var_A6AA) && level.var_A6AA > 0)
|
|
{
|
|
if(level.var_8487 - level.ingraceperiod < level.var_A6AA)
|
|
{
|
|
return "KILLSTREAKS_UNAVAILABLE_FOR_N";
|
|
}
|
|
}
|
|
}
|
|
|
|
if(self hasweapon(param_00))
|
|
{
|
|
return "KILLSTREAKS_CANNOT_BE_USED";
|
|
}
|
|
|
|
if(self method_81B5())
|
|
{
|
|
return "KILLSTREAKS_CANNOT_BE_USED";
|
|
}
|
|
|
|
if(self ismantling())
|
|
{
|
|
return "KILLSTREAKS_CANNOT_BE_USED";
|
|
}
|
|
|
|
if(!scripts\common\utility::func_A009())
|
|
{
|
|
return "KILLSTREAKS_CANNOT_BE_USED";
|
|
}
|
|
|
|
if(scripts\mp\_utility::func_9FAE(self))
|
|
{
|
|
return "KILLSTREAKS_CANNOT_BE_USED";
|
|
}
|
|
|
|
if((scripts\mp\_utility::func_9F2C(param_01.var_110EA) || scripts\mp\_utility::func_9E90(param_01.var_110EA)) && !self isonground() || self method_8446())
|
|
{
|
|
return "KILLSTREAKS_CANNOT_BE_USED";
|
|
}
|
|
}
|
|
|
|
//Function Number: 18
|
|
func_127C7(param_00,param_01,param_02)
|
|
{
|
|
self endon("disconnect");
|
|
self endon("death");
|
|
level endon("game_ended");
|
|
if(self hasweapon(param_00))
|
|
{
|
|
return 0;
|
|
}
|
|
|
|
self.tryingtousekillstreak = 1;
|
|
thread triggerkillstreakweaponwatchdeath();
|
|
scripts\mp\_supers::func_1CAB();
|
|
scripts\mp\_utility::func_12C6(param_00,0,0,1);
|
|
var_03 = param_01.var_110F1;
|
|
if(isdefined(var_03.var_13C8D))
|
|
{
|
|
var_04 = self [[ var_03.var_13C8D ]](param_01);
|
|
if(isdefined(var_04) && var_04 == 0)
|
|
{
|
|
scripts\mp\_utility::func_141E(param_00);
|
|
self.tryingtousekillstreak = undefined;
|
|
self notify("stopTryingToUseKillstreak");
|
|
return;
|
|
}
|
|
}
|
|
|
|
var_05 = scripts\mp\_utility::func_11383(param_00);
|
|
if(isdefined(var_03.var_13CD6))
|
|
{
|
|
self [[ var_03.var_13CD6 ]](param_01,var_05);
|
|
}
|
|
|
|
if(var_05)
|
|
{
|
|
if(scripts\mp\_utility::func_9FB3(param_02))
|
|
{
|
|
thread func_510E(0.05,param_01);
|
|
}
|
|
|
|
self waittill("killstreak_finished_with_weapon_" + param_00);
|
|
}
|
|
|
|
self.tryingtousekillstreak = undefined;
|
|
self notify("stopTryingToUseKillstreak");
|
|
if(self hasweapon(param_00))
|
|
{
|
|
scripts\mp\_supers::func_12D6C();
|
|
scripts\mp\_utility::func_80F2(param_00);
|
|
if(self getcurrentweapon() == "none")
|
|
{
|
|
scripts\mp\_utility::_switchtoweapon(self.var_A978);
|
|
}
|
|
}
|
|
|
|
if(isdefined(var_03.var_13CDB))
|
|
{
|
|
self [[ var_03.var_13CDB ]](param_01);
|
|
}
|
|
}
|
|
|
|
//Function Number: 19
|
|
triggerkillstreakweaponwatchdeath()
|
|
{
|
|
self endon("disconnect");
|
|
self endon("stopTryingToUseKillstreak");
|
|
self waittill("death");
|
|
self.tryingtousekillstreak = undefined;
|
|
}
|
|
|
|
//Function Number: 20
|
|
func_510E(param_00,param_01)
|
|
{
|
|
self endon("disconnect");
|
|
self endon("death");
|
|
level endon("game_ended");
|
|
wait(param_00);
|
|
thread func_A69A(param_01);
|
|
}
|
|
|
|
//Function Number: 21
|
|
func_13B96(param_00)
|
|
{
|
|
self endon("disconnect");
|
|
self endon("death");
|
|
level endon("game_ended");
|
|
self endon("killstreak_finished_with_weapon");
|
|
for(;;)
|
|
{
|
|
if(self getcurrentweapon() != param_00)
|
|
{
|
|
self notify("killstreak_finished_with_weapon_" + param_00);
|
|
break;
|
|
}
|
|
|
|
scripts\common\utility::func_136F7();
|
|
}
|
|
}
|
|
|
|
//Function Number: 22
|
|
func_A69C()
|
|
{
|
|
self endon("disconnect");
|
|
self endon("death");
|
|
self endon("joined_team");
|
|
self endon("faux_spawn");
|
|
self endon("spawned");
|
|
level endon("game_ended");
|
|
self notify("killstreakFiredWatcher_offhand");
|
|
self endon("killstreakFiredWatcher_offhand");
|
|
for(;;)
|
|
{
|
|
self waittill("offhand_fired",var_00);
|
|
thread func_128A4(var_00,"offhand_fired");
|
|
}
|
|
}
|
|
|
|
//Function Number: 23
|
|
func_A69B()
|
|
{
|
|
self endon("disconnect");
|
|
self endon("death");
|
|
self endon("joined_team");
|
|
self endon("faux_spawn");
|
|
self endon("spawned");
|
|
level endon("game_ended");
|
|
self notify("killstreakFiredWatcher_grenade");
|
|
self endon("killstreakFiredWatcher_grenade");
|
|
for(;;)
|
|
{
|
|
self waittill("grenade_fire",var_00,var_01);
|
|
thread func_128A4(var_01,"grenade_fire",var_00);
|
|
}
|
|
}
|
|
|
|
//Function Number: 24
|
|
func_A69D()
|
|
{
|
|
self endon("disconnect");
|
|
self endon("death");
|
|
self endon("joined_team");
|
|
self endon("faux_spawn");
|
|
self endon("spawned");
|
|
level endon("game_ended");
|
|
self notify("killstreakFiredWatcher_weaponFired");
|
|
self endon("killstreakFiredWatcher_weaponFired");
|
|
for(;;)
|
|
{
|
|
self waittill("weapon_fired",var_00);
|
|
thread func_128A4(var_00,"weapon_fired");
|
|
}
|
|
}
|
|
|
|
//Function Number: 25
|
|
func_128A4(param_00,param_01,param_02)
|
|
{
|
|
var_03 = func_7F61();
|
|
if(!isdefined(var_03))
|
|
{
|
|
return;
|
|
}
|
|
|
|
if(var_03.var_394 != param_00)
|
|
{
|
|
return;
|
|
}
|
|
|
|
var_04 = self.pers["killstreaks"];
|
|
var_05 = undefined;
|
|
for(var_06 = 0;var_06 < 36;var_06++)
|
|
{
|
|
if(!isdefined(var_04[var_06]))
|
|
{
|
|
if(var_06 >= 4)
|
|
{
|
|
break;
|
|
}
|
|
else
|
|
{
|
|
continue;
|
|
}
|
|
}
|
|
|
|
if(var_04[var_06] == var_03)
|
|
{
|
|
var_05 = var_06;
|
|
break;
|
|
}
|
|
}
|
|
|
|
if(!isdefined(var_05))
|
|
{
|
|
return;
|
|
}
|
|
|
|
if(var_03.var_6D6B == param_01)
|
|
{
|
|
thread func_A69A(var_03,param_02);
|
|
}
|
|
}
|
|
|
|
//Function Number: 26
|
|
func_9E6B(param_00)
|
|
{
|
|
if(!isdefined(param_00))
|
|
{
|
|
return 0;
|
|
}
|
|
|
|
switch(param_00)
|
|
{
|
|
case "jammer":
|
|
case "dronedrop":
|
|
case "directional_uav":
|
|
case "counter_uav":
|
|
case "uav":
|
|
return 0;
|
|
|
|
default:
|
|
return 1;
|
|
}
|
|
}
|
|
|
|
//Function Number: 27
|
|
func_A69A(param_00,param_01)
|
|
{
|
|
self endon("disconnect");
|
|
self endon("joined_team");
|
|
level endon("game_ended");
|
|
var_02 = param_00.var_110F1;
|
|
if(!scripts\mp\_utility::validateusestreak(param_00.var_110EA))
|
|
{
|
|
if(isdefined(var_02.var_9B12))
|
|
{
|
|
self [[ var_02.var_9B12 ]](param_00);
|
|
}
|
|
|
|
if(isdefined(param_00.var_394) && param_00.var_394 != "none")
|
|
{
|
|
self notify("killstreak_finished_with_weapon_" + param_00.var_394);
|
|
}
|
|
|
|
return 0;
|
|
}
|
|
|
|
if(getdvarint("com_codcasterEnabled",0) == 1)
|
|
{
|
|
if(func_9E6B(param_00.var_110EA))
|
|
{
|
|
self method_80C3(1);
|
|
}
|
|
}
|
|
|
|
self.var_13111 = param_00;
|
|
var_03 = 1;
|
|
if(isdefined(var_02.var_13089))
|
|
{
|
|
var_03 = self [[ var_02.var_13089 ]](param_00);
|
|
}
|
|
|
|
var_04 = 1;
|
|
if(isdefined(var_02.var_130C4))
|
|
{
|
|
var_04 = self [[ var_02.var_130C4 ]](param_00,param_01);
|
|
}
|
|
|
|
self notify("killstreak_use_finished",param_00.var_110EA,var_03);
|
|
self.var_13111 = undefined;
|
|
if(getdvarint("com_codcasterEnabled",0) == 1)
|
|
{
|
|
self method_80C3(0);
|
|
}
|
|
|
|
if(!var_03 || !var_04)
|
|
{
|
|
return 0;
|
|
}
|
|
|
|
func_C5A9(param_00);
|
|
}
|
|
|
|
//Function Number: 28
|
|
func_729F(param_00,param_01)
|
|
{
|
|
var_02 = func_4A1C(param_00,param_01);
|
|
func_A69A(var_02);
|
|
}
|
|
|
|
//Function Number: 29
|
|
func_729E()
|
|
{
|
|
var_00 = func_7F45(0);
|
|
func_A69A(var_00,0);
|
|
}
|
|
|
|
//Function Number: 30
|
|
func_C5A9(param_00)
|
|
{
|
|
var_01 = param_00.var_110EA;
|
|
var_02 = func_6CBA(param_00);
|
|
param_00.var_269A = 0;
|
|
if(isdefined(var_02))
|
|
{
|
|
if(var_02 == 0 || var_02 >= 4)
|
|
{
|
|
func_E131(var_02);
|
|
}
|
|
|
|
func_F1CB();
|
|
}
|
|
else
|
|
{
|
|
}
|
|
|
|
thread scripts\mp\_killstreak_loot::func_89BC(param_00);
|
|
thread scripts\mp\_missions::func_13079(var_01);
|
|
scripts\mp\_utility::func_D915("killstreak started - " + var_01,self);
|
|
self notify("killstreak_used",var_01);
|
|
scripts\mp\_utility::func_D4B7(var_01);
|
|
var_06 = gettime() - param_00.var_B143;
|
|
scripts\mp\_analyticslog::func_AFA3(var_01,var_06);
|
|
combatrecordkillstreakuse(var_01);
|
|
}
|
|
|
|
//Function Number: 31
|
|
func_DDF0(param_00)
|
|
{
|
|
if(isdefined(self.var_4006))
|
|
{
|
|
if(self getplayerdata(level.var_AEA6,"squadMembers","killstreakSetups",0,"killstreak") == param_00)
|
|
{
|
|
self.var_6DEB = gettime();
|
|
return;
|
|
}
|
|
|
|
if(self getplayerdata(level.var_AEA6,"squadMembers","killstreakSetups",2,"killstreak") == param_00 && isdefined(self.var_6DEB))
|
|
{
|
|
if(gettime() - self.var_6DEB < 20000)
|
|
{
|
|
thread scripts\mp\_missions::func_D992("wargasm");
|
|
return;
|
|
}
|
|
|
|
return;
|
|
}
|
|
}
|
|
}
|
|
|
|
//Function Number: 32
|
|
func_4A1C(param_00,param_01,param_02)
|
|
{
|
|
var_03 = spawnstruct();
|
|
var_03.var_269A = 0;
|
|
var_03.var_110EA = param_00;
|
|
var_03.var_9E0B = 0;
|
|
var_03.var_FFC4 = 0;
|
|
var_03.var_222 = param_01;
|
|
var_03.var_A5B0 = func_81ED(self);
|
|
var_03.var_AC68 = self.pers["deaths"];
|
|
var_03.var_9E10 = 0;
|
|
var_03.var_9F6E = 0;
|
|
var_03.var_394 = scripts\mp\_utility::func_7F55(param_00);
|
|
var_03.var_6D6B = func_7F41(param_00);
|
|
var_03.var_110F1 = func_7F50(param_00);
|
|
var_03.var_EF88 = scripts\mp\_utility::func_7F4F(param_00);
|
|
var_03.var_B143 = -1;
|
|
var_03.var_1318B = param_02;
|
|
return var_03;
|
|
}
|
|
|
|
//Function Number: 33
|
|
func_81ED(param_00)
|
|
{
|
|
if(!isdefined(param_00.pers["nextKillstreakID"]))
|
|
{
|
|
param_00.pers["nextKillstreakID"] = 0;
|
|
}
|
|
|
|
var_01 = param_00.pers["nextKillstreakID"];
|
|
param_00.pers["nextKillstreakID"]++;
|
|
return var_01;
|
|
}
|
|
|
|
//Function Number: 34
|
|
func_26D4(param_00,param_01,param_02,param_03)
|
|
{
|
|
var_04 = func_4A1C(param_00,param_01,param_03);
|
|
func_26D5(var_04,param_02);
|
|
}
|
|
|
|
//Function Number: 35
|
|
func_26D5(param_00,param_01)
|
|
{
|
|
param_00.var_9E10 = 1;
|
|
if(isdefined(param_01) && param_01.size > 0)
|
|
{
|
|
scripts\mp\_killstreak_loot::func_988A(param_00,param_01);
|
|
}
|
|
|
|
func_1030D(param_00,0);
|
|
func_F837(0);
|
|
func_B2A9(0);
|
|
}
|
|
|
|
//Function Number: 36
|
|
func_6693(param_00,param_01,param_02,param_03)
|
|
{
|
|
if(!isdefined(param_00) || !isdefined(param_01))
|
|
{
|
|
return;
|
|
}
|
|
|
|
var_04 = func_4A1C(param_00,self,param_03);
|
|
var_04.var_9E0B = 1;
|
|
var_04.var_FFC4 = 1;
|
|
if(isdefined(param_02) && param_02.size > 0)
|
|
{
|
|
scripts\mp\_killstreak_loot::func_988A(var_04,param_02);
|
|
}
|
|
|
|
func_1030D(var_04,param_01);
|
|
}
|
|
|
|
//Function Number: 37
|
|
func_66B9(param_00,param_01,param_02)
|
|
{
|
|
func_6693(param_00,1,param_01,param_02);
|
|
}
|
|
|
|
//Function Number: 38
|
|
func_66BB(param_00,param_01,param_02)
|
|
{
|
|
func_6693(param_00,2,param_01,param_02);
|
|
}
|
|
|
|
//Function Number: 39
|
|
func_66BA(param_00,param_01,param_02)
|
|
{
|
|
func_6693(param_00,3,param_01,param_02);
|
|
}
|
|
|
|
//Function Number: 40
|
|
func_DB1C()
|
|
{
|
|
var_00 = self.pers["killstreaks"];
|
|
if(isdefined(var_00[35]))
|
|
{
|
|
return 0;
|
|
}
|
|
|
|
var_01 = var_00[0];
|
|
if(!isdefined(var_01))
|
|
{
|
|
return 1;
|
|
}
|
|
|
|
for(var_02 = 4;var_02 < 36;var_02++)
|
|
{
|
|
if(!isdefined(var_00[var_02]))
|
|
{
|
|
var_00[var_02] = var_01;
|
|
var_00[0] = undefined;
|
|
break;
|
|
}
|
|
}
|
|
|
|
self.pers["killstreaks"] = var_00;
|
|
return 1;
|
|
}
|
|
|
|
//Function Number: 41
|
|
func_D65E()
|
|
{
|
|
var_00 = self.pers["killstreaks"];
|
|
var_01 = var_00[0];
|
|
var_02 = undefined;
|
|
var_03 = undefined;
|
|
for(var_04 = 4;var_04 < 36;var_04++)
|
|
{
|
|
var_05 = var_00[var_04];
|
|
if(isdefined(var_05))
|
|
{
|
|
var_02 = var_05;
|
|
var_03 = var_04;
|
|
continue;
|
|
}
|
|
|
|
break;
|
|
}
|
|
|
|
self.pers["killstreaks"][0] = var_02;
|
|
if(isdefined(var_03))
|
|
{
|
|
self.pers["killstreaks"][var_03] = undefined;
|
|
}
|
|
}
|
|
|
|
//Function Number: 42
|
|
func_51D3(param_00)
|
|
{
|
|
if(param_00 == 35)
|
|
{
|
|
self.pers["killstreaks"][param_00] = undefined;
|
|
return;
|
|
}
|
|
|
|
var_01 = self.pers["killstreaks"];
|
|
for(var_02 = param_00;var_02 < 35;var_02++)
|
|
{
|
|
var_03 = var_01[var_02 + 1];
|
|
if(!isdefined(var_03))
|
|
{
|
|
break;
|
|
}
|
|
|
|
var_01[param_00] = var_03;
|
|
}
|
|
|
|
self.pers["killstreaks"] = var_01;
|
|
}
|
|
|
|
//Function Number: 43
|
|
func_E131(param_00)
|
|
{
|
|
self.pers["killstreaks"][param_00] = undefined;
|
|
if(param_00 == 0)
|
|
{
|
|
func_D65E();
|
|
return;
|
|
}
|
|
|
|
if(param_00 >= 4)
|
|
{
|
|
func_51D3(param_00);
|
|
}
|
|
}
|
|
|
|
//Function Number: 44
|
|
func_41C0()
|
|
{
|
|
self.pers["killstreaks"] = [];
|
|
func_E275();
|
|
func_41C1();
|
|
func_12EBC();
|
|
}
|
|
|
|
//Function Number: 45
|
|
func_1030D(param_00,param_01)
|
|
{
|
|
if(param_01 == 0)
|
|
{
|
|
if(!func_DB1C())
|
|
{
|
|
return;
|
|
}
|
|
}
|
|
else
|
|
{
|
|
}
|
|
|
|
self.pers["killstreaks"][param_01] = param_00;
|
|
func_12EBC();
|
|
}
|
|
|
|
//Function Number: 46
|
|
func_5FBF(param_00,param_01)
|
|
{
|
|
var_02 = func_7F45(param_00);
|
|
var_03 = var_02.var_110EA;
|
|
scripts\mp\_utility::func_316C("earned_killstreak_buffered",var_03);
|
|
self.var_5FBE = param_01;
|
|
if(scripts\mp\_utility::_hasperk("specialty_support_killstreaks"))
|
|
{
|
|
self.pers["killstreaks"][param_00].var_5FB9 = 1;
|
|
}
|
|
|
|
if(!level.var_7669)
|
|
{
|
|
var_04 = var_03;
|
|
var_05 = scripts\mp\_killstreak_loot::getrarityforlootitem(var_02.var_1318B);
|
|
if(var_05 != "")
|
|
{
|
|
var_04 = var_04 + "_" + var_05;
|
|
}
|
|
|
|
thread scripts\mp\_hud_message::func_10134(var_04,param_01);
|
|
}
|
|
|
|
if(scripts\mp\_utility::_hasperk("specialty_support_killstreaks"))
|
|
{
|
|
scripts\mp\_missions::func_D991("ch_trait_support");
|
|
}
|
|
|
|
func_DDF0(var_03);
|
|
func_F866();
|
|
func_B2A9(param_00);
|
|
}
|
|
|
|
//Function Number: 47
|
|
func_B2A9(param_00)
|
|
{
|
|
var_01 = func_7F45(param_00);
|
|
if(!isdefined(var_01))
|
|
{
|
|
return;
|
|
}
|
|
|
|
var_02 = var_01.var_110EA;
|
|
var_03 = var_01.var_110F1;
|
|
if(self.team == "spectator")
|
|
{
|
|
return;
|
|
}
|
|
|
|
var_01.var_269A = 1;
|
|
if(param_00 >= 0 && param_00 <= 3)
|
|
{
|
|
func_F837(param_00);
|
|
}
|
|
|
|
func_12EBC();
|
|
if(isdefined(var_03.var_26A2))
|
|
{
|
|
self [[ var_03.var_26A2 ]](var_01);
|
|
}
|
|
|
|
if(isdefined(var_01.var_9E0B) && var_01.var_9E0B && isdefined(var_01.var_FFC4) && var_01.var_FFC4)
|
|
{
|
|
self notify("received_earned_killstreak");
|
|
}
|
|
|
|
var_01.var_B143 = gettime();
|
|
var_04 = scripts\mp\_utility::func_7F44(var_02);
|
|
scripts\mp\_analyticslog::func_AFA4(var_04,var_01.var_B143);
|
|
scripts\mp\_matchdata::func_AFC8(var_02);
|
|
}
|
|
|
|
//Function Number: 48
|
|
func_8374(param_00,param_01,param_02,param_03)
|
|
{
|
|
func_26D4(param_00,param_03);
|
|
}
|
|
|
|
//Function Number: 49
|
|
func_817B(param_00)
|
|
{
|
|
var_01 = int(scripts\mp\_utility::func_7F46(param_00));
|
|
if(isdefined(self) && isplayer(self))
|
|
{
|
|
var_01 = scripts\mp\_killstreak_loot::modifycostforlootitem(self.streakvariantids[param_00],var_01);
|
|
if(scripts\mp\_utility::func_9F6F(param_00))
|
|
{
|
|
if(isdefined(self.pers["gamemodeLoadout"]))
|
|
{
|
|
if(isdefined(self.pers["gamemodeLoadout"]["loadoutKillstreak1"]) && self.pers["gamemodeLoadout"]["loadoutKillstreak1"] == param_00)
|
|
{
|
|
var_01 = 2;
|
|
}
|
|
else if(isdefined(self.pers["gamemodeLoadout"]["loadoutKillstreak2"]) && self.pers["gamemodeLoadout"]["loadoutKillstreak2"] == param_00)
|
|
{
|
|
var_01 = 4;
|
|
}
|
|
else if(isdefined(self.pers["gamemodeLoadout"]["loadoutKillstreak3"]) && self.pers["gamemodeLoadout"]["loadoutKillstreak3"] == param_00)
|
|
{
|
|
var_01 = 6;
|
|
}
|
|
else
|
|
{
|
|
}
|
|
}
|
|
else if(issubstr(self.var_4B1C,"custom"))
|
|
{
|
|
for(var_02 = 0;var_02 < 3;var_02++)
|
|
{
|
|
var_03 = self getplayerdata(level.var_AEA6,"squadMembers","loadouts",self.var_4006,"specialistStreaks",var_02);
|
|
if(var_03 == param_00)
|
|
{
|
|
break;
|
|
}
|
|
}
|
|
|
|
if(var_02 == 1)
|
|
{
|
|
var_01 = 500;
|
|
}
|
|
else if(var_02 == 2)
|
|
{
|
|
var_01 = 800;
|
|
}
|
|
}
|
|
else if(issubstr(self.var_4B1C,"callback"))
|
|
{
|
|
var_02 = 0;
|
|
foreach(var_05 in self.pers["specialistStreaks"])
|
|
{
|
|
if(var_05 == param_00)
|
|
{
|
|
break;
|
|
}
|
|
}
|
|
|
|
var_01 = self.pers["specialistStreakKills"][var_02];
|
|
}
|
|
else if(issubstr(self.var_4B1C,"axis") || issubstr(self.var_4B1C,"allies"))
|
|
{
|
|
var_02 = 0;
|
|
var_06 = "none";
|
|
if(issubstr(self.var_4B1C,"axis"))
|
|
{
|
|
var_06 = "axis";
|
|
}
|
|
else if(issubstr(self.var_4B1C,"allies"))
|
|
{
|
|
var_06 = "allies";
|
|
}
|
|
|
|
var_07 = scripts\mp\_utility::func_7E2B(self.var_4B1C);
|
|
while(var_02 < 3)
|
|
{
|
|
var_03 = scripts\mp\_utility::func_7F91("defaultClasses",var_06,var_07,"class","specialistStreaks",var_02);
|
|
if(var_03 == param_00)
|
|
{
|
|
break;
|
|
}
|
|
|
|
var_02++;
|
|
}
|
|
|
|
var_01 = scripts\mp\_utility::func_7F91("defaultClasses",var_06,var_07,"class","specialistStreakKills",var_02);
|
|
}
|
|
}
|
|
}
|
|
|
|
var_01 = int(clamp(var_01,0,7000));
|
|
return var_01;
|
|
}
|
|
|
|
//Function Number: 50
|
|
func_8057(param_00,param_01)
|
|
{
|
|
var_02 = 0;
|
|
if(scripts\mp\_utility::_hasperk("specialty_support_killstreaks"))
|
|
{
|
|
var_03 = scripts\mp\_utility::func_7F44(param_00);
|
|
var_02 = 175 * var_03;
|
|
}
|
|
|
|
return var_02;
|
|
}
|
|
|
|
//Function Number: 51
|
|
func_A6B0()
|
|
{
|
|
self endon("death");
|
|
self endon("disconnect");
|
|
self endon("faux_spawn");
|
|
level endon("game_ended");
|
|
for(;;)
|
|
{
|
|
var_00 = scripts\common\utility::func_13734("ks_select_up","ks_select_down");
|
|
if(!scripts\common\utility::func_9C70())
|
|
{
|
|
continue;
|
|
}
|
|
|
|
if(!scripts\mp\_utility::func_9E59() && !scripts\mp\_utility::func_9FB3(self.var_9D81) && !isdefined(self.var_13111))
|
|
{
|
|
var_01 = func_8111();
|
|
if(!isdefined(var_01))
|
|
{
|
|
continue;
|
|
}
|
|
|
|
var_02 = var_01;
|
|
if(var_00 == "ks_select_up")
|
|
{
|
|
var_02 = func_7FED(var_01);
|
|
}
|
|
else if(var_00 == "ks_select_down")
|
|
{
|
|
var_02 = func_8099(var_01);
|
|
}
|
|
else
|
|
{
|
|
}
|
|
|
|
func_F837(var_02);
|
|
}
|
|
}
|
|
}
|
|
|
|
//Function Number: 52
|
|
func_F1C5()
|
|
{
|
|
var_00 = self.pers["killstreaks"];
|
|
for(var_01 = 3;var_01 >= 0;var_01--)
|
|
{
|
|
var_02 = var_00[var_01];
|
|
if(isdefined(var_02) && var_02.var_269A)
|
|
{
|
|
func_F837(var_01);
|
|
return;
|
|
}
|
|
}
|
|
|
|
func_41C1();
|
|
}
|
|
|
|
//Function Number: 53
|
|
func_7FED(param_00)
|
|
{
|
|
var_01 = self.pers["killstreaks"];
|
|
var_02 = param_00;
|
|
var_03 = scripts\common\utility::func_116D7(param_00 >= 3,0,param_00 + 1);
|
|
var_04 = param_00;
|
|
var_05 = var_03;
|
|
while(var_05 != var_04)
|
|
{
|
|
var_06 = var_01[var_05];
|
|
if(isdefined(var_06) && var_06.var_269A)
|
|
{
|
|
var_02 = var_05;
|
|
break;
|
|
}
|
|
|
|
var_05++;
|
|
if(var_05 > 3)
|
|
{
|
|
var_05 = 0;
|
|
}
|
|
}
|
|
|
|
return var_02;
|
|
}
|
|
|
|
//Function Number: 54
|
|
func_8099(param_00)
|
|
{
|
|
var_01 = self.pers["killstreaks"];
|
|
var_02 = param_00;
|
|
var_03 = scripts\common\utility::func_116D7(param_00 <= 0,3,param_00 - 1);
|
|
var_04 = param_00;
|
|
var_05 = var_03;
|
|
while(var_05 != var_04)
|
|
{
|
|
var_06 = var_01[var_05];
|
|
if(isdefined(var_06) && var_06.var_269A)
|
|
{
|
|
var_02 = var_05;
|
|
break;
|
|
}
|
|
|
|
var_05--;
|
|
if(var_05 < 0)
|
|
{
|
|
var_05 = 3;
|
|
}
|
|
}
|
|
|
|
return var_02;
|
|
}
|
|
|
|
//Function Number: 55
|
|
func_F1CB()
|
|
{
|
|
var_00 = self.pers["killstreaks"];
|
|
var_01 = undefined;
|
|
var_02 = -1;
|
|
for(var_03 = 3;var_03 >= 0;var_03--)
|
|
{
|
|
var_04 = var_00[var_03];
|
|
if(isdefined(var_04) && var_04.var_269A)
|
|
{
|
|
var_05 = func_817B(var_04.var_110EA);
|
|
if(var_05 > var_02)
|
|
{
|
|
var_01 = var_03;
|
|
var_02 = var_05;
|
|
}
|
|
}
|
|
}
|
|
|
|
if(!isdefined(var_01))
|
|
{
|
|
func_41C1();
|
|
return;
|
|
}
|
|
|
|
func_F837(var_01);
|
|
}
|
|
|
|
//Function Number: 56
|
|
func_F837(param_00)
|
|
{
|
|
var_01 = func_7F45(param_00);
|
|
self.var_4C02 = param_00;
|
|
func_12EBC();
|
|
}
|
|
|
|
//Function Number: 57
|
|
func_41C1()
|
|
{
|
|
self.var_4C02 = undefined;
|
|
func_12EBC();
|
|
}
|
|
|
|
//Function Number: 58
|
|
func_8110()
|
|
{
|
|
var_00 = func_8111();
|
|
if(!isdefined(var_00))
|
|
{
|
|
return undefined;
|
|
}
|
|
|
|
return self.pers["killstreaks"][var_00];
|
|
}
|
|
|
|
//Function Number: 59
|
|
func_8111()
|
|
{
|
|
return self.var_4C02;
|
|
}
|
|
|
|
//Function Number: 60
|
|
func_7F45(param_00)
|
|
{
|
|
return self.pers["killstreaks"][param_00];
|
|
}
|
|
|
|
//Function Number: 61
|
|
func_7E9E(param_00)
|
|
{
|
|
var_01 = self.pers["killstreaks"];
|
|
for(var_02 = 1;var_02 <= 3;var_02++)
|
|
{
|
|
var_03 = var_01[var_02];
|
|
if(isdefined(var_03) && var_03.var_110EA == param_00)
|
|
{
|
|
return var_03;
|
|
}
|
|
}
|
|
|
|
return undefined;
|
|
}
|
|
|
|
//Function Number: 62
|
|
func_7E9F(param_00)
|
|
{
|
|
var_01 = self.pers["killstreaks"];
|
|
for(var_02 = 1;var_02 <= 3;var_02++)
|
|
{
|
|
var_03 = var_01[var_02];
|
|
if(isdefined(var_03) && var_03.var_110EA == param_00)
|
|
{
|
|
return var_02;
|
|
}
|
|
}
|
|
|
|
return undefined;
|
|
}
|
|
|
|
//Function Number: 63
|
|
func_8207(param_00)
|
|
{
|
|
var_01 = self.pers["killstreaks"];
|
|
for(var_02 = 0;var_02 <= 3;var_02++)
|
|
{
|
|
var_03 = var_01[var_02];
|
|
if(isdefined(var_03) && var_03.var_110EA == param_00 && var_03.var_269A)
|
|
{
|
|
return var_02;
|
|
}
|
|
}
|
|
|
|
return undefined;
|
|
}
|
|
|
|
//Function Number: 64
|
|
func_7F54(param_00)
|
|
{
|
|
var_01 = self.pers["killstreaks"];
|
|
for(var_02 = 0;var_02 <= 3;var_02++)
|
|
{
|
|
var_03 = var_01[var_02];
|
|
if(isdefined(var_03) && var_03.var_110EA == param_00)
|
|
{
|
|
return var_02;
|
|
}
|
|
}
|
|
|
|
return undefined;
|
|
}
|
|
|
|
//Function Number: 65
|
|
func_7ED6()
|
|
{
|
|
var_00 = [];
|
|
var_01 = self.pers["killstreaks"];
|
|
var_02 = func_7F45(0);
|
|
if(isdefined(var_02))
|
|
{
|
|
var_00[0] = var_02;
|
|
for(var_03 = 4;var_03 < 36;var_03++)
|
|
{
|
|
var_04 = var_01[var_03];
|
|
if(isdefined(var_04))
|
|
{
|
|
var_00[var_00.size] = var_04;
|
|
continue;
|
|
}
|
|
|
|
break;
|
|
}
|
|
}
|
|
|
|
return var_00;
|
|
}
|
|
|
|
//Function Number: 66
|
|
func_7DE7()
|
|
{
|
|
var_00 = [];
|
|
var_01 = self.pers["killstreaks"];
|
|
if(var_01.size)
|
|
{
|
|
for(var_02 = 1;var_02 < 4;var_02++)
|
|
{
|
|
var_03 = var_01[var_02];
|
|
if(isdefined(var_03) && isdefined(var_03.var_110EA) && var_03.var_269A)
|
|
{
|
|
var_00[var_00.size] = var_03;
|
|
}
|
|
}
|
|
}
|
|
|
|
return var_00;
|
|
}
|
|
|
|
//Function Number: 67
|
|
func_DEFB(param_00,param_01,param_02,param_03,param_04,param_05,param_06,param_07,param_08)
|
|
{
|
|
if(!isdefined(level.var_A6B2))
|
|
{
|
|
level.var_A6B2 = [];
|
|
}
|
|
|
|
var_09 = spawnstruct();
|
|
level.var_A6B2[param_00] = var_09;
|
|
var_09.var_13089 = param_01;
|
|
var_09.var_130C4 = param_02;
|
|
var_09.var_26A2 = param_03;
|
|
var_09.var_127BD = param_04;
|
|
var_09.var_13C8D = param_05;
|
|
var_09.var_13CDB = param_06;
|
|
var_09.var_9B12 = param_07;
|
|
var_09.var_13CD6 = param_08;
|
|
}
|
|
|
|
//Function Number: 68
|
|
func_7F50(param_00)
|
|
{
|
|
var_01 = level.var_A6B2[param_00];
|
|
return var_01;
|
|
}
|
|
|
|
//Function Number: 69
|
|
func_7F41(param_00)
|
|
{
|
|
if(param_00 == "none")
|
|
{
|
|
return "";
|
|
}
|
|
|
|
var_01 = scripts\mp\_utility::func_7F4F(param_00);
|
|
if(!isdefined(var_01) || var_01 == "")
|
|
{
|
|
return "";
|
|
}
|
|
|
|
switch(var_01)
|
|
{
|
|
case "script_weapon":
|
|
case "gesture_script_weapon":
|
|
return "offhand_fired";
|
|
|
|
case "grenade_weapon":
|
|
return "grenade_fire";
|
|
|
|
case "normal_weapon":
|
|
return "weapon_fired";
|
|
|
|
case "no_weapon":
|
|
case "no_fire_weapon":
|
|
return "";
|
|
|
|
default:
|
|
return "";
|
|
}
|
|
|
|
return "";
|
|
}
|
|
|
|
//Function Number: 70
|
|
func_7F61()
|
|
{
|
|
return self.var_AA35;
|
|
}
|
|
|
|
//Function Number: 71
|
|
func_3E4E(param_00)
|
|
{
|
|
foreach(var_02 in self.var_A6AB)
|
|
{
|
|
var_03 = func_817B(var_02);
|
|
var_04 = func_7E9F(var_02);
|
|
var_05 = func_7F45(var_04);
|
|
if(self.var_D8B3 < var_03 && param_00 >= var_03)
|
|
{
|
|
if(scripts\mp\_utility::_hasperk("specialty_support_killstreaks") && scripts\mp\_utility::func_9FB3(self.pers["killstreaks"][var_04].var_5FB9))
|
|
{
|
|
continue;
|
|
}
|
|
|
|
func_5FBF(var_04,var_03);
|
|
}
|
|
}
|
|
}
|
|
|
|
//Function Number: 72
|
|
func_213F(param_00)
|
|
{
|
|
var_01 = self.pers["killstreaks"];
|
|
if(!isdefined(var_01))
|
|
{
|
|
return 0;
|
|
}
|
|
|
|
foreach(var_03 in param_00)
|
|
{
|
|
var_04 = 0;
|
|
for(var_05 = 1;var_05 <= 3;var_05++)
|
|
{
|
|
var_06 = var_01[var_05];
|
|
if(isdefined(var_06))
|
|
{
|
|
if(isdefined(var_06.var_110EA))
|
|
{
|
|
if(var_06.var_110EA == var_03)
|
|
{
|
|
var_04 = 1;
|
|
break;
|
|
}
|
|
}
|
|
|
|
continue;
|
|
}
|
|
|
|
if(var_03 == "none")
|
|
{
|
|
var_04 = 1;
|
|
break;
|
|
}
|
|
}
|
|
|
|
if(!var_04)
|
|
{
|
|
return 0;
|
|
}
|
|
}
|
|
|
|
return 1;
|
|
}
|
|
|
|
//Function Number: 73
|
|
func_6CBA(param_00)
|
|
{
|
|
var_01 = self.pers["killstreaks"];
|
|
for(var_02 = 0;var_02 <= 36;var_02++)
|
|
{
|
|
var_03 = var_01[var_02];
|
|
if(!isdefined(var_03))
|
|
{
|
|
if(var_02 >= 4)
|
|
{
|
|
break;
|
|
}
|
|
|
|
continue;
|
|
}
|
|
|
|
if(param_00 == var_03)
|
|
{
|
|
return var_02;
|
|
}
|
|
}
|
|
|
|
return undefined;
|
|
}
|
|
|
|
//Function Number: 74
|
|
func_83A7(param_00,param_01)
|
|
{
|
|
if(!isdefined(param_01))
|
|
{
|
|
param_01 = scripts\mp\_rank::func_8104(param_00);
|
|
}
|
|
|
|
if(param_01 == 0)
|
|
{
|
|
return;
|
|
}
|
|
|
|
var_02 = self.var_110EE + param_01;
|
|
var_03 = var_02;
|
|
var_04 = func_7FA2();
|
|
if(var_03 >= var_04)
|
|
{
|
|
var_03 = var_03 - var_04;
|
|
}
|
|
|
|
func_F867(var_03);
|
|
func_3E4E(var_02);
|
|
if(var_02 >= var_04)
|
|
{
|
|
func_F867(var_03);
|
|
}
|
|
|
|
func_12F2E(var_03);
|
|
scripts\mp\_analyticslog::func_AFAE(param_01,gettime(),scripts\mp\_rank::func_8102(param_00,"eventID"));
|
|
}
|
|
|
|
//Function Number: 75
|
|
func_E275()
|
|
{
|
|
self.var_5FBE = 0;
|
|
func_F867(0);
|
|
func_E274();
|
|
func_12F2E(0);
|
|
}
|
|
|
|
//Function Number: 76
|
|
func_F867(param_00)
|
|
{
|
|
if(param_00 < 0)
|
|
{
|
|
param_00 = 0;
|
|
}
|
|
|
|
if(isdefined(self.var_110EE))
|
|
{
|
|
self.var_D8B3 = self.var_110EE;
|
|
}
|
|
else
|
|
{
|
|
self.var_D8B3 = 0;
|
|
}
|
|
|
|
self.var_110EE = param_00;
|
|
func_12F2F();
|
|
}
|
|
|
|
//Function Number: 77
|
|
func_110C3()
|
|
{
|
|
self endon("disconnect");
|
|
level waittill("game_ended");
|
|
scripts\mp\_utility::setpersstat("streakPoints",scripts\common\utility::func_116D7(isdefined(self.var_110EE),self.var_110EE,0));
|
|
}
|
|
|
|
//Function Number: 78
|
|
func_6CCB(param_00,param_01,param_02,param_03)
|
|
{
|
|
var_04 = rotatevector((0,0,1),(-1 * param_03,0,0));
|
|
var_05 = vectortoangles(param_01 - param_00.origin);
|
|
for(var_06 = 0;var_06 < 360;var_06 = var_06 + 30)
|
|
{
|
|
var_07 = param_02 * rotatevector(var_04,(0,var_06 + var_05[1],0));
|
|
var_08 = param_01 + var_07;
|
|
if(func_1281(param_00,var_08,param_01))
|
|
{
|
|
return var_08;
|
|
}
|
|
}
|
|
|
|
return undefined;
|
|
}
|
|
|
|
//Function Number: 79
|
|
func_6CCA(param_00,param_01,param_02,param_03,param_04,param_05)
|
|
{
|
|
var_06 = vectortoangles(param_00.origin - param_01);
|
|
for(var_07 = param_03;var_07 <= param_04;var_07 = var_07 + param_05)
|
|
{
|
|
var_08 = rotatevector((1,0,0),(var_07 - 90,0,0));
|
|
var_09 = param_02 * rotatevector(var_08,(0,var_06[1],0));
|
|
var_0A = param_01 + var_09;
|
|
if(func_1281(param_00,var_0A,param_01))
|
|
{
|
|
return var_0A;
|
|
}
|
|
}
|
|
|
|
return undefined;
|
|
}
|
|
|
|
//Function Number: 80
|
|
func_1281(param_00,param_01,param_02)
|
|
{
|
|
var_03 = bullettrace(param_01,param_02,0);
|
|
if(var_03["fraction"] > 0.99)
|
|
{
|
|
return 1;
|
|
}
|
|
|
|
return 0;
|
|
}
|
|
|
|
//Function Number: 81
|
|
func_6CC9(param_00,param_01,param_02)
|
|
{
|
|
var_03 = func_6CCB(param_00,param_01,param_02,30);
|
|
if(!isdefined(var_03))
|
|
{
|
|
var_03 = func_6CCA(param_00,param_01,param_02,15,75,15);
|
|
}
|
|
|
|
return var_03;
|
|
}
|
|
|
|
//Function Number: 82
|
|
func_9FC3()
|
|
{
|
|
return isdefined(self.var_C53B) && self.var_C53B;
|
|
}
|
|
|
|
//Function Number: 83
|
|
func_9FC4()
|
|
{
|
|
return isdefined(self.var_98FF) && self.var_98FF;
|
|
}
|
|
|
|
//Function Number: 84
|
|
func_532A(param_00,param_01,param_02,param_03)
|
|
{
|
|
var_04 = "MOD_EXPLOSIVE";
|
|
var_05 = 5000;
|
|
var_06 = (0,0,0);
|
|
var_07 = (0,0,0);
|
|
var_08 = "";
|
|
var_09 = "";
|
|
var_0A = "";
|
|
var_0B = undefined;
|
|
if(!isdefined(param_03))
|
|
{
|
|
return;
|
|
}
|
|
|
|
if(level.teambased)
|
|
{
|
|
foreach(var_0D in param_03)
|
|
{
|
|
if(scripts\mp\_utility::func_9FE7(param_00,param_01,var_0D))
|
|
{
|
|
var_0D notify("damage",var_05,param_00,var_06,var_07,var_04,var_08,var_09,var_0A,var_0B,param_02);
|
|
wait(0.05);
|
|
}
|
|
}
|
|
|
|
return;
|
|
}
|
|
|
|
foreach(var_0D in var_04)
|
|
{
|
|
if(scripts\mp\_utility::func_9FD8(param_00,param_01,var_0D))
|
|
{
|
|
var_0D notify("damage",var_05,param_00,var_06,var_07,var_04,var_08,var_09,var_0A,var_0B,param_02);
|
|
wait(0.05);
|
|
}
|
|
}
|
|
}
|
|
|
|
//Function Number: 85
|
|
func_A6A0(param_00,param_01,param_02,param_03)
|
|
{
|
|
if(isdefined(param_01) && isplayer(param_00) && isdefined(param_02.var_222) && isdefined(param_02.var_222.team))
|
|
{
|
|
if(scripts\mp\_utility::playersareenemies(param_00,param_02.var_222))
|
|
{
|
|
if(scripts\mp\_utility::func_9E6C(param_01))
|
|
{
|
|
return;
|
|
}
|
|
|
|
if(!isdefined(param_00.var_A99F[param_01]))
|
|
{
|
|
param_00.var_A99F[param_01] = 0;
|
|
}
|
|
|
|
if(param_00.var_A99F[param_01] == gettime())
|
|
{
|
|
return;
|
|
}
|
|
|
|
param_00.var_A99F[param_01] = gettime();
|
|
param_00 thread scripts\mp\_gamelogic::func_117B7(param_01,1,"hits");
|
|
var_04 = param_00 scripts\mp\_persistence::func_10E34("totalShots");
|
|
var_05 = param_00 scripts\mp\_persistence::func_10E34("hits") + 1;
|
|
if(var_05 <= var_04)
|
|
{
|
|
param_00 scripts\mp\_persistence::func_10E55("hits",var_05);
|
|
param_00 scripts\mp\_persistence::func_10E55("misses",int(var_04 - var_05));
|
|
param_00 scripts\mp\_persistence::func_10E55("accuracy",int(var_05 * 10000 / var_04));
|
|
}
|
|
|
|
if((isdefined(param_03) && scripts\common\utility::func_9D74(param_03)) || scripts\mp\_utility::isprojectiledamage(param_03))
|
|
{
|
|
param_00 thread scripts\mp\contractchallenges::contractshotslanded(param_01);
|
|
param_00.var_A96A = gettime();
|
|
var_06 = scripts\mp\_utility::func_8225(param_01);
|
|
if(var_06 == "weapon_lmg")
|
|
{
|
|
if(!isdefined(param_00.shotslandedlmg))
|
|
{
|
|
param_00.shotslandedlmg = 1;
|
|
return;
|
|
}
|
|
|
|
param_00.shotslandedlmg++;
|
|
return;
|
|
}
|
|
|
|
return;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
//Function Number: 86
|
|
func_83A0()
|
|
{
|
|
thread scripts\mp\_utility::func_83B4("destroyed_equipment");
|
|
}
|
|
|
|
//Function Number: 87
|
|
func_83A1()
|
|
{
|
|
thread scripts\mp\_utility::func_83B4("trophy_defense");
|
|
}
|
|
|
|
//Function Number: 88
|
|
func_839F()
|
|
{
|
|
thread scripts\mp\_utility::func_83B4("blackhat_hack");
|
|
}
|
|
|
|
//Function Number: 89
|
|
func_9E9F(param_00)
|
|
{
|
|
return param_00 == "iw6_minigunjugg_mp";
|
|
}
|
|
|
|
//Function Number: 90
|
|
func_110F5(param_00)
|
|
{
|
|
switch(param_00)
|
|
{
|
|
case "assault":
|
|
case "specialist":
|
|
return 1;
|
|
|
|
case "resource":
|
|
case "support":
|
|
return 0;
|
|
|
|
default:
|
|
return 1;
|
|
}
|
|
}
|
|
|
|
//Function Number: 91
|
|
func_98C2(param_00)
|
|
{
|
|
scripts\common\utility::func_1C6E(0);
|
|
var_01 = func_98C3(param_00);
|
|
if(isdefined(self))
|
|
{
|
|
scripts\common\utility::func_1C6E(1);
|
|
}
|
|
|
|
return var_01;
|
|
}
|
|
|
|
//Function Number: 92
|
|
func_98C3(param_00)
|
|
{
|
|
if(isdefined(param_00) && func_9E6F(param_00))
|
|
{
|
|
var_01 = "timeout";
|
|
}
|
|
else
|
|
{
|
|
var_01 = scripts\common\utility::waittill_any_timeout_1(1,"disconnect","death","weapon_switch_started");
|
|
}
|
|
|
|
scripts\mp\_hostmigration::func_13834();
|
|
if(var_01 == "weapon_switch_started")
|
|
{
|
|
return "fail";
|
|
}
|
|
|
|
if(!isalive(self))
|
|
{
|
|
return "fail";
|
|
}
|
|
|
|
if(var_01 == "disconnect" || var_01 == "death")
|
|
{
|
|
if(var_01 == "disconnect")
|
|
{
|
|
return "disconnect";
|
|
}
|
|
|
|
if(self.team == "spectator")
|
|
{
|
|
return "fail";
|
|
}
|
|
|
|
return "success";
|
|
}
|
|
|
|
if(scripts\mp\_utility::func_9E68())
|
|
{
|
|
return "fail";
|
|
}
|
|
|
|
if(!isdefined(param_00) || !issubstr(param_00,"odin") || !issubstr(param_00,"pointSelect"))
|
|
{
|
|
if(param_00 == "orbital_deployment" || param_00 == "drone_hive")
|
|
{
|
|
self visionsetfadetoblackforplayer("black_bw",0);
|
|
thread scripts\mp\_utility::func_F607("black_bw",0,1,undefined,1);
|
|
var_02 = scripts\common\utility::waittill_any_timeout_1(0,"disconnect","death");
|
|
}
|
|
else
|
|
{
|
|
self visionsetfadetoblackforplayer("black_bw",0.75);
|
|
thread scripts\mp\_utility::func_F607("black_bw",0.75,1,undefined,1);
|
|
var_02 = scripts\common\utility::waittill_any_timeout_1(0.8,"disconnect","death");
|
|
}
|
|
}
|
|
else
|
|
{
|
|
var_02 = scripts\common\utility::waittill_any_timeout_1(1,"disconnect","death");
|
|
}
|
|
|
|
self notify("black_out_done");
|
|
scripts\mp\_hostmigration::func_13834();
|
|
if(var_02 != "disconnect")
|
|
{
|
|
if(!isdefined(param_00) || !issubstr(param_00,"odin") || !issubstr(param_00,"pointSelect"))
|
|
{
|
|
thread func_41D6(1);
|
|
}
|
|
else
|
|
{
|
|
self notify("intro_cleared");
|
|
}
|
|
|
|
if(self.team == "spectator")
|
|
{
|
|
return "fail";
|
|
}
|
|
}
|
|
|
|
if(self method_81B5())
|
|
{
|
|
return "fail";
|
|
}
|
|
|
|
if(!isalive(self))
|
|
{
|
|
return "fail";
|
|
}
|
|
|
|
if(scripts\mp\_utility::func_9E68())
|
|
{
|
|
return "fail";
|
|
}
|
|
|
|
if(var_02 == "disconnect")
|
|
{
|
|
return "disconnect";
|
|
}
|
|
|
|
return "success";
|
|
}
|
|
|
|
//Function Number: 93
|
|
func_9E6F(param_00)
|
|
{
|
|
switch(param_00)
|
|
{
|
|
case "remote_tank":
|
|
case "remote_uav":
|
|
case "osprey_gunner":
|
|
case "pointSelect":
|
|
case "orbital_deployment":
|
|
case "ac130":
|
|
case "ca_a10_strafe":
|
|
case "vanguard":
|
|
case "odin_assault":
|
|
case "odin_support":
|
|
case "heli_pilot":
|
|
case "fleet_swarm":
|
|
case "remote_c8":
|
|
case "spiderbot":
|
|
case "precision_airstrike":
|
|
case "thor":
|
|
case "minijackal":
|
|
case "drone_hive":
|
|
return 1;
|
|
}
|
|
|
|
return 0;
|
|
}
|
|
|
|
//Function Number: 94
|
|
func_41D6(param_00,param_01)
|
|
{
|
|
self endon("disconnect");
|
|
if(isdefined(param_00))
|
|
{
|
|
wait(param_00);
|
|
}
|
|
|
|
if(!isdefined(param_01))
|
|
{
|
|
param_01 = 0;
|
|
}
|
|
|
|
self visionsetfadetoblackforplayer("",param_01);
|
|
scripts\mp\_utility::func_F607("",param_01);
|
|
self notify("intro_cleared");
|
|
}
|
|
|
|
//Function Number: 95
|
|
func_1CA5(param_00)
|
|
{
|
|
if(isdefined(param_00))
|
|
{
|
|
self endon(param_00);
|
|
}
|
|
|
|
if(!isdefined(self.var_222))
|
|
{
|
|
return;
|
|
}
|
|
|
|
var_01 = self.var_222;
|
|
level endon("game_ended");
|
|
var_01 endon("disconnect");
|
|
var_01 endon("end_remote");
|
|
self endon("death");
|
|
for(;;)
|
|
{
|
|
var_02 = 0;
|
|
while(var_01 usebuttonpressed())
|
|
{
|
|
var_02 = var_02 + 0.05;
|
|
if(var_02 > 0.75)
|
|
{
|
|
self notify("killstreakExit");
|
|
return;
|
|
}
|
|
|
|
wait(0.05);
|
|
}
|
|
|
|
wait(0.05);
|
|
}
|
|
}
|
|
|
|
//Function Number: 96
|
|
func_D507(param_00,param_01)
|
|
{
|
|
self endon("disconnect");
|
|
level endon("game_ended");
|
|
if(scripts\mp\_utility::func_9FC6())
|
|
{
|
|
return 0;
|
|
}
|
|
|
|
if(!scripts\mp\_utility::func_9F19(self))
|
|
{
|
|
return 0;
|
|
}
|
|
|
|
self notify("play_remote_sequence");
|
|
var_02 = undefined;
|
|
if(scripts\mp\_utility::func_9FB3(param_01))
|
|
{
|
|
if(self method_81B5() || self ismantling() || !self isonground())
|
|
{
|
|
scripts\mp\_hud_message::func_10122("KILLSTREAKS_UNAVAILABLE");
|
|
return 0;
|
|
}
|
|
|
|
var_02 = "ks_remote_device_mp";
|
|
scripts\mp\_supers::func_1CAB();
|
|
scripts\mp\_utility::func_12C6(var_02,0,0,1);
|
|
self setclientomnvar("ui_remote_control_sequence",1);
|
|
var_03 = scripts\mp\_utility::func_11383(var_02);
|
|
if(scripts\mp\_utility::func_9FB3(var_03))
|
|
{
|
|
thread func_13A4C(var_02);
|
|
}
|
|
else
|
|
{
|
|
return 0;
|
|
}
|
|
}
|
|
|
|
scripts\mp\_utility::func_FB09(param_00.var_110EA);
|
|
scripts\mp\_utility::func_7385(1);
|
|
thread func_12B9C();
|
|
var_04 = scripts\common\utility::waittill_any_timeout_1(1,"death");
|
|
self notify("ks_freeze_end");
|
|
if(!isdefined(var_04) || var_04 != "timeout")
|
|
{
|
|
self setclientomnvar("ui_remote_control_sequence",0);
|
|
scripts\mp\_utility::func_7385(0);
|
|
scripts\mp\_utility::func_41E9();
|
|
if(isdefined(var_02))
|
|
{
|
|
self notify("finished_with_manual_weapon_" + var_02);
|
|
}
|
|
|
|
return 0;
|
|
}
|
|
|
|
self setscriptablepartstate("killstreak","visor_active",0);
|
|
thread func_13BA2();
|
|
scripts\mp\_utility::func_7385(0);
|
|
self setclientomnvar("ui_remote_control_sequence",0);
|
|
return 1;
|
|
}
|
|
|
|
//Function Number: 97
|
|
func_12B9C()
|
|
{
|
|
self endon("disconnect");
|
|
self endon("ks_freeze_end");
|
|
level waittill("round_switch");
|
|
scripts\mp\_utility::func_7385(0);
|
|
}
|
|
|
|
//Function Number: 98
|
|
func_13A4C(param_00)
|
|
{
|
|
self endon("death");
|
|
self endon("disconnect");
|
|
level endon("game_ended");
|
|
self waittill("finished_with_manual_weapon_" + param_00);
|
|
if(self hasweapon(param_00))
|
|
{
|
|
scripts\mp\_supers::func_12D6C();
|
|
scripts\mp\_utility::func_80F2(param_00);
|
|
if(self getcurrentweapon() == "none")
|
|
{
|
|
scripts\mp\_utility::_switchtoweapon(self.var_A978);
|
|
}
|
|
}
|
|
}
|
|
|
|
//Function Number: 99
|
|
func_13BA2()
|
|
{
|
|
self endon("stop_remote_sequence");
|
|
self endon("disconnect");
|
|
level endon("game_ended");
|
|
self waittill("death");
|
|
self setscriptablepartstate("killstreak","neutral",0);
|
|
}
|
|
|
|
//Function Number: 100
|
|
func_11086(param_00)
|
|
{
|
|
self endon("disconnect");
|
|
level endon("game_ended");
|
|
self notify("stop_remote_sequence");
|
|
if(scripts\mp\_utility::func_9F19(self))
|
|
{
|
|
if(scripts\mp\_utility::func_9FB3(level.var_C1BB) && !scripts\mp\_utility::func_9FB3(level.var_C1B2))
|
|
{
|
|
thread scripts\mp\killstreaks\_nuke::func_FB0F(0.05);
|
|
}
|
|
|
|
self setclientomnvar("ui_remote_control_sequence",2);
|
|
var_01 = "ks_remote_device_mp";
|
|
if(scripts\mp\_utility::func_9FB3(param_00))
|
|
{
|
|
wait(0.1);
|
|
self notify("finished_with_manual_weapon_" + var_01);
|
|
}
|
|
else
|
|
{
|
|
self notify("killstreak_finished_with_weapon_" + var_01);
|
|
}
|
|
}
|
|
|
|
thread scripts\mp\_utility::delaysetclientomnvar(1.3,"ui_remote_control_sequence",0);
|
|
self setscriptablepartstate("killstreak","neutral",0);
|
|
scripts\mp\_utility::func_41E9();
|
|
}
|
|
|
|
//Function Number: 101
|
|
combatrecordkillstreakuse(param_00)
|
|
{
|
|
if(!scripts\mp\_utility::canrecordcombatrecordstats())
|
|
{
|
|
return;
|
|
}
|
|
|
|
var_01 = scripts\mp\_utility::getstreakrecordtype(param_00);
|
|
if(!isdefined(var_01))
|
|
{
|
|
if(param_00 != "nuke")
|
|
{
|
|
}
|
|
|
|
return;
|
|
}
|
|
|
|
var_02 = self getplayerdata("mp",var_01,param_00,"uses");
|
|
self setplayerdata("mp",var_01,param_00,"uses",var_02 + 1);
|
|
} |