mirror of
https://github.com/InfinityLoader/IL-GSC.git
synced 2025-06-07 17:17:50 -05:00
324 lines
8.5 KiB
Plaintext
324 lines
8.5 KiB
Plaintext
/*******************************************************************
|
|
* Decompiled By: Bog
|
|
* Decompiled File: 1382.gsc
|
|
* Game: Call of Duty: WWII
|
|
* Platform: PC
|
|
* Function Count: 9
|
|
* Decompile Time: 15 ms
|
|
* Timestamp: 10/27/2023 3:25:55 AM
|
|
*******************************************************************/
|
|
|
|
//Function Number: 1
|
|
func_00D5()
|
|
{
|
|
level.var_A41["zombie_generic"] = level.var_A41["zombie"];
|
|
level.var_A41["zombie_generic"]["think"] = ::func_ABB3;
|
|
level.var_A41["zombie_generic"]["on_damaged"] = ::func_ABB2;
|
|
level.var_A41["zombie_generic"]["get_action_params"] = ::zombie_generic_get_action_params;
|
|
var_00 = ["zom_head_fdr02_org1","zom_head_fdr03_org1","zom_head_fdr04_org1"];
|
|
var_01 = ["zom_m40helmet_net1","zom_m40helmet_org1","zom_m40helmet_org2"];
|
|
var_02 = ["zom_m34cap_org1","zom_m40officercap_org1","zom_m42cap_org1","zom_m43cap_org1","zom_m43cap_org2","zom_m43overseacap_org1"];
|
|
var_03 = [];
|
|
var_04 = [];
|
|
var_05 = [];
|
|
var_06 = spawnstruct();
|
|
var_06.var_5ED2["guts"]["whole_body"] = "zom_infantrya_bodywhole";
|
|
var_06.var_5ED2["guts"]["torso"] = "zom_infantrya_torso_slice";
|
|
var_06.var_5ED2["guts"]["left_arm"] = "zom_infantrya_l_arm_slice";
|
|
var_06.var_5ED2["guts"]["left_leg"] = "zom_infantrya_l_leg_slice";
|
|
var_06.var_5ED2["guts"]["right_arm"] = "zom_infantrya_r_arm_slice";
|
|
var_06.var_5ED2["guts"]["right_leg"] = "zom_infantrya_r_leg_slice";
|
|
var_06.var_5ED2["guts"]["heads"] = var_00;
|
|
var_06.var_5ED2["guts"]["caps"] = var_02;
|
|
var_06.var_5ED2["guts"]["helmets"] = var_01;
|
|
var_06.var_5ED2["guts"]["facegear"] = var_05;
|
|
var_06.var_5ED2["poncho"]["whole_body"] = "zom_snipera_bodywhole";
|
|
var_06.var_5ED2["poncho"]["torso"] = "zom_snipera_torso_slice";
|
|
var_06.var_5ED2["poncho"]["left_arm"] = "zom_snipera_l_arm_slice";
|
|
var_06.var_5ED2["poncho"]["left_leg"] = "zom_snipera_l_leg_slice";
|
|
var_06.var_5ED2["poncho"]["right_arm"] = "zom_snipera_r_arm_slice";
|
|
var_06.var_5ED2["poncho"]["right_leg"] = "zom_snipera_r_leg_slice";
|
|
var_06.var_5ED2["poncho"]["heads"] = var_00;
|
|
var_06.var_5ED2["poncho"]["caps"] = var_02;
|
|
var_06.var_5ED2["poncho"]["helmets"] = var_01;
|
|
var_06.var_5ED2["poncho"]["facegear"] = var_05;
|
|
var_06.var_5ED2["possum"]["whole_body"] = "zom_infantrya_bodywhole";
|
|
var_06.var_5ED2["possum"]["torso"] = "zom_infantrya_torso_slice";
|
|
var_06.var_5ED2["possum"]["left_arm"] = "zom_infantrya_l_arm_slice";
|
|
var_06.var_5ED2["possum"]["left_leg"] = "zom_infantrya_l_leg_slice";
|
|
var_06.var_5ED2["possum"]["right_arm"] = "zom_infantrya_r_arm_slice";
|
|
var_06.var_5ED2["possum"]["right_leg"] = "zom_infantrya_r_leg_slice";
|
|
var_06.var_5ED2["possum"]["heads"] = ["zom_head_fdr02_org1"];
|
|
var_06.var_5ED2["possum"]["request only"] = 1;
|
|
var_06.var_5ED2["soldier"]["whole_body"] = "zom_inf_smga_org1_mm3";
|
|
var_06.var_5ED2["soldier"]["request only"] = 1;
|
|
var_06.var_5ED2["soldier_rus"]["whole_body"] = "zom_rus_infantry_org1";
|
|
var_06.var_5ED2["soldier_rus"]["request only"] = 1;
|
|
var_06.var_A4B = "zombie_generic";
|
|
var_06.var_EAE = "zombie_animclass";
|
|
var_06.var_879 = "zombie_generic";
|
|
var_06.var_4C12 = 1;
|
|
var_06.var_60E2 = 40;
|
|
var_06.var_8302 = 65;
|
|
var_06.var_8303 = 15;
|
|
var_06.suppressive_fire_speed_multiplier = 0.3;
|
|
var_06.tacklebymelee = 1;
|
|
var_06.tacklebycharge = 1;
|
|
var_06.knockbyravensword = 1;
|
|
var_06.shockbyteslablood = 1;
|
|
var_06.knockbybladebarbarossa = 1;
|
|
var_06.energyhold = 1;
|
|
var_06.energyholdkill = 1;
|
|
var_06.energyholdsecondary = 1;
|
|
var_06.throwable = 1;
|
|
if(isdefined(level.var_62AB))
|
|
{
|
|
var_06 = [[ level.var_62AB ]](var_06);
|
|
}
|
|
|
|
lib_0547::func_A52(var_06,"zombie_generic");
|
|
lib_0547::registeranimtree("zombie_generic",#animtree);
|
|
}
|
|
|
|
//Function Number: 2
|
|
func_ABB5()
|
|
{
|
|
maps/mp/agents/humanoid/_humanoid::func_8A27();
|
|
thread lib_054D::func_AC15();
|
|
thread lib_0547::func_A692();
|
|
thread func_AB4F();
|
|
thread lib_054D::func_A0EE();
|
|
thread lib_054D::func_A146();
|
|
thread lib_053C::func_778();
|
|
thread lib_053C::func_4F95();
|
|
thread lib_053C::func_635C();
|
|
if(self.var_A4B == "zombie_generic")
|
|
{
|
|
if(!isdefined(level.var_scaling_reach_max_wave))
|
|
{
|
|
var_00 = 47;
|
|
}
|
|
else
|
|
{
|
|
var_00 = level.var_scaling_reach_max_wave;
|
|
}
|
|
|
|
if(!isdefined(level.var_scaling_reach_min_wave))
|
|
{
|
|
var_01 = 25;
|
|
}
|
|
else
|
|
{
|
|
var_01 = level.var_scaling_reach_min_wave;
|
|
}
|
|
|
|
var_02 = self.var_901F - var_01 / var_00 - var_01;
|
|
var_03 = lerp(60,72,var_02);
|
|
var_03 = clamp(var_03,60,72);
|
|
lib_0547::func_86C7(var_03);
|
|
}
|
|
}
|
|
|
|
//Function Number: 3
|
|
func_ABB3()
|
|
{
|
|
self method_85A1("zombie");
|
|
func_ABB4();
|
|
}
|
|
|
|
//Function Number: 4
|
|
zombie_generic_think_wait(param_00)
|
|
{
|
|
if(!isdefined(param_00))
|
|
{
|
|
param_00 = 0.2;
|
|
}
|
|
|
|
wait(common_scripts\utility::func_98E7(isdefined(self.has_think_waited),param_00,randomfloat(param_00)));
|
|
self.has_think_waited = 1;
|
|
}
|
|
|
|
//Function Number: 5
|
|
func_ABB4()
|
|
{
|
|
self endon("death");
|
|
level endon("game_ended");
|
|
self endon("owner_disconnect");
|
|
func_ABB5();
|
|
for(;;)
|
|
{
|
|
if(lib_053C::func_4F8C())
|
|
{
|
|
}
|
|
else if(lib_053C::func_4F84())
|
|
{
|
|
}
|
|
else if(lib_053C::func_4F9B())
|
|
{
|
|
}
|
|
else if(lib_053C::func_4F9A())
|
|
{
|
|
}
|
|
else
|
|
{
|
|
lib_053C::func_647();
|
|
}
|
|
|
|
zombie_generic_think_wait();
|
|
}
|
|
}
|
|
|
|
//Function Number: 6
|
|
func_AB4F()
|
|
{
|
|
self endon("death");
|
|
for(;;)
|
|
{
|
|
var_00 = common_scripts\utility::func_A717("attack_hit","attack_miss");
|
|
switch(var_00[0])
|
|
{
|
|
case "attack_hit":
|
|
if(isdefined(self.var_71D))
|
|
{
|
|
thread lib_054E::func_3102("attack_hit",self.var_71D.var_A47);
|
|
}
|
|
|
|
var_01 = var_00[1];
|
|
if(isdefined(var_01) && isplayer(var_01))
|
|
{
|
|
if(self.var_A4B == "zombie_generic" || self.var_A4B == "zombie_assassin" || self.var_A4B == "zombie_sizzler")
|
|
{
|
|
if(isalive(var_01))
|
|
{
|
|
var_01 lib_0380::func_2888("zmb_hit",var_01);
|
|
}
|
|
else
|
|
{
|
|
var_01 lib_0380::func_288B("zmb_hit",var_01,var_01);
|
|
}
|
|
}
|
|
else if(self.var_A4B == "zombie_heavy" && isdefined(self.var_1F52))
|
|
{
|
|
if(isalive(var_01))
|
|
{
|
|
var_01 lib_0380::func_2888("zmb_follower_mace_imp",var_01);
|
|
}
|
|
else
|
|
{
|
|
var_01 lib_0380::func_288B("zmb_follower_mace_imp",var_01,var_01);
|
|
}
|
|
}
|
|
else if(self.var_A4B == "zombie_bob" && isdefined(self.var_1F52))
|
|
{
|
|
if(isalive(var_01))
|
|
{
|
|
var_01 lib_0380::func_2888("zmb_bob_melee_hit",var_01);
|
|
}
|
|
else
|
|
{
|
|
var_01 lib_0380::func_288B("zmb_bob_melee_hit",var_01,var_01);
|
|
}
|
|
}
|
|
else if(self.var_A4B == "zombie_guardian" && isdefined(self.var_1F52))
|
|
{
|
|
if(isalive(var_01))
|
|
{
|
|
var_01 lib_0380::func_2888("zmb_hit",var_01);
|
|
}
|
|
else
|
|
{
|
|
var_01 lib_0380::func_288B("zmb_hit",var_01,var_01);
|
|
}
|
|
}
|
|
}
|
|
break;
|
|
|
|
case "attack_miss":
|
|
thread lib_054E::func_3102("attack_miss",self.var_A4B);
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
|
|
//Function Number: 7
|
|
func_ABB2(param_00,param_01,param_02,param_03,param_04,param_05,param_06,param_07,param_08,param_09,param_0A)
|
|
{
|
|
if(param_05 == "panzerschreck_zm" || param_05 == "bazooka_zm")
|
|
{
|
|
param_02 = self.var_FB;
|
|
}
|
|
|
|
if(param_05 == "turretweapon_zeppelin_gun_zm")
|
|
{
|
|
param_04 = "MOD_RIFLE_BULLET";
|
|
if(common_scripts\utility::func_562E(self.var_A87C))
|
|
{
|
|
param_02 = param_02 * 0;
|
|
}
|
|
else
|
|
{
|
|
param_02 = param_02 * 1;
|
|
}
|
|
}
|
|
|
|
if(isdefined(self.prop_decorator))
|
|
{
|
|
if(param_08 == "head")
|
|
{
|
|
if(self.prop_decorator.var_106 == "usa_water_bucket_01" || self.prop_decorator.var_106 == "aac_kitchen_skillet_01")
|
|
{
|
|
var_0B = spawn("script_model",self.prop_decorator.var_116);
|
|
var_0B setmodel(self.prop_decorator.var_106);
|
|
var_0B.var_1D = self.prop_decorator.var_1D;
|
|
self.prop_decorator delete();
|
|
param_02 = 1;
|
|
var_0C = spawn("script_model",var_0B.var_116);
|
|
var_0C setmodel("helmet_collision");
|
|
var_0C.var_1D = var_0B.var_1D;
|
|
var_0B linkto(var_0C);
|
|
var_0C.var_6292 = var_0B;
|
|
var_0C thread decoratorlaunch(param_07);
|
|
var_0C hideallparts();
|
|
}
|
|
}
|
|
}
|
|
|
|
lib_054D::func_6BD1(param_00,param_01,param_02,param_03,param_04,param_05,param_06,param_07,param_08,param_09,param_0A);
|
|
}
|
|
|
|
//Function Number: 8
|
|
decoratorlaunch(param_00)
|
|
{
|
|
level endon("game_ended");
|
|
var_01 = 5000;
|
|
var_02 = 3000;
|
|
if(!isdefined(param_00))
|
|
{
|
|
param_00 = anglestoforward(self.var_1D);
|
|
}
|
|
|
|
var_03 = param_00;
|
|
var_04 = var_03[0] * var_01;
|
|
var_05 = var_03[1] * var_01;
|
|
var_06 = var_03[2] * var_02;
|
|
var_07 = self.var_116 + param_00 * -5;
|
|
self method_82C5(var_07,(var_04,var_05,var_06));
|
|
wait(15);
|
|
self.var_6292 delete();
|
|
self delete();
|
|
}
|
|
|
|
//Function Number: 9
|
|
zombie_generic_get_action_params()
|
|
{
|
|
if(isdefined(self.action_param_override_func))
|
|
{
|
|
var_00 = [[ self.action_param_override_func ]]();
|
|
}
|
|
else
|
|
{
|
|
var_00 = lib_054D::func_AC22();
|
|
}
|
|
|
|
return var_00;
|
|
} |