mirror of
https://github.com/InfinityLoader/IL-GSC.git
synced 2025-06-07 17:17:50 -05:00
160 lines
4.1 KiB
Plaintext
160 lines
4.1 KiB
Plaintext
/*******************************************************************
|
|
* Decompiled By: Bog
|
|
* Decompiled File: 2833.gsc
|
|
* Game: Call of Duty: Infinite Warfare
|
|
* Platform: PC
|
|
* Function Count: 7
|
|
* Decompile Time: 3 ms
|
|
* Timestamp: 10/27/2023 12:23:53 AM
|
|
*******************************************************************/
|
|
|
|
//Function Number: 1
|
|
func_37A9()
|
|
{
|
|
precachemodel("fx_org_view");
|
|
}
|
|
|
|
//Function Number: 2
|
|
func_CCBE()
|
|
{
|
|
var_00 = spawn("script_model",(0,0,0));
|
|
var_00 setmodel("tag_origin");
|
|
var_00 linkto(level.player,"tag_origin",(0,0,0),(0,0,0));
|
|
var_00.var_C04F = 1;
|
|
level.player.var_763C = var_00;
|
|
var_01 = scripts\common\utility::getstructarray("fxchain_start","script_noteworthy");
|
|
level.var_AD40 = [];
|
|
level.var_C1E0 = var_01.size;
|
|
for(var_02 = 0;var_02 < var_01.size;var_02++)
|
|
{
|
|
var_01[var_02].var_3C0A = var_02;
|
|
var_01[var_02] func_6C76();
|
|
}
|
|
|
|
var_01 = undefined;
|
|
level.var_C1E0 = undefined;
|
|
level.var_AD40 = scripts\common\utility::func_22C3(level.var_AD40,::func_445A);
|
|
level.var_37CF = level.var_AD40[0]["start_struct"];
|
|
level.var_37CE = 0;
|
|
playfxontag(scripts\common\utility::getfx(level.var_37CF.var_EE79),var_00,"tag_origin");
|
|
level.var_AD40 = undefined;
|
|
var_03 = scripts\common\utility::getstructarray("fxchain_transition","targetname");
|
|
thread func_68A8(var_00);
|
|
for(;;)
|
|
{
|
|
wait(0.25);
|
|
if(level.var_37CE)
|
|
{
|
|
continue;
|
|
}
|
|
|
|
if(var_03.size > 0)
|
|
{
|
|
var_04 = sortbydistance(var_03,level.player.origin)[0];
|
|
if(distance2dsquared(level.player.origin,var_04.origin) <= squared(var_04.var_257))
|
|
{
|
|
var_05 = scripts\common\utility::getstruct(var_04.script_noteworthy,"targetname");
|
|
var_06 = scripts\common\utility::getstruct(var_04.var_EE79,"targetname");
|
|
var_07 = vectordot(anglestoforward(var_04.angles),level.player.origin - var_04.origin);
|
|
var_08 = undefined;
|
|
if(var_07 > 0 && level.var_37CF.var_3C0A == var_06.var_3C0A)
|
|
{
|
|
var_08 = var_05;
|
|
}
|
|
|
|
if(var_07 < 0 && level.var_37CF.var_3C0A == var_05.var_3C0A)
|
|
{
|
|
var_08 = var_06;
|
|
}
|
|
|
|
if(isdefined(var_08))
|
|
{
|
|
func_12660(var_08,var_00);
|
|
}
|
|
}
|
|
}
|
|
|
|
var_09 = [];
|
|
foreach(var_0B in scripts\common\utility::getstructarray(level.var_37CF.var_336,"target"))
|
|
{
|
|
var_09[var_09.size] = func_7A8D(var_0B,level.var_37CF);
|
|
}
|
|
|
|
if(isdefined(level.var_37CF.target))
|
|
{
|
|
var_0D = scripts\common\utility::getstructarray(level.var_37CF.target,"targetname");
|
|
foreach(var_0F in var_0D)
|
|
{
|
|
var_09[var_09.size] = func_7A8D(level.var_37CF,var_0F);
|
|
if(isdefined(var_0F.target))
|
|
{
|
|
var_10 = scripts\common\utility::getstructarray(var_0F.target,"targetname");
|
|
foreach(var_12 in var_10)
|
|
{
|
|
var_09[var_09.size] = func_7A8D(var_0F,var_12);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
var_09 = scripts\common\utility::func_22C3(var_09,::func_445A);
|
|
var_08 = var_09[0]["start_struct"];
|
|
if(var_08.origin != level.var_37CF.origin)
|
|
{
|
|
if(var_08.var_EE79 != level.var_37CF.var_EE79)
|
|
{
|
|
func_12660(var_08,var_00);
|
|
continue;
|
|
}
|
|
|
|
level.var_37CF = var_08;
|
|
}
|
|
}
|
|
}
|
|
|
|
//Function Number: 3
|
|
func_6C76()
|
|
{
|
|
if(isdefined(self.target))
|
|
{
|
|
var_00 = scripts\common\utility::getstructarray(self.target,"targetname");
|
|
foreach(var_02 in var_00)
|
|
{
|
|
if(!isdefined(var_02.var_3C0A))
|
|
{
|
|
var_02.var_3C0A = self.var_3C0A;
|
|
level.var_AD40[level.var_AD40.size] = func_7A8D(self,var_02);
|
|
level.var_C1E0++;
|
|
var_02 func_6C76();
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
//Function Number: 4
|
|
func_7A8D(param_00,param_01)
|
|
{
|
|
var_02 = [];
|
|
var_02["start_struct"] = param_00;
|
|
var_02["closest_point"] = pointonsegmentnearesttopoint(param_00.origin,param_01.origin,level.player.origin);
|
|
return var_02;
|
|
}
|
|
|
|
//Function Number: 5
|
|
func_445A(param_00,param_01)
|
|
{
|
|
return distancesquared(param_00["closest_point"],level.player.origin) < distancesquared(param_01["closest_point"],level.player.origin);
|
|
}
|
|
|
|
//Function Number: 6
|
|
func_68A8(param_00)
|
|
{
|
|
}
|
|
|
|
//Function Number: 7
|
|
func_12660(param_00,param_01)
|
|
{
|
|
stopfxontag(scripts\common\utility::getfx(level.var_37CF.var_EE79),param_01,"tag_origin");
|
|
playfxontag(scripts\common\utility::getfx(param_00.var_EE79),param_01,"tag_origin");
|
|
level.var_37CF = param_00;
|
|
} |