mirror of
https://github.com/InfinityLoader/IL-GSC.git
synced 2025-06-07 17:17:50 -05:00
162 lines
4.1 KiB
Plaintext
162 lines
4.1 KiB
Plaintext
/*******************************************************************
|
|
* Decompiled By: Bog
|
|
* Decompiled File: crash_exo_temperature.gsc
|
|
* Game: Call of Duty: Advanced Warfare
|
|
* Platform: PC
|
|
* Function Count: 9
|
|
* Decompile Time: 142 ms
|
|
* Timestamp: 4/22/2024 2:27:09 AM
|
|
*******************************************************************/
|
|
|
|
//Function Number: 1
|
|
precache_exo_temperature()
|
|
{
|
|
precacheshader("hud_exo_temp_bg");
|
|
precacheshader("hud_exo_temp_warning");
|
|
precacheshader("overlay_frozen_2");
|
|
precachestring(&"temperature_fade_out");
|
|
precachestring(&"temperature_fade_in");
|
|
precachestring(&"temperature_warning_blink");
|
|
precachestring(&"temperature_warning_hide");
|
|
}
|
|
|
|
//Function Number: 2
|
|
create_exo_temperature_hud(param_00)
|
|
{
|
|
setomnvar("ui_temperaturegauge_hud",1);
|
|
level.player setclientomnvar("ui_temperaturegauge_external",param_00);
|
|
level.body_temp = 98.6;
|
|
level.exo_temp = param_00 + 25;
|
|
level.exo_temperature_hud = [];
|
|
level.exo_temperature_hud["overlay"] = newhudelem();
|
|
level.exo_temperature_hud["overlay"].x = 0;
|
|
level.exo_temperature_hud["overlay"].y = 0;
|
|
level.exo_temperature_hud["overlay"] setshader("overlay_frozen_2",640,480);
|
|
level.exo_temperature_hud["overlay"].sort = 50;
|
|
level.exo_temperature_hud["overlay"].lowresbackground = 1;
|
|
level.exo_temperature_hud["overlay"].alignx = "left";
|
|
level.exo_temperature_hud["overlay"].aligny = "top";
|
|
level.exo_temperature_hud["overlay"].horzalign = "fullscreen";
|
|
level.exo_temperature_hud["overlay"].vertalign = "fullscreen";
|
|
level.exo_temperature_hud["overlay"].alpha = 0;
|
|
foreach(var_02 in level.exo_temperature_hud)
|
|
{
|
|
var_02.hidewheninmenu = 1;
|
|
}
|
|
|
|
thread monitor_temperature();
|
|
}
|
|
|
|
//Function Number: 3
|
|
remove_exo_temperature_hud(param_00)
|
|
{
|
|
level notify("remove_exo_temperature_hud");
|
|
if(isdefined(param_00) && param_00 > 0)
|
|
{
|
|
luinotifyevent(&"temperature_fade_out",1,int(param_00 * 1000));
|
|
foreach(var_02 in level.exo_temperature_hud)
|
|
{
|
|
var_02 fadeovertime(param_00);
|
|
var_02.alpha = 0;
|
|
}
|
|
|
|
wait(param_00);
|
|
}
|
|
|
|
foreach(var_02 in level.exo_temperature_hud)
|
|
{
|
|
var_02 destroy();
|
|
}
|
|
|
|
level.exo_temperature_hud = undefined;
|
|
setomnvar("ui_temperaturegauge_hud",0);
|
|
}
|
|
|
|
//Function Number: 4
|
|
monitor_temperature()
|
|
{
|
|
level endon("remove_exo_temperature_hud");
|
|
var_00 = 98.6;
|
|
var_01 = 96;
|
|
var_02 = 92.5;
|
|
var_03 = 97;
|
|
var_04 = 91.5;
|
|
var_05 = 0;
|
|
for(;;)
|
|
{
|
|
level.exo_temperature_hud["overlay"].alpha = 1 - clamp(level.body_temp - var_04 / var_03 - var_04,0,1);
|
|
if(level.body_temp < var_01 && !var_05)
|
|
{
|
|
luinotifyevent(&"temperature_warning_blink",1,500);
|
|
var_05 = 1;
|
|
}
|
|
else if(level.body_temp > var_01 && var_05)
|
|
{
|
|
luinotifyevent(&"temperature_warning_hide",1,100);
|
|
var_05 = 0;
|
|
}
|
|
|
|
wait(0.05);
|
|
}
|
|
}
|
|
|
|
//Function Number: 5
|
|
activate_heater()
|
|
{
|
|
}
|
|
|
|
//Function Number: 6
|
|
deactivate_heater()
|
|
{
|
|
}
|
|
|
|
//Function Number: 7
|
|
set_exo_temperature_over_time(param_00,param_01)
|
|
{
|
|
level notify("set_exo_temperature");
|
|
level endon("set_exo_temperature");
|
|
level endon("remove_exo_temperature_hud");
|
|
var_02 = param_00 - level.exo_temp / param_01 * 0.05;
|
|
while(param_01 > 0)
|
|
{
|
|
level.exo_temp = level.exo_temp + var_02;
|
|
param_01 = param_01 - 0.05;
|
|
wait(0.05);
|
|
}
|
|
|
|
level.exo_temp = param_00;
|
|
}
|
|
|
|
//Function Number: 8
|
|
set_operator_temperature_over_time(param_00,param_01)
|
|
{
|
|
level notify("set_operator_temperature");
|
|
level endon("set_operator_temperature");
|
|
level endon("remove_exo_temperature_hud");
|
|
var_02 = param_00 - level.body_temp / param_01 * 0.05;
|
|
while(param_01 > 0)
|
|
{
|
|
level.body_temp = level.body_temp + var_02;
|
|
param_01 = param_01 - 0.05;
|
|
wait(0.05);
|
|
}
|
|
|
|
level.body_temp = param_00;
|
|
}
|
|
|
|
//Function Number: 9
|
|
set_external_temperature_over_time(param_00,param_01)
|
|
{
|
|
level notify("set_external_temperature");
|
|
level endon("set_external_temperature");
|
|
level endon("remove_exo_temperature_hud");
|
|
var_02 = param_00 - level.player getclientomnvar("ui_temperaturegauge_external") / param_01 * 0.05;
|
|
while(param_01 > 0)
|
|
{
|
|
level.player setclientomnvar("ui_temperaturegauge_external",level.player getclientomnvar("ui_temperaturegauge_external") + var_02);
|
|
param_01 = param_01 - 0.05;
|
|
wait(0.05);
|
|
}
|
|
|
|
level.player setclientomnvar("ui_temperaturegauge_external",param_00);
|
|
} |