/******************************************************************* * Decompiled By: Bog * Decompiled File: _art.gsc * Game: Call of Duty: Advanced Warfare * Platform: PC * Function Count: 28 * Decompile Time: 418 ms * Timestamp: 4/22/2024 2:20:04 AM *******************************************************************/ //Function Number: 1 main() { maps\_utility::set_console_status(); level.current_sunflare_setting = "default"; level._clearalltextafterhudelem = 0; dof_init(); tess_init(); precachemenu("dev_vision_noloc"); precachemenu("dev_vision_exec"); level.special_weapon_dof_funcs = []; level.buttons = []; if(!isdefined(level.vision_set_transition_ent)) { level.vision_set_transition_ent = spawnstruct(); level.vision_set_transition_ent.vision_set = ""; level.vision_set_transition_ent.time = 0; } if(!isdefined(level.sunflare_settings)) { level.sunflare_settings = []; } if(!isdefined(level.vision_set_fog)) { level.vision_set_fog = []; create_default_vision_set_fog(level.script); common_scripts\_artcommon::setfogsliders(); } if(!isdefined(level.script)) { level.script = tolower(getdvar("mapname")); } } //Function Number: 2 create_default_vision_set_fog(param_00) { var_01 = maps\_utility::create_vision_set_fog(param_00); var_01.startdist = 3764.17; var_01.halfwaydist = 19391; var_01.red = 0.661137; var_01.green = 0.554261; var_01.blue = 0.454014; var_01.maxopacity = 0.7; var_01.transitiontime = 0; var_01.skyfogintensity = 0; var_01.skyfogminangle = 0; var_01.skyfogmaxangle = 0; var_01.heightfogenabled = 0; var_01.heightfogbaseheight = 0; var_01.heightfoghalfplanedistance = 1000; } //Function Number: 3 get_fog_filename() { if(isusinghdr()) { return "\\share\\raw\\maps\\createart\\" + common_scripts\utility::get_template_level() + "_fog_hdr.gsc"; } return "\\share\\raw\\maps\\createart\\" + common_scripts\utility::get_template_level() + "_fog.gsc"; } //Function Number: 4 dof_set_generic(param_00,param_01,param_02,param_03,param_04,param_05,param_06,param_07,param_08,param_09) { level.dof[param_00][param_01]["nearStart"] = param_02; level.dof[param_00][param_01]["nearEnd"] = param_03; level.dof[param_00][param_01]["nearBlur"] = param_04; level.dof[param_00][param_01]["farStart"] = param_05; level.dof[param_00][param_01]["farEnd"] = param_06; level.dof[param_00][param_01]["farBlur"] = param_07; level.dof[param_00][param_01]["weight"] = param_08; if(isdefined(param_09)) { level.dof[param_00][param_01]["bias"] = param_09; } } //Function Number: 5 dof_blend_interior_generic(param_00) { if(level.dof[param_00]["timeRemaining"] <= 0) { return; } var_01 = min(1,0.05 / level.dof[param_00]["timeRemaining"]); level.dof[param_00]["timeRemaining"] = level.dof[param_00]["timeRemaining"] - 0.05; if(level.dof[param_00]["timeRemaining"] <= 0) { level.dof[param_00]["timeRemaining"] = 0; level.dof[param_00]["current"]["nearStart"] = level.dof[param_00]["goal"]["nearStart"]; level.dof[param_00]["current"]["nearEnd"] = level.dof[param_00]["goal"]["nearEnd"]; level.dof[param_00]["current"]["nearBlur"] = level.dof[param_00]["goal"]["nearBlur"]; level.dof[param_00]["current"]["farStart"] = level.dof[param_00]["goal"]["farStart"]; level.dof[param_00]["current"]["farEnd"] = level.dof[param_00]["goal"]["farEnd"]; level.dof[param_00]["current"]["farBlur"] = level.dof[param_00]["goal"]["farBlur"]; level.dof[param_00]["current"]["weight"] = level.dof[param_00]["goal"]["weight"]; return; } level.dof[param_00]["current"]["nearStart"] = level.dof[param_00]["current"]["nearStart"] + var_01 * level.dof[param_00]["goal"]["nearStart"] - level.dof[param_00]["current"]["nearStart"]; level.dof[param_00]["current"]["nearEnd"] = level.dof[param_00]["current"]["nearEnd"] + var_01 * level.dof[param_00]["goal"]["nearEnd"] - level.dof[param_00]["current"]["nearEnd"]; level.dof[param_00]["current"]["nearBlur"] = level.dof[param_00]["current"]["nearBlur"] + var_01 * level.dof[param_00]["goal"]["nearBlur"] - level.dof[param_00]["current"]["nearBlur"]; level.dof[param_00]["current"]["farStart"] = level.dof[param_00]["current"]["farStart"] + var_01 * level.dof[param_00]["goal"]["farStart"] - level.dof[param_00]["current"]["farStart"]; level.dof[param_00]["current"]["farEnd"] = level.dof[param_00]["current"]["farEnd"] + var_01 * level.dof[param_00]["goal"]["farEnd"] - level.dof[param_00]["current"]["farEnd"]; level.dof[param_00]["current"]["farBlur"] = level.dof[param_00]["current"]["farBlur"] + var_01 * level.dof[param_00]["goal"]["farBlur"] - level.dof[param_00]["current"]["farBlur"]; level.dof[param_00]["current"]["weight"] = level.dof[param_00]["current"]["weight"] + var_01 * level.dof[param_00]["goal"]["weight"] - level.dof[param_00]["current"]["weight"]; } //Function Number: 6 dof_init() { if(getdvar("scr_dof_enable") == "") { setsaveddvar("scr_dof_enable","1"); } setdvar("ads_dof_tracedist",8192); setdvar("ads_dof_maxEnemyDist",10000); setdvar("ads_dof_playerForgetEnemyTime",5000); setdvar("ads_dof_nearStartScale",0.25); setdvar("ads_dof_nearEndScale",0.85); setdvar("ads_dof_farStartScale",1.15); setdvar("ads_dof_farEndScale",3); setdvar("ads_dof_nearBlur",4); setdvar("ads_dof_farBlur",1.5); setdvar("ads_dof_debug",0); var_00 = 1; var_01 = 1; var_02 = 4.5; var_03 = 500; var_04 = 500; var_05 = 0.05; level.dof = []; level.dof["base"] = []; level.dof["base"]["current"] = []; level.dof["base"]["goal"] = []; level.dof["base"]["timeRemaining"] = 0; dof_set_generic("base","current",var_00,var_01,var_02,var_03,var_04,var_05,1,0.5); dof_set_generic("base","goal",0,0,0,0,0,0,0,0.5); level.dof["script"] = []; level.dof["script"]["current"] = []; level.dof["script"]["goal"] = []; level.dof["script"]["timeRemaining"] = 0; dof_set_generic("script","current",0,0,0,0,0,0,0,0.5); dof_set_generic("script","goal",0,0,0,0,0,0,0,0.5); level.dof["ads"] = []; level.dof["ads"]["current"] = []; level.dof["ads"]["goal"] = []; dof_set_generic("ads","current",0,0,0,0,0,0,0,0.5); dof_set_generic("ads","goal",0,0,0,0,0,0,0,0.5); level.dof["results"] = []; level.dof["results"]["current"] = []; dof_set_generic("results","current",var_00,var_01,var_02,var_03,var_04,var_05,1,0.5); foreach(var_07 in level.players) { var_07 thread dof_update(); } } //Function Number: 7 dof_set_base(param_00,param_01,param_02,param_03,param_04,param_05,param_06,param_07) { dof_set_generic("base","goal",param_00,param_01,param_02,param_03,param_04,param_05,1,param_07); level.dof["base"]["timeRemaining"] = param_06; if(param_06 <= 0) { dof_set_generic("base","current",param_00,param_01,param_02,param_03,param_04,param_05,1,param_07); } } //Function Number: 8 dof_enable_script(param_00,param_01,param_02,param_03,param_04,param_05,param_06,param_07) { dof_set_generic("script","goal",param_00,param_01,param_02,param_03,param_04,param_05,1,param_07); level.dof["script"]["timeRemaining"] = param_06; if(param_06 <= 0) { dof_set_generic("script","current",param_00,param_01,param_02,param_03,param_04,param_05,1,param_07); return; } if(level.dof["script"]["current"]["weight"] <= 0) { dof_set_generic("script","current",param_00,param_01,param_02,param_03,param_04,param_05,0,param_07); } } //Function Number: 9 dof_disable_script(param_00) { level.dof["script"]["goal"]["weight"] = 0; level.dof["script"]["timeRemaining"] = param_00; if(param_00 <= 0) { level.dof["script"]["current"]["weight"] = 0; } } //Function Number: 10 dof_enable_ads(param_00,param_01,param_02,param_03,param_04,param_05,param_06,param_07) { dof_set_generic("ads","goal",param_00,param_01,param_02,param_03,param_04,param_05,param_06,param_07); if(level.dof["ads"]["current"]["weight"] <= 0) { dof_set_generic("ads","current",param_00,param_01,param_02,param_03,param_04,param_05,0,param_07); } } //Function Number: 11 dof_blend_interior_ads_element(param_00,param_01,param_02,param_03) { if(param_00 > param_01) { var_04 = param_00 - param_01 * param_03; if(var_04 > param_02) { var_04 = param_02; } else if(var_04 < 1) { var_04 = 1; } if(param_00 - var_04 <= param_01) { return param_01; } else { return param_00 - var_04; } } else if(param_00 < param_01) { var_04 = param_01 - param_00 * param_03; if(var_04 > param_02) { var_04 = param_02; } else if(var_04 < 1) { var_04 = 1; } if(param_00 + var_04 >= param_01) { return param_01; } else { return param_00 + var_04; } } return param_00; } //Function Number: 12 dof_blend_interior_ads() { var_00 = level.dof["ads"]["goal"]["weight"]; if(var_00 < 1) { if(self adsbuttonpressed() && self playerads() > 0) { var_00 = min(1,var_00 + 0.7); } else { var_00 = 0; } level.dof["ads"]["current"]["nearStart"] = level.dof["ads"]["goal"]["nearStart"]; level.dof["ads"]["current"]["nearEnd"] = level.dof["ads"]["goal"]["nearEnd"]; level.dof["ads"]["current"]["nearBlur"] = level.dof["ads"]["goal"]["nearBlur"]; level.dof["ads"]["current"]["farStart"] = level.dof["ads"]["goal"]["farStart"]; level.dof["ads"]["current"]["farEnd"] = level.dof["ads"]["goal"]["farEnd"]; level.dof["ads"]["current"]["farBlur"] = level.dof["ads"]["goal"]["farBlur"]; level.dof["ads"]["current"]["weight"] = var_00; level.dof["ads"]["current"]["bias"] = level.dof["ads"]["goal"]["bias"]; return; } if(isdefined(level.dof_blend_interior_ads_scalar)) { var_01 = level.dof_blend_interior_ads_scalar; } else { var_01 = 0.1; } var_02 = 10; var_03 = max(var_02,abs(level.dof["ads"]["current"]["nearStart"] - level.dof["ads"]["goal"]["nearStart"]) * var_01); var_04 = max(var_02,abs(level.dof["ads"]["current"]["nearEnd"] - level.dof["ads"]["goal"]["nearEnd"]) * var_01); var_05 = max(var_02,abs(level.dof["ads"]["current"]["farStart"] - level.dof["ads"]["goal"]["farStart"]) * var_01); var_06 = max(var_02,abs(level.dof["ads"]["current"]["farEnd"] - level.dof["ads"]["goal"]["farEnd"]) * var_01); var_07 = 0.1; var_08 = 0.1; level.dof["ads"]["current"]["nearStart"] = dof_blend_interior_ads_element(level.dof["ads"]["current"]["nearStart"],level.dof["ads"]["goal"]["nearStart"],var_03,0.33); level.dof["ads"]["current"]["nearEnd"] = dof_blend_interior_ads_element(level.dof["ads"]["current"]["nearEnd"],level.dof["ads"]["goal"]["nearEnd"],var_04,0.33); level.dof["ads"]["current"]["nearBlur"] = dof_blend_interior_ads_element(level.dof["ads"]["current"]["nearBlur"],level.dof["ads"]["goal"]["nearBlur"],var_07,0.33); level.dof["ads"]["current"]["farStart"] = dof_blend_interior_ads_element(level.dof["ads"]["current"]["farStart"],level.dof["ads"]["goal"]["farStart"],var_05,0.33); level.dof["ads"]["current"]["farEnd"] = dof_blend_interior_ads_element(level.dof["ads"]["current"]["farEnd"],level.dof["ads"]["goal"]["farEnd"],var_06,0.33); level.dof["ads"]["current"]["farBlur"] = dof_blend_interior_ads_element(level.dof["ads"]["current"]["farBlur"],level.dof["ads"]["goal"]["farBlur"],var_07,0.33); level.dof["ads"]["current"]["weight"] = 1; level.dof["ads"]["current"]["bias"] = dof_blend_interior_ads_element(level.dof["ads"]["current"]["bias"],level.dof["ads"]["goal"]["bias"],var_08,0.33); } //Function Number: 13 dof_disable_ads() { level.dof["ads"]["goal"]["weight"] = 0; level.dof["ads"]["current"]["weight"] = 0; } //Function Number: 14 dof_apply_to_results(param_00) { var_01 = level.dof[param_00]["current"]["weight"]; var_02 = 1 - var_01; level.dof["results"]["current"]["nearStart"] = level.dof["results"]["current"]["nearStart"] * var_02 + level.dof[param_00]["current"]["nearStart"] * var_01; level.dof["results"]["current"]["nearEnd"] = level.dof["results"]["current"]["nearEnd"] * var_02 + level.dof[param_00]["current"]["nearEnd"] * var_01; level.dof["results"]["current"]["nearBlur"] = level.dof["results"]["current"]["nearBlur"] * var_02 + level.dof[param_00]["current"]["nearBlur"] * var_01; level.dof["results"]["current"]["farStart"] = level.dof["results"]["current"]["farStart"] * var_02 + level.dof[param_00]["current"]["farStart"] * var_01; level.dof["results"]["current"]["farEnd"] = level.dof["results"]["current"]["farEnd"] * var_02 + level.dof[param_00]["current"]["farEnd"] * var_01; level.dof["results"]["current"]["farBlur"] = level.dof["results"]["current"]["farBlur"] * var_02 + level.dof[param_00]["current"]["farBlur"] * var_01; level.dof["results"]["current"]["bias"] = level.dof["results"]["current"]["bias"] * var_02 + level.dof[param_00]["current"]["bias"] * var_01; } //Function Number: 15 dof_calc_results() { dof_blend_interior_generic("base"); dof_blend_interior_generic("script"); dof_blend_interior_ads(); dof_apply_to_results("base"); dof_apply_to_results("script"); dof_apply_to_results("ads"); var_00 = level.dof["results"]["current"]["nearStart"]; var_01 = level.dof["results"]["current"]["nearEnd"]; var_02 = level.dof["results"]["current"]["nearBlur"]; var_03 = level.dof["results"]["current"]["farStart"]; var_04 = level.dof["results"]["current"]["farEnd"]; var_05 = level.dof["results"]["current"]["farBlur"]; var_06 = level.dof["results"]["current"]["bias"]; var_00 = max(0,var_00); var_01 = max(0,var_01); var_03 = max(0,var_03); var_04 = max(0,var_04); var_02 = max(4,var_02); var_02 = min(10,var_02); var_05 = max(0,var_05); var_05 = min(var_02,var_05); if(var_05 > 0) { var_03 = max(var_01,var_03); } var_06 = max(0,var_06); level.dof["results"]["current"]["nearStart"] = var_00; level.dof["results"]["current"]["nearEnd"] = var_01; level.dof["results"]["current"]["nearBlur"] = var_02; level.dof["results"]["current"]["farStart"] = var_03; level.dof["results"]["current"]["farEnd"] = var_04; level.dof["results"]["current"]["farBlur"] = var_05; level.dof["results"]["current"]["bias"] = var_06; } //Function Number: 16 dof_process_ads() { var_00 = self playerads(); if(var_00 <= 0) { dof_disable_ads(); return; } if(isdefined(level.custom_dof_trace)) { [[ level.custom_dof_trace ]](); return; } var_01 = getdvarfloat("ads_dof_tracedist",4096); var_02 = getdvarfloat("ads_dof_maxEnemyDist",0); var_03 = getdvarint("ads_dof_playerForgetEnemyTime",5000); var_04 = getdvarfloat("ads_dof_nearStartScale",0.25); var_05 = getdvarfloat("ads_dof_nearEndScale",0.85); var_06 = getdvarfloat("ads_dof_farStartScale",1.15); var_07 = getdvarfloat("ads_dof_farEndScale",3); var_08 = getdvarfloat("ads_dof_nearBlur",4); var_09 = getdvarfloat("ads_dof_farBlur",2.5); var_0A = self geteye(); var_0B = self getplayerangles(); if(isdefined(self.dof_ref_ent)) { var_0C = combineangles(self.dof_ref_ent.angles,var_0B); } else { var_0C = var_0C; } var_0D = vectornormalize(anglestoforward(var_0C)); var_0E = bullettrace(var_0A,var_0A + var_0D * var_01,1,self,0,0,0,0,0); var_0F = getaiarray("axis"); var_10 = self getcurrentweapon(); if(isdefined(level.special_weapon_dof_funcs[var_10])) { [[ level.special_weapon_dof_funcs[var_10] ]](var_0E,var_0F,var_0A,var_0D,var_00); return; } if(var_0E["fraction"] == 1) { var_01 = 2048; var_11 = 256; var_12 = var_01 * var_06 * 2; } else { var_03 = distance(var_0C,var_10["position"]); var_11 = var_03 * var_06; var_12 = var_02 * var_07; } foreach(var_14 in var_0F) { var_15 = var_14 isenemyaware(); var_16 = var_14 hasenemybeenseen(var_03); if(!var_15 && !var_16) { continue; } var_17 = vectornormalize(var_14.origin - var_0A); var_18 = vectordot(var_0D,var_17); if(var_18 < 0.923) { continue; } var_19 = distance(var_0A,var_14.origin); if(var_19 - 30 < var_11) { var_11 = var_19 - 30; } var_1A = min(var_19,var_02); if(var_1A + 30 > var_12) { var_12 = var_1A + 30; } } if(var_11 > var_12) { var_11 = var_12 - 256; } if(var_11 > var_01) { var_11 = var_01 - 30; } if(var_11 < 1) { var_11 = 1; } if(var_12 < var_01) { var_12 = var_01; } var_1C = var_11 * var_04; var_1D = var_12 * var_07; dof_enable_ads(var_1C,var_11,var_08,var_12,var_1D,var_09,var_00); } //Function Number: 17 dof_process_physical_ads(param_00) { if(isdefined(level.custom_dof_trace)) { return [[ level.custom_dof_trace ]](); } var_01 = getdvarfloat("ads_dof_tracedist",4096); var_02 = getdvarfloat("ads_dof_maxEnemyDist",0); var_03 = getdvarint("ads_dof_playerForgetEnemyTime",5000); var_04 = self geteye(); var_05 = self getplayerangles(); if(isdefined(self.dof_ref_ent)) { var_06 = combineangles(self.dof_ref_ent.angles,var_05); } else { var_06 = var_06; } var_07 = vectornormalize(anglestoforward(var_06)); var_08 = bullettrace(var_04,var_04 + var_07 * var_01,1,self,0,1,0,0,0); var_09 = getaiarray("axis"); var_0A = self getcurrentweapon(); if(isdefined(level.special_weapon_dof_funcs[var_0A])) { return [[ level.special_weapon_dof_funcs[var_0A] ]](var_08,var_09,var_04,var_07,param_00); } var_0B["start"] = distance(var_04,var_08["position"]); var_0B["end"] = var_0B["start"]; foreach(var_0D in var_09) { var_0E = var_0D isenemyaware(); var_0F = var_0D hasenemybeenseen(var_03); if(!var_0E && !var_0F) { continue; } var_10 = vectornormalize(var_0D.origin - var_04); var_11 = vectordot(var_07,var_10); if(var_11 < 0.923) { continue; } var_12 = distance(var_04,var_0D.origin); if(var_12 < var_0B["start"]) { var_0B["start"] = var_12; } var_13 = min(var_12,var_02); if(var_13 > var_0B["end"]) { var_0B["end"] = var_13; } } return var_0B; } //Function Number: 18 javelin_dof(param_00,param_01,param_02,param_03,param_04) { if(param_04 < 0.88) { dof_disable_ads(); return; } var_05 = 10000; var_06 = -1; var_05 = 2400; var_07 = 2400; for(var_08 = 0;var_08 < param_01.size;var_08++) { var_09 = vectornormalize(param_01[var_08].origin - param_02); var_0A = vectordot(param_03,var_09); if(var_0A < 0.923) { continue; } var_0B = distance(param_02,param_01[var_08].origin); if(var_0B < 2500) { var_0B = 2500; } if(var_0B - 30 < var_05) { var_05 = var_0B - 30; } if(var_0B + 30 > var_06) { var_06 = var_0B + 30; } } if(var_05 > var_06) { var_05 = 2400; var_06 = 3000; } else { if(var_05 < 50) { var_05 = 50; } if(var_06 > 2500) { var_06 = 2500; } else if(var_06 < 1000) { var_06 = 1000; } } var_0C = distance(param_02,param_00["position"]); if(var_0C < 2500) { var_0C = 2500; } if(var_05 > var_0C) { var_05 = var_0C - 30; } if(var_05 < 1) { var_05 = 1; } if(var_06 < var_0C) { var_06 = var_0C; } if(var_07 >= var_05) { var_07 = var_05 - 1; } var_0D = var_06 * 4; var_0E = 4; var_0F = 1.8; dof_enable_ads(var_07,var_05,var_0E,var_06,var_0D,var_0F,param_04); } //Function Number: 19 dof_update() { for(;;) { wait 0.05; if(level.level_specific_dof) { continue; } if(!getdvarint("scr_dof_enable")) { continue; } if(getdvarint("r_dof_physical_enable")) { var_00 = self playerads(); if(var_00 > 0) { var_01 = dof_process_physical_ads(var_00); self setadsphysicaldepthoffield(var_01["start"],var_01["end"]); } continue; } dof_process_ads(); dof_calc_results(); var_02 = level.dof["results"]["current"]["nearStart"]; var_03 = level.dof["results"]["current"]["nearEnd"]; var_04 = level.dof["results"]["current"]["farStart"]; var_05 = level.dof["results"]["current"]["farEnd"]; var_06 = level.dof["results"]["current"]["nearBlur"]; var_07 = level.dof["results"]["current"]["farBlur"]; self setdepthoffield(var_02,var_03,var_04,var_05,var_06,var_07); } } //Function Number: 20 tess_init() { var_00 = getdvar("r_tessellation"); if(var_00 == "") { return; } level.tess = spawnstruct(); level.tess.cutoff_distance_current = getdvarfloat("r_tessellationCutoffDistance",960); level.tess.cutoff_distance_goal = level.tess.cutoff_distance_current; level.tess.cutoff_falloff_current = getdvarfloat("r_tessellationCutoffFalloff",320); level.tess.cutoff_falloff_goal = level.tess.cutoff_falloff_current; level.tess.time_remaining = 0; foreach(var_02 in level.players) { var_02 thread tess_update(); } } //Function Number: 21 tess_set_goal(param_00,param_01,param_02) { level.tess.cutoff_distance_goal = param_00; level.tess.cutoff_falloff_goal = param_01; level.tess.time_remaining = param_02; } //Function Number: 22 tess_update() { for(;;) { var_00 = level.tess.cutoff_distance_current; var_01 = level.tess.cutoff_falloff_current; wait 0.05; if(level.tess.time_remaining > 0) { var_02 = level.tess.time_remaining * 20; var_03 = level.tess.cutoff_distance_goal - level.tess.cutoff_distance_current / var_02; var_04 = level.tess.cutoff_falloff_goal - level.tess.cutoff_falloff_current / var_02; level.tess.cutoff_distance_current = level.tess.cutoff_distance_current + var_03; level.tess.cutoff_falloff_current = level.tess.cutoff_falloff_current + var_04; level.tess.time_remaining = level.tess.time_remaining - 0.05; } else { level.tess.cutoff_distance_current = level.tess.cutoff_distance_goal; level.tess.cutoff_falloff_current = level.tess.cutoff_falloff_goal; } if(var_00 != level.tess.cutoff_distance_current) { setsaveddvar("r_tessellationCutoffDistance",level.tess.cutoff_distance_current); } if(var_01 != level.tess.cutoff_falloff_current) { setsaveddvar("r_tessellationCutoffFalloff",level.tess.cutoff_falloff_current); } } } //Function Number: 23 sunflare_changes(param_00,param_01) { if(!isdefined(level.sunflare_settings[param_00])) { return; } self notify("sunflare_start_adjust"); self endon("sunflare_start_adjust"); var_02 = gettime(); var_03 = param_01 * 1000; var_04 = getdvarvector("r_sunflare_position",(0,0,0)); var_05 = gettime() - var_02; var_06 = level.sunflare_settings[param_00].position; level.current_sunflare_setting = param_00; while(var_05 < var_03) { var_06 = level.sunflare_settings[param_00].position; var_07 = min(float(var_05 / var_03),1); var_08 = var_04 + var_06 - var_04 * var_07; setdvar("r_sunflare_position",var_08); setsunflareposition(var_08); wait(0.05); var_05 = gettime() - var_02; } setdvar("r_sunflare_position",level.sunflare_settings[param_00].position); setsunflareposition(var_06); } //Function Number: 24 init_fog_transition() { if(!isdefined(level.fog_transition_ent)) { level.fog_transition_ent = spawnstruct(); level.fog_transition_ent.fogset = ""; level.fog_transition_ent.time = 0; } } //Function Number: 25 set_fog_progress(param_00) { var_01 = 1 - param_00; var_02 = self.start_neardist * var_01 + self.end_neardist * param_00; var_03 = self.start_fardist * var_01 + self.end_fardist * param_00; var_04 = self.start_color * var_01 + self.end_color * param_00; var_05 = self.start_hdrcolorintensity * var_01 + self.end_hdrcolorintensity * param_00; var_06 = self.start_opacity; var_07 = self.end_opacity; var_08 = self.start_skyfogintensity; var_09 = self.start_skyfogminangle; var_0A = self.start_skyfogmaxangle; var_08 = self.start_skyfogintensity * var_01 + self.end_skyfogintensity * param_00; var_09 = self.start_skyfogminangle * var_01 + self.end_skyfogminangle * param_00; var_0A = self.start_skyfogmaxangle * var_01 + self.end_skyfogmaxangle * param_00; if(!isdefined(var_06)) { var_06 = 1; } if(!isdefined(var_07)) { var_07 = 1; } var_0B = var_06 * var_01 + var_07 * param_00; if(self.sunfog_enabled) { var_0C = self.start_suncolor * var_01 + self.end_suncolor * param_00; var_0D = self.start_hdrsuncolorintensity * var_01 + self.end_hdrsuncolorintensity * param_00; var_0E = self.start_sundir * var_01 + self.end_sundir * param_00; var_0F = self.start_sunbeginfadeangle * var_01 + self.end_sunbeginfadeangle * param_00; var_10 = self.start_sunendfadeangle * var_01 + self.end_sunendfadeangle * param_00; var_11 = self.start_sunfogscale * var_01 + self.end_sunfogscale * param_00; setexpfog(var_02,var_03,var_04[0],var_04[1],var_04[2],var_05,var_0B,0.4,var_0C[0],var_0C[1],var_0C[2],var_0D,var_0E,var_0F,var_10,var_11,var_08,var_09,var_0A); return; } setexpfog(var_02,var_03,var_04[0],var_04[1],var_04[2],var_05,var_0B,0.4,var_08,var_09,var_0A); } //Function Number: 26 ssao_set_target_over_time_internal(param_00,param_01) { level notify("ssao_set_target_over_time_internal"); level endon("ssao_set_target_over_time_internal"); maps\_utility::set_console_status(); if(!maps\_utility::is_gen4()) { return; } var_02 = getdvarfloat("r_ssaoScriptScale",1); var_03 = param_01; while(var_03 > 0) { var_04 = min(1,0.05 / var_03); var_05 = var_02; var_02 = var_02 + var_04 * param_00 - var_02; if(var_05 != var_02) { setsaveddvar("r_ssaoScriptScale",var_02); } wait 0.05; var_03 = var_03 - 0.05; } setsaveddvar("r_ssaoScriptScale",param_00); } //Function Number: 27 disable_ssao_over_time(param_00) { level thread ssao_set_target_over_time_internal(0,param_00); } //Function Number: 28 enable_ssao_over_time(param_00) { level thread ssao_set_target_over_time_internal(1,param_00); }