IL-GSC/AW/PC/maps/_debug.gsc
InfinityLoader b2389dbcb9 Full AW Dump
2024-04-22 02:38:24 -04:00

2136 lines
37 KiB
Plaintext

/*******************************************************************
* Decompiled By: Bog
* Decompiled File: _debug.gsc
* Game: Call of Duty: Advanced Warfare
* Platform: PC
* Function Count: 110
* Decompile Time: 1592 ms
* Timestamp: 4/22/2024 2:20:41 AM
*******************************************************************/
//Function Number: 1
debugchains()
{
var_00 = getallnodes();
var_01 = 0;
var_02 = [];
for(var_03 = 0;var_03 < var_00.size;var_03++)
{
if(!var_00[var_03].spawnflags & 2 && (isdefined(var_00[var_03].target) && getnodearray(var_00[var_03].target,"targetname").size > 0) || isdefined(var_00[var_03].targetname) && getnodearray(var_00[var_03].targetname,"target").size > 0)
{
var_02[var_01] = var_00[var_03];
var_01++;
}
}
var_04 = 0;
for(;;)
{
if(getdvar("chain") == "1")
{
for(var_03 = 0;var_03 < var_02.size;var_03++)
{
if(distance(level.player getorigin(),var_02[var_03].origin) < 1500)
{
}
}
var_05 = getaiarray("allies");
for(var_03 = 0;var_03 < var_05.size;var_03++)
{
var_06 = var_05[var_03] animscripts\utility::getclaimednode();
if(isdefined(var_06))
{
}
}
}
wait 0.05;
}
}
//Function Number: 2
debug_enemypos(param_00)
{
var_01 = getaiarray();
for(var_02 = 0;var_02 < var_01.size;var_02++)
{
if(var_01[var_02] getentitynumber() != param_00)
{
continue;
}
var_01[var_02] thread debug_enemyposproc();
break;
}
}
//Function Number: 3
debug_stopenemypos(param_00)
{
var_01 = getaiarray();
for(var_02 = 0;var_02 < var_01.size;var_02++)
{
if(var_01[var_02] getentitynumber() != param_00)
{
continue;
}
var_01[var_02] notify("stop_drawing_enemy_pos");
break;
}
}
//Function Number: 4
debug_enemyposproc()
{
self endon("death");
self endon("stop_drawing_enemy_pos");
for(;;)
{
wait(0.05);
if(isalive(self.enemy))
{
}
if(!animscripts\utility::hasenemysightpos())
{
continue;
}
var_00 = animscripts\utility::getenemysightpos();
}
}
//Function Number: 5
debug_enemyposreplay()
{
var_00 = getaiarray();
var_01 = undefined;
for(var_02 = 0;var_02 < var_00.size;var_02++)
{
var_01 = var_00[var_02];
if(!isalive(var_01))
{
continue;
}
if(isdefined(var_01.lastenemysightpos))
{
}
if(isdefined(var_01.goodshootpos))
{
if(var_01 isbadguy())
{
var_03 = (1,0,0);
}
else
{
var_03 = (0,0,1);
}
var_04 = var_01.origin + (0,0,54);
if(isdefined(var_01.node))
{
if(var_01.node.type == "Cover Left")
{
var_05 = 1;
var_04 = anglestoright(var_01.node.angles);
var_04 = var_04 * -32;
var_04 = (var_04[0],var_04[1],64);
var_04 = var_01.node.origin + var_04;
}
else if(var_01.node.type == "Cover Right")
{
var_05 = 1;
var_04 = anglestoright(var_01.node.angles);
var_04 = var_04 * 32;
var_04 = (var_04[0],var_04[1],64);
var_04 = var_01.node.origin + var_04;
}
}
common_scripts\utility::draw_arrow(var_04,var_01.goodshootpos,var_03);
}
}
if(1)
{
return;
}
if(!isalive(var_01))
{
return;
}
if(isalive(var_01.enemy))
{
}
if(isdefined(var_01.lastenemysightpos))
{
}
if(isalive(var_01.goodenemy))
{
}
if(!var_01 animscripts\utility::hasenemysightpos())
{
return;
}
var_06 = var_01 animscripts\utility::getenemysightpos();
if(isdefined(var_01.goodshootpos))
{
}
}
//Function Number: 6
drawenttag(param_00)
{
}
//Function Number: 7
drawtag(param_00,param_01,param_02)
{
var_03 = self gettagorigin(param_00);
var_04 = self gettagangles(param_00);
drawarrow(var_03,var_04,param_01,param_02);
}
//Function Number: 8
draworgforever(param_00)
{
var_01 = undefined;
var_02 = undefined;
for(;;)
{
if(isdefined(self))
{
var_01 = self.origin;
var_02 = self.angles;
}
drawarrow(var_01,var_02,param_00);
wait(0.05);
}
}
//Function Number: 9
drawarrowforever(param_00,param_01)
{
for(;;)
{
drawarrow(param_00,param_01);
wait(0.05);
}
}
//Function Number: 10
draworiginforever()
{
while(isdefined(self))
{
drawarrow(self.origin,self.angles);
wait(0.05);
}
}
//Function Number: 11
drawarrow(param_00,param_01,param_02,param_03)
{
var_04 = 10;
var_05 = anglestoforward(param_01);
var_06 = var_05 * var_04;
var_07 = var_05 * var_04 * 0.8;
var_08 = anglestoright(param_01);
var_09 = var_08 * var_04 * -0.2;
var_0A = var_08 * var_04 * 0.2;
var_0B = anglestoup(param_01);
var_08 = var_08 * var_04;
var_0B = var_0B * var_04;
var_0C = (0.9,0.2,0.2);
var_0D = (0.2,0.9,0.2);
var_0E = (0.2,0.2,0.9);
if(isdefined(param_02))
{
var_0C = param_02;
var_0D = param_02;
var_0E = param_02;
}
if(!isdefined(param_03))
{
param_03 = 1;
}
}
//Function Number: 12
drawforwardforever(param_00,param_01)
{
if(!isdefined(param_00))
{
param_00 = 100;
}
if(!isdefined(param_01))
{
param_01 = (0,1,0);
}
for(;;)
{
if(!isdefined(self))
{
return;
}
var_02 = anglestoforward(self.angles);
wait(0.05);
}
}
//Function Number: 13
drawplayerviewforever()
{
for(;;)
{
drawarrow(level.player.origin,level.player getplayerangles(),(1,1,1));
wait(0.05);
}
}
//Function Number: 14
drawtagforever(param_00,param_01)
{
for(;;)
{
if(!isdefined(self))
{
return;
}
drawtag(param_00,param_01);
wait(0.05);
}
}
//Function Number: 15
drawtagtrails(param_00,param_01)
{
for(;;)
{
if(!isdefined(self.origin))
{
break;
}
drawtag(param_00,param_01,1000);
wait(0.05);
}
}
//Function Number: 16
dragtaguntildeath(param_00,param_01)
{
self endon("death");
for(;;)
{
if(!isdefined(self))
{
break;
}
if(!isdefined(self.origin))
{
break;
}
drawtag(param_00,param_01);
wait(0.05);
}
}
//Function Number: 17
viewtag(param_00,param_01)
{
if(param_00 == "ai")
{
var_02 = getaiarray();
for(var_03 = 0;var_03 < var_02.size;var_03++)
{
var_02[var_03] drawtag(param_01);
}
}
}
//Function Number: 18
debug_corner()
{
level.player.ignoreme = 1;
var_00 = getallnodes();
var_01 = [];
for(var_02 = 0;var_02 < var_00.size;var_02++)
{
if(var_00[var_02].type == "Cover Left")
{
var_01[var_01.size] = var_00[var_02];
}
if(var_00[var_02].type == "Cover Right")
{
var_01[var_01.size] = var_00[var_02];
}
}
var_03 = getaiarray();
for(var_02 = 0;var_02 < var_03.size;var_02++)
{
var_03[var_02] delete();
}
level.debugspawners = getspawnerarray();
level.activenodes = [];
level.completednodes = [];
for(var_02 = 0;var_02 < level.debugspawners.size;var_02++)
{
level.debugspawners[var_02].targetname = "blah";
}
var_04 = 0;
for(var_02 = 0;var_02 < 30;var_02++)
{
if(var_02 >= var_01.size)
{
break;
}
var_01[var_02] thread covertest();
var_04++;
}
if(var_01.size <= 30)
{
return;
}
for(;;)
{
level waittill("debug_next_corner");
if(var_04 >= var_01.size)
{
var_04 = 0;
}
var_01[var_04] thread covertest();
var_04++;
}
}
//Function Number: 19
covertest()
{
coversetupanim();
}
//Function Number: 20
coversetupanim()
{
var_00 = undefined;
var_01 = undefined;
for(;;)
{
for(var_02 = 0;var_02 < level.debugspawners.size;var_02++)
{
wait(0.05);
var_01 = level.debugspawners[var_02];
var_03 = 0;
for(var_04 = 0;var_04 < level.activenodes.size;var_04++)
{
if(distance(level.activenodes[var_04].origin,self.origin) > 250)
{
continue;
}
var_03 = 1;
break;
}
if(var_03)
{
continue;
}
var_05 = 0;
for(var_04 = 0;var_04 < level.completednodes.size;var_04++)
{
if(level.completednodes[var_04] != self)
{
continue;
}
var_05 = 1;
break;
}
if(var_05)
{
continue;
}
level.activenodes[level.activenodes.size] = self;
var_01.origin = self.origin;
var_01.angles = self.angles;
var_01.count = 1;
var_00 = var_01 stalingradspawn();
if(maps\_utility::spawn_failed(var_00))
{
removeactivespawner(self);
continue;
}
break;
}
if(isalive(var_00))
{
break;
}
}
wait(1);
if(isalive(var_00))
{
var_00.ignoreme = 1;
var_00.team = "neutral";
var_00 setgoalpos(var_00.origin);
thread createline(self.origin);
var_00 thread maps\_utility::debugorigin();
thread createlineconstantly(var_00);
var_00 waittill("death");
}
removeactivespawner(self);
level.completednodes[level.completednodes.size] = self;
}
//Function Number: 21
removeactivespawner(param_00)
{
var_01 = [];
for(var_02 = 0;var_02 < level.activenodes.size;var_02++)
{
if(level.activenodes[var_02] == param_00)
{
continue;
}
var_01[var_01.size] = level.activenodes[var_02];
}
level.activenodes = var_01;
}
//Function Number: 22
createline(param_00)
{
wait(0.05);
}
//Function Number: 23
createlineconstantly(param_00)
{
var_01 = undefined;
while(isalive(param_00))
{
var_01 = param_00.origin;
wait(0.05);
}
wait(0.05);
}
//Function Number: 24
debugmisstime()
{
self notify("stopdebugmisstime");
self endon("stopdebugmisstime");
self endon("death");
for(;;)
{
if(self.a.misstime <= 0)
{
}
else
{
}
wait(0.05);
}
}
//Function Number: 25
debugmisstimeoff()
{
self notify("stopdebugmisstime");
}
//Function Number: 26
setemptydvar(param_00,param_01)
{
}
//Function Number: 27
debugjump(param_00)
{
}
//Function Number: 28
maprange(param_00,param_01,param_02,param_03,param_04)
{
return param_03 + param_00 - param_01 * param_04 - param_03 / param_02 - param_01;
}
//Function Number: 29
movement_velocity_loop()
{
}
//Function Number: 30
movement_acceleration_loop()
{
}
//Function Number: 31
stair_state_loop()
{
}
//Function Number: 32
get_direction()
{
var_00 = anglestoforward(self.angles);
var_01 = maps\_shg_utility::get_differentiated_velocity();
if(!isdefined(var_01) || !isdefined(var_00))
{
return "none";
}
if(length(var_01) == 0)
{
var_01 = self.velocity;
}
var_02 = vectordot(vectornormalize(var_00),vectornormalize(var_01));
var_02 = clamp(var_02,-1,1);
var_03 = acos(var_02);
if(var_03 > 135)
{
return "back";
}
if(var_03 < 45)
{
return "forward";
}
if(var_03 > 45 && var_03 < 135)
{
return "left";
}
return "right";
}
//Function Number: 33
init_state_list()
{
var_00 = [];
var_00[0] = "Invalid";
var_00[1] = "Exposed";
var_00[2] = "Turret";
var_00[3] = "Grenade_Response";
var_00[4] = "Badplace";
var_00[5] = "Cover_Arrival";
var_00[6] = "Death";
var_00[7] = "Pain";
var_00[8] = "Flashed";
var_00[9] = "Scripted_Anim";
var_00[10] = "Custom_Anim";
var_00[11] = "Negotiation";
return var_00;
}
//Function Number: 34
state_print_priority(param_00)
{
if(!isdefined(param_00))
{
return 99;
}
switch(param_00)
{
case "death":
return 0;
case "scripted":
return 1;
case "traverse":
return 2;
case "combat":
return 3;
case "patrol":
return 4;
case "stealth":
return 5;
case "cover_arrival":
return 6;
case "cover":
return 7;
case "flashed":
return 8;
case "reaction":
return 9;
case "pain":
return 10;
case "init":
return 11;
case "move":
return 12;
case "stop":
return 13;
case "grenade_cower":
return 14;
case "grenade_return_throw":
return 15;
case "<custom>":
case "cover_prone":
case "cover_swim_right":
case "cover_swim_left":
case "cover_swim_up":
case "cover_left":
case "cover_multi":
case "cover_right":
case "cover_stand":
case "cover_crouch":
return 16;
default:
return 99;
}
}
//Function Number: 35
script_state_compare(param_00,param_01)
{
return state_print_priority(param_00) < state_print_priority(param_01);
}
//Function Number: 36
script_to_state(param_00)
{
var_01 = [];
if(!isai(param_00))
{
var_01 = common_scripts\utility::array_add(var_01,"Undefined");
return var_01;
}
if(!isdefined(param_00.script))
{
var_01 = common_scripts\utility::array_add(var_01,"Undefined");
return var_01;
}
if(isdefined(self.script_patroller) && self.script_patroller == 1)
{
var_01 = common_scripts\utility::array_add(var_01,"patrol");
}
if(isdefined(self.istraversing) && self.istraversing)
{
var_01 = common_scripts\utility::array_add(var_01,"traverse");
}
if(isdefined(self._cloak_enemy_state) && self._cloak_enemy_state != "default_stealth_state")
{
var_01 = common_scripts\utility::array_add(var_01,"stealth");
}
switch(param_00.script)
{
case "<custom>":
case "grenade_return_throw":
case "grenade_cower":
case "cover_arrival":
case "reaction":
case "scripted":
case "init":
case "pain":
case "combat":
case "death":
case "flashed":
case "move":
case "stop":
var_01 = common_scripts\utility::array_add(var_01,param_00.script);
break;
case "cover_prone":
case "cover_swim_right":
case "cover_swim_left":
case "cover_swim_up":
case "cover_left":
case "cover_multi":
case "cover_right":
case "cover_stand":
case "cover_crouch":
var_01 = common_scripts\utility::array_add(var_01,"cover");
break;
default:
if(common_scripts\utility::string_find(param_00.script,"mantle") != -1)
{
var_01 = common_scripts\utility::array_add(var_01,"mantle");
break;
}
var_01 = common_scripts\utility::array_add(var_01,param_00.script);
break;
}
if(var_01.size > 1)
{
var_01 = common_scripts\utility::array_sort_with_func(var_01,::script_state_compare);
}
return var_01;
}
//Function Number: 37
transition_has_inverse(param_00)
{
var_01 = " -> ";
var_02 = common_scripts\utility::string_find(param_00,var_01);
var_03 = getsubstr(param_00,0,var_02);
var_04 = getsubstr(param_00,var_02 + var_01.size,param_00.size);
var_05 = var_04 + var_01 + var_03;
if(isdefined(common_scripts\utility::array_find(level.transitions,var_05)))
{
var_06 = [];
var_06["reversed"] = var_05;
var_06["new"] = var_03 + " -- " + var_04;
return var_06;
}
return undefined;
}
//Function Number: 38
output_states_to_file(param_00)
{
}
//Function Number: 39
state_loop()
{
}
//Function Number: 40
debugdvars()
{
}
//Function Number: 41
remove_reflection_objects()
{
}
//Function Number: 42
create_reflection_objects()
{
}
//Function Number: 43
create_reflection_object()
{
}
//Function Number: 44
debug_reflection()
{
}
//Function Number: 45
debug_reflection_buttons()
{
}
//Function Number: 46
remove_fxlighting_object()
{
}
//Function Number: 47
create_fxlighting_object()
{
}
//Function Number: 48
play_fxlighting_fx()
{
}
//Function Number: 49
debug_fxlighting()
{
}
//Function Number: 50
debug_dumplightshadowstates()
{
}
//Function Number: 51
debug_fxlighting_buttons()
{
}
//Function Number: 52
showdebugtrace()
{
var_00 = undefined;
var_01 = undefined;
var_00 = (15.1859,-12.2822,4.071);
var_01 = (947.2,-10918,64.9514);
for(;;)
{
wait(0.05);
var_02 = var_00;
var_03 = var_01;
if(!isdefined(var_00))
{
var_02 = level.tracestart;
}
if(!isdefined(var_01))
{
var_03 = level.player geteye();
}
var_04 = bullettrace(var_02,var_03,0,undefined);
}
}
//Function Number: 53
debug_character_count()
{
var_00 = newhudelem();
var_00.alignx = "left";
var_00.aligny = "middle";
var_00.x = 10;
var_00.y = 100;
var_00.label = &"DEBUG_DRONES";
var_00.alpha = 0;
var_01 = newhudelem();
var_01.alignx = "left";
var_01.aligny = "middle";
var_01.x = 10;
var_01.y = 115;
var_01.label = &"DEBUG_ALLIES";
var_01.alpha = 0;
var_02 = newhudelem();
var_02.alignx = "left";
var_02.aligny = "middle";
var_02.x = 10;
var_02.y = 130;
var_02.label = &"DEBUG_AXIS";
var_02.alpha = 0;
var_03 = newhudelem();
var_03.alignx = "left";
var_03.aligny = "middle";
var_03.x = 10;
var_03.y = 145;
var_03.label = &"DEBUG_VEHICLES";
var_03.alpha = 0;
var_04 = newhudelem();
var_04.alignx = "left";
var_04.aligny = "middle";
var_04.x = 10;
var_04.y = 160;
var_04.label = &"DEBUG_TOTAL";
var_04.alpha = 0;
var_05 = "off";
for(;;)
{
var_06 = getdvar("debug_character_count");
if(var_06 == "off")
{
if(var_06 != var_05)
{
var_00.alpha = 0;
var_01.alpha = 0;
var_02.alpha = 0;
var_03.alpha = 0;
var_04.alpha = 0;
var_05 = var_06;
}
wait(0.25);
continue;
}
else if(var_06 != var_05)
{
var_00.alpha = 1;
var_01.alpha = 1;
var_02.alpha = 1;
var_03.alpha = 1;
var_04.alpha = 1;
var_05 = var_06;
}
var_07 = getentarray("drone","targetname").size;
var_00 setvalue(var_07);
var_08 = getaiarray("allies").size;
var_01 setvalue(var_08);
var_09 = getaiarray("bad_guys").size;
var_02 setvalue(var_09);
var_03 setvalue(getentarray("script_vehicle","classname").size);
var_04 setvalue(var_07 + var_08 + var_09);
wait(0.25);
}
}
//Function Number: 54
nuke()
{
if(!self.damageshield)
{
self kill((0,0,-500),level.player,level.player);
}
}
//Function Number: 55
debug_nuke()
{
}
//Function Number: 56
camera()
{
wait(0.05);
var_00 = getentarray("camera","targetname");
for(var_01 = 0;var_01 < var_00.size;var_01++)
{
var_02 = getent(var_00[var_01].target,"targetname");
var_00[var_01].origin2 = var_02.origin;
var_00[var_01].angles = vectortoangles(var_02.origin - var_00[var_01].origin);
}
for(;;)
{
var_03 = getaiarray("axis");
if(!var_03.size)
{
freeplayer();
wait(0.5);
continue;
}
var_04 = [];
for(var_01 = 0;var_01 < var_00.size;var_01++)
{
for(var_05 = 0;var_05 < var_03.size;var_05++)
{
if(distance(var_00[var_01].origin,var_03[var_05].origin) > 256)
{
continue;
}
var_04[var_04.size] = var_00[var_01];
break;
}
}
if(!var_04.size)
{
freeplayer();
wait(0.5);
continue;
}
var_06 = [];
for(var_01 = 0;var_01 < var_04.size;var_01++)
{
var_07 = var_04[var_01];
var_08 = var_07.origin2;
var_09 = var_07.origin;
var_0A = vectortoangles((var_09[0],var_09[1],var_09[2]) - (var_08[0],var_08[1],var_08[2]));
var_0B = (0,var_0A[1],0);
var_0C = anglestoforward(var_0B);
var_0A = vectornormalize(var_09 - level.player.origin);
var_0D = vectordot(var_0C,var_0A);
if(var_0D < 0.85)
{
continue;
}
var_06[var_06.size] = var_07;
}
if(!var_06.size)
{
freeplayer();
wait(0.5);
continue;
}
var_0E = distance(level.player.origin,var_06[0].origin);
var_0F = var_06[0];
for(var_01 = 1;var_01 < var_06.size;var_01++)
{
var_10 = distance(level.player.origin,var_06[var_01].origin);
if(var_10 > var_0E)
{
continue;
}
var_0F = var_06[var_01];
var_0E = var_10;
}
setplayertocamera(var_0F);
wait(3);
}
}
//Function Number: 57
freeplayer()
{
setdvar("cl_freemove","0");
}
//Function Number: 58
setplayertocamera(param_00)
{
setdvar("cl_freemove","2");
}
//Function Number: 59
anglescheck()
{
for(;;)
{
if(getdvar("angles","0") == "1")
{
setdvar("angles","0");
}
wait(1);
}
}
//Function Number: 60
deathspawnerpreview()
{
waittillframeend;
for(var_00 = 0;var_00 < 50;var_00++)
{
if(!isdefined(level.deathspawnerents[var_00]))
{
continue;
}
var_01 = level.deathspawnerents[var_00];
for(var_02 = 0;var_02 < var_01.size;var_02++)
{
var_03 = var_01[var_02];
if(isdefined(var_03.truecount))
{
continue;
}
}
}
}
//Function Number: 61
lastsightposwatch()
{
}
//Function Number: 62
watchminimap()
{
precacheitem("defaultweapon");
for(;;)
{
updateminimapsetting();
wait(0.25);
}
}
//Function Number: 63
updateminimapsetting()
{
var_00 = getdvarfloat("scr_requiredMapAspectRatio",1);
if(!isdefined(level.minimapcornertargetname))
{
setdvar("scr_minimap_corner_targetname","minimap_corner");
level.minimapcornertargetname = "minimap_corner";
}
if(!isdefined(level.minimapheight))
{
setdvar("scr_minimap_height","0");
level.minimapheight = 0;
}
var_01 = getdvarfloat("scr_minimap_height");
var_02 = getdvar("scr_minimap_corner_targetname");
if(var_01 != level.minimapheight || var_02 != level.minimapcornertargetname)
{
if(isdefined(level.minimaporigin))
{
level.minimapplayer unlink();
level.minimaporigin delete();
level notify("end_draw_map_bounds");
}
if(var_01 > 0)
{
level.minimapheight = var_01;
level.minimapcornertargetname = var_02;
var_03 = level.player;
var_04 = getentarray(var_02,"targetname");
if(var_04.size == 2)
{
var_05 = var_04[0].origin + var_04[1].origin;
var_05 = (var_05[0] * 0.5,var_05[1] * 0.5,var_05[2] * 0.5);
var_06 = (var_04[0].origin[0],var_04[0].origin[1],var_05[2]);
var_07 = (var_04[0].origin[0],var_04[0].origin[1],var_05[2]);
if(var_04[1].origin[0] > var_04[0].origin[0])
{
var_06 = (var_04[1].origin[0],var_06[1],var_06[2]);
}
else
{
var_07 = (var_04[1].origin[0],var_07[1],var_07[2]);
}
if(var_04[1].origin[1] > var_04[0].origin[1])
{
var_06 = (var_06[0],var_04[1].origin[1],var_06[2]);
}
else
{
var_07 = (var_07[0],var_04[1].origin[1],var_07[2]);
}
var_08 = var_06 - var_05;
var_05 = (var_05[0],var_05[1],var_05[2] + var_01);
var_09 = spawn("script_origin",var_03.origin);
var_0A = (cos(getnorthyaw()),sin(getnorthyaw()),0);
var_0B = (var_0A[1],0 - var_0A[0],0);
var_0C = vectordot(var_0A,var_08);
if(var_0C < 0)
{
var_0C = 0 - var_0C;
}
var_0D = vectordot(var_0B,var_08);
if(var_0D < 0)
{
var_0D = 0 - var_0D;
}
if(var_00 > 0)
{
var_0E = var_0D / var_0C;
if(var_0E < var_00)
{
var_0F = var_00 / var_0E;
var_0D = var_0D * var_0F;
var_10 = vecscale(var_0B,vectordot(var_0B,var_06 - var_05) * var_0F - 1);
var_07 = var_07 - var_10;
var_06 = var_06 + var_10;
}
else
{
var_0F = var_10 / var_02;
var_0D = var_0D * var_10;
var_10 = vecscale(var_0B,vectordot(var_0B,var_07 - var_06) * var_10 - 1);
var_07 = var_07 - var_10;
var_06 = var_06 + var_10;
}
}
if(level.console)
{
var_11 = 1.777778;
var_12 = 2 * atan(var_0D * 0.8 / var_01);
var_13 = 2 * atan(var_0C * var_11 * 0.8 / var_01);
}
else
{
var_11 = 1.333333;
var_12 = 2 * atan(var_12 * 1.05 / var_03);
var_13 = 2 * atan(var_0D * var_12 * 1.05 / var_02);
}
if(var_12 > var_13)
{
var_14 = var_12;
}
else
{
var_14 = var_14;
}
var_15 = var_01 - 1000;
if(var_15 < 16)
{
var_15 = 16;
}
if(var_15 > 10000)
{
var_15 = 10000;
}
var_03 playerlinktoabsolute(var_09);
var_09.origin = var_05 + (0,0,-62);
var_09.angles = (90,getnorthyaw(),0);
var_03 giveweapon("defaultweapon");
setsaveddvar("cg_fov",var_14);
level.minimapplayer = var_03;
level.minimaporigin = var_09;
thread drawminimapbounds(var_05,var_07,var_06);
return;
}
return;
}
}
}
//Function Number: 64
getchains()
{
var_00 = [];
var_00 = getentarray("minimap_line","script_noteworthy");
var_01 = [];
for(var_02 = 0;var_02 < var_00.size;var_02++)
{
var_01[var_02] = var_00[var_02] getchain();
}
return var_01;
}
//Function Number: 65
getchain()
{
var_00 = [];
var_01 = self;
while(isdefined(var_01))
{
var_00[var_00.size] = var_01;
if(!isdefined(var_01) || !isdefined(var_01.target))
{
break;
}
var_01 = getent(var_01.target,"targetname");
if(isdefined(var_01) && var_01 == var_00[0])
{
var_00[var_00.size] = var_01;
break;
}
}
var_02 = [];
for(var_03 = 0;var_03 < var_00.size;var_03++)
{
var_02[var_03] = var_00[var_03].origin;
}
return var_02;
}
//Function Number: 66
vecscale(param_00,param_01)
{
return (param_00[0] * param_01,param_00[1] * param_01,param_00[2] * param_01);
}
//Function Number: 67
drawminimapbounds(param_00,param_01,param_02)
{
level notify("end_draw_map_bounds");
level endon("end_draw_map_bounds");
var_03 = param_00[2] - param_02[2];
var_04 = length(param_01 - param_02);
var_05 = param_01 - param_00;
var_05 = vectornormalize((var_05[0],var_05[1],0));
param_01 = param_01 + vecscale(var_05,var_04 * 1 / 800 * 0);
var_06 = param_02 - param_00;
var_06 = vectornormalize((var_06[0],var_06[1],0));
param_02 = param_02 + vecscale(var_06,var_04 * 1 / 800 * 0);
var_07 = (cos(getnorthyaw()),sin(getnorthyaw()),0);
var_08 = param_02 - param_01;
var_09 = vecscale(var_07,vectordot(var_08,var_07));
var_0A = vecscale(var_07,abs(vectordot(var_08,var_07)));
var_0B = param_01;
var_0C = param_01 + var_09;
var_0D = param_02;
var_0E = param_02 - var_09;
var_0F = vecscale(param_01 + param_02,0.5) + vecscale(var_0A,0.51);
var_10 = var_04 * 0.003;
var_11 = getchains();
for(;;)
{
common_scripts\utility::array_levelthread(var_11,::common_scripts\utility::plot_points);
wait(0.05);
}
}
//Function Number: 68
islookingatorigin(param_00)
{
var_01 = vectornormalize(param_00 - self getshootatpos());
var_02 = vectornormalize(param_00 - (0,0,24) - self getshootatpos());
var_03 = vectordot(var_01,var_02);
var_04 = anglestoforward(self getplayerangles());
var_05 = vectordot(var_04,var_01);
if(var_05 > var_03)
{
return 1;
}
return 0;
}
//Function Number: 69
debug_colornodes()
{
wait(0.05);
var_00 = getaiarray();
var_01 = [];
var_01["axis"] = [];
var_01["allies"] = [];
var_01["neutral"] = [];
for(var_02 = 0;var_02 < var_00.size;var_02++)
{
var_03 = var_00[var_02];
if(!isdefined(var_03.currentcolorcode))
{
continue;
}
var_01[var_03.team][var_03.currentcolorcode] = 1;
var_04 = (1,1,1);
if(isdefined(var_03.script_forcecolor))
{
var_04 = level.color_debug[var_03.script_forcecolor];
}
var_05 = var_03.currentcolorcode;
if(isdefined(var_03.being_careful) && var_03.being_careful == 1)
{
var_05 = var_05 + " (c)";
}
var_03 try_to_draw_line_to_node();
}
draw_colornodes(var_01,"allies");
draw_colornodes(var_01,"axis");
}
//Function Number: 70
draw_colornodes(param_00,param_01)
{
var_02 = getarraykeys(param_00[param_01]);
for(var_03 = 0;var_03 < var_02.size;var_03++)
{
var_04 = (1,1,1);
var_04 = level.color_debug[getsubstr(var_02[var_03],0,1)];
if(isdefined(level.colornodes_debug_array[param_01][var_02[var_03]]))
{
var_05 = level.colornodes_debug_array[param_01][var_02[var_03]];
for(var_06 = 0;var_06 < var_05.size;var_06++)
{
var_07 = "";
if(isdefined(var_05[var_06].classname) && var_05[var_06].classname == "info_volume")
{
var_07 = "V-" + var_02[var_03];
}
else
{
var_07 = "N-" + var_02[var_03];
}
if(isdefined(var_05[var_06].color_user) && var_05[var_06].color_user == level.player)
{
var_07 = var_07 + " (p)";
}
}
}
}
}
//Function Number: 71
get_team_substr()
{
if(self.team == "allies")
{
if(isdefined(self.node) && isdefined(self.node.script_color_allies))
{
return self.node.script_color_allies;
}
var_00 = self getgoalvolume();
if(isdefined(var_00) && isdefined(var_00.script_color_allies))
{
return var_00.script_color_allies;
}
}
if(self.team == "axis")
{
if(isdefined(self.node) && isdefined(self.node.script_color_axis))
{
return self.node.script_color_axis;
}
var_00 = self getgoalvolume();
if(isdefined(var_00) && isdefined(var_00.script_color_axis))
{
return var_00.script_color_axis;
}
}
}
//Function Number: 72
try_to_draw_line_to_node()
{
var_00 = (0,0,0);
if(isdefined(self.node))
{
var_00 = self.node.origin;
}
else if(isdefined(self getgoalvolume()))
{
var_01 = self getgoalvolume();
var_00 = var_01.origin;
}
else
{
return;
}
if(!isdefined(self.script_forcecolor))
{
return;
}
var_02 = get_team_substr();
if(!isdefined(var_02))
{
return;
}
if(!issubstr(var_02,self.script_forcecolor))
{
}
}
//Function Number: 73
fogcheck()
{
if(getdvar("depth_close") == "")
{
setdvar("depth_close","0");
}
if(getdvar("depth_far") == "")
{
setdvar("depth_far","1500");
}
var_00 = getdvarint("depth_close");
var_01 = getdvarint("depth_far");
setexpfog(var_00,var_01,1,1,1,1,0);
}
//Function Number: 74
debugthreat()
{
level.last_threat_debug = gettime();
thread debugthreatcalc();
}
//Function Number: 75
debugthreatcalc()
{
}
//Function Number: 76
displaythreat(param_00,param_01)
{
if(self.team == param_00.team)
{
return;
}
var_02 = 0;
var_02 = var_02 + self.threatbias;
var_03 = 0;
var_03 = var_03 + param_00.threatbias;
var_04 = undefined;
if(isdefined(param_01))
{
var_04 = self getthreatbiasgroup();
if(isdefined(var_04))
{
var_03 = var_03 + getthreatbias(param_01,var_04);
var_02 = var_02 + getthreatbias(var_04,param_01);
}
}
if(param_00.ignoreme || var_03 < -900000)
{
var_03 = "Ignore";
}
if(self.ignoreme || var_02 < -900000)
{
var_02 = "Ignore";
}
var_05 = 20;
var_06 = (1,0.5,0.2);
var_07 = (0.2,0.5,1);
var_08 = !isplayer(self) && self.pacifist;
for(var_09 = 0;var_09 <= var_05;var_09++)
{
if(isdefined(param_01))
{
}
if(isdefined(var_04))
{
}
if(var_08)
{
}
wait(0.05);
}
}
//Function Number: 77
debugcolorfriendlies()
{
level.debug_color_friendlies = [];
level.debug_color_huds = [];
for(;;)
{
level waittill("updated_color_friendlies");
draw_color_friendlies();
}
}
//Function Number: 78
draw_color_friendlies()
{
level endon("updated_color_friendlies");
var_00 = getarraykeys(level.debug_color_friendlies);
var_01 = [];
var_02 = [];
var_02[var_02.size] = "r";
var_02[var_02.size] = "o";
var_02[var_02.size] = "y";
var_02[var_02.size] = "g";
var_02[var_02.size] = "c";
var_02[var_02.size] = "b";
var_02[var_02.size] = "p";
var_03 = maps\_utility::get_script_palette();
for(var_04 = 0;var_04 < var_02.size;var_04++)
{
var_01[var_02[var_04]] = 0;
}
for(var_04 = 0;var_04 < var_00.size;var_04++)
{
var_05 = level.debug_color_friendlies[var_00[var_04]];
var_01[var_05]++;
}
for(var_04 = 0;var_04 < level.debug_color_huds.size;var_04++)
{
level.debug_color_huds[var_04] destroy();
}
level.debug_color_huds = [];
var_06 = 15;
var_07 = 365;
var_08 = 25;
var_09 = 25;
for(var_04 = 0;var_04 < var_02.size;var_04++)
{
if(var_01[var_02[var_04]] <= 0)
{
continue;
}
for(var_0A = 0;var_0A < var_01[var_02[var_04]];var_0A++)
{
var_0B = newhudelem();
var_0B.x = var_06 + 25 * var_0A;
var_0B.y = var_07;
var_0B setshader("white",16,16);
var_0B.alignx = "left";
var_0B.aligny = "bottom";
var_0B.alpha = 1;
var_0B.color = var_03[var_02[var_04]];
level.debug_color_huds[level.debug_color_huds.size] = var_0B;
}
var_07 = var_07 + var_09;
}
}
//Function Number: 79
playernode()
{
for(;;)
{
if(isdefined(level.player.node))
{
}
wait(0.05);
}
}
//Function Number: 80
drawusers()
{
if(isalive(self.color_user))
{
}
}
//Function Number: 81
debuggoalpos()
{
for(;;)
{
var_00 = getaiarray();
common_scripts\utility::array_thread(var_00,::view_goal_pos);
wait(0.05);
}
}
//Function Number: 82
view_goal_pos()
{
if(!isdefined(self.goalpos))
{
}
}
//Function Number: 83
colordebug()
{
wait(0.5);
var_00 = [];
var_00[var_00.size] = "r";
var_00[var_00.size] = "g";
var_00[var_00.size] = "b";
var_00[var_00.size] = "y";
var_00[var_00.size] = "o";
var_00[var_00.size] = "p";
var_00[var_00.size] = "c";
for(;;)
{
for(var_01 = 0;var_01 < var_00.size;var_01++)
{
var_02 = level.currentcolorforced["allies"][var_00[var_01]];
if(isdefined(var_02))
{
draw_colored_nodes(var_02);
}
}
wait(0.05);
}
}
//Function Number: 84
draw_colored_nodes(param_00)
{
var_01 = level.arrays_of_colorcoded_nodes["allies"][param_00];
common_scripts\utility::array_thread(var_01,::drawusers);
}
//Function Number: 85
add_hud_line(param_00,param_01,param_02)
{
var_03 = newhudelem();
var_03.alignx = "left";
var_03.aligny = "middle";
var_03.x = param_00;
var_03.y = param_01;
var_03.alpha = 1;
var_03.fontscale = 1;
var_03.label = param_02;
level.animsound_hud_extralines[level.animsound_hud_extralines.size] = var_03;
return var_03;
}
//Function Number: 86
get_alias_from_stored(param_00)
{
if(!isdefined(level.animsound_aliases[param_00.animname]))
{
return;
}
if(!isdefined(level.animsound_aliases[param_00.animname][param_00.anime]))
{
return;
}
if(!isdefined(level.animsound_aliases[param_00.animname][param_00.anime][param_00.notetrack]))
{
return;
}
return level.animsound_aliases[param_00.animname][param_00.anime][param_00.notetrack]["soundalias"];
}
//Function Number: 87
is_from_animsound(param_00,param_01,param_02)
{
return isdefined(level.animsound_aliases[param_00][param_01][param_02]["created_by_animSound"]);
}
//Function Number: 88
display_animsound()
{
if(distance(level.player.origin,self.origin) > 1500)
{
return;
}
level.animsounds_thisframe[level.animsounds_thisframe.size] = self;
}
//Function Number: 89
debug_animsoundtag(param_00)
{
}
//Function Number: 90
debug_animsoundtagselected()
{
}
//Function Number: 91
tag_sound(param_00,param_01)
{
if(!isdefined(level.animsound_tagged))
{
return;
}
if(!isdefined(level.animsound_tagged.animsounds[param_01]))
{
return;
}
var_02 = level.animsound_tagged.animsounds[param_01];
var_03 = get_alias_from_stored(var_02);
if(!isdefined(var_03) || is_from_animsound(var_02.animname,var_02.anime,var_02.notetrack))
{
level.animsound_aliases[var_02.animname][var_02.anime][var_02.notetrack]["soundalias"] = param_00;
level.animsound_aliases[var_02.animname][var_02.anime][var_02.notetrack]["created_by_animSound"] = 1;
}
}
//Function Number: 92
tostr(param_00)
{
var_01 = "\";
for(var_02 = 0;var_02 < param_00.size;var_02++)
{
if(param_00[var_02] == "\")
{
var_01 = var_01 + "\\";
var_01 = var_01 + "\";
continue;
}
var_01 = var_01 + param_00[var_02];
}
var_01 = var_01 + "\";
return var_01;
}
//Function Number: 93
linedraw(param_00,param_01,param_02,param_03,param_04,param_05)
{
if(!isdefined(param_02))
{
param_02 = (1,1,1);
}
if(isdefined(param_05))
{
param_05 = param_05 * 20;
for(var_06 = 0;var_06 < param_05;var_06++)
{
wait(0.05);
}
return;
}
wait(0.05);
}
//Function Number: 94
print3ddraw(param_00,param_01,param_02,param_03,param_04)
{
self endon("stop_print3ddraw");
if(!isdefined(param_03))
{
param_03 = 1;
}
if(!isdefined(param_04))
{
param_04 = 1;
}
wait(0.05);
}
//Function Number: 95
complete_me()
{
if(getdvar("credits_active") == "1")
{
wait(7);
setdvar("credits_active","0");
maps\_endmission::credits_end();
return;
}
wait(7);
maps\_utility::nextmission();
}
//Function Number: 96
find_new_chase_target(param_00)
{
}
//Function Number: 97
chasecam(param_00)
{
if(!isdefined(level.chase_cam_last_num))
{
level.chase_cam_last_num = -1;
}
if(level.chase_cam_last_num == param_00)
{
return;
}
find_new_chase_target(param_00);
if(!isdefined(level.chase_cam_target))
{
return;
}
level.chase_cam_last_num = param_00;
if(!isdefined(level.chase_cam_ent))
{
level.chase_cam_ent = level.chase_cam_target common_scripts\utility::spawn_tag_origin();
}
thread chasecam_onent(level.chase_cam_target);
}
//Function Number: 98
chasecam_onent(param_00)
{
level notify("new_chasecam");
level endon("new_chasecam");
param_00 endon("death");
level.player unlink();
level.player playerlinktoblend(level.chase_cam_ent,"tag_origin",2,0.5,0.5);
wait(2);
level.player playerlinktodelta(level.chase_cam_ent,"tag_origin",1,180,180,180,180);
for(;;)
{
wait(0.2);
if(!isdefined(level.chase_cam_target))
{
return;
}
var_01 = level.chase_cam_target.origin;
var_02 = level.chase_cam_target.angles;
var_03 = anglestoforward(var_02);
var_03 = var_03 * 200;
var_01 = var_01 + var_03;
var_02 = level.player getplayerangles();
var_03 = anglestoforward(var_02);
var_03 = var_03 * -200;
level.chase_cam_ent moveto(var_01 + var_03,0.2);
}
}
//Function Number: 99
viewfx()
{
foreach(var_01 in level.createfxent)
{
if(isdefined(var_01.looper))
{
}
}
}
//Function Number: 100
add_key(param_00,param_01)
{
}
//Function Number: 101
print_vehicle_info(param_00)
{
if(!isdefined(level.vnum))
{
level.vnum = 9500;
}
level.vnum++;
var_01 = "bridge_helpers";
add_key("origin",self.origin[0] + " " + self.origin[1] + " " + self.origin[2]);
add_key("angles",self.angles[0] + " " + self.angles[1] + " " + self.angles[2]);
add_key("targetname","helper_model");
add_key("model",self.model);
add_key("classname","script_model");
add_key("spawnflags","4");
add_key("_color","0.443137 0.443137 1.000000");
if(isdefined(param_00))
{
add_key("script_noteworthy",param_00);
}
}
//Function Number: 102
draw_dot_for_ent(param_00)
{
}
//Function Number: 103
draw_dot_for_guy()
{
var_00 = level.player getplayerangles();
var_01 = anglestoforward(var_00);
var_02 = level.player geteye();
var_03 = self geteye();
var_04 = vectortoangles(var_03 - var_02);
var_05 = anglestoforward(var_04);
var_06 = vectordot(var_05,var_01);
}
//Function Number: 104
interactive_warnings()
{
var_00 = getentarray("explodable_barrel","targetname");
var_00 = common_scripts\utility::array_combine(var_00,getentarray("explodable_barrel","script_noteworthy"));
if(!var_00.size)
{
return;
}
foreach(var_02 in var_00)
{
var_02.destructible_type = "explodable_barrel";
var_03 = var_02.model + "2";
precachemodel(var_03);
var_02 setmodel(var_03);
if(isdefined(var_02.target))
{
var_04 = getent(var_02.target,"targetname");
if(isdefined(var_04))
{
var_04.script_destruct_collision = "pre";
}
var_02.targetname = "destructible_toy";
}
}
iprintlnbold("Old Interactive_Objects being converted, rebuild map to avoid this warning ");
}
//Function Number: 105
getspherebounds(param_00)
{
common_scripts\utility::draw_entity_bounds(param_00,1);
}
//Function Number: 106
trackobject(param_00)
{
var_01 = getspherebounds(param_00);
}
//Function Number: 107
debug_draw_anim_path(param_00,param_01,param_02,param_03,param_04,param_05,param_06)
{
}
//Function Number: 108
draw_code_move_info(param_00,param_01,param_02,param_03)
{
}
//Function Number: 109
track_bone_origins(param_00)
{
}
//Function Number: 110
debug_foot_passing()
{
}