mirror of
https://github.com/InfinityLoader/IL-GSC.git
synced 2025-06-07 17:17:50 -05:00
372 lines
6.5 KiB
Plaintext
372 lines
6.5 KiB
Plaintext
/*******************************************************************
|
|
* Decompiled By: Bog
|
|
* Decompiled File: 1373.gsc
|
|
* Game: Call of Duty: WWII
|
|
* Platform: PC
|
|
* Function Count: 14
|
|
* Decompile Time: 17 ms
|
|
* Timestamp: 10/27/2023 3:25:51 AM
|
|
*******************************************************************/
|
|
|
|
//Function Number: 1
|
|
func_00D5()
|
|
{
|
|
lib_055B::waittill_jumpscare_initialized();
|
|
level.var_AB58 = 0;
|
|
level.var_AB59 = 0;
|
|
var_00 = common_scripts\utility::func_46B7("birds","script_noteworthy");
|
|
level.var_AB5A = var_00.size * 0.2;
|
|
foreach(var_02 in var_00)
|
|
{
|
|
var_02 thread func_1769();
|
|
}
|
|
}
|
|
|
|
//Function Number: 2
|
|
func_1769()
|
|
{
|
|
self.var_1767 = 0;
|
|
self.var_AA2A = self.var_116 + (0,0,16);
|
|
var_00 = undefined;
|
|
foreach(var_02 in getentarray(self.var_1A2,"targetname"))
|
|
{
|
|
switch(var_02.var_3B)
|
|
{
|
|
case "trigger_radius":
|
|
self.var_78CB = var_02;
|
|
self.var_78CB thread func_1768(self);
|
|
break;
|
|
|
|
case "trigger_damage":
|
|
var_02 thread func_1765(self);
|
|
break;
|
|
}
|
|
}
|
|
|
|
self.var_175F = [];
|
|
foreach(var_05 in common_scripts\utility::func_46B7(self.var_1A2,"targetname"))
|
|
{
|
|
if(isdefined(var_05.var_165))
|
|
{
|
|
switch(var_05.var_165)
|
|
{
|
|
case "birds_anims":
|
|
self.var_175F[self.var_175F.size] = var_05;
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
|
|
for(;;)
|
|
{
|
|
var_07 = 1;
|
|
if(var_07)
|
|
{
|
|
wait(randomfloatrange(10,30));
|
|
}
|
|
|
|
while(level.var_AB58 >= level.var_AB5A || func_0F0B(390) || func_0F0D(0))
|
|
{
|
|
wait(5);
|
|
}
|
|
|
|
thread func_1764();
|
|
thread func_1766();
|
|
level.var_AB58++;
|
|
self.var_1767 = 1;
|
|
lib_0378::func_8D74("play_bird_loop",self);
|
|
self waittill("birds_command",var_08,var_09);
|
|
level.var_AB58--;
|
|
self.var_1767 = 0;
|
|
var_0A = gettime() * 0.001;
|
|
var_0B = 30;
|
|
if(var_0A - level.var_AB59 < var_0B)
|
|
{
|
|
var_08 = "never_mind";
|
|
}
|
|
|
|
switch(var_08)
|
|
{
|
|
case "fly_away":
|
|
level.var_AB59 = var_0A;
|
|
if(isplayer(var_09))
|
|
{
|
|
lib_055B::func_5976(var_09);
|
|
}
|
|
|
|
thread func_8FAA(var_09);
|
|
thread func_3D7C();
|
|
lib_0378::func_8D74("stop_bird_loop",self);
|
|
lib_0378::func_8D74("play_bird_retreat",self);
|
|
break;
|
|
|
|
case "never_mind":
|
|
lib_0378::func_8D74("stop_bird_loop",self);
|
|
break;
|
|
|
|
default:
|
|
break;
|
|
}
|
|
|
|
wait(5);
|
|
}
|
|
}
|
|
|
|
//Function Number: 3
|
|
func_3D7C()
|
|
{
|
|
wait(0.25);
|
|
foreach(var_01 in level.var_744A)
|
|
{
|
|
if(isdefined(var_01) && var_01 istouching(self.var_78CB) && var_01 func_72E5(self.var_AA2A,0))
|
|
{
|
|
var_01 thread func_3D7B();
|
|
}
|
|
}
|
|
}
|
|
|
|
//Function Number: 4
|
|
func_3D7B()
|
|
{
|
|
self endon("death");
|
|
self endon("disconnect");
|
|
}
|
|
|
|
//Function Number: 5
|
|
func_8FAA(param_00)
|
|
{
|
|
for(var_01 = 0;var_01 < 20;var_01++)
|
|
{
|
|
var_02 = common_scripts\utility::func_7A33(self.var_175F);
|
|
thread func_1763(var_02,param_00);
|
|
}
|
|
|
|
wait(0.1);
|
|
physicsexplosionsphere(self.var_AA2A,48,16,1,0);
|
|
glassradiusdamage(self.var_AA2A,48,100,50);
|
|
earthquake(0.5,1.5,self.var_78CB.var_116,self.var_78CB.var_14F * 2);
|
|
function_01BB("zombie_birds_rumble",self.var_78CB.var_116);
|
|
}
|
|
|
|
//Function Number: 6
|
|
func_1763(param_00,param_01)
|
|
{
|
|
var_02 = 2;
|
|
var_03 = 40;
|
|
var_04 = 10;
|
|
wait(randomfloatrange(0,var_02));
|
|
var_05 = undefined;
|
|
if(isplayer(param_01))
|
|
{
|
|
if(distance(param_01.var_116,self.var_116) > 96)
|
|
{
|
|
var_05 = common_scripts\utility::func_4461(self.var_116,maps/mp/agents/_agent_utility::func_43FD("all"));
|
|
}
|
|
else
|
|
{
|
|
var_05 = param_01;
|
|
}
|
|
}
|
|
|
|
if(isdefined(param_01))
|
|
{
|
|
var_06 = param_01.var_116 - self.var_116;
|
|
var_07 = vectortoangles(var_06)[1];
|
|
var_08 = var_07 - self.var_1D[1];
|
|
var_08 = var_08 + randomfloatrange(0 - var_04,var_04);
|
|
if(isendstr(param_00.var_8260,"_v1") || isendstr(param_00.var_8260,"_v3"))
|
|
{
|
|
var_09 = 0 - var_03;
|
|
var_0A = 0;
|
|
}
|
|
else
|
|
{
|
|
var_09 = 0;
|
|
var_0A = var_04;
|
|
}
|
|
|
|
var_08 = clamp(var_08,var_09,var_0A);
|
|
var_0B = transformmove(self.var_116,self.var_1D + (0,var_08,0),self.var_116,self.var_1D,param_00.var_116,param_00.var_1D);
|
|
var_0C = var_0B["origin"];
|
|
var_0D = var_0B["angles"];
|
|
}
|
|
else
|
|
{
|
|
var_0C = var_02.var_116;
|
|
var_0D = param_01.var_1D;
|
|
}
|
|
|
|
var_0E = spawn("script_model",var_0C);
|
|
var_0E.var_1D = var_0D;
|
|
var_0E setmodel("ani_raven_rig");
|
|
var_0E method_8278(param_00.var_8260,"bird_anim");
|
|
var_0E thread func_1760();
|
|
var_0E waittillmatch("end","bird_anim");
|
|
var_0E delete();
|
|
}
|
|
|
|
//Function Number: 7
|
|
func_1760()
|
|
{
|
|
var_00 = 32;
|
|
var_01 = 3;
|
|
var_02 = 50;
|
|
var_03 = 50;
|
|
self endon("death");
|
|
for(;;)
|
|
{
|
|
var_04 = 0;
|
|
var_05 = 9999;
|
|
foreach(var_07 in level.var_744A)
|
|
{
|
|
if(distance(var_07.var_116,self.var_116) < var_00 + 128)
|
|
{
|
|
var_04 = 1;
|
|
if(var_07.var_BC < var_05)
|
|
{
|
|
var_05 = var_07.var_BC;
|
|
}
|
|
}
|
|
}
|
|
|
|
if(var_04 && var_05 - var_01 < var_03)
|
|
{
|
|
wait 0.05;
|
|
continue;
|
|
}
|
|
|
|
if(var_04)
|
|
{
|
|
var_09 = var_01;
|
|
}
|
|
else
|
|
{
|
|
var_09 = var_02;
|
|
}
|
|
|
|
radiusdamage(self.var_116,var_00,var_09,var_09 * 0.5,undefined,undefined,undefined,undefined,0);
|
|
break;
|
|
}
|
|
}
|
|
|
|
//Function Number: 8
|
|
func_0F0B(param_00)
|
|
{
|
|
if(!isdefined(level.var_744A))
|
|
{
|
|
return 0;
|
|
}
|
|
|
|
foreach(var_02 in level.var_744A)
|
|
{
|
|
if(distance(var_02.var_116,self.var_116) < param_00)
|
|
{
|
|
return 1;
|
|
}
|
|
}
|
|
|
|
return 0;
|
|
}
|
|
|
|
//Function Number: 9
|
|
func_0F0D(param_00)
|
|
{
|
|
if(param_00 == 0)
|
|
{
|
|
return 0;
|
|
}
|
|
|
|
foreach(var_02 in maps/mp/agents/_agent_utility::func_43FD("all"))
|
|
{
|
|
if(distance(var_02.var_116,self.var_116) < param_00)
|
|
{
|
|
return 1;
|
|
}
|
|
}
|
|
|
|
return 0;
|
|
}
|
|
|
|
//Function Number: 10
|
|
func_1765(param_00)
|
|
{
|
|
for(;;)
|
|
{
|
|
self waittill("trigger",var_01);
|
|
if(!isplayer(var_01))
|
|
{
|
|
continue;
|
|
}
|
|
|
|
if(randomfloat(1) < 0.9)
|
|
{
|
|
param_00 notify("birds_command","fly_away",var_01);
|
|
continue;
|
|
}
|
|
|
|
param_00 notify("never_mind");
|
|
}
|
|
}
|
|
|
|
//Function Number: 11
|
|
func_1768(param_00)
|
|
{
|
|
var_01 = cos(32.5);
|
|
param_00 lib_055B::func_84F0("birds");
|
|
for(;;)
|
|
{
|
|
self waittill("trigger",var_02);
|
|
if(!isplayer(var_02))
|
|
{
|
|
continue;
|
|
}
|
|
|
|
if(!param_00.var_1767)
|
|
{
|
|
continue;
|
|
}
|
|
|
|
var_03 = var_02 func_72E5(param_00.var_AA2A,var_01) && param_00 lib_055B::func_5977(var_02);
|
|
if(var_03)
|
|
{
|
|
param_00 notify("birds_command","fly_away",var_02);
|
|
continue;
|
|
}
|
|
|
|
param_00 notify("never_mind");
|
|
while(isalive(var_02) && var_02 istouching(self))
|
|
{
|
|
wait(1);
|
|
}
|
|
|
|
wait(10);
|
|
}
|
|
}
|
|
|
|
//Function Number: 12
|
|
func_1764()
|
|
{
|
|
self endon("birds_command");
|
|
for(;;)
|
|
{
|
|
wait(5);
|
|
if(func_0F0D(0))
|
|
{
|
|
self notify("birds_command","never_mind");
|
|
}
|
|
}
|
|
}
|
|
|
|
//Function Number: 13
|
|
func_1766()
|
|
{
|
|
self endon("birds_command");
|
|
wait(randomfloatrange(15,45));
|
|
self notify("birds_command","never_mind");
|
|
}
|
|
|
|
//Function Number: 14
|
|
func_72E5(param_00,param_01)
|
|
{
|
|
return vectordot(vectornormalize(param_00 - self geteye()),anglestoforward(self getangles())) > param_01;
|
|
} |