/******************************************************************* * Decompiled By: Bog * Decompiled File: scripts\mp\_playerlogic.gsc * Game: Call of Duty: Infinite Warfare * Platform: PC * Function Count: 79 * Decompile Time: 3026 ms * Timestamp: 10/27/2023 12:21:15 AM *******************************************************************/ //Function Number: 1 func_1193B(param_00) { if(!self.var_8C2A) { return 0; } var_01 = gettime() + param_00 * 1000; var_02 = level.var_AA44[self.pers["team"]]; var_03 = level.var_13BDE[self.pers["team"]] * 1000; var_04 = var_01 - var_02 / var_03; var_05 = ceil(var_04); var_06 = var_02 + var_05 * var_03; if(isdefined(self.var_E29A)) { var_07 = gettime() - self.var_E29A / 1000; if(self.var_E29A < var_02) { return 0; } } if(isdefined(self.var_13BE5)) { var_06 = var_06 + 50 * self.var_13BE5; } return var_06 - gettime() / 1000; } //Function Number: 2 func_115D4() { var_00 = self.pers["teamkills"]; if(level.var_B47A < 0 || var_00 <= level.var_B47A) { return 0; } var_01 = var_00 - level.var_B47A; return scripts\mp\_tweakables::func_81E7("team","teamkillspawndelay") * var_01; } //Function Number: 3 func_1193A(param_00) { if((level.ingraceperiod && !self.var_8C2A) || level.var_7669) { return 0; } var_01 = 0; if(self.var_8C2A) { var_02 = self [[ level.var_C583 ]](); if(isdefined(var_02)) { var_01 = var_02; } else { var_01 = getdvarfloat("scr_" + level.gametype + "_playerrespawndelay"); } if(param_00 && isdefined(self.pers["teamKillPunish"]) && self.pers["teamKillPunish"]) { var_01 = var_01 + func_115D4(); } if(isdefined(self.var_E29A)) { var_03 = gettime() - self.var_E29A / 1000; var_01 = var_01 - var_03; if(var_01 < 0) { var_01 = 0; } } if(isdefined(self.var_F851)) { var_01 = var_01 + level.var_11946; } } var_04 = getdvarint("scr_" + level.gametype + "_waverespawndelay") > 0; if(var_04) { return func_1193B(var_01); } return var_01; } //Function Number: 4 func_B4EE() { if(scripts\mp\_utility::func_9FB3(level.var_C1C3)) { return 0; } if(scripts\mp\_utility::func_7ECE() || isdefined(level.var_5611)) { if(isdefined(level.var_5611) && level.var_5611) { return 0; } if(scripts\mp\_utility::func_9FB3(self.pers["teamKillPunish"])) { return 0; } if(self.pers["lives"] <= 0 && scripts\mp\_utility::func_7672()) { return 0; } else if(scripts\mp\_utility::func_7672()) { if(level.ingraceperiod && !self.var_8C2A) { return 1; } if(!level.ingraceperiod && !self.var_8C2A && isdefined(level.var_1C9A) && !level.var_1C9A) { if(isdefined(self.var_101D9) && !self.var_101D9) { return 1; } return 0; } } } return 1; } //Function Number: 5 func_1083A() { self endon("becameSpectator"); if(isdefined(self.var_136FE) && self.var_136FE) { self waittill("okToSpawn"); } if(isdefined(self.var_185F)) { scripts\mp\_menus::func_185F(self.var_185F); self.var_185F = undefined; } if(!func_B4EE()) { wait(0.05); var_00 = self.origin; var_01 = self.angles; self notify("attempted_spawn"); if(scripts\mp\_utility::func_9FB3(self.pers["teamKillPunish"])) { self.pers["teamkills"] = max(self.pers["teamkills"] - 1,0); scripts\mp\_utility::setlowermessage("friendly_fire",&"MP_FRIENDLY_FIRE_WILL_NOT"); if(!self.var_8C2A && self.pers["teamkills"] <= level.var_B47A) { self.pers["teamKillPunish"] = 0; } } else if(scripts\mp\_utility::func_9F32() && game["finalRound"] == 0) { if(isdefined(self.var_113EF) && self.var_113EF) { scripts\mp\_utility::setlowermessage("spawn_info",game["strings"]["spawn_tag_wait"]); } else if(level.gametype == "siege") { scripts\mp\_utility::setlowermessage("spawn_info",game["strings"]["spawn_point_capture_wait"]); } else { scripts\mp\_utility::setlowermessage("spawn_info",game["strings"]["spawn_next_round"]); } thread func_E170(3); } if(self.sessionstate != "spectator") { var_00 = var_00 + (0,0,60); } if(scripts\mp\_utility::func_9FC6()) { self.var_108DB = 1; self.var_4E55 = self.origin; self waittill("stopped_using_remote"); } if(!scripts\mp\_utility::func_9FB3(level.var_C1C3)) { thread func_10911(var_00,var_01); } return; } if(self.var_136FF) { return; } self.var_136FF = 1; func_1369D(); if(isdefined(self)) { self.var_136FF = 0; } } //Function Number: 6 func_1369D() { self endon("disconnect"); self endon("end_respawn"); level endon("game_ended"); self notify("attempted_spawn"); var_00 = 0; if(scripts\mp\_utility::func_9FB3(self.pers["teamKillPunish"])) { var_01 = func_115D4(); if(var_01 > 0) { scripts\mp\_utility::setlowermessage("friendly_fire",&"MP_FRIENDLY_FIRE_WILL_NOT",var_01,1,1); thread func_E285(self.origin + (0,0,60),self.angles); var_00 = 1; wait(var_01); scripts\mp\_utility::clearlowermessage("friendly_fire"); self.var_E29A = gettime(); } self.pers["teamKillPunish"] = 0; } else if(func_115D4()) { self.pers["teamkills"] = max(self.pers["teamkills"] - 1,0); } if(scripts\mp\_utility::func_9FC6()) { self.var_108DB = 1; self.var_4E55 = self.origin; self waittill("stopped_using_remote"); if(scripts\mp\_utility::func_9FB3(level.var_C1C3)) { return; } } if(!isdefined(self.var_13BE5) && isdefined(level.var_13BE0[self.team])) { self.var_13BE5 = level.var_13BE0[self.team]; level.var_13BE0[self.team]++; } var_02 = func_1193A(0); thread func_D81E(var_02); if(scripts\mp\_utility::isinarbitraryup()) { var_03 = self getworldupreferenceangles(); var_04 = anglestoup(var_03); var_05 = var_04 * 60; } else { var_05 = (0,0,60); } if(var_02 > 0) { scripts\mp\_utility::setlowermessage("spawn_info",game["strings"]["waiting_to_spawn"],var_02,1,1); if(!var_00) { thread func_E285(self.origin + var_05,self.angles); } var_00 = 1; scripts\mp\_utility::func_136EF(var_02,"force_spawn"); if(!scripts\mp\_utility::func_9FB3(self.var_136FE)) { self notify("stop_wait_safe_spawn_button"); } } if(func_BE8F()) { if(!scripts\mp\_utility::func_9FB3(self.var_136FE)) { scripts\mp\_utility::setlowermessage("spawn_info",game["strings"]["press_to_spawn"],undefined,undefined,undefined,undefined,undefined,undefined,1); } if(!var_00) { thread func_E285(self.origin + var_05,self.angles); } var_00 = 1; func_1370E(); } waitclassselected(); if(isbot(self)) { if(!scripts\mp\bots\_bots::func_2DDF()) { self waittill("bot_ready_to_spawn"); } } self.var_136FF = 0; scripts\mp\_utility::clearlowermessage("spawn_info"); self.var_13BE5 = undefined; thread func_108F2(); } //Function Number: 7 waitclassselected() { while(scripts\mp\_utility::func_9FB3(self.var_136FE)) { wait(0.05); } } //Function Number: 8 func_BE8F() { if(scripts\mp\_tweakables::func_81E7("player","forcerespawn") != 0) { return 0; } if(!self.var_8C2A) { return 0; } var_00 = getdvarint("scr_" + level.gametype + "_waverespawndelay") > 0; if(var_00) { return 0; } if(self.var_138DD) { return 0; } return 1; } //Function Number: 9 func_1370E() { self endon("disconnect"); self endon("end_respawn"); for(;;) { if(self usebuttonpressed()) { break; } wait(0.05); } } //Function Number: 10 func_E170(param_00) { self endon("disconnect"); level endon("game_ended"); waittillframeend; self endon("end_respawn"); wait(param_00); scripts\mp\_utility::clearlowermessage("spawn_info"); } //Function Number: 11 func_AA0D() { self laststandrevive(); if(scripts\mp\_utility::_hasperk("specialty_finalstand") && !level.var_54CC) { scripts\mp\_utility::func_E150("specialty_finalstand"); } if(level.var_54CC) { self.var_16F = ""; } self setstance("crouch"); self.var_E4A8 = 1; self notify("revive"); if(isdefined(self.var_10B67)) { self.maxhealth = self.var_10B67; } self.health = self.maxhealth; scripts\common\utility::func_1C6E(1); if(game["state"] == "postgame") { scripts\mp\_gamelogic::func_7386(); } } //Function Number: 12 func_7E63() { var_00 = spawn("script_origin",self.origin); var_00 hide(); var_00.angles = self.angles; return var_00; } //Function Number: 13 func_D81E(param_00) { if(!0) { return; } self endon("disconnect"); self endon("spawned"); self endon("used_predicted_spawnpoint"); self notify("predicting_about_to_spawn_player"); self endon("predicting_about_to_spawn_player"); if(param_00 <= 0) { return; } if(param_00 > 1) { wait(param_00 - 1); } func_D81D(); self predictstreampos(self.var_D820.origin + (0,0,60),self.var_D820.angles); self.var_D821 = gettime(); for(var_01 = 0;var_01 < 30;var_01++) { wait(0.4); var_02 = self.var_D820; func_D81D(); if(self.var_D820 != var_02) { self predictstreampos(self.var_D820.origin + (0,0,60),self.var_D820.angles); self.var_D821 = gettime(); } } } //Function Number: 14 func_D81D() { if(func_1193A(1) > 1) { self.var_D820 = func_8148(); return; } if(isdefined(self.var_F851)) { self.var_D820 = self.var_F851; return; } var_00 = self [[ level.var_8136 ]](); self.var_D820 = var_00; } //Function Number: 15 func_3E42(param_00) { self notify("used_predicted_spawnpoint"); self.var_D820 = undefined; } //Function Number: 16 func_CA12(param_00,param_01) { return param_00 + " (" + int(param_00 / param_01 * 100) + "%)"; } //Function Number: 17 func_D919() { } //Function Number: 18 func_8135(param_00) { if(!positionwouldtelefrag(param_00.origin)) { return param_00.origin; } if(!isdefined(param_00.var_1D53)) { return param_00.origin; } foreach(var_02 in param_00.var_1D53) { if(!positionwouldtelefrag(var_02)) { return var_02; } } return param_00.origin; } //Function Number: 19 func_119A9() { if(!isdefined(self.var_F851)) { return 0; } var_00 = getentarray("care_package","targetname"); foreach(var_02 in var_00) { if(distance(var_02.origin,self.var_F851.var_D424) > 64) { continue; } if(isdefined(var_02.var_222)) { scripts\mp\_hud_message::func_10151("destroyed_insertion",undefined,var_02.var_222); } scripts\mp\perks\_perkfunctions::func_51D7(self.var_F851); return 0; } var_04 = []; var_04[0] = self; var_04[1] = self.var_F851; var_05 = scripts\common\trace::func_48BC(1,1,1,0,0,1,1); if(!scripts\common\trace::func_DCF1(self.var_F851.origin + (0,0,60),self.var_F851.origin,var_04,var_05)) { return 0; } var_06 = self.var_F851.origin + (0,0,1); var_07 = playerphysicstrace(var_06,self.var_F851.origin + (0,0,-16)); if(var_06[2] == var_07[2]) { return 0; } return 1; } //Function Number: 20 func_108DC() { self notify("spawningClientThisFrameReset"); self endon("spawningClientThisFrameReset"); wait(0.05); level.var_C23D--; } //Function Number: 21 func_806C(param_00,param_01) { var_02 = scripts\mp\_class::func_AE31(); var_02 = scripts\mp\_class::func_AE48(var_02,param_01); scripts\mp\_class::func_AE4C(var_02); self.var_400E = var_02; self.var_400F = 1; if(var_02.var_AE89 != "none") { param_00.var_D8E1 = var_02.var_AE89; } if(var_02.var_AE9D != "none") { param_00.var_F0C4 = var_02.var_AE9D; } var_03 = scripts\mp\_teams::func_7E55(); if(isdefined(var_03["body"])) { param_00.var_2C09 = var_03["body"]; } if(isdefined(var_03["head"])) { param_00.var_8C59 = var_03["head"]; } } //Function Number: 22 func_AEAD(param_00,param_01) { var_02 = []; if(isdefined(param_00.var_D8E1)) { var_02[var_02.size] = param_00.var_D8E1; } if(isdefined(param_00.var_F0C4)) { var_02[var_02.size] = param_00.var_F0C4; } if(var_02.size > 0) { self loadweaponsforplayer(var_02,param_01); } self loadcustomization(param_00.var_2C09,param_00.var_8C59,param_01); } //Function Number: 23 func_1CB6(param_00) { var_01 = []; if(isdefined(param_00.var_D8E1)) { var_01[var_01.size] = param_00.var_D8E1; } if(isdefined(param_00.var_F0C4)) { var_01[var_01.size] = param_00.var_F0C4; } if(!self hasloadedviewweapons(var_01)) { return 0; } if(!self hasloadedcustomizationviewmodels(param_00.var_2C09)) { return 0; } return 1; } //Function Number: 24 func_108F2(param_00) { self endon("disconnect"); self endon("joined_spectators"); self notify("spawned"); self notify("end_respawn"); self notify("started_spawnPlayer"); if(!isdefined(param_00)) { param_00 = 0; } var_01 = undefined; self.var_1189A = 0; self setclientomnvar("ui_options_menu",0); self setclientomnvar("ui_hud_shake",0); self.var_A9A6 = undefined; self.var_4C87 = undefined; self.killsteakvariantattackerinfo = undefined; self.cratemantle = undefined; if(!level.ingraceperiod && !self.var_8BE9) { level.var_C23D++; if(level.var_C23D > 1) { self.var_13700 = 1; wait(0.05 * level.var_C23D - 1); } thread func_108DC(); self.var_13700 = 0; } var_02 = spawnstruct(); func_806C(var_02,self.var_4004); func_AEAD(var_02,1); if(!getomnvar("ui_prematch_period")) { if(!func_1CB6(var_02)) { var_03 = scripts\mp\_tweakables::func_81E7("player","streamingwaittime"); var_04 = var_03 * 1000; var_05 = gettime() + var_04; self.var_13700 = 1; wait(0.1); while(!func_1CB6(var_02)) { wait(0.1); if(gettime() > var_05) { break; } } self.var_13700 = 0; } } if(isdefined(self.var_72E2)) { var_06 = self.var_72E2; self.var_72E2 = undefined; if(isdefined(self.var_72E0)) { var_07 = self.var_72E0; self.var_72E0 = undefined; } else { var_07 = (0,randomfloatrange(0,360),0); } } else if(isdefined(self.var_F851) && isdefined(self.var_F851.var_C188) || func_119A9()) { var_06 = self.var_F851; if(!isdefined(self.var_F851.var_C188)) { self.var_1189A = 1; self playlocalsound("tactical_spawn"); if(level.multiteambased) { foreach(var_09 in level.teamnamelist) { if(var_09 != self.team) { self playsoundtoteam("tactical_spawn",var_09); } } } else if(level.teambased) { self playsoundtoteam("tactical_spawn",level.var_C74B[self.team]); } else { self playsound("tactical_spawn"); } } foreach(var_0C in level.var_12B14) { if(distancesquared(var_0C.origin,var_01.var_D424) < 1024) { var_0C notify("damage",5000,var_0C.var_222,(0,0,0),(0,0,0),"MOD_EXPLOSIVE","","","",undefined,"killstreak_jammer_mp"); } } var_06 = self.var_F851.var_D424; var_07 = self.var_F851.angles; if(isdefined(self.var_F851.var_6578)) { self.var_F851.var_6578 delete(); } self.var_F851 delete(); var_01 = undefined; } else if(isdefined(self.var_9F69) && isdefined(self.var_28CC)) { var_06 = undefined; var_07 = undefined; var_0E = scripts\mp\_battlebuddy::func_3DF5(); if(var_0E.var_10E5B == 0) { var_06 = var_0E.origin; var_07 = var_0E.angles; } else { var_01 = self [[ level.var_8136 ]](); var_06 = var_01.origin; var_07 = var_01.angles; } scripts\mp\_battlebuddy::func_40E7(); self setclientomnvar("cam_scene_name","battle_spawn"); self setclientomnvar("cam_scene_lead",self.var_28CC getentitynumber()); self setclientomnvar("cam_scene_support",self getentitynumber()); } else if(isdefined(self.var_8DD8) && !isdefined(self.var_6DED) || isdefined(self.var_6DED) && self.var_6DED && level.var_D84D > 0 && self.team == "allies") { while(!isdefined(level.var_1C29)) { wait(0.1); } var_06 = level.var_1C29.origin; var_07 = level.var_1C29.angles; self.var_6DED = 0; } else if(isdefined(self.var_8DD8) && !isdefined(self.var_6DED) || isdefined(self.var_6DED) && self.var_6DED && level.var_D84D > 0 && self.team == "axis") { while(!isdefined(level.var_26F5)) { wait(0.1); } var_06 = level.var_26F5.origin; var_07 = level.var_26F5.angles; self.var_6DED = 0; } else { var_06 = self [[ level.var_8136 ]](); var_06 = var_06.origin; var_07 = var_02.angles; } func_F853(); var_0F = self.var_8C2A; self.var_6BA7 = undefined; if(!param_00) { self.var_A684 = []; self.var_A685 = []; self.var_A6B4 = []; scripts\mp\_utility::func_12F19("playing"); scripts\mp\_utility::func_41BF(); self.var_3881 = undefined; self.maxhealth = scripts\mp\_tweakables::func_81E7("player","maxhealth"); self.health = self.maxhealth; self.var_7408 = undefined; self.var_8C2A = 1; self.var_10916 = gettime(); self.var_1391E = !isdefined(var_01); self.var_18DF = 0; self.var_4D44 = []; self.killstreakscaler = 1; self.var_C2AD = 1; self.var_4000 = undefined; self.var_FC96 = 0; self.var_FC97 = 0; self.var_FC95 = 0; self.var_DDCC = 0; self.var_AA43 = undefined; self.var_AC68 = 0; if(isdefined(self.pers["deaths"])) { self.var_AC68 = self.pers["deaths"]; } scripts\mp\_utility::func_41A6(); scripts\mp\_killcam::clearkillcamomnvars(); thread monitorwallrun(); } self.var_BCF6 = 1; self.inlaststand = 0; self.var_1B3 = undefined; self.var_94A2 = undefined; self.var_93BB = undefined; if(!param_00) { self.var_26B9 = 4; var_10 = self.pers["lives"]; if(var_10 == scripts\mp\_utility::func_7ECE()) { func_1853(); } if(var_10) { self.pers["lives"]--; } func_1845(); if(!var_0F || scripts\mp\_utility::func_7672() || scripts\mp\_utility::func_7672() && level.ingraceperiod && self.var_8BE9) { func_E112(); } if(!self.var_13906) { var_11 = 20; if(scripts\mp\_utility::func_81CA() > 0 && var_11 < scripts\mp\_utility::func_81CA() * 60 / 4) { var_11 = scripts\mp\_utility::func_81CA() * 60 / 4; } if(level.ingraceperiod || scripts\mp\_utility::func_81CB() < var_11 * 1000) { self.var_13906 = 1; } } } self setdepthoffield(0,0,512,512,4,0); if(level.console) { self setclientdvar("cg_fov","63"); } if(isdefined(var_01)) { scripts\mp\_spawnlogic::func_6C5B(var_01); var_06 = func_8135(var_01); var_07 = var_01.angles; } else if(!isdefined(self.var_6BA5)) { self.var_A9F6 = gettime(); } self.var_108FF = var_06; if(param_00 && scripts\mp\_gameobjects::touchingarbitraryuptrigger()) { if(self isonground()) { self normalizeworldupreferenceangles(); var_06 = var_06 - (0,0,80); } var_07 = self getworldupreferenceangles(); } self spawn(var_06,var_07); if(param_00 && isdefined(self.var_6BA6)) { self setstance(self.var_6BA6); self.var_6BA6 = undefined; } if(isai(self)) { scripts\mp\_utility::func_7385(1); } self motionblurhqenable(); [[ level.onspawnplayer ]](); if(isdefined(var_01)) { func_3E42(var_01.origin); } if(!param_00) { if(isai(self) && isdefined(level.var_2D9E) && isdefined(level.var_2D9E["player_spawned"])) { self [[ level.var_2D9E["player_spawned"] ]](); } if(!isai(self)) { thread func_13A6C(); } if(isdefined(level.var_B3FB)) { [[ level.var_B3FB ]](self.var_41F0,self.team,"SPAWN",self.var_108FF[0],self.var_108FF[1],self.var_10916); } if(!isai(self)) { if(!isdefined(self.pers["distTrackingPassed"])) { thread totaldisttracking(var_06); } thread stancespamtracking(); } } if(!param_00) { self.var_B3E3 = scripts\mp\_matchdata::func_AFD6(); self.lastmatchdatakillstreakindex = -1; thread func_DDED(); if(self ishost()) { setmatchdata("players",self.var_41F0,"wasAHost",1); } } scripts\mp\_class::func_F691(self.var_4004); if(isdefined(level.var_4C55)) { self [[ level.var_4C55 ]](param_00); } else { scripts\mp\_class::func_8379(self.team,self.var_4004); } self method_84BE("player_mp"); if(isdefined(game["roundsPlayed"]) && game["roundsPlayed"] > 0) { if(!isdefined(self.var_400D) || !self.var_400D) { if(isdefined(self.var_4006)) { self setclientomnvar("ui_loadout_selected",self.var_4006); self.var_400D = 1; } } } if(getdvarint("camera_thirdPerson")) { scripts\mp\_utility::setthirdpersondof(1); } if(!scripts\mp\_utility::func_766C("prematch_done")) { func_1CA2(self); } else { scripts\mp\_utility::func_7385(0); } if(scripts\mp\_utility::func_7F1D("scr_showperksonspawn",1) == 1 && game["state"] != "postgame") { scripts\mp\perks\_perks::func_F7C5("ui_spawn_perk_",self.pers["loadoutPerks"]); self setclientomnvar("ui_spawn_abilities_show",1); } waittillframeend; self.var_108DB = undefined; self notify("spawned_player"); level notify("player_spawned",self); thread func_F850(); if(game["state"] == "postgame") { scripts\mp\_gamelogic::func_7386(); } if(scripts\mp\_analyticslog::func_1E6A() && !param_00) { if(scripts\mp\_analyticslog::func_1E5E()) { level.var_10841 = level.var_10841 + 1; } else { scripts\mp\_analyticslog::func_1E60(); } if(scripts\mp\_analyticslog::func_1E65(level.var_10841)) { if(isdefined(level.var_108D1.var_108FD)) { scripts\mp\_analyticslog::func_1E66(self,self.var_108FD,level.var_10841,var_01); scripts\mp\_analyticslog::func_1E68(var_01.origin,self.team,self.var_AC68,level.var_10841); scripts\mp\_analyticslog::func_1E67(self,var_01.origin,level.var_10841); } } self.var_A9F4 = var_01; } } //Function Number: 25 func_F850() { self endon("disconnect"); scripts\common\utility::func_136F7(); self setclientomnvar("ui_player_spawned_notify",gettime()); } //Function Number: 26 func_DDED() { self endon("death"); self endon("disconnect"); level endon("game_ended"); if(scripts\mp\_matchdata::func_38C6(self)) { for(;;) { var_00 = self.var_B3E3; if(!isdefined(var_00)) { var_00 = -1; } var_01 = scripts\mp\_utility::func_9EE8(); var_02 = scripts\mp\_matchdata::func_81C8(gettime()); var_03 = var_02 / 1000; self method_8571(var_03,var_00,var_01); wait(2); } } } //Function Number: 27 func_1CA2(param_00) { param_00 allowmovement(0); param_00 scripts\common\utility::func_1C46(0); param_00 scripts\common\utility::func_1C58(0); param_00 scripts\common\utility::allow_jump(0); param_00.var_D84C = 1; } //Function Number: 28 func_41D1(param_00) { if(scripts\common\utility::istrue(param_00.var_D84C)) { param_00 allowmovement(1); param_00 scripts\common\utility::func_1C46(1); param_00 scripts\common\utility::func_1C58(1); param_00 scripts\common\utility::allow_jump(1); param_00.var_D84C = undefined; } } //Function Number: 29 waitforversusmenudone() { level endon("prematch_over"); self endon("versus_menu_done"); for(;;) { self waittill("luinotifyserver",var_00,var_01); if(var_00 == "versus_done") { self notify("versus_menu_done"); } } } //Function Number: 30 func_10912(param_00) { var_01 = 6; self endon("disconnect"); if(isai(self)) { return; } if(level.splitscreen || self issplitscreenplayer()) { self setclientdvars("cg_fovscale","0.65"); } else { self setclientdvars("cg_fovscale","1"); } self setclientomnvar("ui_mapshot_camera",1); self lerpfovbypreset("mapflyover"); var_02 = scripts\common\utility::getstructarray("camera_intro","targetname"); if(var_02.size == 0) { self visionsetfadetoblackforplayer("",0.75); return; } var_03 = undefined; var_04 = undefined; func_F853(); scripts\mp\_utility::clearlowermessage("spawn_info"); scripts\mp\_utility::func_12F19("spectator"); self.pers["team"] = "spectator"; self.team = "spectator"; scripts\mp\_utility::func_41BF(); self.var_7408 = undefined; func_E27B(); self allowspectateteam("allies",0); self allowspectateteam("axis",0); self allowspectateteam("freelook",0); self allowspectateteam("none",0); if(isdefined(var_02) && var_02.size > 1) { var_05 = randomintrange(0,var_02.size - 1); var_03 = var_02[var_05]; } else if(isdefined(var_02)) { var_03 = var_02[0]; } else { } var_03.var_6C01 = 1; scripts\mp\_utility::func_7385(1); self setspectatedefaults(var_03.origin,var_03.angles); self spawn(var_03.origin,var_03.angles); func_3E42(var_03.origin); var_06 = spawn("script_model",var_03.origin); var_06 setmodel("tag_origin"); var_06.angles = var_03.angles; thread waitforversusmenudone(); if(isdefined(param_00) && param_00 == 99) { var_07 = "debug"; } else if(scripts\mp\_utility::func_766C("prematch_done")) { var_07 = "prematch_over"; } else if(self.versusdone) { var_07 = "versus_menu_done"; } else { var_07 = scripts\common\utility::waittill_any_timeout_1(2,"versus_menu_done","prematch_over"); } if(var_07 == "timeout") { if(scripts\mp\_utility::func_766C("prematch_done")) { var_07 = "prematch_over"; } else { var_07 = "versus_menu_done"; } } if(var_07 == "prematch_over") { self visionsetfadetoblackforplayer("",0.75); return; } if(self issplitscreenplayer() && self issplitscreenplayerprimary()) { var_08 = self getothersplitscreenplayer(); var_08 notify("versus_menu_done"); wait(0.05); } self cameralinkto(var_06,"tag_origin"); var_09 = scripts\mp\_utility::func_7F8B(); self notify("mapCamera_start"); switch(var_09) { case "mp_parkour": var_06 scriptmodelplayanimdeltamotion("iw7_mp_intro_camera_parkour",1); self visionsetfadetoblackforplayer("",0.75); self playlocalsound("mp_camera_intro_whoosh"); wait(var_01 - 0.25); break; case "mp_frontier": var_06 scriptmodelplayanimdeltamotion("iw7_mp_intro_camera_frontier",1); self visionsetfadetoblackforplayer("",0.75); self playlocalsound("mp_camera_intro_whoosh"); wait(var_01 - 0.25); break; case "mp_fallen": var_06 scriptmodelplayanimdeltamotion("iw7_mp_intro_camera_fallen",1); self visionsetfadetoblackforplayer("",0.75); self playlocalsound("mp_camera_intro_whoosh"); wait(var_01 - 0.25); break; case "mp_proto": var_06 scriptmodelplayanimdeltamotion("iw7_mp_intro_camera_proto",1); self visionsetfadetoblackforplayer("",0.75); self playlocalsound("mp_camera_intro_whoosh"); wait(var_01 - 0.25); break; case "mp_metropolis": var_06 scriptmodelplayanimdeltamotion("iw7_mp_intro_camera_metropolis",1); self visionsetfadetoblackforplayer("",0.75); self playlocalsound("mp_camera_intro_whoosh"); wait(var_01 - 0.25); break; case "mp_dome_iw": var_06 scriptmodelplayanimdeltamotion("iw7_mp_intro_camera_dome_iw",1); self visionsetfadetoblackforplayer("",0.75); self playlocalsound("mp_camera_intro_whoosh"); wait(var_01 - 0.25); break; case "mp_breakneck": var_06 scriptmodelplayanimdeltamotion("iw7_mp_intro_camera_breakneck",1); self visionsetfadetoblackforplayer("",0.75); self playlocalsound("mp_camera_intro_whoosh"); wait(var_01 - 0.25); break; case "mp_desert": var_06 scriptmodelplayanimdeltamotion("iw7_mp_intro_camera_desert",1); self visionsetfadetoblackforplayer("",0.75); self playlocalsound("mp_camera_intro_whoosh"); wait(var_01 - 0.25); break; case "mp_divide": var_06 scriptmodelplayanimdeltamotion("iw7_mp_intro_camera_divide",1); self visionsetfadetoblackforplayer("",0.75); self playlocalsound("mp_camera_intro_whoosh"); wait(var_01 - 0.25); break; case "mp_quarry": var_06 scriptmodelplayanimdeltamotion("iw7_mp_intro_camera_quarry",1); self visionsetfadetoblackforplayer("",0.75); self playlocalsound("mp_camera_intro_whoosh"); wait(var_01 - 0.25); break; case "mp_skyway": var_06 scriptmodelplayanimdeltamotion("iw7_mp_intro_camera_skyway",1); self visionsetfadetoblackforplayer("",0.75); self playlocalsound("mp_camera_intro_whoosh"); wait(var_01 - 0.25); break; case "mp_rivet": var_06 scriptmodelplayanimdeltamotion("iw7_mp_intro_camera_rivet",1); self visionsetfadetoblackforplayer("",0.75); self playlocalsound("mp_camera_intro_whoosh"); wait(var_01 - 0.25); break; case "mp_riot": var_06 scriptmodelplayanimdeltamotion("iw7_mp_intro_camera_riot",1); self visionsetfadetoblackforplayer("",0.75); self playlocalsound("mp_camera_intro_whoosh"); wait(var_01 - 0.25); break; case "mp_dome_dusk": var_06 scriptmodelplayanimdeltamotion("iw7_mp_intro_camera_dome_iw",1); self visionsetfadetoblackforplayer("",0.75); self playlocalsound("mp_camera_intro_whoosh"); wait(var_01 - 0.25); break; case "mp_geneva": var_06 scriptmodelplayanimdeltamotion("iw7_mp_intro_camera_geneva",1); self visionsetfadetoblackforplayer("",0.75); self playlocalsound("mp_camera_intro_whoosh"); wait(var_01 - 0.25); break; case "mp_renaissance2": var_06 scriptmodelplayanimdeltamotion("iw7_mp_intro_camera_geneva",1); self visionsetfadetoblackforplayer("",0.75); self playlocalsound("mp_camera_intro_whoosh"); wait(var_01 - 0.25); break; case "mp_afghan": var_06 scriptmodelplayanimdeltamotion("iw7_mp_intro_camera_afghan",1); self visionsetfadetoblackforplayer("",0.75); self playlocalsound("mp_camera_intro_whoosh"); wait(var_01 - 0.25); break; case "mp_neon": var_06 scriptmodelplayanimdeltamotion("iw7_mp_intro_camera_neon",1); self visionsetfadetoblackforplayer("",0.75); self playlocalsound("mp_camera_intro_whoosh"); wait(var_01 - 0.25); break; case "mp_prime": var_06 scriptmodelplayanimdeltamotion("iw7_mp_intro_camera_prime",1); self visionsetfadetoblackforplayer("",0.75); self playlocalsound("mp_camera_intro_whoosh"); wait(var_01 - 0.25); break; case "mp_flip": var_06 scriptmodelplayanimdeltamotion("iw7_mp_intro_camera_flip",1); self visionsetfadetoblackforplayer("",0.75); self playlocalsound("mp_camera_intro_whoosh"); wait(var_01 - 0.25); break; case "mp_mansion": var_06 scriptmodelplayanimdeltamotion("iw7_mp_intro_camera_mansion",1); self visionsetfadetoblackforplayer("",0.75); self playlocalsound("mp_camera_intro_whoosh"); wait(var_01 - 0.25); break; case "mp_marsoasis": var_06 scriptmodelplayanimdeltamotion("iw7_mp_intro_camera_marsoasis",1); self visionsetfadetoblackforplayer("",0.75); self playlocalsound("mp_camera_intro_whoosh"); wait(var_01 - 0.25); break; case "mp_junk": var_06 scriptmodelplayanimdeltamotion("iw7_mp_intro_camera_junk",1); self visionsetfadetoblackforplayer("",0.75); self playlocalsound("mp_camera_intro_whoosh"); wait(var_01 - 0.25); break; case "mp_turista2": var_06 scriptmodelplayanimdeltamotion("iw7_mp_intro_camera_marsoasis",1); self visionsetfadetoblackforplayer("",0.75); self playlocalsound("mp_camera_intro_whoosh"); wait(var_01 - 0.25); break; case "mp_overflow": var_06 scriptmodelplayanimdeltamotion("iw7_mp_intro_camera_overflow",1); self visionsetfadetoblackforplayer("",0.75); self playlocalsound("mp_camera_intro_whoosh"); wait(var_01 - 0.25); break; case "mp_permafrost2": var_06 scriptmodelplayanimdeltamotion("iw7_mp_intro_camera_overflow",1); self visionsetfadetoblackforplayer("",0.75); self playlocalsound("mp_camera_intro_whoosh"); wait(var_01 - 0.25); break; case "mp_nova": var_06 scriptmodelplayanimdeltamotion("iw7_mp_intro_camera_nova",1); self visionsetfadetoblackforplayer("",0.75); self playlocalsound("mp_camera_intro_whoosh"); wait(var_01 - 0.25); break; case "mp_paris": var_06 scriptmodelplayanimdeltamotion("iw7_mp_intro_camera_paris",1); self visionsetfadetoblackforplayer("",0.75); self playlocalsound("mp_camera_intro_whoosh"); wait(var_01 - 0.25); break; case "mp_pixel": var_06 scriptmodelplayanimdeltamotion("iw7_mp_intro_camera_pixel",1); self visionsetfadetoblackforplayer("",0.75); self playlocalsound("mp_camera_intro_whoosh"); wait(var_01 - 0.25); break; case "mp_hawkwar": var_06 scriptmodelplayanimdeltamotion("iw7_mp_intro_camera_hawkwar",1); self visionsetfadetoblackforplayer("",0.75); self playlocalsound("mp_camera_intro_whoosh"); wait(var_01 - 0.25); break; case "mp_rally": var_06 scriptmodelplayanimdeltamotion("iw7_mp_intro_camera_rally",1); self visionsetfadetoblackforplayer("",0.75); self playlocalsound("mp_camera_intro_whoosh"); wait(var_01 - 0.25); break; case "mp_carnage2": var_06 scriptmodelplayanimdeltamotion("iw7_mp_intro_camera_rally",1); self visionsetfadetoblackforplayer("",0.75); self playlocalsound("mp_camera_intro_whoosh"); wait(var_01 - 0.25); break; case "mp_depot": var_06 scriptmodelplayanimdeltamotion("iw7_mp_intro_camera_depot",1); self visionsetfadetoblackforplayer("",0.75); self playlocalsound("mp_camera_intro_whoosh"); wait(var_01 - 0.25); break; case "mp_codphish": var_06 scriptmodelplayanimdeltamotion("iw7_mp_intro_camera_codphish",1); self visionsetfadetoblackforplayer("",0.75); self playlocalsound("mp_camera_intro_whoosh"); wait(var_01 - 0.25); break; default: break; } wait(0.25); self visionsetfadetoblackforplayer("",0.75); self playlocalsound("mp_camera_intro_whoosh"); var_0A = var_03; var_04 = scripts\common\utility::getstruct(var_03.target,"targetname"); var_0B = 0; for(;;) { if(isdefined(var_0A.var_10992)) { var_0C = 1 / var_0A.var_10992; var_0D = var_0C * distance(var_0A.origin,var_04.origin); } else { var_0D = distance(var_0A.origin,var_04.origin); } var_0B = var_0B + var_0D; var_0A.var_5708 = var_0D; var_0A = var_04; if(isdefined(var_0A.target)) { var_04 = scripts\common\utility::getstruct(var_0A.target,"targetname"); continue; } break; } var_0A.var_666E = 1; var_0A = var_03; var_04 = scripts\common\utility::getstruct(var_03.target,"targetname"); for(;;) { var_0E = var_0A.var_5708 / var_0B; var_0F = var_0E * var_01; if(isdefined(var_04.var_666E)) { var_10 = var_0F / 2; } else { var_10 = 0; } if(isdefined(var_0A.var_6C01)) { var_11 = var_0F / 2; } else { var_11 = 0; } var_06 moveto(var_04.origin,var_0F,var_11,var_10); var_06 rotateto(var_04.angles,var_0F,var_11,var_10); if(isdefined(var_04.var_666E)) { var_12 = int(var_0F / 2); wait(var_12); wait(var_12); } else { wait(var_0F); } var_0A = var_04; if(isdefined(var_0A.target)) { var_04 = scripts\common\utility::getstruct(var_0A.target,"targetname"); continue; } break; } scripts\mp\_utility::func_7385(0); self.var_10D78 = var_06; self setclientomnvar("ui_mapshot_camera",0); } //Function Number: 31 func_10911(param_00,param_01) { self notify("spawned"); self notify("end_respawn"); self notify("joined_spectators"); if(isdefined(self.deathspectatepos)) { param_00 = self.deathspectatepos; param_01 = vectortoangles(self.origin - self.deathspectatepos); } if(isdefined(self.var_10D78) && !isdefined(param_00)) { param_00 = self.var_10D78.origin; param_01 = self.var_10D78.angles; self.var_10D78 delete(); } func_93A5(param_00,param_01); } //Function Number: 32 func_E285(param_00,param_01) { if(isdefined(self.deathspectatepos)) { param_00 = self.deathspectatepos; param_01 = vectortoangles(self.origin - self.deathspectatepos); } func_93A5(param_00,param_01); } //Function Number: 33 func_93A5(param_00,param_01) { func_F853(); var_02 = self.pers["team"]; if(isdefined(var_02) && var_02 == "spectator" && !level.var_7669) { scripts\mp\_utility::clearlowermessage("spawn_info"); } scripts\mp\_utility::func_12F19("spectator"); scripts\mp\_utility::func_41BF(); self.var_7408 = undefined; func_E27B(); scripts\mp\_spectating::func_F857(); func_C5A0(param_00,param_01); if(level.teambased && !level.splitscreen && !self issplitscreenplayer()) { self setdepthoffield(0,128,512,4000,6,1.8); } } //Function Number: 34 func_8072(param_00) { if(param_00 < 0) { return undefined; } for(var_01 = 0;var_01 < level.players.size;var_01++) { if(level.players[var_01] getentitynumber() == param_00) { return level.players[var_01]; } } return undefined; } //Function Number: 35 func_C5A0(param_00,param_01) { if(isdefined(param_00) && isdefined(param_01)) { self setspectatedefaults(param_00,param_01); self spawn(param_00,param_01); func_3E42(param_00); return; } var_02 = func_8148(); var_03 = 8; if(isdefined(level.var_37C8) && level.var_37C8.size) { for(var_04 = 0;var_04 < level.camerahighestindex + 1 && var_04 < var_03;var_04++) { if(!isdefined(level.var_37C8[var_04]) || !isdefined(level.var_37C1[var_04])) { continue; } self setmlgcameradefaults(var_04,level.var_37C8[var_04],level.var_37C1[var_04]); level.var_37C3[var_04].origin = level.var_37C8[var_04]; level.var_C215[var_04].origin = level.var_37C8[var_04]; level.var_37C3[var_04].angles = level.var_37C1[var_04]; level.var_C215[var_04].angles = level.var_37C1[var_04]; } } else { for(var_04 = 0;var_04 < var_03;var_04++) { self setmlgcameradefaults(var_04,var_02.origin,var_02.angles); } } self setspectatedefaults(var_02.origin,var_02.angles); self spawn(var_02.origin,var_02.angles); func_3E42(var_02.origin); } //Function Number: 36 func_8148() { var_00 = getentarray("mp_global_intermission","classname"); var_01 = scripts\mp\_spawnlogic::func_813C(var_00); return var_01; } //Function Number: 37 func_108DD() { self endon("disconnect"); self notify("spawned"); self notify("end_respawn"); func_F853(); scripts\mp\_utility::clearlowermessages(); scripts\mp\_utility::func_7385(1); self setclientdvar("cg_everyoneHearsEveryone",1); if(isdefined(level.var_6C6F) && level.var_6C6F != "none" && isdefined(level.var_B3D9) && scripts\mp\_utility::func_13916() && !scripts\mp\_utility::func_9FB3(level.var_58D7)) { wait(level.var_B3D9); } if(!scripts\mp\_utility::func_9FB3(level.var_58D7)) { scripts\mp\_utility::func_12F19("intermission"); } scripts\mp\_utility::func_41BF(); self.var_7408 = undefined; var_00 = getentarray("mp_global_intermission","classname"); var_00 = scripts\mp\_spawnscoring::func_3E05(var_00); var_01 = var_00[0]; if(!isdefined(level.var_4C4E)) { self spawn(var_01.origin,var_01.angles); func_3E42(var_01.origin); self setdepthoffield(0,128,512,4000,6,1.8); } else { level notify("scoreboard_displaying"); } scripts\mp\_utility::func_7385(1); } //Function Number: 38 func_10857() { if(1) { if(isdefined(level.var_4C4E) && scripts\mp\_utility::func_13916()) { level notify("start_custom_ending"); } if(!self.var_45D6) { scripts\mp\_utility::func_7385(1); } if(scripts\mp\_utility::func_9FB3(level.var_58D7)) { self notify("spawned"); scripts\mp\_utility::func_41BF(); } else { func_10911(); scripts\mp\_utility::func_7385(1); } return; } self notify("spawned"); self notify("end_respawn"); func_F853(); scripts\mp\_utility::clearlowermessages(); self setclientdvar("cg_everyoneHearsEveryone",1); scripts\mp\_utility::func_12F19("dead"); scripts\mp\_utility::func_41BF(); self.var_7408 = undefined; var_00 = func_8148(); func_10911(var_00.origin,var_00.angles); func_3E42(var_00.origin); scripts\mp\_utility::func_7385(1); self setdepthoffield(0,0,512,512,4,0); } //Function Number: 39 func_F853() { self stopshellshock(); self stoprumble("damage_heavy"); self.var_4E55 = undefined; } //Function Number: 40 func_C15D() { waittillframeend; if(isdefined(self)) { level notify("connecting",self); } } //Function Number: 41 func_374F(param_00) { if(!isdefined(self.var_452B)) { return; } if(scripts\mp\_utility::func_9F32()) { setmatchdata("players",self.var_41F0,"playerQuitRoundNumber",game["roundsPlayed"]); } if(level.teambased) { if(isdefined(self.team)) { if(self.team == "allies") { setmatchdata("players",self.var_41F0,"playerQuitTeamScore",getteamscore("allies")); setmatchdata("players",self.var_41F0,"playerQuitOppposingTeamScore",getteamscore("axis")); } else if(self.team == "axis") { setmatchdata("players",self.var_41F0,"playerQuitTeamScore",getteamscore("axis")); setmatchdata("players",self.var_41F0,"playerQuitOppposingTeamScore",getteamscore("allies")); } } } setmatchdata("players",self.var_41F0,"utcDisconnectTimeSeconds",function_00D2()); setmatchdata("players",self.var_41F0,"disconnectReason",param_00); self method_859C(self.var_41F0,param_00); var_01 = getmatchdata("commonMatchData","playerCountLeft"); var_01++; setmatchdata("commonMatchData","playerCountLeft",var_01); if(scripts\mp\_utility::func_DCD5()) { scripts\mp\_matchdata::func_AFB9(); } if(scripts\mp\_utility::func_9D92()) { self method_84E3(); } scripts\mp\_matchdata::func_AFD4(); if(isdefined(self.pers["confirmed"])) { scripts\mp\_matchdata::func_AFC6(); } if(isdefined(self.pers["denied"])) { scripts\mp\_matchdata::func_AFC7(); } func_E15B(); scripts\mp\_spawnlogic::func_E113(); scripts\mp\_spawnlogic::func_E106(); var_02 = self getentitynumber(); if(!level.teambased) { game["roundsWon"][self.var_86BD] = undefined; } if(level.splitscreen) { var_03 = level.players; if(var_03.size <= 1) { level thread scripts\mp\_gamelogic::func_72BE(); } } if(isdefined(self.var_1AB) && isdefined(self.var_E9)) { if(120 < self.var_1190E["total"]) { var_04 = self.var_1AB - self.var_E9 / self.var_1190E["total"] / 60; setplayerteamrank(self,self.var_41F0,var_04); } } else { } var_05 = self getentitynumber(); var_06 = self.var_86BD; function_0131("Q;" + var_06 + ";" + var_05 + ";" + self.name + "\n"); thread scripts\mp\_events::func_5638(); if(level.var_7669) { scripts\mp\_gamescore::func_E0ED(); } if(isdefined(self.team)) { func_E11D(); } if(self.sessionstate == "playing" && !isdefined(self.var_6BA7) && self.var_6BA7) { func_E0FF(1); return; } if(self.sessionstate == "spectator" || self.sessionstate == "dead") { level thread scripts\mp\_gamelogic::func_12E9D(); } } //Function Number: 42 func_E15B() { var_00 = 0; for(var_01 = 0;var_01 < level.players.size;var_01++) { if(level.players[var_01] == self) { var_00 = 1; while(var_01 < level.players.size - 1) { level.players[var_01] = level.players[var_01 + 1]; var_01++; } level.players[var_01] = undefined; break; } } } //Function Number: 43 func_97EA() { if(level.splitscreen || self issplitscreenplayer()) { self setclientdvars("cg_fovscale","0.75"); setdvar("r_materialBloomHQScriptMasterEnable",0); return; } self setclientdvars("cg_fovscale","1"); } //Function Number: 44 func_97E9() { setdvar("cg_drawCrosshair",1); setdvar("cg_drawCrosshairNames",1); if(level.var_8B38) { setdvar("cg_drawCrosshair",0); setdvar("cg_drawCrosshairNames",1); } if(isdefined(level.var_1D5D) && level.var_1D5D) { setdvar("cg_drawFriendlyNamesAlways",1); } else { setdvar("cg_drawFriendlyNamesAlways",0); } self setclientdvars("cg_drawSpectatorMessages",1); func_97EA(); if(scripts\mp\_utility::func_7ECE()) { self setclientdvars("cg_deadChatWithDead",1,"cg_deadChatWithTeam",0,"cg_deadHearTeamLiving",0,"cg_deadHearAllLiving",0); } else { self setclientdvars("cg_deadChatWithDead",0,"cg_deadChatWithTeam",1,"cg_deadHearTeamLiving",1,"cg_deadHearAllLiving",0); } if(level.teambased) { self setclientdvars("cg_everyonehearseveryone",0); } self setclientdvar("ui_altscene",0); if(getdvarint("scr_hitloc_debug")) { for(var_00 = 0;var_00 < 6;var_00++) { self setclientdvar("ui_hitloc_" + var_00,""); } self.var_903A = 1; } } //Function Number: 45 func_7F87() { var_00 = 0; for(var_01 = 0;var_01 < 30;var_01++) { foreach(var_03 in level.players) { if(!isdefined(var_03)) { continue; } if(var_03.var_41F0 == var_01) { var_00 = 1; break; } var_00 = 0; } if(!var_00) { return var_01; } } } //Function Number: 46 func_FAE7() { self.var_EB6A = []; for(var_00 = 1;var_00 <= 4;var_00++) { self.var_EB6A[var_00] = spawnstruct(); self.var_EB6A[var_00].type = ""; self.var_EB6A[var_00].var_195 = undefined; } if(!level.console) { for(var_00 = 5;var_00 <= 8;var_00++) { self.var_EB6A[var_00] = spawnstruct(); self.var_EB6A[var_00].type = ""; self.var_EB6A[var_00].var_195 = undefined; } } } //Function Number: 47 connect_validateplayerteam() { if(!isdefined(self)) { return; } if(self.sessionteam == "none" && scripts\mp\_utility::func_B3EC() && level.teambased && !isdefined(self.pers["isBot"]) && !self ismlgspectator() && level.gametype != "infect") { bbprint("mp_invalid_team_error","player_xuid %s isHost %i",self getxuid(),self ishost()); wait(1.5); kick(self getentitynumber(),"EXE_PLAYERKICKED_INVALIDTEAM"); } } //Function Number: 48 queueconnectednotify() { for(;;) { if(!isdefined(level.players_waiting_for_callback)) { wait(0.05); continue; } break; } for(;;) { for(var_00 = 0;var_00 < level.players_waiting_for_callback.size;var_00++) { var_01 = level.players_waiting_for_callback[var_00]; if(isdefined(var_01)) { level notify("connected",var_01); var_01 notify("connected_continue"); level.players_waiting_for_callback[var_00] = undefined; break; } } var_02 = scripts\mp\_utility::cleanarray(level.players_waiting_for_callback); level.players_waiting_for_callback = var_02; wait(0.05); } } //Function Number: 49 watchforversusdone() { self endon("disconnect"); self.versusdone = 0; for(;;) { self waittill("luinotifyserver",var_00,var_01); if(var_00 == "versus_done") { self.versusdone = 1; return; } } } //Function Number: 50 monitorplayersegments(param_00) { param_00 endon("disconnect"); level endon("game_ended"); createplayersegmentstats(param_00); for(;;) { param_00 waittill("spawned_player"); recordsegmentdata(param_00); } } //Function Number: 51 createplayersegmentstats(param_00) { param_00.var_F18B = []; param_00.var_F18B["distanceTotal"] = 0; param_00.var_F18B["movingTotal"] = 0; param_00.var_F18B["movementUpdateCount"] = 0; } //Function Number: 52 recordsegmentdata(param_00) { param_00 endon("death"); while(!scripts\mp\_utility::func_766C("prematch_done")) { wait(0.5); } wait(4); param_00.savedsegmentposition = param_00.origin; param_00.positionptm = param_00.origin; for(;;) { wait(1); if(param_00 scripts\mp\_utility::func_9FC6()) { param_00 waittill("stopped_using_remote"); param_00.savedsegmentposition = param_00.origin; param_00.positionptm = param_00.origin; continue; } param_00.var_F18B["movementUpdateCount"]++; param_00.var_F18B["distanceTotal"] = param_00.var_F18B["distanceTotal"] + distance2d(param_00.savedsegmentposition,param_00.origin); param_00.savedsegmentposition = param_00.origin; if(param_00.var_F18B["movementUpdateCount"] % 5 == 0) { var_01 = distance2d(param_00.positionptm,param_00.origin); param_00.positionptm = param_00.origin; if(var_01 > 16) { param_00.var_F18B["movingTotal"]++; } } } } //Function Number: 53 writesegmentdata(param_00) { param_00 endon("disconnect"); if(param_00.var_F18B["movementUpdateCount"] < 30) { return; } var_01 = param_00.var_F18B["movingTotal"] / param_00.var_F18B["movementUpdateCount"] / 5 * 100; var_02 = param_00.var_F18B["distanceTotal"] / param_00.var_F18B["movementUpdateCount"]; setmatchdata("players",param_00.var_41F0,"averageSpeedDuringMatch",var_02); setmatchdata("players",param_00.var_41F0,"percentageOfTimeMoving",var_01); } //Function Number: 54 func_374C() { thread func_C15D(); thread watchforversusdone(); self.var_2C7 = "hud_status_connecting"; self waittill("begin"); self.var_2C7 = ""; self.var_4539 = undefined; self visionsetfadetoblackforplayer("bw",0); level.players_waiting_for_callback[level.players_waiting_for_callback.size] = self; self waittill("connected_continue"); self.var_452B = 1; self setclientomnvar("ui_scoreboard_freeze",0); if(self ishost()) { level.player = self; } if(!level.splitscreen && !isdefined(self.pers["score"])) { iprintln(&"MP_CONNECTED",self); } self.var_13114 = self isusingonlinedataoffline(); func_97E9(); func_98BE(); if(getdvar("r_reflectionProbeGenerate") == "1") { level waittill("eternity"); } self.var_86BD = scripts\mp\_utility::func_81EC(); var_00 = 0; var_01 = 0; if(!isdefined(self.pers["clientid"])) { for(var_02 = 0;var_02 < 30;var_02++) { var_03 = getmatchdata("players",var_02,"playerID","xuid"); if(var_03 == self.var_86BD) { self.pers["clientid"] = var_02; var_01 = 1; var_04 = getmatchdata("commonMatchData","playerCountReconnected"); var_04++; setmatchdata("commonMatchData","playerCountReconnected",var_04); setmatchdata("players",var_02,"utcReconnectTimeSeconds",function_00D2()); break; } } if(!var_01) { if(game["clientid"] >= 30) { self.pers["clientid"] = func_7F87(); } else { self.pers["clientid"] = game["clientid"]; } if(game["clientid"] < 30) { game["clientid"]++; } } var_00 = 1; self.pers["matchdataWeaponStats"] = []; self.pers["matchdataScoreEventCounts"] = []; self.pers["xpAtLastDeath"] = 0; self.pers["scoreAtLastDeath"] = 0; self method_8596(self.pers["clientid"]); setmatchdata("players",self.pers["clientid"],"joinType",self getjointype()); setmatchdata("players",self.pers["clientid"],"isTrialVersion",self method_85B4()); } if(var_00) { scripts\mp\_persistence::func_10E57("round","timePlayed",0,1); self setplayerdata("common","round","timePlayed",0); self setplayerdata("common","round","totalXp",0); self setplayerdata("common","aarUnlockCount",0); if(!isdefined(game["uniquePlayerCount"])) { game["uniquePlayerCount"] = 1; } else { game["uniquePlayerCount"]++; } } self.var_41F0 = self.pers["clientid"]; self.pers["teamKillPunish"] = 0; function_0131("J;" + self.var_86BD + ";" + self getentitynumber() + ";" + self.name + "\n"); self method_85A3(); var_05 = getmatchdata("commonMatchData","playerCount"); if(game["clientid"] <= 30 && game["clientid"] != var_05) { if(!isai(self) && scripts\mp\_utility::func_B3EC()) { self registerparty(self.var_41F0); } if(var_00 && !var_01) { var_05++; setmatchdata("commonMatchData","playerCount",var_05); } setmatchdata("players",self.var_41F0,"playerID","xuid",scripts\mp\_utility::func_81EC()); setmatchdata("players",self.var_41F0,"gamertag",self.name); setmatchdata("players",self.var_41F0,"skill",self method_810F()); setmatchclientip(self,self.var_41F0); if(var_00 && !var_01) { setmatchdata("players",self.var_41F0,"utcConnectTimeSeconds",function_00D2()); } if(scripts\mp\_utility::func_DCD5()) { scripts\mp\_matchdata::func_AFC4(); } if((isdefined(self.pers["isBot"]) && self.pers["isBot"]) || isai(self)) { var_06 = 1; setmatchdata("players",self.var_41F0,"isBot",1); } else { var_06 = 0; } if(scripts\mp\_utility::func_B3EC() && scripts\mp\_utility::func_1CAD() && !var_06) { setmatchdata("players",self.var_41F0,"team",self.sessionteam); } if(var_00 && isdefined(level.var_B3FD)) { [[ level.var_B3FD ]](self.var_41F0,self.team,self.name); } } if(!level.teambased) { game["roundsWon"][self.var_86BD] = 0; } self.var_AAEF = []; self.var_AAEB = []; self.var_AAE8 = ""; self.var_AAEA = []; self.var_AAE9 = ""; if(!isdefined(self.pers["cur_kill_streak"])) { self.pers["cur_kill_streak"] = 0; } if(!isdefined(self.pers["cur_death_streak"])) { self.pers["cur_death_streak"] = 0; } if(!isdefined(self.pers["cur_kill_streak_for_nuke"])) { self.pers["cur_kill_streak_for_nuke"] = 0; } if(scripts\mp\_utility::func_DCD5()) { self.var_A61A = scripts\mp\_persistence::func_10E33("killStreak"); } self.var_A991 = -1; self.var_115D5 = 0; self.var_8C2A = 0; self.var_136FF = 0; self.var_138DD = 0; self.var_13906 = 0; self.var_BCF6 = 1; self.killstreakscaler = 1; self.var_C2AD = 1; self.var_6DED = 1; self.var_AC68 = 0; if(isdefined(self.pers["deaths"])) { self.var_AC68 = self.pers["deaths"]; } func_FAE7(); level thread monitorplayersegments(self); func_E278(); waittillframeend; level.players[level.players.size] = self; scripts\mp\_spawnlogic::func_1855(); scripts\mp\_spawnlogic::func_184B(); if(game["state"] == "postgame") { self.var_4530 = 1; self setclientdvars("cg_drawSpectatorMessages",0); self visionsetfadetoblackforplayer("",0.25); func_108DD(); return; } if(var_00 && scripts\mp\_utility::func_81CB() >= -5536 || game["roundsPlayed"] > 0) { self.var_A49D = 1; } if(isai(self) && isdefined(level.var_2D9E) && isdefined(level.var_2D9E["think"])) { self thread [[ level.var_2D9E["think"] ]](); } level endon("game_ended"); if(isdefined(level.var_90A9)) { thread scripts\mp\_hostmigration::func_90AA(); } if(isdefined(level.var_C56F)) { [[ level.var_C56F ]](); } if(!isdefined(self.pers["team"])) { var_0A = scripts\mp\_utility::func_81CB() / 1000 + 6; if(var_0A < level.var_D84D) { func_10912(); self lerpfovbypreset("default"); self setclientomnvar("ui_mapshot_camera",0); func_97EA(); self.pers["team"] = ""; self.team = "free"; } else { self visionsetfadetoblackforplayer("",0.5); } connect_validateplayerteam(); if(self ismlgspectator()) { thread scripts\mp\_menus::func_F859(); return; } if((scripts\mp\_utility::func_B3EC() || scripts\mp\_utility::func_AEB6() || function_0303()) && self.sessionteam != "none") { thread func_10911(); thread scripts\mp\_menus::func_F876(self.sessionteam); if(scripts\mp\_utility::func_1C7D() || scripts\mp\_utility::func_10125() && !isai(self)) { self setclientomnvar("ui_options_menu",2); } if(!function_0303()) { thread func_A5AD(); } return; } if(!scripts\mp\_utility::func_B3EC() && scripts\mp\_utility::func_1CAD()) { scripts\mp\_menus::func_B678(); self setclientomnvar("ui_options_menu",1); return; } thread func_10911(); scripts\mp\_menus::func_2642(); if(scripts\mp\_utility::func_1C7D() || scripts\mp\_utility::func_10125() && !isai(self)) { self setclientomnvar("ui_options_menu",2); } if(scripts\mp\_utility::func_B3EC()) { thread func_A5AD(); } return; } self visionsetfadetoblackforplayer("",0.5); connect_validateplayerteam(); var_0B = self.pers["team"]; if(scripts\mp\_utility::func_B3EC() && !isdefined(self.pers["isBot"]) && !self ismlgspectator() && getdvarint("team_consistency_fix")) { var_0B = self.sessionteam; } scripts\mp\_menus::func_185F(var_0B,1); if(self ismlgspectator()) { thread func_10911(); return; } if(scripts\mp\_utility::func_9FD4(self.pers["class"])) { thread func_1083A(); return; } thread func_10911(); if(self.pers["team"] == "spectator") { if(scripts\mp\_utility::func_1CAD()) { scripts\mp\_menus::func_2A7A(); return; } self [[ level.var_2642 ]](); return; } scripts\mp\_menus::func_2A61(); } //Function Number: 55 func_3755() { if(isdefined(self.var_452B) && self.var_452B) { scripts\mp\_utility::func_12EDC(); scripts\mp\_utility::func_12EC8(); } if(self ishost()) { func_97EA(); } var_00 = 0; foreach(var_02 in level.players) { if(!isdefined(var_02.pers["isBot"]) || var_02.pers["isBot"] == 0) { var_00++; } } if(!isdefined(self.pers["isBot"]) || self.pers["isBot"] == 0) { level.var_90A8++; if(level.var_90A8 >= var_00 * 2 / 3) { level notify("hostmigration_enoughplayers"); } } } //Function Number: 56 func_17EA(param_00,param_01) { var_02 = scripts\mp\_rank::func_80C9(param_00); var_03 = scripts\mp\_rank::func_80CF(var_02); var_04 = scripts\mp\_rank::func_80CE(var_02); var_02 = var_02 + param_00 - var_03 / var_04 - var_03; var_02 = var_02 + param_01; if(var_02 < 0) { var_02 = 0; var_05 = 0; } else if(var_03 >= level.var_B4C0 + 1) { var_03 = level.var_B4C0; var_05 = 1; } else { var_05 = var_03 - floor(var_03); var_02 = int(floor(var_02)); } var_03 = scripts\mp\_rank::func_80CF(var_02); var_04 = scripts\mp\_rank::func_80CE(var_02); return int(var_05 * var_04 - var_03) + var_03; } //Function Number: 57 func_72DF() { self endon("death"); self endon("disconnect"); self endon("spawned"); wait(60); if(self.var_8C2A) { return; } if(self.pers["team"] == "spectator") { return; } if(!scripts\mp\_utility::func_9FD4(self.pers["class"])) { self.pers["class"] = "CLASS_CUSTOM1"; self.var_4004 = self.pers["class"]; } thread func_1083A(); } //Function Number: 58 func_A5AD() { self endon("death"); self endon("disconnect"); self endon("spawned"); self endon("attempted_spawn"); var_00 = getdvarfloat("scr_kick_time",90); var_01 = getdvarfloat("scr_kick_mintime",45); var_02 = getdvarfloat("scr_kick_hosttime",120); var_03 = gettime(); if(self ishost()) { func_A5AF(var_02); } else { func_A5AF(var_00); } var_04 = gettime() - var_03 / 1000; if(var_04 < var_00 - 0.1 && var_04 < var_01) { return; } if(self.var_8C2A) { return; } if(self.pers["team"] == "spectator") { return; } kick(self getentitynumber(),"EXE_PLAYERKICKED_INACTIVE",1); level thread scripts\mp\_gamelogic::func_12E9D(); } //Function Number: 59 func_A5AF(param_00) { level endon("game_ended"); scripts\mp\_hostmigration::func_13708(param_00); } //Function Number: 60 func_BA38() { level endon("game_ended"); self endon("disconnect"); self.var_13552 = 0; while(self.var_13552 < 2) { self waittill("voteToKick"); self.var_13552++; } kick(self getentitynumber(),"EXE_PLAYERKICKED_TEAMKILLS"); } //Function Number: 61 func_6B57() { wait(1); self notify("voteToKick"); wait(3); self notify("voteToKick"); wait(2); self notify("voteToKick"); } //Function Number: 62 totaldisttracking(param_00) { level endon("game_ended"); self endon("disconnect"); self endon("spawned"); self notify("distFromSpawnTracking"); self endon("distFromSpawnTracking"); if(!scripts\mp\_utility::func_766C("prematch_done")) { scripts\mp\_utility::func_7670("prematch_done"); } var_01 = param_00; for(;;) { scripts\common\utility::waittill_notify_or_timeout("death",5); if(!isdefined(self.pers["totalDistTraveledSQ"])) { self.pers["totalDistTraveledSQ"] = 0; } self.pers["totalDistTraveledSQ"] = self.pers["totalDistTraveledSQ"] + distancesquared(var_01,self.origin); var_01 = self.origin; if(self.pers["totalDistTraveledSQ"] > 90000) { self.pers["distTrackingPassed"] = 1; } } } //Function Number: 63 stancespamtracking() { level endon("game_ended"); self endon("disconnect"); self endon("spawned"); self notify("stanceSpamTracking"); self endon("stanceSpamTracking"); if(!scripts\mp\_utility::func_766C("prematch_done")) { scripts\mp\_utility::func_7670("prematch_done"); } var_00 = undefined; for(;;) { var_01 = self getstance(); if(isdefined(var_00) && var_00 != var_01) { if(!isdefined(self.pers["stanceTracking"])) { self.pers["stanceTracking"] = []; self.pers["stanceTracking"]["prone"] = 0; self.pers["stanceTracking"]["crouch"] = 0; self.pers["stanceTracking"]["stand"] = 0; } if(var_01 == "prone" || var_01 == "crouch" || var_01 == "stand") { self.pers["stanceTracking"][var_01]++; } } var_00 = var_01; scripts\common\utility::func_136F7(); } } //Function Number: 64 func_98BE() { scripts\mp\_persistence::func_97E2(); if(!isdefined(self.pers["deaths"])) { scripts\mp\_utility::initpersstat("deaths"); scripts\mp\_persistence::func_10E56("round","deaths",0); } self.var_E9 = scripts\mp\_utility::getpersstat("deaths"); if(!isdefined(self.pers["score"])) { scripts\mp\_utility::initpersstat("score"); scripts\mp\_persistence::func_10E56("round","score",0); } self.var_278 = scripts\mp\_utility::getpersstat("score"); if(!isdefined(self.pers["suicides"])) { scripts\mp\_utility::initpersstat("suicides"); } self.var_111BB = scripts\mp\_utility::getpersstat("suicides"); if(!isdefined(self.pers["kills"])) { scripts\mp\_utility::initpersstat("kills"); scripts\mp\_persistence::func_10E56("round","kills",0); } self.var_1AB = scripts\mp\_utility::getpersstat("kills"); if(!isdefined(self.pers["headshots"])) { scripts\mp\_utility::initpersstat("headshots"); } self.var_8CA0 = scripts\mp\_utility::getpersstat("headshots"); if(!isdefined(self.pers["assists"])) { scripts\mp\_utility::initpersstat("assists"); scripts\mp\_persistence::func_10E56("round","assists",0); } self.var_4D = scripts\mp\_utility::getpersstat("assists"); if(!isdefined(self.pers["captures"])) { scripts\mp\_utility::initpersstat("captures"); scripts\mp\_persistence::func_10E56("round","captures",0); } self.var_3A3F = scripts\mp\_utility::getpersstat("captures"); if(!isdefined(self.pers["returns"])) { scripts\mp\_utility::initpersstat("returns"); scripts\mp\_persistence::func_10E56("round","returns",0); } self.var_E476 = scripts\mp\_utility::getpersstat("returns"); if(!isdefined(self.pers["defends"])) { scripts\mp\_utility::initpersstat("defends"); scripts\mp\_persistence::func_10E56("round","defends",0); } self.var_508B = scripts\mp\_utility::getpersstat("defends"); if(!isdefined(self.pers["plants"])) { scripts\mp\_utility::initpersstat("plants"); scripts\mp\_persistence::func_10E56("round","plants",0); } self.var_CC51 = scripts\mp\_utility::getpersstat("plants"); if(!isdefined(self.pers["defuses"])) { scripts\mp\_utility::initpersstat("defuses"); scripts\mp\_persistence::func_10E56("round","defuses",0); } self.var_50AA = scripts\mp\_utility::getpersstat("defuses"); if(!isdefined(self.pers["destructions"])) { scripts\mp\_utility::initpersstat("destructions"); scripts\mp\_persistence::func_10E56("round","destructions",0); } self.var_5383 = scripts\mp\_utility::getpersstat("destructions"); if(!isdefined(self.pers["confirmed"])) { scripts\mp\_utility::initpersstat("confirmed"); scripts\mp\_persistence::func_10E56("round","confirmed",0); } self.var_4522 = scripts\mp\_utility::getpersstat("confirmed"); if(!isdefined(self.pers["denied"])) { scripts\mp\_utility::initpersstat("denied"); scripts\mp\_persistence::func_10E56("round","denied",0); } self.var_51E9 = scripts\mp\_utility::getpersstat("denied"); if(!isdefined(self.pers["rescues"])) { scripts\mp\_utility::initpersstat("rescues"); scripts\mp\_persistence::func_10E56("round","rescues",0); } self.var_E1C2 = scripts\mp\_utility::getpersstat("rescues"); if(!isdefined(self.pers["touchdowns"])) { scripts\mp\_utility::initpersstat("touchdowns"); scripts\mp\_persistence::func_10E56("round","touchdowns",0); } self.var_11A3E = scripts\mp\_utility::getpersstat("touchdowns"); if(!isdefined(self.pers["fieldgoals"])) { scripts\mp\_utility::initpersstat("fieldgoals"); scripts\mp\_persistence::func_10E56("round","fieldgoals",0); } self.var_6BDB = scripts\mp\_utility::getpersstat("fieldgoals"); if(!isdefined(self.pers["killChains"])) { scripts\mp\_utility::initpersstat("killChains"); scripts\mp\_persistence::func_10E56("round","killChains",0); } self.var_A642 = scripts\mp\_utility::getpersstat("killChains"); if(!isdefined(self.pers["killsAsSurvivor"])) { scripts\mp\_utility::initpersstat("killsAsSurvivor"); scripts\mp\_persistence::func_10E56("round","killsAsSurvivor",0); } self.var_A676 = scripts\mp\_utility::getpersstat("killsAsSurvivor"); if(!isdefined(self.pers["killsAsInfected"])) { scripts\mp\_utility::initpersstat("killsAsInfected"); scripts\mp\_persistence::func_10E56("round","killsAsInfected",0); } self.var_A675 = scripts\mp\_utility::getpersstat("killsAsInfected"); if(!isdefined(self.pers["teamkills"])) { scripts\mp\_utility::initpersstat("teamkills"); } if(!isdefined(self.pers["extrascore0"])) { scripts\mp\_utility::initpersstat("extrascore0"); } if(!isdefined(self.pers["extrascore1"])) { scripts\mp\_utility::initpersstat("extrascore1"); } if(!isdefined(self.pers["stabs"])) { scripts\mp\_utility::initpersstat("stabs"); scripts\mp\_persistence::func_10E56("round","stabs",0); } self.var_10B39 = scripts\mp\_utility::getpersstat("stabs"); if(!isdefined(self.pers["setbacks"])) { scripts\mp\_utility::initpersstat("setbacks"); scripts\mp\_persistence::func_10E56("round","setbacks",0); } self.var_F655 = scripts\mp\_utility::getpersstat("setbacks"); if(!isdefined(self.pers["objTime"])) { scripts\mp\_utility::initpersstat("objTime"); scripts\mp\_persistence::func_10E56("round","objTime",0); } self.var_C2C5 = scripts\mp\_utility::getpersstat("objTime"); if(!isdefined(self.pers["gamemodeScore"])) { scripts\mp\_utility::initpersstat("gamemodeScore"); scripts\mp\_persistence::func_10E56("round","gamemodeScore",0); } if(!isdefined(self.pers["supersEarned"])) { scripts\mp\_utility::initpersstat("supersEarned"); } if(!isdefined(self.pers["wardenKSCount"])) { scripts\mp\_utility::initpersstat("wardenKSCount"); } if(!isdefined(self.pers["teamKillPunish"])) { self.pers["teamKillPunish"] = 0; } scripts\mp\_utility::initpersstat("longestStreak"); self.pers["lives"] = scripts\mp\_utility::func_7ECE(); scripts\mp\_persistence::func_10E56("round","killStreak",0); scripts\mp\_persistence::func_10E56("round","loss",0); scripts\mp\_persistence::func_10E56("round","win",0); scripts\mp\_persistence::func_10E56("round","scoreboardType","none"); } //Function Number: 65 func_1860() { level.var_115C6[self.team]++; if(!isdefined(level.var_115D8)) { level.var_115D8 = []; } if(!isdefined(level.var_115D8[self.team])) { level.var_115D8[self.team] = []; } level.var_115D8[self.team][level.var_115D8[self.team].size] = self; scripts\mp\_gamelogic::func_12E9D(); } //Function Number: 66 func_E11D() { level.var_115C6[self.team]--; if(isdefined(level.var_115D8) && isdefined(level.var_115D8[self.team])) { var_00 = []; foreach(var_02 in level.var_115D8[self.team]) { if(!isdefined(var_02) || var_02 == self) { continue; } var_00[var_00.size] = var_02; } level.var_115D8[self.team] = var_00; } } //Function Number: 67 func_1845() { var_00 = self.team; if(!isdefined(self.var_1D40) && self.var_1D40) { level.var_8C2A[var_00]++; func_93F8(var_00); } self.var_1D40 = undefined; if(level.var_1BE6["allies"] + level.var_1BE6["axis"] > level.var_B4BC) { level.var_B4BC = level.var_1BE6["allies"] + level.var_1BE6["axis"]; } } //Function Number: 68 func_93F8(param_00,param_01) { level.var_1BE6[param_00]++; if(!isdefined(level.var_1BE5)) { level.var_1BE5 = []; } if(!isdefined(level.var_1BE5[param_00])) { level.var_1BE5[param_00] = []; } level.var_1BE5[param_00] = scripts\common\utility::array_add(level.var_1BE5[param_00],self); if(scripts\mp\_utility::func_9FB3(param_01) && param_00 == "allies" || param_00 == "axis") { var_02 = level.var_C74B[param_00]; foreach(var_04 in level.players) { if(var_04.team == param_00) { var_04 playsoundtoplayer("mp_bodycount_tick_positive",var_04); continue; } if(var_04.team == var_02) { var_04 playsoundtoplayer("mp_bodycount_tick_negative",var_04); } } } scripts\mp\_gamelogic::func_12E9D(); } //Function Number: 69 func_E0FF(param_00) { var_01 = self.pers["lives"]; var_02 = scripts\mp\_utility::func_7ECE() != 0 && var_01 == 0; var_03 = self.team; if(isdefined(self.var_11377) && self.var_11377 && isdefined(self.var_A49E) && self.var_A49E == self.team) { var_03 = self.var_AB33; } if(isdefined(param_00)) { func_E0CA(); } else if(isdefined(self.var_11377) && !level.ingraceperiod || self.var_8BE9) { if(var_01) { self.pers["lives"]--; } } func_4FBD(var_03,var_02); } //Function Number: 70 func_4FBD(param_00,param_01) { level.var_1BE6[param_00]--; for(var_02 = 0;var_02 < level.var_1BE5[param_00].size;var_02++) { if(level.var_1BE5[param_00][var_02] == self) { level.var_1BE5[param_00][var_02] = level.var_1BE5[param_00][level.var_1BE5[param_00].size - 1]; level.var_1BE5[param_00][level.var_1BE5[param_00].size - 1] = undefined; break; } } if(scripts\mp\_utility::func_9FB3(param_01) && param_00 == "allies" || param_00 == "axis") { var_03 = level.var_C74B[param_00]; foreach(var_05 in level.players) { if(var_05.team == param_00) { var_05 playsoundtoplayer("mp_bodycount_tick_negative",var_05); continue; } if(var_05.team == var_03) { var_05 playsoundtoplayer("mp_bodycount_tick_positive",var_05); } } } scripts\mp\_gamelogic::func_12E9D(); } //Function Number: 71 func_1853() { level.var_AD8D[self.team] = level.var_AD8D[self.team] + self.pers["lives"]; } //Function Number: 72 func_E112() { level.var_AD8D[self.team]--; level.var_AD8D[self.team] = int(max(0,level.var_AD8D[self.team])); } //Function Number: 73 func_E0CA() { level.var_AD8D[self.team] = level.var_AD8D[self.team] - self.pers["lives"]; level.var_AD8D[self.team] = int(max(0,level.var_AD8D[self.team])); } //Function Number: 74 func_E278() { self setclientomnvar("ui_carrying_bomb",0); self setclientomnvar("ui_objective_state",0); self setclientomnvar("ui_securing",0); self setclientomnvar("ui_light_armor",0); self setclientomnvar("ui_killcam_end_milliseconds",0); self setclientomnvar("ui_juiced_end_milliseconds",0); self setclientdvar("ui_eyes_on_end_milliseconds",0); self setclientomnvar("ui_cranked_bomb_timer_end_milliseconds",0); self setclientomnvar("ui_edge_glow",0); } //Function Number: 75 func_E27B() { self setclientomnvar("ui_carrying_bomb",0); self setclientomnvar("ui_objective_state",0); self setclientomnvar("ui_securing",0); self setclientomnvar("ui_light_armor",0); self setclientomnvar("ui_killcam_end_milliseconds",0); self setclientomnvar("ui_juiced_end_milliseconds",0); self setclientdvar("ui_eyes_on_end_milliseconds",0); self setclientomnvar("ui_cranked_bomb_timer_end_milliseconds",0); self setclientomnvar("ui_edge_glow",0); } //Function Number: 76 monitorwallrun() { self endon("death"); self endon("disconnect"); for(;;) { if(self method_8446()) { self.var_AA43 = gettime(); } wait(0.05); } } //Function Number: 77 func_13A6C() { self endon("death"); self endon("disconnect"); self waittill("sprint_slide_begin"); } //Function Number: 78 func_13B76() { self endon("death"); self endon("disconnect"); self.var_11563 = []; for(;;) { var_00 = (self.origin[0],self.origin[1],self.origin[2] + 64); var_01 = self getplayerangles(); var_02 = anglestoforward(var_01); var_03 = var_00 + var_02 * 10000; var_04 = bullettrace(var_00,var_03,1,self,0,0,0,0,0); var_05 = var_04["entity"]; if(isdefined(var_05) && isplayer(var_05) && var_05.team != self.team && lib_0DF8::func_213D(self,var_05)) { if(isdefined(var_05)) { func_12F36("ui_target_health",var_05.health); } if(isdefined(var_05)) { func_12F36("ui_target_max_health",var_05.maxhealth); } if(isdefined(var_05)) { func_12F36("ui_target_entity_num",var_05 getentitynumber()); } } else { func_12F36("ui_target_entity_num",-1); } wait(0.1); } } //Function Number: 79 func_12F36(param_00,param_01) { scripts\common\utility::func_136F7(); if(!isdefined(self)) { return; } if(!isdefined(param_01)) { return; } if(!isdefined(self.var_11563[param_00]) || param_01 != self.var_11563[param_00]) { self setclientomnvar(param_00,param_01); self.var_11563[param_00] = param_01; } }