/******************************************************************* * Decompiled By: Bog * Decompiled File: common_scripts\_destructible.gsc * Game: Call of Duty: WWII * Platform: PC * Function Count: 157 * Decompile Time: 2669 ms * Timestamp: 10/27/2023 3:26:29 AM *******************************************************************/ //Function Number: 1 func_00D5() { level.var_2E2A = 50; level.var_2E29 = []; level.var_2928 = 0; level.var_254D = gettime(); if(!isdefined(level.var_3A53)) { level.var_3A53 = 0; } if(!isdefined(level.var_3F02)) { level.var_3F02 = []; } var_00 = 1; if(var_00) { func_3B74(); } var_01 = getentarray("delete_on_load","targetname"); foreach(var_03 in var_01) { var_03 delete(); } func_51B4(); func_51B5(); } //Function Number: 2 func_2AB9() { } //Function Number: 3 func_3B74() { if(!isdefined(level.var_2DFA)) { level.var_2DFA = []; } var_00 = []; foreach(var_02 in level.var_9478) { if(isdefined(var_02.var_165) && var_02.var_165 == "destructible_dot") { var_00[var_00.size] = var_02; } } var_04 = getentarray("destructible_vehicle","targetname"); foreach(var_06 in var_04) { var_06 thread func_87D3(var_00); } var_08 = getentarray("destructible_toy","targetname"); foreach(var_0A in var_08) { var_0A thread func_87D3(var_00); } func_2AB9(); } //Function Number: 4 func_87D3(param_00) { func_87D2(); func_87D0(param_00); } //Function Number: 5 func_87D0(param_00) { var_01 = self.var_2E25; foreach(var_03 in param_00) { if(isdefined(level.var_75[var_01].var_2DF3)) { return; } if(isdefined(var_03.var_8260) && issubstr(var_03.var_8260,"destructible_type") && issubstr(var_03.var_8260,self.var_75)) { if(distancesquared(self.var_116,var_03.var_116) < 1) { var_04 = getentarray(var_03.var_1A2,"targetname"); level.var_75[var_01].var_2DF3 = []; foreach(var_06 in var_04) { var_07 = var_06.var_81E1; if(!isdefined(level.var_75[var_01].var_2DF3[var_07])) { level.var_75[var_01].var_2DF3[var_07] = []; } var_08 = level.var_75[var_01].var_2DF3[var_07].size; level.var_75[var_01].var_2DF3[var_07][var_08]["classname"] = var_06.var_3A; level.var_75[var_01].var_2DF3[var_07][var_08]["origin"] = var_06.var_116; var_09 = common_scripts\utility::func_98E7(isdefined(var_06.var_187),var_06.var_187,0); level.var_75[var_01].var_2DF3[var_07][var_08]["spawnflags"] = var_09; switch(var_06.var_3A) { case "trigger_radius": level.var_75[var_01].var_2DF3[var_07][var_08]["radius"] = var_06.var_BD; level.var_75[var_01].var_2DF3[var_07][var_08]["height"] = var_06.var_BD; break; default: break; } var_06 delete(); } break; } } } } //Function Number: 6 func_2E02(param_00) { if(!isdefined(level.var_75)) { return -1; } if(level.var_75.size == 0) { return -1; } for(var_01 = 0;var_01 < level.var_75.size;var_01++) { if(param_00 == level.var_75[var_01].var_A265["type"]) { return var_01; } } return -1; } //Function Number: 7 func_2DA4(param_00,param_01,param_02,param_03,param_04,param_05) { if(!isdefined(param_01)) { param_01 = 0; } if(!isdefined(param_02)) { param_02 = "test/concrete_cover_dest_test"; } if(!isdefined(param_03)) { param_03 = 150; } func_2DED(param_00,"tag_origin",1,undefined,32,"no_melee"); if(isdefined(param_04)) { func_2E1C(undefined,param_04,undefined,undefined,32,"no_melee"); } for(var_06 = 0;var_06 < param_01;var_06++) { var_07 = "fx_joint_" + var_06; func_2E0F(var_07,undefined,param_03,undefined,undefined,"no_melee",1); func_2DFB(var_07,param_02); if(isdefined(param_05)) { func_2E15(param_05); } func_2E1C(undefined); } } //Function Number: 8 func_2E03(param_00) { var_01 = func_2E02(param_00); if(var_01 >= 0) { return var_01; } if(issubstr(param_00,"dest_cover")) { func_2DA4(self.var_75,self.var_8160,self.var_815B,self.var_815C,self.var_815F,self.var_815D); var_01 = func_2E02(param_00); return var_01; } if(!isdefined(level.var_2DFA[param_00])) { return -1; } [[ level.var_2DFA[param_00] ]](); var_01 = func_2E02(param_00); return var_01; } //Function Number: 9 func_87D2() { var_00 = undefined; self.var_6297 = 0; func_0914(); self.var_2E25 = func_2E03(self.var_75); if(self.var_2E25 < 0) { return; } func_7643(); func_091C(); if(isdefined(level.var_2E1E) && isdefined(level.var_2E1E[self.var_75])) { common_scripts\utility::func_3C9F(level.var_2E1E[self.var_75] + "_loaded"); } if(isdefined(level.var_75[self.var_2E25].var_1145)) { foreach(var_03 in level.var_75[self.var_2E25].var_1145) { if(isdefined(var_03.var_95A6)) { self attach(var_03.var_106,var_03.var_95A6); } else { self attach(var_03.var_106); } if(self.var_6297) { if(isdefined(var_03.var_95A6)) { self.var_6296 attach(var_03.var_106,var_03.var_95A6); continue; } self.var_6296 attach(var_03.var_106); } } } if(isdefined(level.var_75[self.var_2E25].var_6E9F)) { self.var_2E10 = []; for(var_05 = 0;var_05 < level.var_75[self.var_2E25].var_6E9F.size;var_05++) { self.var_2E10[var_05] = spawnstruct(); self.var_2E10[var_05].var_A265["currentState"] = 0; if(isdefined(level.var_75[self.var_2E25].var_6E9F[var_05][0].var_A265["health"])) { self.var_2E10[var_05].var_A265["health"] = level.var_75[self.var_2E25].var_6E9F[var_05][0].var_A265["health"]; } if(isdefined(level.var_75[self.var_2E25].var_6E9F[var_05][0].var_A265["random_dynamic_attachment_1"])) { var_06 = randomint(level.var_75[self.var_2E25].var_6E9F[var_05][0].var_A265["random_dynamic_attachment_1"].size); var_07 = level.var_75[self.var_2E25].var_6E9F[var_05][0].var_A265["random_dynamic_attachment_tag"][var_06]; var_08 = level.var_75[self.var_2E25].var_6E9F[var_05][0].var_A265["random_dynamic_attachment_1"][var_06]; var_09 = level.var_75[self.var_2E25].var_6E9F[var_05][0].var_A265["random_dynamic_attachment_2"][var_06]; var_0A = level.var_75[self.var_2E25].var_6E9F[var_05][0].var_A265["clipToRemove"][var_06]; thread func_30DF(var_07,var_08,var_09,var_0A); } if(var_05 == 0) { continue; } var_0B = level.var_75[self.var_2E25].var_6E9F[var_05][0].var_A265["modelName"]; var_0C = level.var_75[self.var_2E25].var_6E9F[var_05][0].var_A265["tagName"]; for(var_0D = 1;isdefined(level.var_75[self.var_2E25].var_6E9F[var_05][var_0D]);var_0D++) { var_0E = level.var_75[self.var_2E25].var_6E9F[var_05][var_0D].var_A265["tagName"]; var_0F = level.var_75[self.var_2E25].var_6E9F[var_05][var_0D].var_A265["modelName"]; if(isdefined(var_0E) && var_0E != var_0C) { func_4D03(var_0E); if(self.var_6297) { self.var_6296 func_4D03(var_0E); } } } } } if(isdefined(self.var_1A2)) { thread func_2E05(); } if(self.var_3B != "script_vehicle") { self setcandamage(1); } if(common_scripts\utility::func_57D7()) { thread func_258B(); } thread func_2E1D(); if(issubstr(self.var_75,"dest_cover")) { thread func_2E23(); } thread func_2DFF(); } //Function Number: 10 func_2DED(param_00,param_01,param_02,param_03,param_04,param_05) { if(!isdefined(level.var_75)) { level.var_75 = []; } var_06 = level.var_75.size; level.var_75[var_06] = spawnstruct(); level.var_75[var_06].var_A265["type"] = param_00; level.var_75[var_06].var_6E9F = []; level.var_75[var_06].var_6E9F[0][0] = spawnstruct(); level.var_75[var_06].var_6E9F[0][0].var_A265["modelName"] = self.var_106; level.var_75[var_06].var_6E9F[0][0].var_A265["tagName"] = param_01; level.var_75[var_06].var_6E9F[0][0].var_A265["health"] = param_02; level.var_75[var_06].var_6E9F[0][0].var_A265["validAttackers"] = param_03; level.var_75[var_06].var_6E9F[0][0].var_A265["validDamageZone"] = param_04; level.var_75[var_06].var_6E9F[0][0].var_A265["validDamageCause"] = param_05; level.var_75[var_06].var_6E9F[0][0].var_A265["godModeAllowed"] = 1; level.var_75[var_06].var_6E9F[0][0].var_A265["rotateTo"] = self.var_1D; level.var_75[var_06].var_6E9F[0][0].var_A265["vehicle_exclude_anim"] = 0; } //Function Number: 11 func_2E0F(param_00,param_01,param_02,param_03,param_04,param_05,param_06,param_07,param_08,param_09) { var_0A = level.var_75.size - 1; var_0B = level.var_75[var_0A].var_6E9F.size; var_0C = 0; func_2E08(var_0B,var_0C,param_00,param_01,param_02,param_03,param_04,param_05,param_06,param_07,param_08,undefined,param_09); } //Function Number: 12 func_2E1C(param_00,param_01,param_02,param_03,param_04,param_05,param_06,param_07) { var_08 = level.var_75.size - 1; var_09 = level.var_75[var_08].var_6E9F.size - 1; var_0A = level.var_75[var_08].var_6E9F[var_09].size; if(!isdefined(param_00) && var_09 == 0) { param_00 = level.var_75[var_08].var_6E9F[var_09][0].var_A265["tagName"]; } func_2E08(var_09,var_0A,param_00,param_01,param_02,param_03,param_04,param_05,undefined,undefined,param_06,param_07); } //Function Number: 13 func_2DFD(param_00,param_01,param_02,param_03,param_04,param_05,param_06) { func_2DFB(param_00,param_01,param_02,param_03,param_04,param_05,1,param_06); } //Function Number: 14 func_2DFB(param_00,param_01,param_02,param_03,param_04,param_05,param_06,param_07) { if(!isdefined(param_02)) { param_02 = 1; } if(!isdefined(param_04)) { param_04 = 0; } if(!isdefined(param_05)) { param_05 = 0; } if(!isdefined(param_06)) { param_06 = 0; } if(!isdefined(param_07)) { param_07 = 0; } var_08 = level.var_75.size - 1; var_09 = level.var_75[var_08].var_6E9F.size - 1; var_0A = level.var_75[var_08].var_6E9F[var_09].size - 1; var_0B = 0; if(isdefined(level.var_75[var_08].var_6E9F[var_09][var_0A].var_A265["fx_filename"])) { if(isdefined(level.var_75[var_08].var_6E9F[var_09][var_0A].var_A265["fx_filename"][param_04])) { var_0B = level.var_75[var_08].var_6E9F[var_09][var_0A].var_A265["fx_filename"][param_04].size; } } if(isdefined(param_03)) { level.var_75[var_08].var_6E9F[var_09][var_0A].var_A265["fx_valid_damagetype"][param_04][var_0B] = param_03; } level.var_75[var_08].var_6E9F[var_09][var_0A].var_A265["fx_filename"][param_04][var_0B] = param_01; level.var_75[var_08].var_6E9F[var_09][var_0A].var_A265["fx_tag"][param_04][var_0B] = param_00; level.var_75[var_08].var_6E9F[var_09][var_0A].var_A265["fx_useTagAngles"][param_04][var_0B] = param_02; level.var_75[var_08].var_6E9F[var_09][var_0A].var_A265["fx_cost"][param_04][var_0B] = param_05; level.var_75[var_08].var_6E9F[var_09][var_0A].var_A265["spawn_immediate"][param_04][var_0B] = param_06; level.var_75[var_08].var_6E9F[var_09][var_0A].var_A265["state_change_kill"][param_04][var_0B] = param_07; } //Function Number: 15 func_2DEE(param_00) { var_01 = level.var_75.size - 1; var_02 = level.var_75[var_01].var_6E9F.size - 1; var_03 = level.var_75[var_01].var_6E9F[var_02].size - 1; if(!isdefined(level.var_75[var_01].var_6E9F[var_02][var_03].var_A265["dot"])) { level.var_75[var_01].var_6E9F[var_02][var_03].var_A265["dot"] = []; } var_04 = level.var_75[var_01].var_6E9F[var_02][var_03].var_A265["dot"].size; var_05 = func_27E2(); var_05.var_1B9 = "predefined"; var_05.var_D4 = param_00; level.var_75[var_01].var_6E9F[var_02][var_03].var_A265["dot"][var_04] = var_05; } //Function Number: 16 func_2DEF(param_00,param_01,param_02,param_03) { var_04 = level.var_75.size - 1; var_05 = level.var_75[var_04].var_6E9F.size - 1; var_06 = level.var_75[var_04].var_6E9F[var_05].size - 1; if(!isdefined(level.var_75[var_04].var_6E9F[var_05][var_06].var_A265["dot"])) { level.var_75[var_04].var_6E9F[var_05][var_06].var_A265["dot"] = []; } var_07 = level.var_75[var_04].var_6E9F[var_05][var_06].var_A265["dot"].size; var_08 = func_27E3((0,0,0),param_01,param_02,param_03); var_08.var_95A6 = param_00; level.var_75[var_04].var_6E9F[var_05][var_06].var_A265["dot"][var_07] = var_08; } //Function Number: 17 func_2E13(param_00,param_01,param_02,param_03,param_04,param_05,param_06,param_07) { var_08 = level.var_75.size - 1; var_09 = level.var_75[var_08].var_6E9F.size - 1; var_0A = level.var_75[var_08].var_6E9F[var_09].size - 1; var_0B = level.var_75[var_08].var_6E9F[var_09][var_0A].var_A265["dot"].size - 1; var_0C = level.var_75[var_08].var_6E9F[var_09][var_0A].var_A265["dot"][var_0B]; var_0C func_866A(param_00,param_01,param_02,param_03,param_04,param_05,param_06,param_07); func_52AF(param_06); } //Function Number: 18 func_2E14(param_00,param_01,param_02) { var_03 = level.var_75.size - 1; var_04 = level.var_75[var_03].var_6E9F.size - 1; var_05 = level.var_75[var_03].var_6E9F[var_04].size - 1; var_06 = level.var_75[var_03].var_6E9F[var_04][var_05].var_A265["dot"].size - 1; var_07 = level.var_75[var_03].var_6E9F[var_04][var_05].var_A265["dot"][var_06]; var_08 = var_07.var_99C1.size; var_07.var_99C1[var_08].var_6B05 = param_00; var_07.var_99C1[var_08].var_6B33 = param_01; var_07.var_99C1[var_08].var_6AE6 = param_02; } //Function Number: 19 func_2DE8(param_00,param_01) { var_02 = level.var_75.size - 1; var_03 = level.var_75[var_02].var_6E9F.size - 1; var_04 = level.var_75[var_02].var_6E9F[var_03].size - 1; var_05 = level.var_75[var_02].var_6E9F[var_03][var_04].var_A265["dot"].size - 1; var_06 = level.var_75[var_02].var_6E9F[var_03][var_04].var_A265["dot"][var_05]; var_06 func_1D45(param_00,param_01); } //Function Number: 20 func_2DE9(param_00) { var_01 = level.var_75.size - 1; var_02 = level.var_75[var_01].var_6E9F.size - 1; var_03 = level.var_75[var_01].var_6E9F[var_02].size - 1; var_04 = level.var_75[var_01].var_6E9F[var_02][var_03].var_A265["dot"].size - 1; var_05 = level.var_75[var_01].var_6E9F[var_02][var_03].var_A265["dot"][var_04]; var_05 func_1D46(param_00); } //Function Number: 21 func_2DE7(param_00,param_01,param_02,param_03,param_04,param_05) { var_06 = level.var_75.size - 1; var_07 = level.var_75[var_06].var_6E9F.size - 1; var_08 = level.var_75[var_06].var_6E9F[var_07].size - 1; var_09 = level.var_75[var_06].var_6E9F[var_07][var_08].var_A265["dot"].size - 1; var_0A = level.var_75[var_06].var_6E9F[var_07][var_08].var_A265["dot"][var_09]; var_0A func_1D44(param_00,param_01,param_02,param_03,param_04,param_05); } //Function Number: 22 func_2DEA(param_00) { var_01 = level.var_75.size - 1; var_02 = level.var_75[var_01].var_6E9F.size - 1; var_03 = level.var_75[var_01].var_6E9F[var_02].size - 1; var_04 = level.var_75[var_01].var_6E9F[var_02][var_03].var_A265["dot"].size - 1; var_05 = level.var_75[var_01].var_6E9F[var_02][var_03].var_A265["dot"][var_04]; var_05 func_1D47(param_00); } //Function Number: 23 func_2E0A(param_00,param_01,param_02,param_03) { if(!isdefined(param_03)) { param_03 = 0; } var_04 = level.var_75.size - 1; var_05 = level.var_75[var_04].var_6E9F.size - 1; var_06 = level.var_75[var_04].var_6E9F[var_05].size - 1; var_07 = 0; if(isdefined(level.var_75[var_04].var_6E9F[var_05][var_06].var_A265["loopfx_filename"])) { var_07 = level.var_75[var_04].var_6E9F[var_05][var_06].var_A265["loopfx_filename"].size; } level.var_75[var_04].var_6E9F[var_05][var_06].var_A265["loopfx_filename"][var_07] = param_01; level.var_75[var_04].var_6E9F[var_05][var_06].var_A265["loopfx_tag"][var_07] = param_00; level.var_75[var_04].var_6E9F[var_05][var_06].var_A265["loopfx_rate"][var_07] = param_02; level.var_75[var_04].var_6E9F[var_05][var_06].var_A265["loopfx_cost"][var_07] = param_03; } //Function Number: 24 func_2E07(param_00,param_01,param_02,param_03) { var_04 = level.var_75.size - 1; var_05 = level.var_75[var_04].var_6E9F.size - 1; var_06 = level.var_75[var_04].var_6E9F[var_05].size - 1; level.var_75[var_04].var_6E9F[var_05][var_06].var_A265["healthdrain_amount"] = param_00; level.var_75[var_04].var_6E9F[var_05][var_06].var_A265["healthdrain_interval"] = param_01; level.var_75[var_04].var_6E9F[var_05][var_06].var_A265["badplace_radius"] = param_02; level.var_75[var_04].var_6E9F[var_05][var_06].var_A265["badplace_team"] = param_03; } //Function Number: 25 func_2E15(param_00,param_01,param_02) { var_03 = level.var_75.size - 1; var_04 = level.var_75[var_03].var_6E9F.size - 1; var_05 = level.var_75[var_03].var_6E9F[var_04].size - 1; if(!isdefined(param_02)) { param_02 = 0; } if(!isdefined(level.var_75[var_03].var_6E9F[var_04][var_05].var_A265["sound"])) { level.var_75[var_03].var_6E9F[var_04][var_05].var_A265["sound"] = []; level.var_75[var_03].var_6E9F[var_04][var_05].var_A265["soundCause"] = []; } if(!isdefined(level.var_75[var_03].var_6E9F[var_04][var_05].var_A265["sound"][param_02])) { level.var_75[var_03].var_6E9F[var_04][var_05].var_A265["sound"][param_02] = []; level.var_75[var_03].var_6E9F[var_04][var_05].var_A265["soundCause"][param_02] = []; } var_06 = level.var_75[var_03].var_6E9F[var_04][var_05].var_A265["sound"][param_02].size; level.var_75[var_03].var_6E9F[var_04][var_05].var_A265["sound"][param_02][var_06] = param_00; level.var_75[var_03].var_6E9F[var_04][var_05].var_A265["soundCause"][param_02][var_06] = param_01; } //Function Number: 26 func_2E0B(param_00,param_01) { var_02 = level.var_75.size - 1; var_03 = level.var_75[var_02].var_6E9F.size - 1; var_04 = level.var_75[var_02].var_6E9F[var_03].size - 1; if(!isdefined(level.var_75[var_02].var_6E9F[var_03][var_04].var_A265["loopsound"])) { level.var_75[var_02].var_6E9F[var_03][var_04].var_A265["loopsound"] = []; level.var_75[var_02].var_6E9F[var_03][var_04].var_A265["loopsoundCause"] = []; } var_05 = level.var_75[var_02].var_6E9F[var_03][var_04].var_A265["loopsound"].size; level.var_75[var_02].var_6E9F[var_03][var_04].var_A265["loopsound"][var_05] = param_00; level.var_75[var_02].var_6E9F[var_03][var_04].var_A265["loopsoundCause"][var_05] = param_01; } //Function Number: 27 func_2DE3(param_00,param_01,param_02,param_03,param_04,param_05,param_06,param_07,param_08) { if(!isdefined(param_03)) { param_03 = 0; } if(!isdefined(param_04)) { param_04 = 0; } var_09 = []; var_09["anim"] = param_00; var_09["animTree"] = param_01; var_09["animType"] = param_02; var_09["vehicle_exclude_anim"] = param_03; var_09["groupNum"] = param_04; var_09["mpAnim"] = param_05; var_09["maxStartDelay"] = param_06; var_09["animRateMin"] = param_07; var_09["animRateMax"] = param_08; func_0901("animation",var_09); } //Function Number: 28 func_2E1A(param_00) { var_01 = []; var_01["spotlight_tag"] = param_00; var_01["spotlight_fx"] = "spotlight_fx"; var_01["spotlight_brightness"] = 0.85; var_01["randomly_flip"] = 1; func_093B(var_01); } //Function Number: 29 func_093A(param_00,param_01) { var_02 = []; var_02[param_00] = param_01; func_093B(var_02); } //Function Number: 30 func_093B(param_00) { var_01 = level.var_75.size - 1; var_02 = level.var_75[var_01].var_6E9F.size - 1; var_03 = level.var_75[var_01].var_6E9F[var_02].size - 1; foreach(var_06, var_05 in param_00) { level.var_75[var_01].var_6E9F[var_02][var_03].var_A265[var_06] = var_05; } } //Function Number: 31 func_0901(param_00,param_01) { var_02 = level.var_75.size - 1; var_03 = level.var_75[var_02].var_6E9F.size - 1; var_04 = level.var_75[var_02].var_6E9F[var_03].size - 1; var_05 = level.var_75[var_02].var_6E9F[var_03][var_04].var_A265; if(!isdefined(var_05[param_00])) { var_05[param_00] = []; } var_05[param_00][var_05[param_00].size] = param_01; level.var_75[var_02].var_6E9F[var_03][var_04].var_A265 = var_05; } //Function Number: 32 func_2DEB() { var_00 = level.var_75.size - 1; var_01 = level.var_75[var_00].var_6E9F.size - 1; var_02 = level.var_75[var_00].var_6E9F[var_01].size - 1; level.var_75[var_00].var_6E9F[var_01][var_02].var_A265["triggerCarAlarm"] = 1; } //Function Number: 33 func_2E09(param_00) { if(!isdefined(param_00)) { param_00 = 256; } var_01 = level.var_75.size - 1; var_02 = level.var_75[var_01].var_6E9F.size - 1; var_03 = level.var_75[var_01].var_6E9F[var_02].size - 1; level.var_75[var_01].var_6E9F[var_02][var_03].var_A265["break_nearby_lights"] = param_00; } //Function Number: 34 func_7A38(param_00,param_01,param_02,param_03) { if(!isdefined(param_02)) { param_02 = ""; } var_04 = level.var_75.size - 1; var_05 = level.var_75[var_04].var_6E9F.size - 1; var_06 = 0; if(!isdefined(level.var_75[var_04].var_6E9F[var_05][var_06].var_A265["random_dynamic_attachment_1"])) { level.var_75[var_04].var_6E9F[var_05][var_06].var_A265["random_dynamic_attachment_1"] = []; level.var_75[var_04].var_6E9F[var_05][var_06].var_A265["random_dynamic_attachment_2"] = []; level.var_75[var_04].var_6E9F[var_05][var_06].var_A265["random_dynamic_attachment_tag"] = []; } var_07 = level.var_75[var_04].var_6E9F[var_05][var_06].var_A265["random_dynamic_attachment_1"].size; level.var_75[var_04].var_6E9F[var_05][var_06].var_A265["random_dynamic_attachment_1"][var_07] = param_01; level.var_75[var_04].var_6E9F[var_05][var_06].var_A265["random_dynamic_attachment_2"][var_07] = param_02; level.var_75[var_04].var_6E9F[var_05][var_06].var_A265["random_dynamic_attachment_tag"][var_07] = param_00; level.var_75[var_04].var_6E9F[var_05][var_06].var_A265["clipToRemove"][var_07] = param_03; } //Function Number: 35 func_2E11(param_00,param_01) { var_02 = level.var_75.size - 1; var_03 = level.var_75[var_02].var_6E9F.size - 1; var_04 = level.var_75[var_02].var_6E9F[var_03].size - 1; if(!isdefined(level.var_75[var_02].var_6E9F[var_03][var_04].var_A265["physics"])) { level.var_75[var_02].var_6E9F[var_03][var_04].var_A265["physics"] = []; level.var_75[var_02].var_6E9F[var_03][var_04].var_A265["physics_tagName"] = []; level.var_75[var_02].var_6E9F[var_03][var_04].var_A265["physics_velocity"] = []; } var_05 = level.var_75[var_02].var_6E9F[var_03][var_04].var_A265["physics"].size; level.var_75[var_02].var_6E9F[var_03][var_04].var_A265["physics"][var_05] = 1; level.var_75[var_02].var_6E9F[var_03][var_04].var_A265["physics_tagName"][var_05] = param_00; level.var_75[var_02].var_6E9F[var_03][var_04].var_A265["physics_velocity"][var_05] = param_01; } //Function Number: 36 func_2E18(param_00) { var_01 = level.var_75.size - 1; var_02 = level.var_75[var_01].var_6E9F.size - 1; var_03 = level.var_75[var_01].var_6E9F[var_02].size - 1; level.var_75[var_01].var_6E9F[var_02][var_03].var_A265["splash_damage_scaler"] = param_00; } //Function Number: 37 func_2DF4(param_00,param_01,param_02,param_03,param_04,param_05,param_06,param_07,param_08,param_09,param_0A,param_0B,param_0C,param_0D) { var_0E = level.var_75.size - 1; var_0F = level.var_75[var_0E].var_6E9F.size - 1; var_10 = level.var_75[var_0E].var_6E9F[var_0F].size - 1; if(common_scripts\utility::func_57D7()) { level.var_75[var_0E].var_6E9F[var_0F][var_10].var_A265["explode_range"] = param_02; } else { level.var_75[var_0E].var_6E9F[var_0F][var_10].var_A265["explode_range"] = param_03; } level.var_75[var_0E].var_6E9F[var_0F][var_10].var_A265["explode"] = 1; level.var_75[var_0E].var_6E9F[var_0F][var_10].var_A265["explode_force_min"] = param_00; level.var_75[var_0E].var_6E9F[var_0F][var_10].var_A265["explode_force_max"] = param_01; level.var_75[var_0E].var_6E9F[var_0F][var_10].var_A265["explode_mindamage"] = param_04; level.var_75[var_0E].var_6E9F[var_0F][var_10].var_A265["explode_maxdamage"] = param_05; level.var_75[var_0E].var_6E9F[var_0F][var_10].var_A265["continueDamage"] = param_06; level.var_75[var_0E].var_6E9F[var_0F][var_10].var_A265["originOffset"] = param_07; level.var_75[var_0E].var_6E9F[var_0F][var_10].var_A265["earthQuakeScale"] = param_08; level.var_75[var_0E].var_6E9F[var_0F][var_10].var_A265["earthQuakeRadius"] = param_09; level.var_75[var_0E].var_6E9F[var_0F][var_10].var_A265["originOffset3d"] = param_0A; level.var_75[var_0E].var_6E9F[var_0F][var_10].var_A265["delaytime"] = param_0B; level.var_75[var_0E].var_6E9F[var_0F][var_10].var_A265["explode_angularImpulse_min"] = param_0C; level.var_75[var_0E].var_6E9F[var_0F][var_10].var_A265["explode_angularImpulse_max"] = param_0D; } //Function Number: 38 func_2DF9(param_00) { var_01 = level.var_75.size - 1; var_02 = level.var_75[var_01].var_6E9F.size - 1; var_03 = level.var_75[var_01].var_6E9F[var_02].size - 1; level.var_75[var_01].var_6E9F[var_02][var_03].var_A265["function"] = param_00; } //Function Number: 39 func_2E0E(param_00) { var_01 = level.var_75.size - 1; var_02 = level.var_75[var_01].var_6E9F.size - 1; var_03 = level.var_75[var_01].var_6E9F[var_02].size - 1; level.var_75[var_01].var_6E9F[var_02][var_03].var_A265["functionNotify"] = param_00; } //Function Number: 40 func_2DF0(param_00) { var_01 = level.var_75.size - 1; var_02 = level.var_75[var_01].var_6E9F.size - 1; var_03 = level.var_75[var_01].var_6E9F[var_02].size - 1; level.var_75[var_01].var_6E9F[var_02][var_03].var_A265["damage_threshold"] = param_00; } //Function Number: 41 func_2DE5(param_00,param_01) { param_01 = tolower(param_01); var_02 = level.var_75.size - 1; if(!isdefined(level.var_75[var_02].var_1145)) { level.var_75[var_02].var_1145 = []; } var_03 = spawnstruct(); var_03.var_106 = param_01; var_03.var_95A6 = param_00; level.var_75[var_02].var_1145[level.var_75[var_02].var_1145.size] = var_03; } //Function Number: 42 func_2E08(param_00,param_01,param_02,param_03,param_04,param_05,param_06,param_07,param_08,param_09,param_0A,param_0B,param_0C) { if(isdefined(param_03)) { param_03 = tolower(param_03); } var_0D = level.var_75.size - 1; level.var_75[var_0D].var_6E9F[param_00][param_01] = spawnstruct(); level.var_75[var_0D].var_6E9F[param_00][param_01].var_A265["modelName"] = param_03; level.var_75[var_0D].var_6E9F[param_00][param_01].var_A265["tagName"] = param_02; level.var_75[var_0D].var_6E9F[param_00][param_01].var_A265["health"] = param_04; level.var_75[var_0D].var_6E9F[param_00][param_01].var_A265["validAttackers"] = param_05; level.var_75[var_0D].var_6E9F[param_00][param_01].var_A265["validDamageZone"] = param_06; level.var_75[var_0D].var_6E9F[param_00][param_01].var_A265["validDamageCause"] = param_07; level.var_75[var_0D].var_6E9F[param_00][param_01].var_A265["alsoDamageParent"] = param_08; level.var_75[var_0D].var_6E9F[param_00][param_01].var_A265["physicsOnExplosion"] = param_09; level.var_75[var_0D].var_6E9F[param_00][param_01].var_A265["grenadeImpactDeath"] = param_0A; level.var_75[var_0D].var_6E9F[param_00][param_01].var_A265["godModeAllowed"] = 0; level.var_75[var_0D].var_6E9F[param_00][param_01].var_A265["splashRotation"] = param_0B; level.var_75[var_0D].var_6E9F[param_00][param_01].var_A265["receiveDamageFromParent"] = param_0C; } //Function Number: 43 func_7643() { if(!isdefined(level.var_75[self.var_2E25].var_6E9F)) { return; } if(isdefined(level.var_75[self.var_2E25].var_1145)) { foreach(var_01 in level.var_75[self.var_2E25].var_1145) { precachemodel(var_01.var_106); } } for(var_03 = 0;var_03 < level.var_75[self.var_2E25].var_6E9F.size;var_03++) { for(var_04 = 0;var_04 < level.var_75[self.var_2E25].var_6E9F[var_03].size;var_04++) { if(level.var_75[self.var_2E25].var_6E9F[var_03].size <= var_04) { continue; } if(isdefined(level.var_75[self.var_2E25].var_6E9F[var_03][var_04].var_A265["modelName"])) { precachemodel(level.var_75[self.var_2E25].var_6E9F[var_03][var_04].var_A265["modelName"]); } if(isdefined(level.var_75[self.var_2E25].var_6E9F[var_03][var_04].var_A265["animation"])) { var_05 = level.var_75[self.var_2E25].var_6E9F[var_03][var_04].var_A265["animation"]; foreach(var_07 in var_05) { if(isdefined(var_07["mpAnim"])) { common_scripts\utility::func_6756("precacheMpAnim",var_07["mpAnim"]); } } } if(isdefined(level.var_75[self.var_2E25].var_6E9F[var_03][var_04].var_A265["random_dynamic_attachment_1"])) { foreach(var_0A in level.var_75[self.var_2E25].var_6E9F[var_03][var_04].var_A265["random_dynamic_attachment_1"]) { if(isdefined(var_0A) && var_0A != "") { precachemodel(var_0A); precachemodel(var_0A + "_destroy"); } } foreach(var_0A in level.var_75[self.var_2E25].var_6E9F[var_03][var_04].var_A265["random_dynamic_attachment_2"]) { if(isdefined(var_0A) && var_0A != "") { precachemodel(var_0A); precachemodel(var_0A + "_destroy"); } } } } } } //Function Number: 44 func_091C() { if(!isdefined(level.var_75[self.var_2E25].var_6E9F)) { return; } for(var_00 = 0;var_00 < level.var_75[self.var_2E25].var_6E9F.size;var_00++) { for(var_01 = 0;var_01 < level.var_75[self.var_2E25].var_6E9F[var_00].size;var_01++) { if(level.var_75[self.var_2E25].var_6E9F[var_00].size <= var_01) { continue; } var_02 = level.var_75[self.var_2E25].var_6E9F[var_00][var_01]; if(isdefined(var_02.var_A265["fx_filename"])) { for(var_03 = 0;var_03 < var_02.var_A265["fx_filename"].size;var_03++) { var_04 = var_02.var_A265["fx_filename"][var_03]; var_05 = var_02.var_A265["fx_tag"][var_03]; if(isdefined(var_04)) { if(isdefined(var_02.var_A265["fx"]) && isdefined(var_02.var_A265["fx"][var_03]) && var_02.var_A265["fx"][var_03].size == var_04.size) { continue; } for(var_06 = 0;var_06 < var_04.size;var_06++) { var_07 = var_04[var_06]; var_08 = var_05[var_06]; level.var_75[self.var_2E25].var_6E9F[var_00][var_01].var_A265["fx"][var_03][var_06] = loadfx(var_07,var_08); } } } } var_09 = level.var_75[self.var_2E25].var_6E9F[var_00][var_01].var_A265["loopfx_filename"]; var_0A = level.var_75[self.var_2E25].var_6E9F[var_00][var_01].var_A265["loopfx_tag"]; if(isdefined(var_09)) { if(isdefined(var_02.var_A265["loopfx"]) && var_02.var_A265["loopfx"].size == var_09.size) { continue; } for(var_06 = 0;var_06 < var_09.size;var_06++) { var_0B = var_09[var_06]; var_0C = var_0A[var_06]; level.var_75[self.var_2E25].var_6E9F[var_00][var_01].var_A265["loopfx"][var_06] = loadfx(var_0B,var_0C); } } } } } //Function Number: 45 func_1F4B(param_00) { foreach(var_02 in self.var_2E27) { if(var_02 == param_00) { return 1; } } return 0; } //Function Number: 46 func_2E1D() { var_00 = 0; var_01 = self.var_106; var_02 = undefined; var_03 = self.var_116; var_04 = undefined; var_05 = undefined; var_06 = undefined; var_07 = self.var_106; func_2E1F(var_00,var_01,var_02,var_03,var_04,var_05,var_06); self endon("stop_taking_damage"); for(;;) { var_00 = undefined; var_05 = undefined; var_04 = undefined; var_03 = undefined; var_08 = undefined; var_01 = undefined; var_02 = undefined; var_09 = undefined; var_0A = undefined; self waittill("damage",var_00,var_05,var_04,var_03,var_08,var_01,var_02,var_09,var_0A); if(!isdefined(var_00)) { continue; } if(isdefined(var_05) && isdefined(var_05.var_1B9) && var_05.var_1B9 == "soft_landing" && !var_05 func_1F4B(self)) { continue; } if(common_scripts\utility::func_57D7()) { var_00 = var_00 * 0.5; } else { var_00 = var_00 * 1; } if(var_00 <= 0) { continue; } if(common_scripts\utility::func_57D7()) { if(isdefined(var_05) && isplayer(var_05)) { self.var_29D4 = var_05; } } else if(isdefined(var_05) && isplayer(var_05)) { self.var_29D4 = var_05; } else if(isdefined(var_05) && isdefined(var_05.var_48EA) && isplayer(var_05.var_48EA)) { self.var_29D4 = var_05.var_48EA; } var_08 = func_4487(var_08); if(func_5609(var_05,var_08)) { if(common_scripts\utility::func_57D7()) { var_00 = var_00 * 8; } else { var_00 = var_00 * 4; } } if(!isdefined(var_01) || var_01 == "") { var_01 = self.var_106; } if(isdefined(var_02) && var_02 == "") { if(isdefined(var_09) && var_09 != "" && var_09 != "tag_body" && var_09 != "body_animate_jnt") { var_02 = var_09; } else { var_02 = undefined; } var_0B = level.var_75[self.var_2E25].var_6E9F[0][0].var_A265["tagName"]; if(isdefined(var_0B) && isdefined(var_09) && var_0B == var_09) { var_02 = undefined; } } if(var_08 == "splash" || var_08 == "energy") { if(isdefined(level.var_75[self.var_2E25].var_6E9F[0][0].var_A265["splash_damage_scaler"])) { var_00 = var_00 * level.var_75[self.var_2E25].var_6E9F[0][0].var_A265["splash_damage_scaler"]; } else if(common_scripts\utility::func_57D7()) { var_00 = var_00 * 9; } else { var_00 = var_00 * 13; } if(var_07 == self.var_106 && isdefined(self.var_815F)) { self setmodel(self.var_815F); } func_2E17(int(var_00),var_03,var_04,var_05,var_08); continue; } thread func_2E1F(int(var_00),var_01,var_02,var_03,var_04,var_05,var_08); } } //Function Number: 47 func_5609(param_00,param_01) { if(param_01 != "bullet") { return 0; } if(!isdefined(param_00)) { return 0; } var_02 = undefined; if(isplayer(param_00)) { var_02 = param_00 getcurrentweapon(); } else if(isdefined(level.var_3603) && level.var_3603) { if(isdefined(param_00.var_1D0)) { var_02 = param_00.var_1D0; } } if(!isdefined(var_02)) { return 0; } var_03 = function_01AA(var_02); if(isdefined(var_03) && var_03 == "spread") { return 1; } return 0; } //Function Number: 48 func_45FD(param_00,param_01) { var_02 = spawnstruct(); var_02.var_A265 = []; var_03 = -1; var_04 = -1; if(tolower(param_00) == tolower(self.var_106) && !isdefined(param_01)) { param_00 = self.var_106; param_01 = undefined; var_03 = 0; var_04 = 0; } for(var_05 = 0;var_05 < level.var_75[self.var_2E25].var_6E9F.size;var_05++) { var_04 = self.var_2E10[var_05].var_A265["currentState"]; if(level.var_75[self.var_2E25].var_6E9F[var_05].size <= var_04) { continue; } if(!isdefined(param_01)) { continue; } if(isdefined(level.var_75[self.var_2E25].var_6E9F[var_05][var_04].var_A265["tagName"])) { var_06 = level.var_75[self.var_2E25].var_6E9F[var_05][var_04].var_A265["tagName"]; if(tolower(var_06) == tolower(param_01)) { var_03 = var_05; break; } } } var_02.var_A265["stateIndex"] = var_04; var_02.var_A265["partIndex"] = var_03; return var_02; } //Function Number: 49 func_2E1F(param_00,param_01,param_02,param_03,param_04,param_05,param_06,param_07) { if(!isdefined(self.var_2E10)) { return; } if(self.var_2E10.size == 0) { return; } if(level.var_3A53) { self endon("destroyed"); } var_08 = func_45FD(param_01,param_02); var_09 = var_08.var_A265["stateIndex"]; var_0A = var_08.var_A265["partIndex"]; if(var_0A < 0) { return; } var_0B = var_09; var_0C = 0; var_0D = 0; for(;;) { var_09 = self.var_2E10[var_0A].var_A265["currentState"]; if(!isdefined(level.var_75[self.var_2E25].var_6E9F[var_0A][var_09])) { break; } if(isdefined(level.var_75[self.var_2E25].var_6E9F[var_0A][0].var_A265["alsoDamageParent"])) { if(func_4487(param_06) != "splash") { var_0E = level.var_75[self.var_2E25].var_6E9F[var_0A][0].var_A265["alsoDamageParent"]; var_0F = int(param_00 * var_0E); thread func_6807(var_0F,param_05,param_04,param_03,param_06,"",""); } } if(var_0A == 0 && func_4487(param_06) != "splash") { for(var_10 = 0;var_10 < level.var_75[self.var_2E25].var_6E9F.size;var_10++) { var_11 = level.var_75[self.var_2E25].var_6E9F[var_10]; if(!isdefined(var_11[0].var_A265["receiveDamageFromParent"])) { continue; } var_12 = 0; if(isdefined(self.var_2E10[var_10].var_A265["currentState"])) { var_12 = self.var_2E10[var_10].var_A265["currentState"]; } if(!isdefined(var_11[var_12])) { continue; } if(!isdefined(var_11[var_12].var_A265["tagName"])) { continue; } var_13 = var_11[var_12].var_A265["tagName"]; var_0E = var_11[0].var_A265["receiveDamageFromParent"]; var_14 = int(param_00 * var_0E); thread func_6807(var_14,param_05,param_04,param_03,param_06,"",var_13); } } if(!isdefined(level.var_75[self.var_2E25].var_6E9F[var_0A][var_09].var_A265["health"])) { break; } if(!isdefined(self.var_2E10[var_0A].var_A265["health"])) { break; } if(var_0C) { self.var_2E10[var_0A].var_A265["health"] = level.var_75[self.var_2E25].var_6E9F[var_0A][var_09].var_A265["health"]; } var_0C = 0; if(isdefined(level.var_75[self.var_2E25].var_6E9F[var_0A][var_09].var_A265["grenadeImpactDeath"]) && param_06 == "impact") { param_00 = 100000000; } if(isdefined(level.var_75[self.var_2E25].var_6E9F[var_0A][var_09].var_A265["damage_threshold"]) && level.var_75[self.var_2E25].var_6E9F[var_0A][var_09].var_A265["damage_threshold"] > param_00) { param_00 = 0; } var_15 = self.var_2E10[var_0A].var_A265["health"]; var_16 = func_567E(var_0A,var_09,param_05); if(var_16) { var_17 = func_5825(var_0A,var_09,param_06); if(var_17) { if(isdefined(param_05)) { if(isplayer(param_05)) { self.var_724D = self.var_724D + param_00; } else if(param_05 != self) { self.var_6727 = self.var_6727 + param_00; } } if(isdefined(param_06)) { if(param_06 == "melee" || param_06 == "impact") { param_00 = 100000; } } self.var_2E10[var_0A].var_A265["health"] = self.var_2E10[var_0A].var_A265["health"] - param_00; } } if(self.var_2E10[var_0A].var_A265["health"] > 0) { return; } if(isdefined(param_07)) { param_07.var_A265["fxcost"] = func_4283(var_0A,self.var_2E10[var_0A].var_A265["currentState"]); func_091D(self,param_07,param_00); if(!isdefined(self.var_A6E7)) { self.var_A6E7 = 1; } else { self.var_A6E7++; } self waittill("queue_processed",var_18); self.var_A6E7--; if(self.var_A6E7 == 0) { self.var_A6E7 = undefined; } if(!var_18) { self.var_2E10[var_0A].var_A265["health"] = var_15; return; } } param_00 = int(abs(self.var_2E10[var_0A].var_A265["health"])); if(param_00 < 0) { return; } self.var_2E10[var_0A].var_A265["currentState"]++; var_09 = self.var_2E10[var_0A].var_A265["currentState"]; var_19 = var_09 - 1; var_1A = undefined; if(isdefined(level.var_75[self.var_2E25].var_6E9F[var_0A][var_19])) { var_1A = level.var_75[self.var_2E25].var_6E9F[var_0A][var_19].var_A265; } var_1B = undefined; if(isdefined(level.var_75[self.var_2E25].var_6E9F[var_0A][var_09])) { var_1B = level.var_75[self.var_2E25].var_6E9F[var_0A][var_09].var_A265; } if(!isdefined(level.var_75[self.var_2E25].var_6E9F[var_0A][var_19])) { return; } if(isdefined(level.var_75[self.var_2E25].var_6E9F[var_0A][var_19].var_A265["explode"])) { self.var_3949 = 1; } if(isdefined(self.var_5EFB) && isdefined(self.var_5EFB[common_scripts\utility::func_9AAD(var_0A)])) { for(var_10 = 0;var_10 < self.var_5EFB[common_scripts\utility::func_9AAD(var_0A)].size;var_10++) { self notify(self.var_5EFB[common_scripts\utility::func_9AAD(var_0A)][var_10]); if(common_scripts\utility::func_57D7() && self.var_6297) { self.var_6296 notify(self.var_5EFB[common_scripts\utility::func_9AAD(var_0A)][var_10]); } } self.var_5EFB[common_scripts\utility::func_9AAD(var_0A)] = undefined; } if(isdefined(var_1A["break_nearby_lights"])) { func_2E01(var_1A["break_nearby_lights"]); } if(isdefined(level.var_75[self.var_2E25].var_6E9F[var_0A][var_09])) { if(var_0A == 0) { var_1C = var_1B["modelName"]; if(isdefined(var_1C) && var_1C != self.var_106) { self setmodel(var_1C); if(common_scripts\utility::func_57D7() && self.var_6297) { self.var_6296 setmodel(var_1C); } func_2E19(var_1B); } } else { func_4D03(param_02); if(common_scripts\utility::func_57D7() && self.var_6297) { self.var_6296 func_4D03(param_02); } param_02 = var_1B["tagName"]; if(isdefined(param_02)) { func_8BED(param_02); if(common_scripts\utility::func_57D7() && self.var_6297) { self.var_6296 func_8BED(param_02); } } } } var_1D = func_4168(); if(isdefined(self.var_3949)) { func_23A2(var_1D); } var_1E = func_2DE4(var_1A,var_1D,param_06,var_0A); var_1E = func_2E00(var_1A,var_1D,param_06,var_0A,var_1E); self notify("FX_State_Change_Kill" + var_0A); var_1E = func_2E16(var_1A,var_1D,param_06,var_1E); if(isdefined(level.var_75[self.var_2E25].var_6E9F[var_0A][var_19].var_A265["loopfx"])) { var_1F = level.var_75[self.var_2E25].var_6E9F[var_0A][var_19].var_A265["loopfx_filename"].size; if(var_1F > 0) { self notify("FX_State_Change" + var_0A); } for(var_20 = 0;var_20 < var_1F;var_20++) { var_21 = level.var_75[self.var_2E25].var_6E9F[var_0A][var_19].var_A265["loopfx"][var_20]; var_22 = level.var_75[self.var_2E25].var_6E9F[var_0A][var_19].var_A265["loopfx_tag"][var_20]; var_23 = level.var_75[self.var_2E25].var_6E9F[var_0A][var_19].var_A265["loopfx_rate"][var_20]; thread func_5EEF(var_21,var_22,var_23,var_0A); } } if(isdefined(level.var_75[self.var_2E25].var_6E9F[var_0A][var_19].var_A265["loopsound"])) { for(var_10 = 0;var_10 < level.var_75[self.var_2E25].var_6E9F[var_0A][var_19].var_A265["loopsound"].size;var_10++) { var_24 = func_583B("loopsoundCause",var_1A,var_10,param_06); if(var_24) { var_25 = level.var_75[self.var_2E25].var_6E9F[var_0A][var_19].var_A265["loopsound"][var_10]; var_26 = level.var_75[self.var_2E25].var_6E9F[var_0A][var_19].var_A265["tagName"]; thread func_7152(var_25,var_26); if(!isdefined(self.var_5EFB)) { self.var_5EFB = []; } if(!isdefined(self.var_5EFB[common_scripts\utility::func_9AAD(var_0A)])) { self.var_5EFB[common_scripts\utility::func_9AAD(var_0A)] = []; } var_27 = self.var_5EFB[common_scripts\utility::func_9AAD(var_0A)].size; self.var_5EFB[common_scripts\utility::func_9AAD(var_0A)][var_27] = "stop sound" + var_25; } } } if(isdefined(level.var_75[self.var_2E25].var_6E9F[var_0A][var_19].var_A265["triggerCarAlarm"])) { thread func_3097(); } if(isdefined(level.var_75[self.var_2E25].var_6E9F[var_0A][var_19].var_A265["break_nearby_lights"])) { thread func_1BA6(); } if(isdefined(level.var_75[self.var_2E25].var_6E9F[var_0A][var_19].var_A265["healthdrain_amount"])) { self notify("Health_Drain_State_Change" + var_0A); var_28 = level.var_75[self.var_2E25].var_6E9F[var_0A][var_19].var_A265["healthdrain_amount"]; var_29 = level.var_75[self.var_2E25].var_6E9F[var_0A][var_19].var_A265["healthdrain_interval"]; var_2A = level.var_75[self.var_2E25].var_6E9F[var_0A][var_19].var_A265["modelName"]; var_2B = level.var_75[self.var_2E25].var_6E9F[var_0A][var_19].var_A265["tagName"]; var_2C = level.var_75[self.var_2E25].var_6E9F[var_0A][var_19].var_A265["badplace_radius"]; var_2D = level.var_75[self.var_2E25].var_6E9F[var_0A][var_19].var_A265["badplace_team"]; if(var_28 > 0) { thread func_4C08(var_28,var_29,var_0A,var_2A,var_2B,var_2C,var_2D); } } var_2E = level.var_75[self.var_2E25].var_6E9F[var_0A][var_19].var_A265["dot"]; if(isdefined(var_2E)) { foreach(var_30 in var_2E) { var_31 = var_30.var_D4; if(var_30.var_1B9 == "predefined" && isdefined(var_31)) { var_32 = []; foreach(var_34 in level.var_75[self.var_2E25].var_2DF3[var_31]) { var_35 = var_34["classname"]; var_36 = undefined; switch(var_35) { case "trigger_radius": var_37 = var_34["origin"]; var_38 = var_34["spawnflags"]; var_39 = var_34["radius"]; var_3A = var_34["height"]; var_36 = func_27E3(self.var_116 + var_37,var_38,var_39,var_3A); var_36.var_99C1 = var_30.var_99C1; var_32[var_32.size] = var_36; break; default: break; } } level thread func_92C7(var_32); continue; } if(isdefined(var_30)) { if(isdefined(var_30.var_95A6)) { var_30 func_866B(self gettagorigin(var_30.var_95A6)); } level thread func_92C7([var_30]); } } var_2E = undefined; } if(isdefined(level.var_75[self.var_2E25].var_6E9F[var_0A][var_19].var_A265["explode"])) { var_0D = 1; var_3D = level.var_75[self.var_2E25].var_6E9F[var_0A][var_19].var_A265["explode_force_min"]; var_3E = level.var_75[self.var_2E25].var_6E9F[var_0A][var_19].var_A265["explode_force_max"]; var_3F = level.var_75[self.var_2E25].var_6E9F[var_0A][var_19].var_A265["explode_angularImpulse_min"]; var_40 = level.var_75[self.var_2E25].var_6E9F[var_0A][var_19].var_A265["explode_angularImpulse_max"]; var_41 = level.var_75[self.var_2E25].var_6E9F[var_0A][var_19].var_A265["explode_range"]; var_42 = level.var_75[self.var_2E25].var_6E9F[var_0A][var_19].var_A265["explode_mindamage"]; var_43 = level.var_75[self.var_2E25].var_6E9F[var_0A][var_19].var_A265["explode_maxdamage"]; var_44 = level.var_75[self.var_2E25].var_6E9F[var_0A][var_19].var_A265["continueDamage"]; var_45 = level.var_75[self.var_2E25].var_6E9F[var_0A][var_19].var_A265["originOffset"]; var_46 = level.var_75[self.var_2E25].var_6E9F[var_0A][var_19].var_A265["earthQuakeScale"]; var_47 = level.var_75[self.var_2E25].var_6E9F[var_0A][var_19].var_A265["earthQuakeRadius"]; var_48 = level.var_75[self.var_2E25].var_6E9F[var_0A][var_19].var_A265["originOffset3d"]; var_49 = level.var_75[self.var_2E25].var_6E9F[var_0A][var_19].var_A265["delaytime"]; if(isdefined(param_05) && param_05 != self) { self.var_1180 = param_05; if(self.var_3B == "script_vehicle") { self.var_29B2 = param_06; } } thread func_3923(var_0A,var_3D,var_3E,var_41,var_42,var_43,var_44,var_45,var_46,var_47,param_05,var_48,var_49,var_3F,var_40); } var_4A = undefined; if(isdefined(level.var_75[self.var_2E25].var_6E9F[var_0A][var_19].var_A265["physics"])) { for(var_10 = 0;var_10 < level.var_75[self.var_2E25].var_6E9F[var_0A][var_19].var_A265["physics"].size;var_10++) { var_4A = undefined; var_4B = level.var_75[self.var_2E25].var_6E9F[var_0A][var_19].var_A265["physics_tagName"][var_10]; var_4C = level.var_75[self.var_2E25].var_6E9F[var_0A][var_19].var_A265["physics_velocity"][var_10]; var_4D = undefined; if(isdefined(var_4C)) { var_4E = undefined; if(isdefined(var_4B)) { var_4E = self gettagangles(var_4B); } else if(isdefined(param_02)) { var_4E = self gettagangles(param_02); } var_4A = undefined; if(isdefined(var_4B)) { var_4A = self gettagorigin(var_4B); } else if(isdefined(param_02)) { var_4A = self gettagorigin(param_02); } var_4F = var_4C[0] - 5 + randomfloat(10); var_50 = var_4C[1] - 5 + randomfloat(10); var_51 = var_4C[2] - 5 + randomfloat(10); var_52 = anglestoforward(var_4E) * var_4F * randomfloatrange(80,110); var_53 = anglestoright(var_4E) * var_50 * randomfloatrange(80,110); var_54 = anglestoup(var_4E) * var_51 * randomfloatrange(80,110); var_4D = var_52 + var_53 + var_54; } else { var_4D = param_03; var_55 = (0,0,0); if(isdefined(param_05)) { var_55 = param_05.var_116; var_4D = vectornormalize(param_03 - var_55); var_4D = var_4D * 200; } } if(isdefined(var_4B)) { var_56 = undefined; for(var_57 = 0;var_57 < level.var_75[self.var_2E25].var_6E9F.size;var_57++) { if(!isdefined(level.var_75[self.var_2E25].var_6E9F[var_57][0].var_A265["tagName"])) { continue; } if(level.var_75[self.var_2E25].var_6E9F[var_57][0].var_A265["tagName"] != var_4B) { continue; } var_56 = var_57; break; } if(isdefined(var_4A)) { thread func_6FA3(var_56,0,var_4A,var_4D); } else { thread func_6FA3(var_56,0,param_03,var_4D); } continue; } if(isdefined(var_4A)) { thread func_6FA3(var_0A,var_19,var_4A,var_4D); } else { thread func_6FA3(var_0A,var_19,param_03,var_4D); } return; } } if(isdefined(level.var_75[self.var_2E25].var_6E9F[var_0A][var_19].var_A265) && isdefined(level.var_75[self.var_2E25].var_6E9F[var_0A][var_19].var_A265["functionNotify"])) { self notify(level.var_75[self.var_2E25].var_6E9F[var_0A][var_19].var_A265["functionNotify"]); } if(isdefined(level.var_75[self.var_2E25].var_6E9F[var_0A][var_19].var_A265["function"])) { self thread [[ level.var_75[self.var_2E25].var_6E9F[var_0A][var_19].var_A265["function"] ]](); } var_0C = 1; } } //Function Number: 50 func_2E19(param_00) { var_01 = param_00["splashRotation"]; var_02 = param_00["rotateTo"]; if(!isdefined(var_02)) { return; } if(!isdefined(var_01)) { return; } if(!var_01) { return; } self.var_1D = (self.var_1D[0],var_02[1],self.var_1D[2]); } //Function Number: 51 func_29A7(param_00) { var_01 = strtok(param_00," "); var_02 = strtok("splash melee bullet splash impact unknown"," "); var_03 = ""; foreach(var_05 in var_01) { var_02 = common_scripts\utility::func_F93(var_02,var_05); } foreach(var_08 in var_02) { var_03 = var_03 + var_08 + " "; } return var_03; } //Function Number: 52 func_2E17(param_00,param_01,param_02,param_03,param_04) { if(param_00 <= 0) { return; } if(isdefined(self.var_3928)) { return; } if(!isdefined(level.var_75[self.var_2E25].var_6E9F)) { return; } var_05 = func_440C(param_02); if(var_05.size <= 0) { return; } var_05 = func_8666(var_05,param_01); var_06 = func_456B(var_05); foreach(var_08 in var_05) { var_09 = var_08.var_A265["distance"] * 1.4; var_0A = param_00 - var_09 - var_06; if(var_0A <= 0) { continue; } if(isdefined(self.var_3928)) { continue; } thread func_2E1F(var_0A,var_08.var_A265["modelName"],var_08.var_A265["tagName"],param_01,param_02,param_03,param_04,var_08); } } //Function Number: 53 func_440C(param_00) { var_01 = []; if(!isdefined(level.var_75[self.var_2E25].var_6E9F)) { return var_01; } for(var_02 = 0;var_02 < level.var_75[self.var_2E25].var_6E9F.size;var_02++) { var_03 = var_02; var_04 = self.var_2E10[var_03].var_A265["currentState"]; for(var_05 = 0;var_05 < level.var_75[self.var_2E25].var_6E9F[var_03].size;var_05++) { var_06 = level.var_75[self.var_2E25].var_6E9F[var_03][var_05].var_A265["splashRotation"]; if(isdefined(var_06) && var_06) { var_07 = vectortoangles(param_00); var_08 = var_07[1] - 90; level.var_75[self.var_2E25].var_6E9F[var_03][var_05].var_A265["rotateTo"] = (0,var_08,0); } } if(!isdefined(level.var_75[self.var_2E25].var_6E9F[var_03][var_04])) { continue; } var_09 = level.var_75[self.var_2E25].var_6E9F[var_03][var_04].var_A265["tagName"]; if(!isdefined(var_09)) { var_09 = ""; } if(var_09 == "") { continue; } var_0A = level.var_75[self.var_2E25].var_6E9F[var_03][var_04].var_A265["modelName"]; if(!isdefined(var_0A)) { var_0A = ""; } var_0B = var_01.size; var_01[var_0B] = spawnstruct(); var_01[var_0B].var_A265["modelName"] = var_0A; var_01[var_0B].var_A265["tagName"] = var_09; } return var_01; } //Function Number: 54 func_8666(param_00,param_01) { for(var_02 = 0;var_02 < param_00.size;var_02++) { var_03 = distance(param_01,self gettagorigin(param_00[var_02].var_A265["tagName"])); param_00[var_02].var_A265["distance"] = var_03; } return param_00; } //Function Number: 55 func_456B(param_00) { var_01 = undefined; foreach(var_03 in param_00) { var_04 = var_03.var_A265["distance"]; if(!isdefined(var_01)) { var_01 = var_04; } if(var_04 < var_01) { var_01 = var_04; } } return var_01; } //Function Number: 56 func_583B(param_00,param_01,param_02,param_03,param_04) { if(isdefined(param_04)) { var_05 = param_01[param_00][param_04][param_02]; } else { var_05 = param_02[param_01][param_03]; } if(!isdefined(var_05)) { return 1; } if(var_05 == param_03) { return 1; } return 0; } //Function Number: 57 func_567E(param_00,param_01,param_02) { if(isdefined(self.var_3E1B)) { return 1; } if(isdefined(level.var_75[self.var_2E25].var_6E9F[param_00][param_01].var_A265["explode"])) { if(isdefined(self.var_323D)) { return 0; } } if(!isdefined(param_02)) { return 1; } if(param_02 == self) { return 1; } var_03 = level.var_75[self.var_2E25].var_6E9F[param_00][param_01].var_A265["validAttackers"]; if(!isdefined(var_03)) { return 1; } if(var_03 == "no_player") { if(!isplayer(param_02)) { return 1; } if(!isdefined(param_02.var_29CF)) { return 1; } if(param_02.var_29CF == 0) { return 1; } } else if(var_03 == "player_only") { if(isplayer(param_02)) { return 1; } if(isdefined(param_02.var_29CF) && param_02.var_29CF) { return 1; } } else if(var_03 == "no_ai" && isdefined(level.var_5665)) { if(![[ level.var_5665 ]](param_02)) { return 1; } } else if(var_03 == "ai_only" && isdefined(level.var_5665)) { if([[ level.var_5665 ]](param_02)) { return 1; } } else { } return 0; } //Function Number: 58 func_5825(param_00,param_01,param_02) { if(!isdefined(param_02)) { return 1; } var_03 = level.var_75[self.var_2E25].var_6E9F[param_00][param_01].var_A265["godModeAllowed"]; if(var_03 && (isdefined(self.var_480F) && self.var_480F) || isdefined(self.var_812F) && self.var_812F && param_02 == "bullet") { return 0; } var_04 = level.var_75[self.var_2E25].var_6E9F[param_00][param_01].var_A265["validDamageCause"]; if(!isdefined(var_04)) { return 1; } if(var_04 == "splash" && param_02 != "splash") { return 0; } if(var_04 == "no_splash" && param_02 == "splash") { return 0; } if((var_04 == "no_melee" && param_02 == "melee") || param_02 == "impact") { return 0; } if(var_04 == "bullet" && param_02 != "bullet") { return 0; } return 1; } //Function Number: 59 func_4487(param_00) { if(!isdefined(param_00)) { return "unknown"; } param_00 = tolower(param_00); switch(param_00) { case "mod_crush": case "mod_melee": case "melee": return "melee"; case "mod_rifle_bullet": case "mod_pistol_bullet": case "bullet": return "bullet"; case "mod_explosive": case "mod_projectile_splash": case "mod_projectile": case "mod_grenade_splash": case "mod_grenade": case "splash": return "splash"; case "mod_impact": return "impact"; case "mod_energy": return "energy"; case "unknown": return "unknown"; default: return "unknown"; } } //Function Number: 60 func_29A6(param_00,param_01,param_02) { self notify("stop_damage_mirror"); self endon("stop_damage_mirror"); param_00 endon("stop_taking_damage"); self setcandamage(1); for(;;) { self waittill("damage",var_03,var_04,var_05,var_06,var_07); param_00 notify("damage",var_03,var_04,var_05,var_06,var_07,param_01,param_02); var_03 = undefined; var_04 = undefined; var_05 = undefined; var_06 = undefined; var_07 = undefined; } } //Function Number: 61 func_0914() { self.var_724D = 0; self.var_6727 = 0; self.var_1FCF = 1; } //Function Number: 62 func_5EEF(param_00,param_01,param_02,param_03) { self endon("FX_State_Change" + param_03); self endon("delete_destructible"); level endon("putout_fires"); while(isdefined(self)) { var_04 = func_4168(); playfxontag(param_00,var_04,param_01); wait(param_02); } } //Function Number: 63 func_4C08(param_00,param_01,param_02,param_03,param_04,param_05,param_06) { self endon("Health_Drain_State_Change" + param_02); level endon("putout_fires"); self endon("destroyed"); if(isdefined(param_05) && isdefined(level.var_2DE6)) { param_05 = param_05 * level.var_2DE6; } if(isdefined(param_00) && isdefined(level.var_2E06)) { param_00 = param_00 * level.var_2E06; } wait(param_01); self.var_4C18 = 1; var_07 = undefined; if(isdefined(level.var_2F30) && level.var_2F30) { param_05 = undefined; } if(isdefined(param_05) && isdefined(level.var_14F6)) { var_07 = "" + gettime(); if(!isdefined(self.var_2F71)) { if(isdefined(self.var_8276)) { param_05 = self.var_8276; } if(common_scripts\utility::func_57D7() && isdefined(param_06)) { if(param_06 == "both") { [[ level.var_14F6 ]](var_07,0,self.var_116,param_05,128,"allies","bad_guys"); } else { [[ level.var_14F6 ]](var_07,0,self.var_116,param_05,128,param_06); } thread func_14F8(var_07); } else { [[ level.var_14F6 ]](var_07,0,self.var_116,param_05,128); thread func_14F8(var_07); } } } while(isdefined(self) && self.var_2E10[param_02].var_A265["health"] > 0) { self notify("damage",param_00,self,(0,0,0),(0,0,0),"MOD_UNKNOWN",param_03,param_04); wait(param_01); } self notify("remove_badplace"); } //Function Number: 64 func_14F8(param_00) { common_scripts\utility::knock_off_battery("destroyed","remove_badplace"); [[ level.var_14F7 ]](param_00); } //Function Number: 65 func_6FA3(param_00,param_01,param_02,param_03) { var_04 = func_6FA6(param_00,param_01); var_04 method_82C5(param_02,param_03); } //Function Number: 66 func_6FA4(param_00,param_01,param_02,param_03) { var_04 = func_6FA6(param_00,param_01); var_04 method_83C9(param_02,param_03); } //Function Number: 67 func_6FA6(param_00,param_01) { var_02 = level.var_75[self.var_2E25].var_6E9F[param_00][param_01].var_A265["modelName"]; var_03 = level.var_75[self.var_2E25].var_6E9F[param_00][param_01].var_A265["tagName"]; func_4D03(var_03); if(level.var_2E29.size >= level.var_2E2A) { func_6FA7(level.var_2E29[0]); } var_04 = spawn("script_model",self gettagorigin(var_03)); var_04.var_1D = self gettagangles(var_03); var_04 setmodel(var_02); level.var_2E29[level.var_2E29.size] = var_04; return var_04; } //Function Number: 68 func_6FA7(param_00) { var_01 = []; for(var_02 = 0;var_02 < level.var_2E29.size;var_02++) { if(level.var_2E29[var_02] == param_00) { continue; } var_01[var_01.size] = level.var_2E29[var_02]; } level.var_2E29 = var_01; if(isdefined(param_00)) { param_00 delete(); } } //Function Number: 69 func_3923(param_00,param_01,param_02,param_03,param_04,param_05,param_06,param_07,param_08,param_09,param_0A,param_0B,param_0C,param_0D,param_0E) { if(isdefined(param_03) && isdefined(level.var_2DF5)) { param_03 = param_03 * level.var_2DF5; } if(!isdefined(param_07)) { param_07 = 80; } if(!isdefined(param_0B)) { param_0B = (0,0,0); } if(!isdefined(param_06) || isdefined(param_06) && !param_06) { if(isdefined(self.var_3928)) { return; } self.var_3928 = 1; } if(!isdefined(param_0C)) { param_0C = 0; } self notify("exploded",param_0A); level notify("destructible_exploded",self,param_0A); if(self.var_3B == "script_vehicle") { self notify("death",param_0A,self.var_29B2); } if(common_scripts\utility::func_57D7()) { thread func_2FC6(); } if(!level.var_3A53) { wait 0.05; } if(!isdefined(self)) { return; } var_0F = self.var_2E10[param_00].var_A265["currentState"]; var_10 = undefined; if(isdefined(level.var_75[self.var_2E25].var_6E9F[param_00][var_0F])) { var_10 = level.var_75[self.var_2E25].var_6E9F[param_00][var_0F].var_A265["tagName"]; } if(isdefined(var_10)) { var_11 = self gettagorigin(var_10); } else { var_11 = self.var_116; } self notify("damage",param_05,self,(0,0,0),var_11,"MOD_EXPLOSIVE","",""); self notify("stop_car_alarm"); waittillframeend; if(isdefined(level.var_75[self.var_2E25].var_6E9F)) { for(var_12 = level.var_75[self.var_2E25].var_6E9F.size - 1;var_12 >= 0;var_12--) { if(var_12 == param_00) { continue; } var_13 = self.var_2E10[var_12].var_A265["currentState"]; if(var_13 >= level.var_75[self.var_2E25].var_6E9F[var_12].size) { var_13 = level.var_75[self.var_2E25].var_6E9F[var_12].size - 1; } var_14 = level.var_75[self.var_2E25].var_6E9F[var_12][var_13].var_A265["modelName"]; var_10 = level.var_75[self.var_2E25].var_6E9F[var_12][var_13].var_A265["tagName"]; if(!isdefined(var_14)) { continue; } if(!isdefined(var_10)) { continue; } var_15 = 0; if(isdefined(self.var_2E10[var_12].var_A265["health"])) { var_15 = self.var_2E10[var_12].var_A265["health"]; } var_16 = 0; if(isdefined(level.var_75[self.var_2E25].var_6E9F[var_12][var_13].var_A265["health"])) { var_16 = level.var_75[self.var_2E25].var_6E9F[var_12][var_13].var_A265["health"]; } if(var_16 > 0 && var_15 <= 0) { continue; } if(isdefined(level.var_75[self.var_2E25].var_6E9F[var_12][0].var_A265["physicsOnExplosion"])) { if(level.var_75[self.var_2E25].var_6E9F[var_12][0].var_A265["physicsOnExplosion"] > 0) { var_17 = level.var_75[self.var_2E25].var_6E9F[var_12][0].var_A265["physicsOnExplosion"]; var_18 = self gettagorigin(var_10); var_19 = vectornormalize(var_18 - var_11); var_19 = var_19 * randomfloatrange(param_01,param_02) * var_17; if(isdefined(param_0D) && isdefined(param_0E)) { var_1A = common_scripts\utility::func_7A61(param_0D,param_0E); thread func_6FA4(var_12,var_13,var_19,var_1A); } else { thread func_6FA3(var_12,var_13,var_18,var_19); } continue; } } } } var_1B = !isdefined(param_06) || isdefined(param_06) && !param_06; if(var_1B) { self notify("stop_taking_damage"); } if(!level.var_3A53) { wait 0.05; } if(!isdefined(self)) { return; } var_1C = var_11 + (0,0,param_07) + param_0B; var_1D = getsubstr(level.var_75[self.var_2E25].var_A265["type"],0,7) == "vehicle"; if(var_1D) { anim.var_5B7D = gettime(); anim.var_5B7A = var_1C; anim.var_5B7B = var_11; anim.var_5B7C = param_03; } level thread func_846F(1); if(param_0C > 0) { wait(param_0C); } if(isdefined(level.var_2E12)) { thread [[ level.var_2E12 ]](); } if(common_scripts\utility::func_57D7()) { if(level.var_3FD4 == 0 && !func_7381()) { self entityradiusdamage(var_1C,param_03,param_05,param_04,self,"MOD_RIFLE_BULLET"); } else { self entityradiusdamage(var_1C,param_03,param_05,param_04,self); } if(isdefined(self.var_29D4) && var_1D) { self.var_29D4 notify("destroyed_car"); level notify("player_destroyed_car",self.var_29D4,var_1C); } } else { var_1E = "destructible_toy"; if(var_1D) { var_1E = "destructible_car"; } if(!isdefined(self.var_29D4)) { self entityradiusdamage(var_1C,param_03,param_05,param_04,self,"MOD_EXPLOSIVE",var_1E); } else { self entityradiusdamage(var_1C,param_03,param_05,param_04,self.var_29D4,"MOD_EXPLOSIVE",var_1E); if(var_1D) { self.var_29D4 notify("destroyed_car"); level notify("player_destroyed_car",self.var_29D4,var_1C); } } } if(isdefined(param_08) && isdefined(param_09)) { earthquake(param_08,2,var_1C,param_09); } level thread func_846F(0,0.05); var_1F = 0.01; var_20 = param_03 * var_1F; param_03 = param_03 * 0.99; physicsexplosionsphere(var_11,param_03,0,var_20); if(var_1B) { self setcandamage(0); thread func_2398(); } self notify("destroyed"); } //Function Number: 70 func_2398() { wait 0.05; while(isdefined(self) && isdefined(self.var_A6E7)) { self waittill("queue_processed"); wait 0.05; } if(!isdefined(self)) { return; } self.var_ED4 = undefined; self.var_1180 = undefined; self.var_1FCF = undefined; self.var_1FD9 = undefined; self.var_29D4 = undefined; self.var_2E10 = undefined; self.var_75 = undefined; self.var_2E25 = undefined; self.var_4C18 = undefined; self.var_6727 = undefined; self.var_724D = undefined; if(!isdefined(level.var_2DEC)) { return; } self.var_8249 = undefined; self.var_3949 = undefined; self.var_5EFB = undefined; self.var_1FC7 = undefined; } //Function Number: 71 func_846F(param_00,param_01) { level notify("set_disable_friendlyfire_value_delayed"); level endon("set_disable_friendlyfire_value_delayed"); if(isdefined(param_01)) { wait(param_01); } level.var_3ECF = param_00; } //Function Number: 72 func_258B() { var_00 = func_4391(); if(!isdefined(var_00)) { return; } var_00 [[ level.var_2587 ]](); var_00.var_116 = var_00.var_116 - (0,0,10000); } //Function Number: 73 func_2FC6() { var_00 = func_4391(); if(!isdefined(var_00)) { return; } var_00.var_116 = var_00.var_116 + (0,0,10000); var_00 [[ level.var_2FC3 ]](); var_00.var_116 = var_00.var_116 - (0,0,10000); } //Function Number: 74 func_4391() { if(!isdefined(self.var_1A2)) { return undefined; } var_00 = getentarray(self.var_1A2,"targetname"); foreach(var_02 in var_00) { if(isspawner(var_02)) { continue; } if(isdefined(var_02.var_8161)) { continue; } if(var_02.var_3B == "light") { continue; } if(!var_02.var_187 & 1) { continue; } return var_02; } } //Function Number: 75 func_4D03(param_00) { self hidepart(param_00); } //Function Number: 76 func_8BED(param_00) { self showpart(param_00); } //Function Number: 77 func_2F37() { self.var_323D = 1; } //Function Number: 78 func_3DED() { self.var_323D = undefined; self.var_3E1B = 1; self notify("damage",100000,self,self.var_116,self.var_116,"MOD_EXPLOSIVE","",""); } //Function Number: 79 func_4168() { if(!common_scripts\utility::func_57D7()) { return self; } if(self.var_6297) { var_00 = self.var_6296; } else { var_00 = self; } return var_00; } //Function Number: 80 func_7152(param_00,param_01) { var_02 = func_4168(); var_03 = spawn("script_origin",(0,0,0)); if(isdefined(param_01)) { var_03.var_116 = var_02 gettagorigin(param_01); } else { var_03.var_116 = var_02.var_116; } var_03 method_861D(param_00); var_02 thread func_3E01(param_00); var_02 waittill("stop sound" + param_00); if(!isdefined(var_03)) { return; } var_03 stoploopsound(param_00); var_03 delete(); } //Function Number: 81 func_3E01(param_00) { self endon("stop sound" + param_00); level waittill("putout_fires"); self notify("stop sound" + param_00); } //Function Number: 82 func_6807(param_00,param_01,param_02,param_03,param_04,param_05,param_06) { waittillframeend; if(isdefined(self.var_3928)) { return; } if(common_scripts\utility::func_57D7()) { param_00 = param_00 / 0.5; } else { param_00 = param_00 / 1; } self notify("damage",param_00,param_01,param_02,param_03,param_04,param_05,param_06); } //Function Number: 83 func_71A7(param_00,param_01) { if(isdefined(param_01)) { var_02 = spawn("script_origin",self gettagorigin(param_01)); var_02 method_805C(); var_02 linkto(self,param_01,(0,0,0),(0,0,0)); } else { var_02 = spawn("script_origin",(0,0,0)); var_02 method_805C(); var_02.var_116 = self.var_116; var_02.var_1D = self.var_1D; var_02 linkto(self); } var_02 method_8617(param_00); wait(5); if(isdefined(var_02)) { var_02 delete(); } } //Function Number: 84 func_3097() { if(isdefined(self.var_1FD9)) { return; } self.var_1FD9 = 1; if(!func_8B54()) { return; } self.var_1FC7 = spawn("script_model",self.var_116); self.var_1FC7 method_805C(); self.var_1FC7 method_861D("car_alarm"); level.var_2928++; thread func_1FC8(); self waittill("stop_car_alarm"); level.var_5B79 = gettime(); level.var_2928--; self.var_1FC7 stoploopsound("car_alarm"); self.var_1FC7 delete(); } //Function Number: 85 func_1FC8() { self endon("stop_car_alarm"); wait(25); if(!isdefined(self)) { return; } thread func_71A7("car_alarm_off"); self notify("stop_car_alarm"); } //Function Number: 86 func_8B54() { if(level.var_2928 >= 2) { return 0; } var_00 = undefined; if(!isdefined(level.var_5B79)) { if(common_scripts\utility::func_24A6()) { return 1; } var_00 = gettime() - level.var_254D; } else { var_00 = gettime() - level.var_5B79; } if(level.var_2928 == 0 && var_00 >= 120) { return 1; } if(randomint(100) <= 33) { return 1; } return 0; } //Function Number: 87 func_30DF(param_00,param_01,param_02,param_03) { var_04 = []; if(common_scripts\utility::func_57D7()) { self attach(param_01,param_00,0); if(isdefined(param_02) && param_02 != "") { self attach(param_02,param_00,0); } } else { var_04[0] = spawn("script_model",self gettagorigin(param_00)); var_04[0].var_1D = self gettagangles(param_00); var_04[0] setmodel(param_01); var_04[0] linkto(self,param_00); if(isdefined(param_02) && param_02 != "") { var_04[1] = spawn("script_model",self gettagorigin(param_00)); var_04[1].var_1D = self gettagangles(param_00); var_04[1] setmodel(param_02); var_04[1] linkto(self,param_00); } } if(isdefined(param_03)) { var_05 = self gettagorigin(param_00); var_06 = func_410A(var_05,param_03); if(isdefined(var_06)) { var_06 delete(); } } self waittill("exploded"); if(common_scripts\utility::func_57D7()) { self method_802E(param_01,param_00); self attach(param_01 + "_destroy",param_00,0); if(isdefined(param_02) && param_02 != "") { self method_802E(param_02,param_00); self attach(param_02 + "_destroy",param_00,0); return; } return; } var_04[0] setmodel(param_01 + "_destroy"); if(isdefined(param_02) && param_02 != "") { var_04[1] setmodel(param_02 + "_destroy"); } } //Function Number: 88 func_410A(param_00,param_01) { var_02 = undefined; var_03 = undefined; var_04 = getentarray(param_01,"targetname"); foreach(var_06 in var_04) { var_07 = distancesquared(param_00,var_06.var_116); if(!isdefined(var_02) || var_07 < var_02) { var_02 = var_07; var_03 = var_06; } } return var_03; } //Function Number: 89 func_7381() { var_00 = undefined; if(!isdefined(self.var_1A2)) { return 0; } var_01 = getentarray(self.var_1A2,"targetname"); foreach(var_03 in var_01) { if(isdefined(var_03.var_8161) && var_03.var_8161 == "post") { var_00 = var_03; break; } } if(!isdefined(var_00)) { return 0; } var_05 = func_42AD(var_00); if(isdefined(var_05)) { return 1; } return 0; } //Function Number: 90 func_42AD(param_00) { foreach(var_02 in level.var_744A) { if(!isalive(var_02)) { continue; } if(param_00 istouching(var_02)) { return var_02; } } return undefined; } //Function Number: 91 func_560F() { return getdvar("1996") == "1"; } //Function Number: 92 func_2E05() { var_00 = getentarray(self.var_1A2,"targetname"); var_01 = []; var_01["pre"] = ::func_24E0; var_01["post"] = ::func_24DF; foreach(var_03 in var_00) { if(!isdefined(var_03.var_8161)) { continue; } self thread [[ var_01[var_03.var_8161] ]](var_03); } } //Function Number: 93 func_24E0(param_00) { waittillframeend; if(common_scripts\utility::func_57D7() && param_00.var_187 & 1) { param_00 [[ level.var_2FC3 ]](); } self waittill("exploded"); if(common_scripts\utility::func_57D7() && param_00.var_187 & 1) { param_00 [[ level.var_2587 ]](); } param_00 delete(); } //Function Number: 94 func_24DF(param_00) { param_00 notsolid(); if(common_scripts\utility::func_57D7() && param_00.var_187 & 1) { param_00 [[ level.var_2587 ]](); } self waittill("exploded"); waittillframeend; if(common_scripts\utility::func_57D7()) { if(param_00.var_187 & 1) { param_00 [[ level.var_2FC3 ]](); } if(func_560F()) { var_01 = func_42AD(param_00); if(isdefined(var_01)) { self thread [[ level.var_3F05 ]](var_01); } } else { } } param_00 solid(); } //Function Number: 95 func_2AFD(param_00) { } //Function Number: 96 func_2E01(param_00) { var_01 = getentarray("light_destructible","targetname"); if(common_scripts\utility::func_57D7()) { var_02 = getentarray("light_destructible","script_noteworthy"); var_01 = common_scripts\utility::func_F73(var_01,var_02); } if(!var_01.size) { return; } var_03 = param_00 * param_00; var_04 = undefined; foreach(var_06 in var_01) { var_07 = distancesquared(self.var_116,var_06.var_116); if(var_07 < var_03) { var_04 = var_06; var_03 = var_07; } } if(!isdefined(var_04)) { return; } self.var_1BAF = var_04; } //Function Number: 97 func_1BA6(param_00) { if(!isdefined(self.var_1BAF)) { return; } self.var_1BAF method_81DF(0); } //Function Number: 98 func_2B01(param_00,param_01,param_02,param_03) { var_04 = 16; var_05 = 360 / var_04; var_06 = []; for(var_07 = 0;var_07 < var_04;var_07++) { var_08 = var_05 * var_07; var_09 = cos(var_08) * param_01; var_0A = sin(var_08) * param_01; var_0B = param_00[0] + var_09; var_0C = param_00[1] + var_0A; var_0D = param_00[2]; var_06[var_06.size] = (var_0B,var_0C,var_0D); } thread func_2AC5(var_06,5,(1,0,0),param_00); var_06 = []; for(var_07 = 0;var_07 < var_04;var_07++) { var_08 = var_05 * var_07; var_09 = cos(var_08) * param_01; var_0A = sin(var_08) * param_01; var_0B = param_00[0]; var_0C = param_00[1] + var_09; var_0D = param_00[2] + var_0A; var_06[var_06.size] = (var_0B,var_0C,var_0D); } thread func_2AC5(var_06,5,(1,0,0),param_00); var_06 = []; for(var_07 = 0;var_07 < var_04;var_07++) { var_08 = var_05 * var_07; var_09 = cos(var_08) * param_01; var_0A = sin(var_08) * param_01; var_0B = param_00[0] + var_0A; var_0C = param_00[1]; var_0D = param_00[2] + var_09; var_06[var_06.size] = (var_0B,var_0C,var_0D); } thread func_2AC5(var_06,5,(1,0,0),param_00); } //Function Number: 99 func_2AC5(param_00,param_01,param_02,param_03) { for(var_04 = 0;var_04 < param_00.size;var_04++) { var_05 = param_00[var_04]; if(var_04 + 1 >= param_00.size) { var_06 = param_00[0]; } else { var_06 = param_00[var_04 + 1]; } thread func_2AF0(var_05,var_06,param_01,param_02); thread func_2AF0(param_03,var_05,param_01,param_02); } } //Function Number: 100 func_2AF0(param_00,param_01,param_02,param_03) { if(!isdefined(param_03)) { param_03 = (1,1,1); } for(var_04 = 0;var_04 < param_02 * 20;var_04++) { wait 0.05; } } //Function Number: 101 func_911E(param_00) { param_00 endon("death"); level waittill("new_destructible_spotlight"); param_00 delete(); } //Function Number: 102 func_9117(param_00,param_01,param_02,param_03,param_04) { level endon("new_destructible_spotlight"); thread func_911E(param_04); var_05 = param_00["spotlight_brightness"]; wait(randomfloatrange(2,5)); func_2E00(param_00,param_01,param_02,param_03); level.var_2E1A delete(); param_04 delete(); } //Function Number: 103 func_2E1B(param_00,param_01,param_02,param_03) { if(!common_scripts\utility::func_57D7()) { return; } if(!isdefined(self.var_1BAF)) { return; } param_01 common_scripts\utility::func_83BE("startignoringspotLight"); if(!isdefined(level.var_2E1A)) { level.var_2E1A = common_scripts\utility::func_8FFC(); var_04 = common_scripts\utility::func_44F5(param_00["spotlight_fx"]); playfxontag(var_04,level.var_2E1A,"tag_origin"); } level notify("new_destructible_spotlight"); level.var_2E1A unlink(); var_05 = common_scripts\utility::func_8FFC(); var_05 linkto(self,param_00["spotlight_tag"],(0,0,0),(0,0,0)); level.var_2E1A.var_116 = self.var_1BAF.var_116; level.var_2E1A.var_1D = self.var_1BAF.var_1D; level.var_2E1A thread func_9117(param_00,param_01,param_02,param_03,var_05); wait 0.05; if(isdefined(var_05)) { level.var_2E1A linkto(var_05); } } //Function Number: 104 func_5641(param_00,param_01,param_02,param_03) { var_04 = undefined; if(isdefined(param_01["fx_valid_damagetype"])) { var_04 = param_01["fx_valid_damagetype"][param_03][param_02]; } if(!isdefined(var_04)) { return 1; } return issubstr(var_04,param_00); } //Function Number: 105 func_2E16(param_00,param_01,param_02,param_03) { if(isdefined(self.var_3928)) { return undefined; } if(!isdefined(param_00["sound"])) { return undefined; } if(!isdefined(param_03)) { param_03 = 0; } if(!isdefined(param_00["sound"][param_03])) { return undefined; } for(var_04 = 0;var_04 < param_00["sound"][param_03].size;var_04++) { var_05 = func_583B("soundCause",param_00,var_04,param_02,param_03); if(!var_05) { continue; } var_06 = param_00["sound"][param_03][var_04]; var_07 = param_00["tagName"]; param_01 thread func_71A7(var_06,var_07); } return param_03; } //Function Number: 106 func_2DFC(param_00) { var_01 = level.var_75[self.var_2E25].var_6E9F[0].size - 1; self endon("FX_State_Change_Kill" + param_00); for(;;) { var_02 = -1; if(isdefined(self.var_2E10[0].var_A265["currentState"])) { var_02 = self.var_2E10[0].var_A265["currentState"]; } if(var_02 == var_01) { return 0; } wait 0.05; } } //Function Number: 107 func_2DFE(param_00,param_01,param_02,param_03,param_04,param_05) { waittillframeend; if(!isdefined(param_05)) { param_05 = 0; } var_06 = undefined; var_07 = undefined; if(isdefined(param_02)) { if(param_04) { playfxontag(param_01,param_00,param_02); wait 0.05; if(param_05 == 1 || param_05 == 2) { func_2DFC(param_03); if(param_05 == 1) { stopfxontag(param_01,param_00,param_02); return; } killfxontag(param_01,param_00,param_02); return; } return; } var_08 = param_00 gettagorigin(param_02); var_09 = (0,0,100); if(param_05 == 1 || param_05 == 2) { var_07 = spawnfx(param_01,var_08,var_09); var_06 = triggerfx(var_07,0.01); } else { var_06 = playfx(param_01,var_08,var_09); } wait 0.05; if(param_05 == 1 || param_05 == 2) { func_2DFC(param_03); if(param_05 == 1) { var_07 delete(); return; } if(param_05 == 2) { function_014E(var_07,1); wait 0.05; var_07 delete(); return; } return; } return; } var_08 = param_02.var_116; var_09 = (0,0,100); if(param_05 == 1 || param_05 == 2) { var_07 = spawnfx(param_01,var_08,var_09); var_06 = triggerfx(var_07,0.01); } else { var_06 = playfx(param_01,var_08,var_09); } wait 0.05; if(param_05 == 1 || param_05 == 2) { func_2DFC(param_03); if(param_05 == 1) { var_07 delete(); return; } if(param_05 == 2) { function_014E(var_07,1); wait 0.05; var_07 delete(); return; } return; } } //Function Number: 108 func_2DFF() { if(!isdefined(level.var_75[self.var_2E25].var_6E9F)) { return; } var_00 = func_4168(); for(var_01 = 0;var_01 < level.var_75[self.var_2E25].var_6E9F.size;var_01++) { for(var_02 = 0;var_02 < level.var_75[self.var_2E25].var_6E9F[var_01].size;var_02++) { var_03 = level.var_75[self.var_2E25].var_6E9F[var_01][var_02]; if(isdefined(var_03.var_A265["fx_filename"])) { for(var_04 = 0;var_04 < var_03.var_A265["fx_filename"].size;var_04++) { var_05 = var_03.var_A265["fx_filename"][var_04]; var_06 = var_03.var_A265["fx_tag"][var_04]; var_07 = var_03.var_A265["spawn_immediate"][var_04]; if(isdefined(var_05) && isdefined(var_07)) { for(var_08 = 0;var_08 < var_05.size;var_08++) { if(var_07[var_08] == 1) { var_09 = var_03.var_A265["state_change_kill"][var_04][var_08]; var_0A = level.var_75[self.var_2E25].var_6E9F[var_01][var_02].var_A265["fx"][var_04][var_08]; var_0B = var_06[var_08]; var_0C = var_05[var_08]; var_0D = level.var_75[self.var_2E25].var_6E9F[var_01][var_02].var_A265["fx_useTagAngles"][var_04][var_08]; thread func_2DFE(var_00,var_0A,var_0B,var_01,var_0D,var_09); } } } } } } } } //Function Number: 109 func_2E00(param_00,param_01,param_02,param_03,param_04) { if(!isdefined(param_00["fx"])) { return undefined; } if(!isdefined(param_04)) { param_04 = randomint(param_00["fx_filename"].size); } if(!isdefined(param_00["fx"][param_04])) { param_04 = randomint(param_00["fx_filename"].size); } var_05 = param_00["fx_filename"][param_04].size; for(var_06 = 0;var_06 < var_05;var_06++) { if(!func_5641(param_02,param_00,var_06,param_04)) { continue; } if(param_00["spawn_immediate"][param_04][var_06] == 1) { continue; } var_07 = param_00["fx"][param_04][var_06]; var_08 = param_00["state_change_kill"][param_04][var_06]; if(isdefined(param_00["fx_tag"][param_04][var_06])) { var_09 = param_00["fx_tag"][param_04][var_06]; self notify("FX_State_Change" + param_03); if(param_00["fx_useTagAngles"][param_04][var_06]) { thread func_2DFE(param_01,var_07,var_09,param_03,1,var_08); } else { thread func_2DFE(param_01,var_07,var_09,param_03,0,var_08); } continue; } thread func_2DFE(param_01,var_07,undefined,param_03,0,var_08); } return param_04; } //Function Number: 110 func_2DE4(param_00,param_01,param_02,param_03) { if(isdefined(self.var_3928)) { return undefined; } if(!isdefined(param_00["animation"])) { return undefined; } if(isdefined(self.var_66E6)) { return undefined; } if(isdefined(param_00["randomly_flip"]) && !isdefined(self.var_8249)) { if(common_scripts\utility::func_24A6()) { self.var_1D = self.var_1D + (0,180,0); } } if(isdefined(param_00["spotlight_tag"])) { thread func_2E1B(param_00,param_01,param_02,param_03); wait 0.05; } var_04 = common_scripts\utility::func_7A33(param_00["animation"]); var_05 = var_04["anim"]; var_06 = var_04["animTree"]; var_07 = var_04["groupNum"]; var_08 = var_04["mpAnim"]; var_09 = var_04["maxStartDelay"]; var_0A = var_04["animRateMin"]; var_0B = var_04["animRateMax"]; if(!isdefined(var_0A)) { var_0A = 1; } if(!isdefined(var_0B)) { var_0B = 1; } if(var_0A == var_0B) { var_0C = var_0A; } else { var_0C = randomfloatrange(var_0B,var_0C); } var_0D = var_04["vehicle_exclude_anim"]; if(self.var_3B == "script_vehicle" && var_0D) { return undefined; } param_01 common_scripts\utility::func_83BE("useanimtree",var_06); var_0E = var_04["animType"]; if(!isdefined(self.var_ED4)) { self.var_ED4 = []; } self.var_ED4[self.var_ED4.size] = var_05; if(isdefined(self.var_3949)) { func_23A2(param_01); } if(isdefined(var_09) && var_09 > 0) { wait(randomfloat(var_09)); } if(!common_scripts\utility::func_57D7()) { if(isdefined(var_08)) { common_scripts\utility::func_83BE("scriptModelPlayAnim",var_08); } return var_07; } if(var_0E == "setanim") { param_01 common_scripts\utility::func_83BE("setanim",var_05,1,1,var_0C); return var_07; } if(var_0E == "setanimknob") { param_01 common_scripts\utility::func_83BE("setanimknob",var_05,1,0,var_0C); return var_07; } return undefined; } //Function Number: 111 func_23A2(param_00) { if(isdefined(self.var_ED4)) { foreach(var_02 in self.var_ED4) { if(common_scripts\utility::func_57D7()) { param_00 common_scripts\utility::func_83BE("clearanim",var_02,0); continue; } param_00 common_scripts\utility::func_83BE("scriptModelClearAnim"); } } } //Function Number: 112 func_51B4() { level.var_2DC8 = 0; level.var_2DC9 = 0.5; if(common_scripts\utility::func_57D7()) { level.var_607E = 20; return; } level.var_607E = 2; } //Function Number: 113 func_0976() { level.var_2DC8++; wait(level.var_2DC9); level.var_2DC8--; } //Function Number: 114 func_414B() { return level.var_2DC8; } //Function Number: 115 func_420B() { return level.var_607E; } //Function Number: 116 func_51B5() { level.var_2E24 = []; } //Function Number: 117 func_091D(param_00,param_01,param_02) { var_03 = self getentitynumber(); if(!isdefined(level.var_2E24[var_03])) { level.var_2E24[var_03] = spawnstruct(); level.var_2E24[var_03].var_37D8 = var_03; level.var_2E24[var_03].var_2DE2 = param_00; level.var_2E24[var_03].var_9AB1 = 0; level.var_2E24[var_03].var_6635 = 9999999; level.var_2E24[var_03].var_3F6B = 0; } level.var_2E24[var_03].var_3F6B = level.var_2E24[var_03].var_3F6B + param_01.var_A265["fxcost"]; level.var_2E24[var_03].var_9AB1 = level.var_2E24[var_03].var_9AB1 + param_02; if(param_01.var_A265["distance"] < level.var_2E24[var_03].var_6635) { level.var_2E24[var_03].var_6635 = param_01.var_A265["distance"]; } thread func_49CE(); } //Function Number: 118 func_49CE() { level notify("handle_destructible_frame_queue"); level endon("handle_destructible_frame_queue"); wait 0.05; var_00 = level.var_2E24; level.var_2E24 = []; var_01 = func_8F1F(var_00); for(var_02 = 0;var_02 < var_01.size;var_02++) { if(func_414B() < func_420B()) { if(var_01[var_02].var_3F6B) { thread func_0976(); } var_01[var_02].var_2DE2 notify("queue_processed",1); continue; } var_01[var_02].var_2DE2 notify("queue_processed",0); } } //Function Number: 119 func_8F1F(param_00) { var_01 = []; foreach(var_03 in param_00) { var_01[var_01.size] = var_03; } for(var_05 = 1;var_05 < var_01.size;var_05++) { var_06 = var_01[var_05]; for(var_07 = var_05 - 1;var_07 >= 0 && func_40D5(var_06,var_01[var_07]) == var_06;var_07--) { var_01[var_07 + 1] = var_01[var_07]; } var_01[var_07 + 1] = var_06; } return var_01; } //Function Number: 120 func_40D5(param_00,param_01) { if(param_00.var_9AB1 > param_01.var_9AB1) { return param_00; } return param_01; } //Function Number: 121 func_4283(param_00,param_01) { var_02 = 0; if(!isdefined(level.var_75[self.var_2E25].var_6E9F[param_00][param_01])) { return var_02; } var_03 = level.var_75[self.var_2E25].var_6E9F[param_00][param_01].var_A265; if(isdefined(var_03["fx"])) { foreach(var_05 in var_03["fx_cost"]) { foreach(var_07 in var_05) { var_02 = var_02 + var_07; } } } return var_02; } //Function Number: 122 func_52AF(param_00) { if(!common_scripts\utility::func_3C83("FLAG_DOT_init")) { common_scripts\utility::func_3C87("FLAG_DOT_init"); common_scripts\utility::func_3C8F("FLAG_DOT_init"); } param_00 = tolower(param_00); switch(param_00) { case "poison": if(!common_scripts\utility::func_3C83("FLAG_DOT_poison_init")) { common_scripts\utility::func_3C87("FLAG_DOT_poison_init"); common_scripts\utility::func_3C8F("FLAG_DOT_poison_init"); } break; default: break; } } //Function Number: 123 func_27E2() { var_00 = spawnstruct(); var_00.var_99C1 = []; return var_00; } //Function Number: 124 func_27E3(param_00,param_01,param_02,param_03) { var_04 = spawnstruct(); var_04.var_1B9 = "trigger_radius"; var_04.var_116 = param_00; var_04.var_187 = param_01; var_04.var_14F = param_02; var_04.var_6220 = param_02; var_04.var_6098 = param_02; var_04.var_BD = param_03; var_04.var_99C1 = []; return var_04; } //Function Number: 125 func_866B(param_00) { self.var_116 = param_00; } //Function Number: 126 func_866C(param_00,param_01) { if(isdefined(self.var_3A) && self.var_3A != "trigger_radius") { } if(!isdefined(param_01)) { param_01 = param_00; } self.var_6220 = param_00; self.var_6098 = param_01; } //Function Number: 127 func_8669(param_00,param_01) { if(isdefined(self.var_3A) && issubstr(self.var_3A,"trigger")) { } } //Function Number: 128 func_866A(param_00,param_01,param_02,param_03,param_04,param_05,param_06,param_07) { if(isdefined(param_00)) { } else { param_00 = 0; } param_06 = tolower(param_06); param_07 = tolower(param_07); var_08 = self.var_99C1.size; self.var_99C1[var_08] = spawnstruct(); self.var_99C1[var_08].var_35FE = 0; self.var_99C1[var_08].var_2CAC = param_00; self.var_99C1[var_08].var_D9 = param_01; self.var_99C1[var_08].var_3511 = param_02; self.var_99C1[var_08].var_61BD = param_03; self.var_99C1[var_08].var_607B = param_04; switch(param_05) { case 1: case 0: break; default: break; } self.var_99C1[var_08].var_93 = param_05; self.var_99C1[var_08].var_9309 = 0; switch(param_06) { case "normal": break; case "poison": switch(param_07) { case "player": self.var_99C1[var_08].var_1B9 = param_06; self.var_99C1[var_08].var_A32 = param_07; self.var_99C1[var_08].var_6B05 = ::func_6B04; self.var_99C1[var_08].var_6B33 = ::func_6B32; self.var_99C1[var_08].var_6AE6 = ::func_6AE5; break; default: break; } break; default: break; } } //Function Number: 129 func_1D45(param_00,param_01) { param_01 = tolower(param_01); var_02 = self.var_99C1.size; self.var_99C1[var_02] = spawnstruct(); self.var_99C1[var_02].var_3511 = param_00; self.var_99C1[var_02].var_2CAC = 0; self.var_99C1[var_02].var_6B05 = ::func_6B00; self.var_99C1[var_02].var_6B33 = ::func_6B30; self.var_99C1[var_02].var_6AE6 = ::func_6AE4; switch(param_01) { case "player": self.var_99C1[var_02].var_A32 = param_01; break; default: break; } } //Function Number: 130 func_1D46(param_00) { var_01 = self.var_99C1.size - 1; if(!isdefined(self.var_99C1[var_01].var_932C)) { self.var_99C1[var_01].var_932C = []; } var_02 = self.var_99C1[var_01].var_932C.size; self.var_99C1[var_01].var_932C = []; self.var_99C1[var_01].var_932C["vars"] = []; self.var_99C1[var_01].var_932C["vars"]["count"] = param_00; } //Function Number: 131 func_1D44(param_00,param_01,param_02,param_03,param_04,param_05) { var_06 = self.var_99C1.size - 1; if(!isdefined(self.var_99C1[var_06].var_932C["actions"])) { self.var_99C1[var_06].var_932C["actions"] = []; } var_07 = self.var_99C1[var_06].var_932C["actions"].size; self.var_99C1[var_06].var_932C["actions"][var_07] = []; self.var_99C1[var_06].var_932C["actions"][var_07]["vars"] = [param_00,param_01,param_02,param_03,param_04,param_05]; self.var_99C1[var_06].var_932C["actions"][var_07]["func"] = ::func_310C; } //Function Number: 132 func_1D47(param_00) { var_01 = self.var_99C1.size - 1; if(!isdefined(self.var_99C1[var_01].var_932C["actions"])) { self.var_99C1[var_01].var_932C["actions"] = []; } var_02 = self.var_99C1[var_01].var_932C["actions"].size; self.var_99C1[var_01].var_932C["actions"][var_02] = []; self.var_99C1[var_01].var_932C["actions"][var_02]["vars"] = [param_00]; self.var_99C1[var_01].var_932C["actions"][var_02]["func"] = ::func_310D; } //Function Number: 133 func_6B00(param_00,param_01) { var_02 = param_01 getentitynumber(); param_01 endon("death"); param_01 endon("LISTEN_kill_tick_" + param_00 + "_" + var_02); self endon("disconnect"); self endon("game_ended"); self endon("death"); self endon("LISTEN_exit_dot_" + var_02); var_02 = undefined; var_03 = param_01.var_99C1[param_00].var_932C; if(!isdefined(var_03) || !isdefined(var_03["vars"]) || !isdefined(var_03["vars"]["count"]) || !isdefined(var_03["actions"])) { return; } var_04 = var_03["vars"]["count"]; var_05 = var_03["actions"]; var_03 = undefined; for(var_06 = 1;var_06 <= var_04 || var_04 == 0;var_06--) { foreach(var_08 in var_05) { var_09 = var_08["vars"]; var_0A = var_08["func"]; self [[ var_0A ]](param_00,param_01,var_09); } } } //Function Number: 134 func_6B30(param_00,param_01) { var_02 = param_01 getentitynumber(); var_03 = self getentitynumber(); param_01 notify("LISTEN_kill_tick_" + param_00 + "_" + var_02 + "_" + var_03); } //Function Number: 135 func_6AE4(param_00,param_01) { } //Function Number: 136 func_310C(param_00,param_01,param_02) { var_03 = param_02[0]; var_04 = param_02[1]; var_05 = param_02[2]; var_06 = param_02[3]; var_07 = param_02[4]; var_08 = param_02[5]; self thread [[ level.var_1E78 ]](param_01,param_01,var_04,var_06,var_07,var_08,param_01.var_116,(0,0,0) - param_01.var_116,"none",0); } //Function Number: 137 func_310D(param_00,param_01,param_02) { var_03 = param_01 getentitynumber(); var_04 = self getentitynumber(); param_01 endon("death"); param_01 endon("LISTEN_kill_tick_" + param_00 + "_" + var_03); param_01 notify("LISTEN_kill_tick_" + param_00 + "_" + var_03 + "_" + var_04); self endon("disconnect"); self endon("game_ended"); self endon("death"); self endon("LISTEN_exit_dot_" + var_03); var_03 = undefined; var_04 = undefined; wait(param_02[0]); } //Function Number: 138 func_92C7(param_00) { var_01 = []; foreach(var_03 in param_00) { var_04 = undefined; switch(var_03.var_1B9) { case "trigger_radius": var_04 = spawn("trigger_radius",var_03.var_116,var_03.var_187,var_03.var_14F,var_03.var_BD); var_04.var_6220 = var_03.var_6220; var_04.var_6098 = var_03.var_6098; var_04.var_99C1 = var_03.var_99C1; var_01[var_01.size] = var_04; break; default: break; } if(isdefined(var_03.var_6E74)) { var_04 linkto(var_03.var_6E74); var_03.var_6E74.var_32B1 = var_04; } var_05 = var_04.var_99C1; foreach(var_07 in var_05) { var_07.var_9309 = gettime(); } foreach(var_07 in var_05) { if(!var_07.var_2CAC) { var_07.var_35FE = 1; } } foreach(var_07 in var_05) { if(issubstr(var_07.var_A32,"player")) { var_04.var_6B6B = 1; break; } } } foreach(var_04 in var_01) { var_04.var_32B2 = []; foreach(var_10 in var_01) { if(var_04 == var_10) { continue; } var_04.var_32B2[var_04.var_32B2.size] = var_10; } } foreach(var_04 in var_01) { if(var_04.var_6B6B) { var_04 thread func_92C8(); } } foreach(var_04 in var_01) { var_04 thread func_6381(); } } //Function Number: 139 func_92C8() { thread func_9DC3(::func_6B01,::func_6B31); } //Function Number: 140 func_6381() { var_00 = gettime(); while(isdefined(self)) { foreach(var_04, var_02 in self.var_99C1) { if(isdefined(var_02) && gettime() - var_00 >= var_02.var_3511 * 1000) { var_03 = self getentitynumber(); self notify("LISTEN_kill_tick_" + var_04 + "_" + var_03); self.var_99C1[var_04] = undefined; } } if(!self.var_99C1.size) { break; } wait 0.05; } if(isdefined(self)) { foreach(var_02 in self.var_99C1) { self [[ var_02.var_6AE6 ]](); } self notify("death"); self delete(); } } //Function Number: 141 func_6B01(param_00) { var_01 = param_00 getentitynumber(); self notify("LISTEN_enter_dot_" + var_01); foreach(var_04, var_03 in param_00.var_99C1) { if(!var_03.var_35FE) { thread func_3144(var_04,param_00,var_03.var_2CAC,var_03.var_6B05); } } foreach(var_04, var_03 in param_00.var_99C1) { if(var_03.var_35FE && var_03.var_A32 == "player") { self thread [[ var_03.var_6B05 ]](var_04,param_00); } } } //Function Number: 142 func_6B31(param_00) { var_01 = param_00 getentitynumber(); self notify("LISTEN_exit_dot_" + var_01); foreach(var_04, var_03 in param_00.var_99C1) { if(var_03.var_35FE && var_03.var_A32 == "player") { self thread [[ var_03.var_6B33 ]](var_04,param_00); } } } //Function Number: 143 func_3144(param_00,param_01,param_02,param_03) { var_04 = param_01 getentitynumber(); var_05 = self getentitynumber(); param_01 endon("LISTEN_kill_tick_" + param_00 + "_" + var_04 + "_" + var_05); self endon("disconnect"); self endon("game_ended"); self endon("death"); self notify("LISTEN_exit_dot_" + var_04); var_04 = undefined; var_05 = undefined; wait(param_02); self thread [[ param_03 ]](param_00,param_01); } //Function Number: 144 func_6B04(param_00,param_01) { var_02 = param_01 getentitynumber(); var_03 = self getentitynumber(); param_01 endon("death"); param_01 endon("LISTEN_kill_tick_" + param_00 + "_" + var_02); param_01 endon("LISTEN_kill_tick_" + param_00 + "_" + var_02 + "_" + var_03); self endon("disconnect"); self endon("game_ended"); self endon("death"); self endon("LISTEN_exit_dot_" + var_02); if(!isdefined(self.var_6B02)) { self.var_6B02 = []; } if(!isdefined(self.var_6B02[param_00])) { self.var_6B02[param_00] = []; } self.var_6B02[param_00][var_02] = 0; var_04 = common_scripts\utility::func_98E7(common_scripts\utility::func_57D7(),1.5,1); while(isdefined(param_01) && isdefined(param_01.var_99C1[param_00])) { self.var_6B02[param_00][var_02]++; switch(self.var_6B02[param_00][var_02]) { case 1: self viewkick(1,self.var_116); break; case 3: self shellshock("mp_radiation_low",4); func_3149(param_01,var_04 * 2); break; case 4: self shellshock("mp_radiation_med",5); thread func_3148(param_00,param_01); func_3149(param_01,var_04 * 2); break; case 6: self shellshock("mp_radiation_high",5); func_3149(param_01,var_04 * 2); break; case 8: self shellshock("mp_radiation_high",5); func_3149(param_01,var_04 * 500); break; } wait(param_01.var_99C1[param_00].var_D9); } } //Function Number: 145 func_6B32(param_00,param_01) { var_02 = param_01 getentitynumber(); var_03 = self getentitynumber(); var_04 = self.var_6B03; if(isdefined(var_04)) { foreach(var_07, var_06 in var_04) { if(isdefined(var_04[var_07]) && isdefined(var_04[var_07][var_02])) { var_04[var_07][var_02] thread func_3146(0.1,0); } } } param_01 notify("LISTEN_kill_tick_" + param_00 + "_" + var_02 + "_" + var_03); } //Function Number: 146 func_6AE5() { var_00 = self getentitynumber(); foreach(var_02 in level.var_744A) { var_03 = var_02.var_6B03; if(isdefined(var_03)) { foreach(var_06, var_05 in var_03) { if(isdefined(var_03[var_06]) && isdefined(var_03[var_06][var_00])) { var_03[var_06][var_00] thread func_3147(); } } } } } //Function Number: 147 func_3149(param_00,param_01) { if(common_scripts\utility::func_57D7()) { return; } self thread [[ level.var_1E78 ]](param_00,param_00,param_01,0,"MOD_SUICIDE","claymore_mp",param_00.var_116,(0,0,0) - param_00.var_116,"none",0); } //Function Number: 148 func_3148(param_00,param_01) { var_02 = param_01 getentitynumber(); var_03 = self getentitynumber(); param_01 endon("death"); param_01 endon("LISTEN_kill_tick_" + param_00 + "_" + var_02); param_01 endon("LISTEN_kill_tick_" + param_00 + "_" + var_02 + "_" + var_03); self endon("disconnect"); self endon("game_ended"); self endon("death"); self endon("LISTEN_exit_dot_" + var_02); if(!isdefined(self.var_6B03)) { self.var_6B03 = []; } if(!isdefined(self.var_6B03[param_00])) { self.var_6B03[param_00] = []; } if(!isdefined(self.var_6B03[param_00][var_02])) { var_04 = newclienthudelem(self); var_04.maxsightdistsqrd = 0; var_04.var_1D7 = 0; var_04.accuracy = "left"; var_04.var_11 = "top"; var_04.var_C6 = "fullscreen"; var_04.var_1CA = "fullscreen"; var_04.var_18 = 0; var_04 setshader("black",640,480); self.var_6B03[param_00][var_02] = var_04; } var_04 = self.var_6B03[param_00][var_02]; var_05 = 1; var_06 = 2; var_07 = 0.25; var_08 = 1; var_09 = 5; var_0A = 100; var_0B = 0; for(;;) { while(self.var_6B02[param_00][var_02] > 1) { var_0C = var_0A - var_09; var_0B = self.var_6B02[param_00][var_02] - var_09 / var_0C; if(var_0B < 0) { var_0B = 0; } else if(var_0B > 1) { var_0B = 1; } var_0D = var_06 - var_05; var_0E = var_05 + var_0D * 1 - var_0B; var_0F = var_08 - var_07; var_10 = var_07 + var_0F * var_0B; var_11 = var_0B * 0.5; if(var_0B == 1) { break; } var_12 = var_0E / 2; var_04 func_3145(var_12,var_10); var_04 func_3146(var_12,var_11); wait(var_0B * 0.5); } if(var_0B == 1) { break; } if(var_04.var_18 != 0) { var_04 func_3146(1,0); } wait 0.05; } var_04 func_3145(2,0); } //Function Number: 149 func_3145(param_00,param_01) { self fadeovertime(param_00); self.var_18 = param_01; param_01 = undefined; wait(param_00); } //Function Number: 150 func_3146(param_00,param_01) { self fadeovertime(param_00); self.var_18 = param_01; param_01 = undefined; wait(param_00); } //Function Number: 151 func_3147(param_00,param_01) { self fadeovertime(param_00); self.var_18 = param_01; param_01 = undefined; wait(param_00); self destroy(); } //Function Number: 152 func_9DC3(param_00,param_01) { level endon("game_ended"); self endon("death"); self.var_37D8 = self getentitynumber(); for(;;) { self waittill("trigger",var_02); if(!isplayer(var_02) && !isdefined(var_02.var_3BAA)) { continue; } if(!isalive(var_02)) { continue; } if(!isdefined(var_02.var_9AC5[self.var_37D8])) { var_02 thread func_7477(self,param_00,param_01); } } } //Function Number: 153 func_7477(param_00,param_01,param_02) { param_00 endon("death"); if(!isplayer(self)) { self endon("death"); } if(!common_scripts\utility::func_57D7()) { var_03 = self.var_48CA; } else { var_03 = "player" + gettime(); } param_00.var_9AC3[var_03] = self; if(isdefined(param_00.var_64DD)) { self.var_64DE++; } param_00 notify("trigger_enter",self); self notify("trigger_enter",param_00); var_04 = 1; foreach(var_06 in param_00.var_32B2) { foreach(var_08 in self.var_9AC5) { if(var_06 == var_08) { var_04 = 0; } } } if(var_04 && isdefined(param_01)) { self thread [[ param_01 ]](param_00); } self.var_9AC5[param_00.var_37D8] = param_00; while(isalive(self) && common_scripts\utility::func_57D7() || !level.var_3F9D) { var_0B = 1; if(self istouching(param_00)) { wait 0.05; continue; } if(!param_00.var_32B2.size) { var_0B = 0; } foreach(var_06 in param_00.var_32B2) { if(self istouching(var_06)) { wait 0.05; break; } else { var_0B = 0; } } if(!var_0B) { break; } } if(isdefined(self)) { self.var_9AC5[param_00.var_37D8] = undefined; if(isdefined(param_00.var_64DD)) { self.var_64DE--; } self notify("trigger_leave",param_00); if(var_04 && isdefined(param_02)) { self thread [[ param_02 ]](param_00); } } if(!common_scripts\utility::func_57D7() && level.var_3F9D) { return; } param_00.var_9AC3[var_03] = undefined; param_00 notify("trigger_leave",self); if(!func_0F13(param_00)) { param_00 notify("trigger_empty"); } } //Function Number: 154 func_0F13(param_00) { return param_00.var_9AC3.size; } //Function Number: 155 func_42C9(param_00) { return level.var_5FD[param_00]; } //Function Number: 156 func_42CA(param_00) { return level.var_5FE[param_00]; } //Function Number: 157 func_2E23() { if(!isdefined(level.var_721C)) { return; } if(!isdefined(self.var_815E)) { self.var_815E = 20000; } while(isdefined(self)) { if(isdefined(self.var_2E10)) { var_00 = 0; for(var_01 = 1;var_01 < self.var_2E10.size;var_01++) { if(self.var_2E10[var_01].var_A265["currentState"] == 1) { var_00++; } } if(var_00 == self.var_2E10.size - 1) { break; } } var_02 = distancesquared(level.var_721C.var_116,self.var_116); if(var_02 > self.var_815E * self.var_815E) { self setcandamage(0); continue; } self setcandamage(1); wait 0.05; } }