iw6-scripts/maps/homecoming_fx.gsc
2024-02-13 13:20:49 +01:00

574 lines
32 KiB
Plaintext

// IW6 GSC SOURCE
// Generated by https://github.com/xensik/gsc-tool
main()
{
level._effect["vfx_garage_smk_gust_light"] = loadfx( "vfx/moments/homecoming/vfx_garage_smk_gust_light" );
level._effect["vfx_sunflare_desert"] = loadfx( "vfx/ambient/atmospheric/vfx_sunflare_desert" );
level._effect["vfx_window_smash_hc"] = loadfx( "vfx/moments/homecoming/vfx_window_smash_hc" );
level._effect["vfx_hc_fire_wall_far"] = loadfx( "vfx/moments/homecoming/vfx_hc_fire_wall_far" );
level._effect["vfx_hc_fire_window"] = loadfx( "vfx/moments/homecoming/vfx_hc_fire_window" );
level._effect["dlight_glow_medium_green_cockpit"] = loadfx( "vfx/moments/homecoming/dlight_glow_medium_green_cockpit" );
level._effect["smoky_fluorescent_light_fit"] = loadfx( "vfx/moments/homecoming/smoky_fluorescent_light_fit" );
level._effect["fluorescent_light_fit_flicker"] = loadfx( "vfx/moments/homecoming/fluorescent_light_fit_flicker" );
level._effect["vfx_particulates_fluorescent_lit"] = loadfx( "vfx/moments/homecoming/vfx_particulates_fluorescent_lit" );
level._effect["small_fluorescent_light_fit_green"] = loadfx( "vfx/moments/homecoming/small_fluorescent_light_fit_green" );
level._effect["fluorescent_light_fit"] = loadfx( "vfx/moments/homecoming/fluorescent_light_fit" );
level._effect["vfx_ceiling_cracks"] = loadfx( "vfx/moments/homecoming/vfx_ceiling_cracks" );
level._effect["vfx_sparkdrip_runner_nolod"] = loadfx( "vfx/moments/homecoming/vfx_sparkdrip_runner_nolod" );
level._effect["vfx_hc_fire_wall_nolod"] = loadfx( "vfx/moments/homecoming/vfx_hc_fire_wall_nolod" );
level._effect["vfx_hc_fire_wall_nolod"] = loadfx( "vfx/moments/homecoming/vfx_hc_fire_wall_nolod" );
level._effect["vfx_sparkdrip_runner_nolod"] = loadfx( "vfx/moments/homecoming/vfx_sparkdrip_runner_nolod" );
level._effect["vfx_flak_blast_moving"] = loadfx( "vfx/moments/homecoming/vfx_flak_blast_moving" );
level._effect["warm_light_30_rect_flicker"] = loadfx( "vfx/moments/homecoming/warm_light_30_rect_flicker" );
level._effect["warm_light_30_rect_nolight"] = loadfx( "vfx/moments/homecoming/warm_light_30_rect_nolight" );
level._effect["heli_pipe_snap_2x"] = loadfx( "vfx/moments/homecoming/heli_pipe_snap_2x" );
level._effect["vfx_glow_red_light_200_blinker"] = loadfx( "vfx/moments/homecoming/vfx_glow_red_light_200_blinker" );
level._effect["vfx_antiair_flak_runner"] = loadfx( "vfx/moments/homecoming/vfx_antiair_flak_runner" );
level._effect["vfx_mp_electrical_sparks"] = loadfx( "vfx/moments/homecoming/vfx_mp_electrical_sparks" );
level._effect["vfx_green_blinking_light_sm"] = loadfx( "vfx/ambient/lights/vfx_green_blinking_light_sm" );
level._effect["vfx_glow_green_light_15_nolight"] = loadfx( "vfx/ambient/lights/vfx_glow_green_light_15_nolight" );
level._effect["vfx_glow_red_light_30_blinker_nolight"] = loadfx( "vfx/ambient/lights/vfx_glow_red_light_30_blinker_nolight" );
level._effect["vfx_glow_red_light_5_blinker_dlight"] = loadfx( "vfx/ambient/lights/vfx_glow_red_light_5_blinker_dlight" );
level._effect["cloud_tunnel"] = loadfx( "fx/maps/homecoming/cloud_tunnel" );
level._effect["window_volumetric_long"] = loadfx( "fx/maps/homecoming/window_volumetric_long" );
level._effect["vfx_garage_smk_start"] = loadfx( "vfx/moments/homecoming/vfx_garage_smk_start" );
level._effect["vfx_structure_collapse"] = loadfx( "vfx/moments/homecoming/vfx_structure_collapse" );
level._effect["vfx_garage_smk_gust_sm"] = loadfx( "vfx/moments/homecoming/vfx_garage_smk_gust_sm" );
level._effect["vfx_garage_smk_gust"] = loadfx( "vfx/moments/homecoming/vfx_garage_smk_gust" );
level._effect["vfx_balcony_collapse_dust"] = loadfx( "vfx/moments/homecoming/vfx_balcony_collapse_dust" );
level._effect["vfx_hc_fire_wall_cheap"] = loadfx( "vfx/moments/homecoming/vfx_hc_fire_wall_cheap" );
level._effect["vfx_light_glow"] = loadfx( "vfx/moments/homecoming/vfx_light_glow" );
level._effect["vfx_bugs"] = loadfx( "vfx/moments/homecoming/vfx_bugs" );
level._effect["vfx_fire_mini"] = loadfx( "vfx/moments/homecoming/vfx_fire_mini" );
level._effect["vfx_tower_explosion_dust"] = loadfx( "vfx/moments/homecoming/vfx_tower_explosion_dust" );
level._effect["vfx_balcony_bust"] = loadfx( "vfx/moments/homecoming/vfx_balcony_bust" );
level._effect["vfx_tower_glass_break"] = loadfx( "vfx/moments/homecoming/vfx_tower_glass_break" );
level._effect["vfx_exp_airport_tower"] = loadfx( "vfx/moments/homecoming/vfx_exp_airport_tower" );
level._effect["vfx_airport_exp_fallout"] = loadfx( "vfx/moments/homecoming/vfx_airport_exp_fallout" );
level._effect["vfx_fire_lrg_airport_tower"] = loadfx( "vfx/moments/homecoming/vfx_fire_lrg_airport_tower" );
level._effect["vfx_ceiling_breach"] = loadfx( "vfx/moments/homecoming/vfx_ceiling_breach" );
level._effect["vfx_wall_breach"] = loadfx( "vfx/moments/homecoming/vfx_wall_breach" );
level._effect["vfx_floor_fire"] = loadfx( "vfx/moments/homecoming/vfx_floor_fire" );
level._effect["vfx_hovercraft_drip"] = loadfx( "vfx/moments/homecoming/vfx_hovercraft_drip" );
level._effect["vfx_hovercraft_dust_fall"] = loadfx( "vfx/moments/homecoming/vfx_hovercraft_dust_fall" );
level._effect["vfx_exp_mortar_lg"] = loadfx( "vfx/moments/homecoming/vfx_exp_mortar_lg" );
level._effect["vfx_exp_mortar_sm"] = loadfx( "vfx/moments/homecoming/vfx_exp_mortar_sm" );
level._effect["vfx_fire_falling_runner_hc"] = loadfx( "vfx/moments/homecoming/vfx_fire_falling_runner_hc" );
level._effect["vfx_burnt_room_embers"] = loadfx( "vfx/moments/homecoming/vfx_burnt_room_embers" );
level._effect["vfx_sparkdrip_runner"] = loadfx( "vfx/moments/homecoming/vfx_sparkdrip_runner" );
level._effect["debris_smolder_large"] = loadfx( "vfx/ambient/fire/debris_smolder_large" );
level._effect["vfx_fire_wall_medium"] = loadfx( "vfx/ambient/fire/wall/vfx_fire_wall_medium" );
level._effect["vfx_fire_server_sov"] = loadfx( "vfx/ambient/fire/electrical/vfx_fire_server_sov" );
level._effect["vfx_fireplace"] = loadfx( "vfx/ambient/fire/vfx_fireplace" );
level._effect["vfx_sprinkler_system"] = loadfx( "vfx/moments/homecoming/vfx_sprinkler_system" );
level._effect["vfx_spklr_impact_home"] = loadfx( "vfx/moments/homecoming/vfx_spklr_impact_home" );
level._effect["vfx_hovercraft_wash"] = loadfx( "vfx/moments/homecoming/vfx_hovercraft_wash" );
level._effect["vfx_trench_blast"] = loadfx( "vfx/moments/homecoming/vfx_trench_blast" );
level._effect["vfx_ceiling_smoke"] = loadfx( "vfx/moments/homecoming/vfx_ceiling_smoke" );
level._effect["vfx_wall_smoke"] = loadfx( "vfx/moments/homecoming/vfx_wall_smoke" );
level._effect["vfx_antiair_tracer_flak_runner"] = loadfx( "vfx/moments/homecoming/vfx_antiair_tracer_flak_runner" );
level._effect["vfx_flak_blast"] = loadfx( "vfx/moments/homecoming/vfx_flak_blast" );
level._effect["vfx_exp_hovercraft_missle"] = loadfx( "vfx/moments/homecoming/vfx_exp_hovercraft_missle" );
level._effect["vfx_hesco_dust_blast"] = loadfx( "vfx/moments/homecoming/vfx_hesco_dust_blast" );
level._effect["vfx_lens_flare_homec"] = loadfx( "vfx/moments/homecoming/vfx_lens_flare_homec" );
level._effect["vfx_hesco_explosion"] = loadfx( "vfx/moments/homecoming/vfx_hesco_explosion" );
level._effect["vfx_hoverc_smoke_gren"] = loadfx( "vfx/moments/homecoming/vfx_hoverc_smoke_gren" );
level._effect["vfx_battlefield_ground_smk_bright"] = loadfx( "vfx/moments/homecoming/vfx_battlefield_ground_smk_bright" );
level._effect["vfx_homec_fire_wall_lrg"] = loadfx( "vfx/moments/homecoming/vfx_homec_fire_wall_lrg" );
level._effect["vfx_homec_fire_wall_small"] = loadfx( "vfx/moments/homecoming/vfx_homec_fire_wall_small" );
level._effect["vfx_hallway_explosion"] = loadfx( "vfx/moments/homecoming/vfx_hallway_explosion" );
level._effect["vfx_lens_flare_home"] = loadfx( "vfx/moments/homecoming/vfx_lens_flare_home" );
level._effect["vfx_hesco_large_fire"] = loadfx( "vfx/moments/homecoming/vfx_hesco_large_fire" );
level._effect["vfx_hesco_building_fire"] = loadfx( "vfx/moments/homecoming/vfx_hesco_building_fire" );
level._effect["vfx_signal_smoke_red"] = loadfx( "vfx/moments/homecoming/vfx_signal_smoke_red" );
level._effect["vfx_exp_mortar"] = loadfx( "vfx/moments/homecoming/vfx_exp_mortar" );
level._effect["vfx_lightning_cloud_runner"] = loadfx( "vfx/moments/homecoming/vfx_lightning_cloud_runner" );
level._effect["vfx_room_dust_sha"] = loadfx( "vfx/moments/homecoming/vfx_room_dust_sha" );
level._effect["vfx_crater_smold"] = loadfx( "vfx/moments/homecoming/vfx_crater_smold" );
level._effect["vfx_battlefield_ground_smk"] = loadfx( "vfx/moments/homecoming/vfx_battlefield_ground_smk" );
level._effect["vfx_debris_fire_tiny"] = loadfx( "vfx/moments/mp_chasm/vfx_debris_fire_tiny" );
level._effect["vfx_debris_fire_sm"] = loadfx( "vfx/moments/mp_chasm/vfx_debris_fire_sm" );
level._effect["vfx_ground_fire"] = loadfx( "vfx/moments/homecoming/vfx_ground_fire" );
level._effect["vfx_thin_dust_fall_runner"] = loadfx( "vfx/moments/homecoming/vfx_thin_dust_fall_runner" );
level._effect["vfx_battle_fallout_nodense"] = loadfx( "vfx/moments/homecoming/vfx_battle_fallout_nodense" );
level._effect["vfx_battle_field_sm"] = loadfx( "vfx/moments/homecoming/vfx_battle_field_sm" );
level._effect["vfx_hc_ocean_waves_blowoff"] = loadfx( "vfx/ambient/water/vfx_hc_ocean_waves_blowoff" );
level._effect["vfx_hc_ocean_waves_splash"] = loadfx( "vfx/ambient/water/vfx_hc_ocean_waves_splash" );
level._effect["smk_plume_black_xsml_hc"] = loadfx( "vfx/ambient/smoke/smk_plume_black_xsml_hc" );
level._effect["vfx_sparks_lights_hc"] = loadfx( "vfx/ambient/sparks/vfx_sparks_lights_hc" );
level._effect["vfx_smk_building_damage"] = loadfx( "vfx/ambient/smoke/vfx_smk_building_damage" );
level._effect["vfx_smk_vista_hc"] = loadfx( "vfx/ambient/smoke/vfx_smk_vista_hc" );
level._effect["vfx_smoking_gun"] = loadfx( "vfx/moments/homecoming/vfx_smoking_gun" );
level._effect["vfx_wall_smoke_fire"] = loadfx( "vfx/moments/homecoming/vfx_wall_smoke_fire" );
level._effect["vfx_homec_fire_wall_lrg_cheap"] = loadfx( "vfx/moments/homecoming/vfx_homec_fire_wall_lrg_cheap" );
precachefx();
mortarfx();
treadfx();
if ( !getdvarint( "r_reflectionProbeGenerate" ) )
{
maps\createfx\homecoming_fx::main();
maps\createfx\homecoming_sound::main();
}
}
precachefx()
{
recruits_fx_precache();
level._effect["body_impact1"] = loadfx( "vfx/gameplay/impacts/flesh/vfx_flesh_hit_body_fatal" );
level._effect["body_impact2"] = loadfx( "vfx/gameplay/impacts/flesh/vfx_flesh_hit_body_fatal" );
level._effect["headshot_blood"] = loadfx( "vfx/gameplay/impacts/flesh/vfx_flesh_hit_head_fatal" );
level._effect["blood_pool"] = loadfx( "fx/impacts/deathfx_bloodpool_generic" );
level._effect["foliage_dub_potted_spikey_plant"] = loadfx( "fx/props/foliage_dub_potted_spikey_plant" );
level._effect["player_embers"] = loadfx( "vfx/moments/homecoming/vfx_onplayer_embers" );
level._effect["drone_tracer"] = loadfx( "fx/_requests/homecoming/drone_tracer" );
level._effect["mg_tracer"] = loadfx( "fx/_requests/homecoming/mg_tracer" );
level._effect["chaingun_shellEject"] = loadfx( "fx/_requests/homecoming/chaingun_shelleject" );
level._effect["artemis_muzzleflash"] = loadfx( "fx/muzzleflashes/bmp_flash_wv" );
level._effect["artemis_tracer"] = loadfx( "fx/misc/f15_20mm_tracer_close_ac130" );
level._effect["dragons_teeth_concrete_fx"] = loadfx( "fx/breakables/toy_concrete_barrier_01" );
level._effect["destructible_sandbags_fx"] = loadfx( "fx/_requests/homecoming/destructible_sandbags_explosion" );
level._effect["hind_damage_explosion"] = loadfx( "fx/explosions/grenadeexp_default" );
level._effect["hind_damage_trail"] = loadfx( "fx/fire/fire_smoke_trail_L" );
level._effect["helicopter_explosion_hind_chernobyl"] = loadfx( "fx/explosions/helicopter_explosion_hind_chernobyl" );
level._effect["grenadeexp_default"] = loadfx( "fx/explosions/grenadeexp_default" );
level._effect["fire_smoke_trail_L"] = loadfx( "fx/fire/fire_smoke_trail_L" );
level._effect["nh90_damage_explosion"] = loadfx( "fx/explosions/clusterbomb_exp_small_no_fount" );
level._effect["nh90_damage_trail"] = loadfx( "fx/smoke/smoke_trail_black_heli" );
level._effect["osprey_engine_explosion"] = loadfx( "fx/explosions/heli_engine_osprey_explosion" );
level._effect["welding_sparks"] = loadfx( "fx/misc/factory_welding_runner" );
level._effect["smoke_red_trail"] = loadfx( "fx/_requests/homecoming/signal_smoke_red_trail" );
level._effect["red_signal_smoke"] = loadfx( "vfx/moments/homecoming/vfx_signal_smoke_red" );
level._effect["mg_sparks"] = loadfx( "fx/explosions/powerlines_a" );
level._effect["phalanx_tracer"] = loadfx( "fx/misc/f15_20mm_tracer_close_ac130" );
level._effect["phalanx_missile_explosion"] = loadfx( "fx/explosions/aerial_explosion" );
level._effect["tank_flash"] = loadfx( "fx/muzzleflashes/abrams_flash_wv" );
level._effect["heli_missile_explosion"] = loadfx( "fx/explosions/clusterbomb_exp_small_no_fount" );
level._effect["m880_death_fx"] = loadfx( "vfx/gameplay/explosions/vfx_exp_t90ms_end" );
level._effect["chopper_minigun_tracer"] = loadfx( "fx/_requests/homecoming/mg_tracer" );
level._effect["chopper_flare"] = loadfx( "fx/_requests/apache/apache_flare_ai" );
level._effect["chopper_flare_explosion"] = loadfx( "fx/_requests/apache/apache_trophy_explosion_ai" );
level._effect["falling_debris_large"] = loadfx( "fx/misc/falling_debris_large" );
level._effect["ceiling_debris_1"] = loadfx( "fx/dust/ceiling_dust_default" );
level._effect["ceiling_debris_2"] = loadfx( "fx/explosions/ceiling_concrete_small" );
level._effect["artillery_explosion"] = loadfx( "fx/explosions/mosque_impact_dirt" );
level._effect["artillery_explosion_player"] = loadfx( "fx/_requests/homecoming/artillery_explosion" );
level._effect["artillery_explosion_metal_tower"] = loadfx( "fx/_requests/homecoming/artillery_explosion_metal_tower" );
level._effect["artillery_raining_dirt"] = loadfx( "fx/_requests/homecoming/artillery_raining_dirt" );
level._effect["artillery_hesco_tower_explosion"] = loadfx( "fx/explosions/building_missilehit" );
level._effect["artillery_sand_explosion"] = loadfx( "fx/explosions/tank_impact_sand" );
level._effect["hovercraft_smoke"] = loadfx( "vfx/moments/homecoming/vfx_hoverc_smoke_gren" );
level._effect["hovercraft_missile_trail"] = loadfx( "fx/smoke/smoke_geotrail_javelin" );
level._effect["balcony_impact_sand_1"] = loadfx( "vfx/gameplay/impacts/shot/vfx_imp_shot_sand" );
level._effect["balcony_impact_sand_2"] = loadfx( "vfx/gameplay/impacts/vfx_sand_impact" );
level._effect["a10_damaged_smoke"] = loadfx( "fx/_requests/homecoming/a10_damaged_smoke" );
level._effect["airplane_smoke_trail"] = loadfx( "fx/smoke/smoke_trail_black_heli" );
level._effect["a10_explosion"] = loadfx( "fx/explosions/a10_explosion" );
level._effect["a10_30mm_smoke"] = loadfx( "fx/smoke/smoke_trail_white_heli" );
level._effect["a10_aerial_explosion"] = loadfx( "fx/explosions/vehicle_explosion_slamraam_no_missiles" );
level._effect["hovercraft_side_sand"] = loadfx( "fx/treadfx/tread_sand_satfarm" );
level._effect["aerial_explosion_mig29"] = loadfx( "fx/explosions/aerial_explosion_mig29" );
level._effect["mig_ignite"] = loadfx( "fx/fire/jet_afterburner_ignite" );
level._effect["tower_missile_trails"] = loadfx( "fx/smoke/smoke_geotrail_javelin" );
level._effect["sprinkler_screeneffect"] = loadfx( "vfx/gameplay/screen_effects/vfx_scrnfx_tocam_waterdrops_xs" );
level._effect["mortar_sm"] = loadfx( "vfx/moments/homecoming/vfx_exp_mortar_sm" );
level._effect["extinguisher_spray"] = loadfx( "vfx/moments/homecoming/vfx_fire_extinguisher_spray" );
level._effect["beam_fire"] = loadfx( "vfx/moments/homecoming/vfx_fire_mini_script" );
level._effect["player_stabbed"] = loadfx( "vfx/moments/homecoming/vfx_stab_blood" );
level._effect["enemy_mask_breath"] = loadfx( "fx/misc/cold_breath_cheap" );
level._effect["end_ceiling_charge"] = loadfx( "vfx/moments/homecoming/vfx_ceiling_cracks" );
}
mortarfx()
{
level._effect["mortar"]["sand"] = loadfx( "vfx/moments/homecoming/vfx_exp_mortar" );
level._effect["mortar"]["sand_sm"] = loadfx( "vfx/moments/homecoming/vfx_exp_mortar_sm" );
level._effect["mortar"]["concrete"] = loadfx( "vfx/moments/homecoming/vfx_exp_mortar_sm" );
level._effect["mortar"]["water"] = loadfx( "fx/_requests/oilrocks/vfx_apache_missile_water_impact" );
level.scr_sound["mortar"]["incomming"] = "mortar_incoming";
level.scr_sound["mortar"]["dirt"] = "mortar_explosion_big_dirt";
level.scr_sound["mortar"]["sand"] = "mortar_explosion_big_dirt";
level.scr_sound["mortar"]["sand_sm"] = "mortar_explosion_dirt";
level.scr_sound["mortar"]["concrete"] = "mortar_explosion_dirt";
level.scr_sound["mortar"]["mud"] = "mortar_explosion_big_dirt";
level.scr_sound["mortar"]["water"] = "mortar_explosion_water";
}
treadfx()
{
var_0 = "vfx/gameplay/tread_fx/vfx_heli_dust_sand";
maps\_treadfx::setvehiclefx( "script_vehicle_nh90", "brick", var_0 );
maps\_treadfx::setvehiclefx( "script_vehicle_nh90", "bark", var_0 );
maps\_treadfx::setvehiclefx( "script_vehicle_nh90", "carpet", var_0 );
maps\_treadfx::setvehiclefx( "script_vehicle_nh90", "cloth", var_0 );
maps\_treadfx::setvehiclefx( "script_vehicle_nh90", "concrete", var_0 );
maps\_treadfx::setvehiclefx( "script_vehicle_nh90", "dirt", var_0 );
maps\_treadfx::setvehiclefx( "script_vehicle_nh90", "flesh", var_0 );
maps\_treadfx::setvehiclefx( "script_vehicle_nh90", "foliage", var_0 );
maps\_treadfx::setvehiclefx( "script_vehicle_nh90", "glass", var_0 );
maps\_treadfx::setvehiclefx( "script_vehicle_nh90", "grass", var_0 );
maps\_treadfx::setvehiclefx( "script_vehicle_nh90", "gravel", var_0 );
maps\_treadfx::setvehiclefx( "script_vehicle_nh90", "ice", var_0 );
maps\_treadfx::setvehiclefx( "script_vehicle_nh90", "metal", var_0 );
maps\_treadfx::setvehiclefx( "script_vehicle_nh90", "mud", var_0 );
maps\_treadfx::setvehiclefx( "script_vehicle_nh90", "paper", var_0 );
maps\_treadfx::setvehiclefx( "script_vehicle_nh90", "plaster", var_0 );
maps\_treadfx::setvehiclefx( "script_vehicle_nh90", "rock", var_0 );
maps\_treadfx::setvehiclefx( "script_vehicle_nh90", "sand", var_0 );
maps\_treadfx::setvehiclefx( "script_vehicle_nh90", "snow", var_0 );
maps\_treadfx::setvehiclefx( "script_vehicle_nh90", "water", var_0 );
maps\_treadfx::setvehiclefx( "script_vehicle_nh90", "wood", var_0 );
maps\_treadfx::setvehiclefx( "script_vehicle_nh90", "asphalt", var_0 );
maps\_treadfx::setvehiclefx( "script_vehicle_nh90", "ceramic", var_0 );
maps\_treadfx::setvehiclefx( "script_vehicle_nh90", "plastic", var_0 );
maps\_treadfx::setvehiclefx( "script_vehicle_nh90", "rubber", var_0 );
maps\_treadfx::setvehiclefx( "script_vehicle_nh90", "cushion", var_0 );
maps\_treadfx::setvehiclefx( "script_vehicle_nh90", "fruit", var_0 );
maps\_treadfx::setvehiclefx( "script_vehicle_nh90", "painted metal", var_0 );
maps\_treadfx::setvehiclefx( "script_vehicle_nh90", "default", var_0 );
maps\_treadfx::setvehiclefx( "script_vehicle_nh90", "none", var_0 );
maps\_treadfx::setvehiclefx( "script_vehicle_hind_battle", "brick", var_0 );
maps\_treadfx::setvehiclefx( "script_vehicle_hind_battle", "bark", var_0 );
maps\_treadfx::setvehiclefx( "script_vehicle_hind_battle", "carpet", var_0 );
maps\_treadfx::setvehiclefx( "script_vehicle_hind_battle", "cloth", var_0 );
maps\_treadfx::setvehiclefx( "script_vehicle_hind_battle", "concrete", var_0 );
maps\_treadfx::setvehiclefx( "script_vehicle_hind_battle", "dirt", var_0 );
maps\_treadfx::setvehiclefx( "script_vehicle_hind_battle", "flesh", var_0 );
maps\_treadfx::setvehiclefx( "script_vehicle_hind_battle", "foliage", var_0 );
maps\_treadfx::setvehiclefx( "script_vehicle_hind_battle", "glass", var_0 );
maps\_treadfx::setvehiclefx( "script_vehicle_hind_battle", "grass", var_0 );
maps\_treadfx::setvehiclefx( "script_vehicle_hind_battle", "gravel", var_0 );
maps\_treadfx::setvehiclefx( "script_vehicle_hind_battle", "ice", var_0 );
maps\_treadfx::setvehiclefx( "script_vehicle_hind_battle", "metal", var_0 );
maps\_treadfx::setvehiclefx( "script_vehicle_hind_battle", "mud", var_0 );
maps\_treadfx::setvehiclefx( "script_vehicle_hind_battle", "paper", var_0 );
maps\_treadfx::setvehiclefx( "script_vehicle_hind_battle", "plaster", var_0 );
maps\_treadfx::setvehiclefx( "script_vehicle_hind_battle", "rock", var_0 );
maps\_treadfx::setvehiclefx( "script_vehicle_hind_battle", "sand", var_0 );
maps\_treadfx::setvehiclefx( "script_vehicle_hind_battle", "snow", var_0 );
maps\_treadfx::setvehiclefx( "script_vehicle_hind_battle", "water", var_0 );
maps\_treadfx::setvehiclefx( "script_vehicle_hind_battle", "wood", var_0 );
maps\_treadfx::setvehiclefx( "script_vehicle_hind_battle", "asphalt", var_0 );
maps\_treadfx::setvehiclefx( "script_vehicle_hind_battle", "ceramic", var_0 );
maps\_treadfx::setvehiclefx( "script_vehicle_hind_battle", "plastic", var_0 );
maps\_treadfx::setvehiclefx( "script_vehicle_hind_battle", "rubber", var_0 );
maps\_treadfx::setvehiclefx( "script_vehicle_hind_battle", "cushion", var_0 );
maps\_treadfx::setvehiclefx( "script_vehicle_hind_battle", "fruit", var_0 );
maps\_treadfx::setvehiclefx( "script_vehicle_hind_battle", "painted metal", var_0 );
maps\_treadfx::setvehiclefx( "script_vehicle_hind_battle", "default", var_0 );
maps\_treadfx::setvehiclefx( "script_vehicle_hind_battle", "none", var_0 );
}
recruits_fx_precache()
{
level._effect["smk_plume_black_xsml_hc_recruits"] = loadfx( "vfx/ambient/smoke/smk_plume_black_xsml_hc_recruits" );
level._effect["vfx_periph_smk_war_vista"] = loadfx( "vfx/ambient/skybox/vfx_perif_smk_war_vista" );
level._effect["window_volumetric"] = loadfx( "fx/maps/hijack/window_volumetric" );
level._effect["window_volumetric_long"] = loadfx( "fx/maps/hijack/window_volumetric_long" );
level._effect["window_volumetric_open"] = loadfx( "fx/maps/hijack/window_volumetric_open" );
level._effect["vfx_antiair_tracer_flak_short"] = loadfx( "vfx/moments/homecoming/vfx_antiair_tracer_flak_short" );
level._effect["vfx_antiair_tracer_flak"] = loadfx( "vfx/moments/homecoming/vfx_antiair_tracer_flak" );
level._effect["antiair_flak_runner"] = loadfx( "vfx/moments/homecoming/vfx_antiair_flak_runner" );
level._effect["antiair_tracer_flak_runner"] = loadfx( "vfx/moments/homecoming/vfx_antiair_tracer_flak_runner" );
level._effect["flak_blast_moving"] = loadfx( "vfx/moments/homecoming/vfx_flak_blast_moving" );
level._effect["glow_green_light_15_nolight"] = loadfx( "vfx/ambient/lights/vfx_glow_green_light_15_nolight" );
level._effect["mp_electrical_sparks"] = loadfx( "vfx/moments/homecoming/vfx_mp_electrical_sparks" );
level._effect["recruit_flak_moving_smk_lite"] = loadfx( "vfx/moments/homecoming/vfx_recruit_flak_moving_smk_lite" );
level._effect["recruit_passing_cloud"] = loadfx( "vfx/moments/homecoming/vfx_recruit_passing_cloud" );
level._effect["warm_light_30_rect_flicker"] = loadfx( "vfx/moments/homecoming/warm_light_30_rect_flicker" );
level._effect["warm_light_30_rect_nolight"] = loadfx( "vfx/moments/homecoming/warm_light_30_rect_nolight" );
}
homecoming_recruits_fx()
{
setup_volumetric_light_anims();
thread setup_volumetric_lights();
thread lgt_init();
}
lgt_init()
{
common_scripts\utility::flag_init( "lgt_random_intensity_stop" );
var_0 = getent( "chopper_sun", "script_noteworthy" );
if ( isdefined( var_0 ) )
{
if ( maps\_utility::is_gen4() )
var_0 lgt_sun_intensity_ng();
else
var_0 lgt_sun_intensity_cg();
}
}
lgt_sun_intensity_ng()
{
self setlightintensity( 2.0 );
self setlightcolor( ( 0.792, 0.6, 0.529 ) );
thread changelightintensityrandom( 2.0, 0.35, 0.5, 0.1, 0.9 );
wait 8;
thread easychangelightcolorovertime( ( 0.964, 0.603, 0.364 ), 10 );
wait 4;
common_scripts\utility::flag_set( "lgt_random_intensity_stop" );
changelightintensityovertimerandom( 4.0, 15, 0.35, 0.45 );
common_scripts\utility::flag_clear( "lgt_random_intensity_stop" );
thread changelightintensityrandom( 4.0, 0.3, 0.4, 0.3, 0.9 );
wait 5;
common_scripts\utility::flag_set( "lgt_random_intensity_stop" );
wait 3;
common_scripts\utility::flag_clear( "lgt_random_intensity_stop" );
thread changelightintensityrandom( 4.0, 0.3, 0.4, 0.3, 2.5 );
}
lgt_sun_intensity_cg()
{
self setlightintensity( 1.5 );
self setlightcolor( ( 0.792, 0.6, 0.529 ) );
thread changelightintensityrandom( 1.5, 0.3, 0.4, 0.1, 0.9 );
wait 8;
thread easychangelightcolorovertime( ( 0.964, 0.603, 0.364 ), 10 );
wait 4;
common_scripts\utility::flag_set( "lgt_random_intensity_stop" );
changelightintensityovertimerandom( 2.0, 15, 0.25, 0.35 );
common_scripts\utility::flag_clear( "lgt_random_intensity_stop" );
thread changelightintensityrandom( 2.0, 0.2, 0.3, 0.3, 0.9 );
wait 5;
common_scripts\utility::flag_set( "lgt_random_intensity_stop" );
wait 3;
common_scripts\utility::flag_clear( "lgt_random_intensity_stop" );
thread changelightintensityrandom( 2.0, 0.2, 0.3, 0.3, 2.5 );
}
changelightintensityovertime( var_0, var_1 )
{
var_2 = self getlightintensity();
var_3 = int( var_1 / 0.05 );
var_4 = ( var_0 - var_2 ) / var_3;
var_5 = var_2;
for ( var_6 = 0; var_6 < var_3; var_6++ )
{
var_5 = var_5 + var_4;
self setlightintensity( var_5 );
wait 0.05;
}
self setlightintensity( var_0 );
}
changelightintensityovertimerandom( var_0, var_1, var_2, var_3 )
{
level.curintensity = self getlightintensity();
thread changelightintensityovertimerandom_tick( var_0, var_1 );
var_4 = 0;
var_5 = 0;
while ( level.curintensity != var_0 )
{
if ( var_5 )
{
wait( randomfloatrange( 0.1, 0.5 ) );
var_5 = 0;
var_6 = randomfloatrange( 0.1, 0.5 );
changelightintensityovertime( level.curintensity, var_6 );
continue;
}
wait( randomfloatrange( 0.2, 0.5 ) );
var_5 = 1;
var_6 = randomfloatrange( 0.1, 0.5 );
changelightintensityovertime( level.curintensity - level.curintensity * randomfloatrange( var_2, var_3 ), var_6 );
}
self setlightintensity( var_0 );
}
changelightintensityovertimerandom_tick( var_0, var_1 )
{
var_2 = level.curintensity;
var_3 = int( var_1 / 0.05 );
var_4 = ( var_0 - var_2 ) / var_3;
for ( var_5 = 0; var_5 < var_3; var_5++ )
{
level.curintensity = level.curintensity + var_4;
wait 0.05;
}
level.curintensity = var_0;
}
changelightintensityrandom( var_0, var_1, var_2, var_3, var_4 )
{
self endon( "lgt_random_intensity_stop" );
var_5 = 0;
while ( !common_scripts\utility::flag( "lgt_random_intensity_stop" ) )
{
if ( var_5 )
{
wait( randomfloatrange( 0.1, 0.6 ) );
var_5 = 0;
var_6 = randomfloatrange( 0.1, 0.6 );
changelightintensityovertime( var_0, var_6 );
continue;
}
wait( randomfloatrange( var_3, var_4 ) );
var_5 = 1;
var_6 = randomfloatrange( 0.1, 0.6 );
changelightintensityovertime( var_0 - var_0 * randomfloatrange( var_1, var_2 ), var_6 );
}
}
easychangelightcolorovertime( var_0, var_1 )
{
var_2 = self getlightcolor();
var_3 = int( var_1 / 0.05 );
for ( var_4 = 0; var_4 < var_3; var_4++ )
{
self setlightcolor( vectorlerp( var_2, var_0, ( var_4 + 1.0 ) / var_3 ) );
wait 0.05;
}
self setlightcolor( var_0 );
}
#using_animtree("script_model");
setup_volumetric_light_anims()
{
level.scr_animtree["recruits_sunlight"] = #animtree;
level.scr_model["recruits_sunlight"] = "tag_origin_animate";
level.scr_anim["recruits_sunlight"]["hc_recruit_lightmotion"] = %hc_recruit_lightmotion;
}
setup_volumetric_lights()
{
wait 0.5;
level.volumetric_window_fx = [];
level.volumetric_window_fx_ents = [];
level.recruits_godrays = getentarray( "recruits_god_ray_emitter", "targetname" );
level.recruits_anim_light = getent( "chopper_sun", "targetname" );
if ( isdefined( level.recruits_anim_light ) )
level.recruits_anim_light_source_pos = level.recruits_anim_light.origin;
level.recruits_anim_light_struct = common_scripts\utility::getstruct( "recruit_anim_node_l", "script_noteworthy" );
level.recruits_anim_light_smodel = spawn( "script_model", level.recruits_anim_light_struct.origin );
level.recruits_anim_light_smodel setmodel( "tag_origin_animate" );
level.recruits_anim_light_smodel.animname = "recruits_sunlight";
level.recruits_anim_light_smodel maps\_utility::assign_animtree();
var_0 = [];
var_0["hc_recruit_lightmotion"] = level.recruits_anim_light_smodel;
foreach ( var_2 in level.recruits_godrays )
{
var_3 = common_scripts\utility::spawn_tag_origin();
var_3.origin = var_2.origin;
var_3.angles = var_2.angles;
playfxontag( common_scripts\utility::getfx( "window_volumetric_open" ), var_3, "tag_origin" );
var_4 = common_scripts\utility::spawn_tag_origin();
var_4.origin = var_3.origin;
var_3 linkto( var_4 );
level.volumetric_window_fx_ents[level.volumetric_window_fx_ents.size] = var_3;
level.volumetric_window_fx[level.volumetric_window_fx.size] = var_4;
}
level.recruits_anim_light_struct thread maps\_anim::anim_single( var_0, "hc_recruit_lightmotion" );
for (;;)
{
foreach ( var_2 in level.recruits_godrays )
var_2 rotateto( level.recruits_anim_light_smodel.angles, 0.1 );
if ( isdefined( level.recruits_anim_light ) )
{
}
common_scripts\utility::waitframe();
}
}
fx_recruit_ambient()
{
common_scripts\utility::flag_init( "fx_stop_flak" );
common_scripts\utility::flag_init( "fx_stop_flak_blast" );
thread fx_recruit_flak_blast();
thread fx_recruit_flak_blast_audio();
common_scripts\utility::exploder( "recruit_ambient" );
wait 2;
common_scripts\utility::exploder( "recruit_flak_ahead" );
common_scripts\utility::exploder( "recruit_flak_side_near" );
common_scripts\utility::exploder( "recruit_flak_side_far" );
common_scripts\utility::exploder( "recruit_tracer_low" );
common_scripts\utility::exploder( "recruit_tracer_med" );
common_scripts\utility::exploder( "recruit_tracer_high" );
wait 1;
thread fx_recruit_smoke_window();
wait 17;
common_scripts\utility::flag_set( "fx_stop_flak_blast" );
maps\_utility::stop_exploder( "recruit_tracer_med" );
wait 14;
common_scripts\utility::flag_set( "fx_stop_flak" );
maps\_utility::stop_exploder( "recruit_flak_ahead" );
maps\_utility::stop_exploder( "recruit_flak_side_near" );
maps\_utility::stop_exploder( "recruit_flak_side_near" );
maps\_utility::stop_exploder( "recruit_tracer_low" );
wait 20;
maps\_utility::stop_exploder( "recruit_flak_side_far" );
maps\_utility::stop_exploder( "recruit_tracer_high" );
}
fx_recruit_flak_blast()
{
wait( randomfloatrange( 7.0, 9.0 ) );
while ( !common_scripts\utility::flag( "fx_stop_flak_blast" ) )
{
common_scripts\utility::exploder( "recruit_flak_blast" );
earthquake( 0.2, 2.0, level.player.origin, 1600 );
wait( randomfloatrange( 4.0, 8.0 ) );
}
}
fx_recruit_flak_blast_audio()
{
wait 1.15;
common_scripts\utility::exploder( "recruit_flak_blast_audio" );
wait 4.09;
common_scripts\utility::exploder( "recruit_flak_blast_audio" );
wait 27.33;
common_scripts\utility::exploder( "recruit_flak_blast_audio" );
}
fx_recruit_smoke_window()
{
while ( !common_scripts\utility::flag( "fx_stop_flak_blast" ) )
{
common_scripts\utility::exploder( "recruit_smoke_window" );
wait( randomfloatrange( 1.0, 4.0 ) );
}
while ( !common_scripts\utility::flag( "fx_stop_flak" ) )
{
common_scripts\utility::exploder( "recruit_smoke_window" );
if ( randomint( 2 ) == 1 )
common_scripts\utility::exploder( "recruit_cloud_side" );
wait( randomfloatrange( 1.0, 2.5 ) );
}
for (;;)
{
if ( randomint( 3 ) > 0 )
common_scripts\utility::exploder( "recruit_cloud_ahead" );
common_scripts\utility::exploder( "recruit_cloud_side" );
wait( randomfloatrange( 1.0, 2.5 ) );
}
}