Initial commit of IW4x rawfiles as of IW4x version 0.6.1
This commit is contained in:
1 parent
123c13c92e
commit
aa7fa3afcf
705 files changed
+287401
No files matched your search
@@ -0,0 +1,12 @@
|
||||
#include common_scripts\utility;
|
||||
|
||||
#using_animtree( "animated_props" );
|
||||
main()
|
||||
{
|
||||
if( !isdefined ( level.anim_prop_models ) )
|
||||
level.anim_prop_models = [];
|
||||
|
||||
model = "foliage_codo_plantain_animated";
|
||||
|
||||
level.anim_prop_models[ model ][ "sway" ] = "foliage_codo_plantain_sway";
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
#include common_scripts\utility;
|
||||
|
||||
#using_animtree( "animated_props" );
|
||||
main()
|
||||
{
|
||||
if( !isdefined ( level.anim_prop_models ) )
|
||||
level.anim_prop_models = [];
|
||||
|
||||
model = "foliage_codo_short_palm_animated";
|
||||
|
||||
level.anim_prop_models[ model ][ "sway" ] = "foliage_codo_short_palm_1_sway";
|
||||
}
|
||||
@@ -0,0 +1,13 @@
|
||||
#include common_scripts\utility;
|
||||
|
||||
main()
|
||||
{
|
||||
if( !isdefined ( level.anim_prop_models ) )
|
||||
level.anim_prop_models = [];
|
||||
|
||||
// Uses .animation
|
||||
model = "foliage_dead_pine_lg_animated_sway2";
|
||||
level.anim_prop_models[ model ][ "sway2" ] = "foliage_dead_pine_lg_mp_sway2";
|
||||
}
|
||||
|
||||
// SP not currently supported because this requires updating "animated_props" animtree
|
||||
@@ -0,0 +1,13 @@
|
||||
#include common_scripts\utility;
|
||||
|
||||
main()
|
||||
{
|
||||
if( !isdefined ( level.anim_prop_models ) )
|
||||
level.anim_prop_models = [];
|
||||
|
||||
// Uses .animation
|
||||
model = "foliage_dead_pine_med_animated_sway2";
|
||||
level.anim_prop_models[ model ][ "sway2" ] = "foliage_dead_pine_med_mp_sway2";
|
||||
}
|
||||
|
||||
// SP not currently supported because this requires updating "animated_props" animtree
|
||||
@@ -0,0 +1,22 @@
|
||||
#include common_scripts\utility;
|
||||
|
||||
#using_animtree( "animated_props" );
|
||||
main()
|
||||
{
|
||||
if( !isdefined ( level.anim_prop_models ) )
|
||||
level.anim_prop_models = [];
|
||||
|
||||
// Would use isSP() but this runs before we can
|
||||
mapname = tolower( getdvar( "mapname" ) );
|
||||
SP = true;
|
||||
if ( string_starts_with( mapname, "mp_" ) )
|
||||
SP = false;
|
||||
|
||||
model = "foliage_pacific_fern01_animated";
|
||||
if ( SP )
|
||||
{
|
||||
level.anim_prop_models[ model ][ "sway" ] = %foliage_pacific_fern01_sway;
|
||||
}
|
||||
else
|
||||
level.anim_prop_models[ model ][ "sway" ] = "foliage_pacific_fern01_sway";
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
#include common_scripts\utility;
|
||||
|
||||
#using_animtree( "animated_props" );
|
||||
main()
|
||||
{
|
||||
if( !isdefined ( level.anim_prop_models ) )
|
||||
level.anim_prop_models = [];
|
||||
|
||||
model = "foliage_pacific_palms06_animated";
|
||||
|
||||
level.anim_prop_models[ model ][ "sway" ] = "foliage_pacific_palms06_sway";
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
#include common_scripts\utility;
|
||||
|
||||
#using_animtree( "animated_props" );
|
||||
main()
|
||||
{
|
||||
if( !isdefined ( level.anim_prop_models ) )
|
||||
level.anim_prop_models = [];
|
||||
|
||||
model = "foliage_palm_bare_1_animated";
|
||||
|
||||
level.anim_prop_models[ model ][ "sway" ] = "foliage_palm_bare_1_sway";
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
#include common_scripts\utility;
|
||||
|
||||
#using_animtree( "animated_props" );
|
||||
main()
|
||||
{
|
||||
if( !isdefined ( level.anim_prop_models ) )
|
||||
level.anim_prop_models = [];
|
||||
|
||||
model = "foliage_palm_bare_2_animated";
|
||||
|
||||
level.anim_prop_models[ model ][ "sway" ] = "foliage_palm_bare_2_sway";
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
#include common_scripts\utility;
|
||||
|
||||
#using_animtree( "animated_props" );
|
||||
main()
|
||||
{
|
||||
if( !isdefined ( level.anim_prop_models ) )
|
||||
level.anim_prop_models = [];
|
||||
|
||||
model = "foliage_palm_bare_3_animated";
|
||||
|
||||
level.anim_prop_models[ model ][ "sway" ] = "foliage_palm_bare_3_sway";
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
#include common_scripts\utility;
|
||||
|
||||
#using_animtree( "animated_props" );
|
||||
main()
|
||||
{
|
||||
if( !isdefined ( level.anim_prop_models ) )
|
||||
level.anim_prop_models = [];
|
||||
|
||||
model = "foliage_palm_tree_1_animated";
|
||||
|
||||
level.anim_prop_models[ model ][ "sway" ] = "foliage_palm_tree_1_sway";
|
||||
}
|
||||
@@ -0,0 +1,23 @@
|
||||
#include common_scripts\utility;
|
||||
|
||||
#using_animtree( "animated_props" );
|
||||
main()
|
||||
{
|
||||
if( !isdefined ( level.anim_prop_models ) )
|
||||
level.anim_prop_models = [];
|
||||
|
||||
// Would use isSP() but this runs before we can
|
||||
mapname = tolower( getdvar( "mapname" ) );
|
||||
SP = true;
|
||||
if ( string_starts_with( mapname, "mp_" ) )
|
||||
SP = false;
|
||||
|
||||
model = "foliage_tree_palm_bushy_1";
|
||||
if ( SP )
|
||||
{
|
||||
level.anim_prop_models[ model ][ "still" ] = %palmtree_bushy1_still;
|
||||
level.anim_prop_models[ model ][ "strong" ] = %palmtree_bushy1_sway;
|
||||
}
|
||||
else
|
||||
level.anim_prop_models[ model ][ "strong" ] = "palmtree_mp_bushy1_sway";
|
||||
}
|
||||
@@ -0,0 +1,23 @@
|
||||
#include common_scripts\utility;
|
||||
|
||||
#using_animtree( "animated_props" );
|
||||
main()
|
||||
{
|
||||
if( !isdefined ( level.anim_prop_models ) )
|
||||
level.anim_prop_models = [];
|
||||
|
||||
// Would use isSP() but this runs before we can
|
||||
mapname = tolower( getdvar( "mapname" ) );
|
||||
SP = true;
|
||||
if ( string_starts_with( mapname, "mp_" ) )
|
||||
SP = false;
|
||||
|
||||
model = "foliage_tree_palm_tall_1";
|
||||
if ( SP )
|
||||
{
|
||||
level.anim_prop_models[ model ][ "still" ] = %palmtree_tall1_still;
|
||||
level.anim_prop_models[ model ][ "strong" ] = %palmtree_tall1_sway;
|
||||
}
|
||||
else
|
||||
level.anim_prop_models[ model ][ "strong" ] = "palmtree_tall1_sway";
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
#include common_scripts\utility;
|
||||
|
||||
#using_animtree( "animated_props" );
|
||||
main()
|
||||
{
|
||||
if( !isdefined ( level.anim_prop_models ) )
|
||||
level.anim_prop_models = [];
|
||||
|
||||
// Would use isSP() but this runs before we can
|
||||
mapname = tolower( getdvar( "mapname" ) );
|
||||
SP = true;
|
||||
if ( string_starts_with( mapname, "mp_" ) )
|
||||
SP = false;
|
||||
|
||||
model = "foliage_red_pine_lg_sh";
|
||||
if ( SP )
|
||||
{
|
||||
level.anim_prop_models[ model ][ "sway" ] = %foliage_tree_oak_1_sway;
|
||||
}
|
||||
else
|
||||
level.anim_prop_models[ model ][ "sway" ] = "foliage_tree_oak_1_sway";
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
#include common_scripts\utility;
|
||||
|
||||
#using_animtree( "animated_props" );
|
||||
main()
|
||||
{
|
||||
if( !isdefined ( level.anim_prop_models ) )
|
||||
level.anim_prop_models = [];
|
||||
|
||||
// Would use isSP() but this runs before we can
|
||||
mapname = tolower( getdvar( "mapname" ) );
|
||||
SP = true;
|
||||
if ( string_starts_with( mapname, "mp_" ) )
|
||||
SP = false;
|
||||
|
||||
model = "foliage_red_pine_med_sh";
|
||||
if ( SP )
|
||||
{
|
||||
level.anim_prop_models[ model ][ "sway" ] = %foliage_dead_pine_med_sway;
|
||||
}
|
||||
else
|
||||
level.anim_prop_models[ model ][ "sway" ] = "foliage_dead_pine_med_sway";
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
#include common_scripts\utility;
|
||||
|
||||
#using_animtree( "animated_props" );
|
||||
main()
|
||||
{
|
||||
if( !isdefined ( level.anim_prop_models ) )
|
||||
level.anim_prop_models = [];
|
||||
|
||||
// Would use isSP() but this runs before we can
|
||||
mapname = tolower( getdvar( "mapname" ) );
|
||||
SP = true;
|
||||
if ( string_starts_with( mapname, "mp_" ) )
|
||||
SP = false;
|
||||
|
||||
model = "foliage_red_pine_xl_sh";
|
||||
if ( SP )
|
||||
{
|
||||
level.anim_prop_models[ model ][ "sway" ] = %foliage_tree_oak_1_sway;
|
||||
}
|
||||
else
|
||||
level.anim_prop_models[ model ][ "sway" ] = "foliage_tree_oak_1_sway";
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
#include common_scripts\utility;
|
||||
|
||||
#using_animtree( "animated_props" );
|
||||
main()
|
||||
{
|
||||
if( !isdefined ( level.anim_prop_models ) )
|
||||
level.anim_prop_models = [];
|
||||
|
||||
model = "foliage_red_pine_xxl_sh";
|
||||
|
||||
level.anim_prop_models[ model ][ "sway" ] = "foliage_red_pine_xxl_sway";
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
#include common_scripts\utility;
|
||||
|
||||
#using_animtree( "animated_props" );
|
||||
main()
|
||||
{
|
||||
if( !isdefined ( level.anim_prop_models ) )
|
||||
level.anim_prop_models = [];
|
||||
|
||||
// Would use isSP() but this runs before we can
|
||||
mapname = tolower( getdvar( "mapname" ) );
|
||||
SP = true;
|
||||
if ( string_starts_with( mapname, "mp_" ) )
|
||||
SP = false;
|
||||
|
||||
model = "foliage_tree_oak_1_animated2";
|
||||
if ( SP )
|
||||
{
|
||||
level.anim_prop_models[ model ][ "sway" ] = %foliage_tree_oak_1_sway;
|
||||
}
|
||||
else
|
||||
level.anim_prop_models[ model ][ "sway" ] = "foliage_tree_oak_1_sway";
|
||||
}
|
||||
@@ -0,0 +1,23 @@
|
||||
#include common_scripts\utility;
|
||||
|
||||
#using_animtree( "animated_props" );
|
||||
main()
|
||||
{
|
||||
if( !isdefined ( level.anim_prop_models ) )
|
||||
level.anim_prop_models = [];
|
||||
|
||||
// Would use isSP() but this runs before we can
|
||||
mapname = tolower( getdvar( "mapname" ) );
|
||||
SP = true;
|
||||
if ( string_starts_with( mapname, "mp_" ) )
|
||||
SP = false;
|
||||
|
||||
model = "foliage_tree_palm_bushy_1";
|
||||
if ( SP )
|
||||
{
|
||||
level.anim_prop_models[ model ][ "still" ] = %palmtree_bushy1_still;
|
||||
level.anim_prop_models[ model ][ "strong" ] = %palmtree_bushy1_sway;
|
||||
}
|
||||
else
|
||||
level.anim_prop_models[ model ][ "strong" ] = "palmtree_mp_bushy1_sway";
|
||||
}
|
||||
@@ -0,0 +1,23 @@
|
||||
#include common_scripts\utility;
|
||||
|
||||
#using_animtree( "animated_props" );
|
||||
main()
|
||||
{
|
||||
if( !isdefined ( level.anim_prop_models ) )
|
||||
level.anim_prop_models = [];
|
||||
|
||||
// Would use isSP() but this runs before we can
|
||||
mapname = tolower( getdvar( "mapname" ) );
|
||||
SP = true;
|
||||
if ( string_starts_with( mapname, "mp_" ) )
|
||||
SP = false;
|
||||
|
||||
model = "foliage_tree_palm_bushy_2";
|
||||
if ( SP )
|
||||
{
|
||||
level.anim_prop_models[ model ][ "still" ] = %palmtree_bushy2_still;
|
||||
level.anim_prop_models[ model ][ "strong" ] = %palmtree_bushy2_sway;
|
||||
}
|
||||
else
|
||||
level.anim_prop_models[ model ][ "strong" ] = "palmtree_mp_bushy2_sway";
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
#include common_scripts\utility;
|
||||
|
||||
#using_animtree( "animated_props" );
|
||||
main()
|
||||
{
|
||||
if( !isdefined ( level.anim_prop_models ) )
|
||||
level.anim_prop_models = [];
|
||||
|
||||
model = "foliage_tree_palm_bushy_3";
|
||||
|
||||
level.anim_prop_models[ model ] = "palmtree_tall3_sway_tropical";
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
#include common_scripts\utility;
|
||||
|
||||
#using_animtree( "animated_props" );
|
||||
main()
|
||||
{
|
||||
if( !isdefined ( level.anim_prop_models ) )
|
||||
level.anim_prop_models = [];
|
||||
|
||||
model = "foliage_tree_palm_med_1";
|
||||
|
||||
level.anim_prop_models[ model ][ "sway" ] = "palmtree_med1_sway";
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
#include common_scripts\utility;
|
||||
|
||||
#using_animtree( "animated_props" );
|
||||
main()
|
||||
{
|
||||
if( !isdefined ( level.anim_prop_models ) )
|
||||
level.anim_prop_models = [];
|
||||
|
||||
model = "foliage_tree_palm_med_2";
|
||||
|
||||
level.anim_prop_models[ model ][ "sway" ] = "palmtree_med2_sway";
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
#include common_scripts\utility;
|
||||
|
||||
#using_animtree( "animated_props" );
|
||||
main()
|
||||
{
|
||||
if( !isdefined ( level.anim_prop_models ) )
|
||||
level.anim_prop_models = [];
|
||||
|
||||
model = "codo_brazil_nut_tree";
|
||||
|
||||
level.anim_prop_models[ model ][ "strong" ] = "palmtree_med2_sway";
|
||||
}
|
||||
@@ -0,0 +1,23 @@
|
||||
#include common_scripts\utility;
|
||||
|
||||
#using_animtree( "animated_props" );
|
||||
main()
|
||||
{
|
||||
if( !isdefined ( level.anim_prop_models ) )
|
||||
level.anim_prop_models = [];
|
||||
|
||||
// Would use isSP() but this runs before we can
|
||||
mapname = tolower( getdvar( "mapname" ) );
|
||||
SP = true;
|
||||
if ( string_starts_with( mapname, "mp_" ) )
|
||||
SP = false;
|
||||
|
||||
model = "foliage_tree_palm_tall_1";
|
||||
if ( SP )
|
||||
{
|
||||
level.anim_prop_models[ model ][ "still" ] = %palmtree_tall1_still;
|
||||
level.anim_prop_models[ model ][ "strong" ] = %palmtree_tall1_sway;
|
||||
}
|
||||
else
|
||||
level.anim_prop_models[ model ][ "strong" ] = "palmtree_mp_tall1_sway";
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
#include common_scripts\utility;
|
||||
|
||||
#using_animtree( "animated_props" );
|
||||
main()
|
||||
{
|
||||
if( !isdefined ( level.anim_prop_models ) )
|
||||
level.anim_prop_models = [];
|
||||
|
||||
model = "foliage_tropical_estate_animated";
|
||||
|
||||
level.anim_prop_models[ model ][ "sway" ] = "foliage_tropical_estate_sway";
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
#include common_scripts\utility;
|
||||
|
||||
#using_animtree( "animated_props" );
|
||||
main()
|
||||
{
|
||||
if( !isdefined ( level.anim_prop_models ) )
|
||||
level.anim_prop_models = [];
|
||||
|
||||
// Would use isSP() but this runs before we can
|
||||
mapname = tolower( getdvar( "mapname" ) );
|
||||
SP = true;
|
||||
if ( string_starts_with( mapname, "mp_" ) )
|
||||
SP = false;
|
||||
|
||||
model = "hanging_apron";
|
||||
if ( SP )
|
||||
level.anim_prop_models[ model ][ "wind_medium" ] = %hanging_clothes_apron_wind_medium;
|
||||
else
|
||||
level.anim_prop_models[ model ][ "wind_medium" ] = "hanging_clothes_apron_wind_medium";
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
#include common_scripts\utility;
|
||||
|
||||
#using_animtree( "animated_props" );
|
||||
main()
|
||||
{
|
||||
if( !isdefined ( level.anim_prop_models ) )
|
||||
level.anim_prop_models = [];
|
||||
|
||||
// Would use isSP() but this runs before we can
|
||||
mapname = tolower( getdvar( "mapname" ) );
|
||||
SP = true;
|
||||
if ( string_starts_with( mapname, "mp_" ) )
|
||||
SP = false;
|
||||
|
||||
model = "hanging_long_sleeve";
|
||||
if ( SP )
|
||||
level.anim_prop_models[ model ][ "wind_medium" ] = %hanging_clothes_long_sleeve_wind_medium;
|
||||
else
|
||||
level.anim_prop_models[ model ][ "wind_medium" ] = "hanging_clothes_long_sleeve_wind_medium";
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
#include common_scripts\utility;
|
||||
|
||||
#using_animtree( "animated_props" );
|
||||
main()
|
||||
{
|
||||
if( !isdefined ( level.anim_prop_models ) )
|
||||
level.anim_prop_models = [];
|
||||
|
||||
// Would use isSP() but this runs before we can
|
||||
mapname = tolower( getdvar( "mapname" ) );
|
||||
SP = true;
|
||||
if ( string_starts_with( mapname, "mp_" ) )
|
||||
SP = false;
|
||||
|
||||
model = "hanging_sheet";
|
||||
if ( SP )
|
||||
level.anim_prop_models[ model ][ "wind_medium" ] = %hanging_clothes_sheet_wind_medium;
|
||||
else
|
||||
level.anim_prop_models[ model ][ "wind_medium" ] = "hanging_clothes_sheet_wind_medium";
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
#include common_scripts\utility;
|
||||
|
||||
#using_animtree( "animated_props" );
|
||||
main()
|
||||
{
|
||||
if( !isdefined ( level.anim_prop_models ) )
|
||||
level.anim_prop_models = [];
|
||||
|
||||
// Would use isSP() but this runs before we can
|
||||
mapname = tolower( getdvar( "mapname" ) );
|
||||
SP = true;
|
||||
if ( string_starts_with( mapname, "mp_" ) )
|
||||
SP = false;
|
||||
|
||||
model = "hanging_short_sleeve";
|
||||
if ( SP )
|
||||
level.anim_prop_models[ model ][ "wind_medium" ] = %hanging_clothes_short_sleeve_wind_medium;
|
||||
else
|
||||
level.anim_prop_models[ model ][ "wind_medium" ] = "hanging_clothes_short_sleeve_wind_medium";
|
||||
}
|
||||
@@ -0,0 +1,13 @@
|
||||
#include common_scripts\utility;
|
||||
|
||||
main()
|
||||
{
|
||||
if( !isdefined ( level.anim_prop_models ) )
|
||||
level.anim_prop_models = [];
|
||||
|
||||
// Uses .animation
|
||||
model = "highrise_fencetarp_04b_wind_a";
|
||||
level.anim_prop_models[ model ][ "wind_a" ] = "mp_storm_fencetarp_04_windA";
|
||||
}
|
||||
|
||||
// SP not currently supported because this requires updating "animated_props" animtree
|
||||
@@ -0,0 +1,13 @@
|
||||
#include common_scripts\utility;
|
||||
|
||||
main()
|
||||
{
|
||||
if( !isdefined ( level.anim_prop_models ) )
|
||||
level.anim_prop_models = [];
|
||||
|
||||
// Uses .animation
|
||||
model = "highrise_fencetarp_04b_wind_b";
|
||||
level.anim_prop_models[ model ][ "wind_b" ] = "mp_storm_fencetarp_04_windB";
|
||||
}
|
||||
|
||||
// SP not currently supported because this requires updating "animated_props" animtree
|
||||
@@ -0,0 +1,13 @@
|
||||
#include common_scripts\utility;
|
||||
|
||||
main()
|
||||
{
|
||||
if( !isdefined ( level.anim_prop_models ) )
|
||||
level.anim_prop_models = [];
|
||||
|
||||
// Uses .animation
|
||||
model = "highrise_fencetarp_04b_wind_c";
|
||||
level.anim_prop_models[ model ][ "wind_c" ] = "mp_storm_fencetarp_04_windC";
|
||||
}
|
||||
|
||||
// SP not currently supported because this requires updating "animated_props" animtree
|
||||
@@ -0,0 +1,13 @@
|
||||
#include common_scripts\utility;
|
||||
|
||||
main()
|
||||
{
|
||||
if( !isdefined ( level.anim_prop_models ) )
|
||||
level.anim_prop_models = [];
|
||||
|
||||
// Uses .animation
|
||||
model = "highrise_fencetarp_07b_wind_a";
|
||||
level.anim_prop_models[ model ][ "wind_a" ] = "mp_storm_fencetarp_07_windA";
|
||||
}
|
||||
|
||||
// SP not currently supported because this requires updating "animated_props" animtree
|
||||
@@ -0,0 +1,13 @@
|
||||
#include common_scripts\utility;
|
||||
|
||||
main()
|
||||
{
|
||||
if( !isdefined ( level.anim_prop_models ) )
|
||||
level.anim_prop_models = [];
|
||||
|
||||
// Uses .animation
|
||||
model = "highrise_fencetarp_07b_wind_b";
|
||||
level.anim_prop_models[ model ][ "wind_b" ] = "mp_storm_fencetarp_07_windB";
|
||||
}
|
||||
|
||||
// SP not currently supported because this requires updating "animated_props" animtree
|
||||
@@ -0,0 +1,13 @@
|
||||
#include common_scripts\utility;
|
||||
|
||||
main()
|
||||
{
|
||||
if( !isdefined ( level.anim_prop_models ) )
|
||||
level.anim_prop_models = [];
|
||||
|
||||
// Uses .animation
|
||||
model = "highrise_fencetarp_07b_wind_c";
|
||||
level.anim_prop_models[ model ][ "wind_c" ] = "mp_storm_fencetarp_07_windC";
|
||||
}
|
||||
|
||||
// SP not currently supported because this requires updating "animated_props" animtree
|
||||
File diff suppressed because it is too large.
Load diff
@@ -0,0 +1,14 @@
|
||||
// _createart generated by momo5502. modify at your own risk. Changing values should be fine.
|
||||
main()
|
||||
{
|
||||
|
||||
level.tweakfile = true;
|
||||
|
||||
setDevDvar( "scr_fog_disable", "0" );
|
||||
|
||||
setExpFog( 300, 4000, 0.5, 0.5, 0.5, 1, 0 );
|
||||
|
||||
VisionSetNaked( "co_hunted", 0 );
|
||||
|
||||
setdvar( "r_specularcolorscale", "5" );
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
//_createart generated. modify at your own risk. Changing values should be fine.
|
||||
main()
|
||||
{
|
||||
|
||||
level.tweakfile = true;
|
||||
|
||||
|
||||
//* Fog section *
|
||||
|
||||
setdvar( "scr_fog_disable", "0" );
|
||||
|
||||
//setExpFog( start distance, halfway distance, red, green, blue, max opacity, transition time, sun red, sun green, sun blue, sun max opacity, sun direction, sun begin fade angle, sun end fade angle );
|
||||
setExpFog( 512, 5000, 0.501961, 0.501961, 0.45098, 0.25, 0 );
|
||||
VisionSetNaked( "mp_bloc", 0 );
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
//_createart generated. modify at your own risk. Changing values should be fine.
|
||||
main()
|
||||
{
|
||||
|
||||
level.tweakfile = true;
|
||||
|
||||
|
||||
//* Fog section *
|
||||
|
||||
setdvar( "scr_fog_disable", "0" );
|
||||
|
||||
//setExpFog( start distance, halfway distance, red, green, blue, max opacity, transition time, sun red, sun green, sun blue, sun max opacity, sun direction, sun begin fade angle, sun end fade angle );
|
||||
setExpFog( 1000, 5000, 0.631961, 0.501961, 0.3098, 0.07, 0 );
|
||||
VisionSetNaked( "mp_bloc_sh", 0 );
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
// _createart generated. modify at your own risk. Changing values should be fine.
|
||||
main()
|
||||
{
|
||||
|
||||
level.tweakfile = true;
|
||||
|
||||
|
||||
//* Fog section *
|
||||
|
||||
setdvar( "scr_fog_disable", "0" );
|
||||
|
||||
setExpFog( 1580.28, 6000.05, 0.544852, 0.394025, 0.21177, 0.3, 0 );
|
||||
|
||||
VisionSetNaked( "mp_bog_sh", 0 );
|
||||
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
// _createart generated. modify at your own risk. Changing values should be fine.
|
||||
main()
|
||||
{
|
||||
|
||||
level.tweakfile = true;
|
||||
|
||||
|
||||
//* Fog section *
|
||||
|
||||
setdvar( "scr_fog_disable", "0" );
|
||||
|
||||
//setExpFog(300, 1400, 0.5, 0.5, 0.5, 0);
|
||||
VisionSetNaked( "mp_cargoship", 0 );
|
||||
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
// _createart generated. modify at your own risk. Changing values should be fine.
|
||||
main()
|
||||
{
|
||||
|
||||
level.tweakfile = true;
|
||||
|
||||
|
||||
//* Fog section *
|
||||
|
||||
setdvar( "scr_fog_disable", "0" );
|
||||
|
||||
//setExpFog( start distance, halfway distance, red, green, blue, max opacity, transition time, sun red, sun green, sun blue, sun max opacity, sun direction, sun begin fade angle, sun end fade angle );
|
||||
setExpFog(1674.792, 2740, 0.476471, 0.518235, 0.47451, 0.3, 0, 0.803922, 0.717647, 0.6, (-0.432962, -0.395847, 0.809845), 0, 61.0525, 5.68252);
|
||||
//setExpFog( 2315.28, 3009.05, 0.627317, 0.611552, 0.501961, 0.35, 0 );
|
||||
|
||||
VisionSetNaked( "mp_cargoship_sh", 0 );
|
||||
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
// _createart generated. modify at your own risk. Changing values should be fine.
|
||||
main()
|
||||
{
|
||||
|
||||
level.tweakfile = true;
|
||||
|
||||
|
||||
//* Fog section *
|
||||
|
||||
setdevdvar( "scr_fog_disable", "0" );
|
||||
|
||||
setExpFog( 1400, 3500, 0.401961, 0.401961, 0.43098, 0.35, 0 );
|
||||
VisionSetNaked( "mp_crash_tropical", 0 );
|
||||
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
// _createart generated. modify at your own risk. Changing values should be fine.
|
||||
main()
|
||||
{
|
||||
|
||||
level.tweakfile = true;
|
||||
|
||||
|
||||
// * Fog section *
|
||||
|
||||
setdvar( "scr_fog_disable", "0" );
|
||||
|
||||
setExpFog( 2315.28, 3009.05, 0.627317, 0.611552, 0.501961, 0.35, 0 );
|
||||
VisionSetNaked( "mp_cross_fire", 0 );
|
||||
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
// _createart generated. modify at your own risk. Changing values should be fine.
|
||||
main()
|
||||
{
|
||||
|
||||
level.tweakfile = true;
|
||||
|
||||
|
||||
//* Fog section *
|
||||
|
||||
setDevDvar( "scr_fog_disable", "0" );
|
||||
|
||||
setExpFog( 591.874, 8193, 0.319788, 0.39502, 0.519183, 0.529818, 0 );
|
||||
VisionSetNaked( "mp_estate_tropical", 0 );
|
||||
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
// _createart generated. modify at your own risk. Changing values should be fine.
|
||||
main()
|
||||
{
|
||||
|
||||
level.tweakfile = true;
|
||||
|
||||
|
||||
//* Fog section *
|
||||
|
||||
setDevDvar( "scr_fog_disable", "0" );
|
||||
|
||||
setExpFog( 800, 4000, 0.63, 0.66, 0.66, 0.07, 0 );
|
||||
VisionSetNaked( "mp_fav_tropical", 0 );
|
||||
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
// _createart generated. modify at your own risk. Changing values should be fine.
|
||||
main()
|
||||
{
|
||||
|
||||
level.tweakfile = true;
|
||||
|
||||
|
||||
// * Fog section *
|
||||
|
||||
setdvar( "scr_fog_disable", "0" );
|
||||
|
||||
setExpFog( 3015.28, 4009.05, 0.517317, 0.521552, 0.541961, 0.7, 0 );
|
||||
VisionSetNaked( "mp_firingrange", 0 );
|
||||
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
// _createart generated. modify at your own risk. Changing values should be fine.
|
||||
main()
|
||||
{
|
||||
|
||||
level.tweakfile = true;
|
||||
|
||||
|
||||
//* Fog section *
|
||||
|
||||
setdvar( "scr_fog_disable", "1" );
|
||||
|
||||
VisionSetNaked( "mp_killhouse", 0 );
|
||||
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
// _createart generated. modify at your own risk. Changing values should be fine.
|
||||
main()
|
||||
{
|
||||
|
||||
level.tweakfile = true;
|
||||
|
||||
|
||||
//* Fog section *
|
||||
|
||||
setDevDvar( "scr_fog_disable", "0" );
|
||||
|
||||
setExpFog( 972.376, 1707.07, 0.548461, 0.468579, 0.381201, 0.168073, 0 );
|
||||
VisionSetNaked( "mp_rust_long", 0 );
|
||||
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
// _createart generated. modify at your own risk. Changing values should be fine.
|
||||
main()
|
||||
{
|
||||
|
||||
level.tweakfile = true;
|
||||
|
||||
|
||||
//* Fog section *
|
||||
|
||||
setdvar( "scr_fog_disable", "0" );
|
||||
|
||||
//setExpFog( 500, 2842, 0.642709, 0.626383, 0.5, 3.0, 0 );
|
||||
//setExpFog( start distance, halfway distance, red, green, blue, max opacity, transition time,
|
||||
setExpFog( 750, 2842, 0.642709, 0.666383, 0.5, 0.02, 100 );
|
||||
VisionSetNaked( "mp_shipment", 0 );
|
||||
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
// _createart generated. modify at your own risk. Changing values should be fine.
|
||||
main()
|
||||
{
|
||||
|
||||
level.tweakfile = true;
|
||||
|
||||
|
||||
//* Fog section *
|
||||
|
||||
setdvar( "scr_fog_disable", "0" );
|
||||
|
||||
//setExpFog( 500, 2842, 0.642709, 0.626383, 0.5, 3.0, 0 );
|
||||
//setExpFog( start distance, halfway distance, red, green, blue, max opacity, transition time,
|
||||
setExpFog( 230, 3000, 0.402709, 0.412383, 0.29, 0.135, 0 );
|
||||
VisionSetNaked( "mp_shipment_long", 0 );
|
||||
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
// _createart generated. modify at your own risk. Changing values should be fine.
|
||||
main()
|
||||
{
|
||||
|
||||
level.tweakfile = true;
|
||||
|
||||
|
||||
//* Fog section *
|
||||
|
||||
setdevdvar( "scr_fog_disable", "0" );
|
||||
|
||||
setExpFog( 2500, 4000, 0.6, 0.67, 0.74, 0.486854, 0 );
|
||||
VisionSetNaked( "mp_storm_spring", 0 );
|
||||
|
||||
}
|
||||
File diff suppressed because it is too large.
Load diff
@@ -0,0 +1,403 @@
|
||||
/************************************************/
|
||||
/* Weather written by momo5502 */
|
||||
/************************************************/
|
||||
|
||||
#include common_scripts\utility;
|
||||
#include common_scripts\_createfx;
|
||||
#include maps\mp\_utility;
|
||||
#include maps\mp\gametypes\_hud_util;
|
||||
|
||||
main()
|
||||
{
|
||||
level waittill("village_start_weather");
|
||||
|
||||
initDrips();
|
||||
initSplash();
|
||||
initRains();
|
||||
initNoises();
|
||||
|
||||
initFog();
|
||||
initFog_A();
|
||||
|
||||
level.FxType = 5;
|
||||
level.FXs = [];
|
||||
|
||||
level.soundfx = spawn( "script_model", (1397.66, 3142.13, 56.1417) );
|
||||
level.soundfx setmodel( "tag_origin" );
|
||||
|
||||
thread randomWeather();
|
||||
}
|
||||
|
||||
initDrips()
|
||||
{
|
||||
level.Drips = [];
|
||||
|
||||
level.Drips[ 0 ] = (1394.02, 3146.39, 155.871);
|
||||
level.Drips[ 1 ] = (1365.65, 3135.42, 155.872);
|
||||
level.Drips[ 2 ] = (1416.53, 3155.25, 155.875);
|
||||
level.Drips[ 3 ] = (1394.02, 3146.39, 155.871);
|
||||
level.Drips[ 4 ] = (1365.65, 3135.42, 155.872);
|
||||
level.Drips[ 5 ] = (1416.53, 3155.25, 155.875);
|
||||
level.Drips[ 6 ] = (1394.02, 3146.39, 155.871);
|
||||
level.Drips[ 7 ] = (1365.65, 3135.42, 155.872);
|
||||
level.Drips[ 8 ] = (1416.53, 3155.25, 155.875);
|
||||
level.Drips[ 9 ] = (737.61, 838.003, 152.859);
|
||||
}
|
||||
|
||||
initSplash()
|
||||
{
|
||||
level.Splashes = [];
|
||||
|
||||
level.Splashes[ level.Splashes.size ] = (2491.85, 1781.36, 43.7935);
|
||||
level.Splashes[ level.Splashes.size ] = (2221.4, 2712.15, 48.125);
|
||||
level.Splashes[ level.Splashes.size ] = (1784.27, 2916.82, 48.125);
|
||||
level.Splashes[ level.Splashes.size ] = (1092.6, 1942.39, 48.6405);
|
||||
level.Splashes[ level.Splashes.size ] = (904.935, 1482.94, 47.0227);
|
||||
level.Splashes[ level.Splashes.size ] = (1215.19, 764.034, 48.125);
|
||||
level.Splashes[ level.Splashes.size ] = (1439.34, 585.539, 48.125);
|
||||
level.Splashes[ level.Splashes.size ] = (1499.84, 933.378, 48.125);
|
||||
level.Splashes[ level.Splashes.size ] = (961.371, 1721.81, 36.4135);
|
||||
level.Splashes[ level.Splashes.size ] = (1193.13, 2438.28, 47.6818);
|
||||
level.Splashes[ level.Splashes.size ] = (1321.03, 2090.15, 48.125);
|
||||
level.Splashes[ level.Splashes.size ] = (1642.18, 2106.09, 48.125);
|
||||
level.Splashes[ level.Splashes.size ] = (1861.5, 2282.31, 48.125);
|
||||
level.Splashes[ level.Splashes.size ] = (1804.62, 2531.63, 48.125);
|
||||
level.Splashes[ level.Splashes.size ] = (1630.93, 2816.67, 48.125);
|
||||
level.Splashes[ level.Splashes.size ] = (1671.01, 3081.06, 48.125);
|
||||
level.Splashes[ level.Splashes.size ] = (1384.3, 2944.39, 48.125);
|
||||
level.Splashes[ level.Splashes.size ] = (1103.81, 2737.35, 48.125);
|
||||
level.Splashes[ level.Splashes.size ] = (2051.52, 2980.33, 48.125);
|
||||
level.Splashes[ level.Splashes.size ] = (2083.36, 2286.2, 48.125);
|
||||
level.Splashes[ level.Splashes.size ] = (2628.26, 1849.95, 51.8756);
|
||||
level.Splashes[ level.Splashes.size ] = (2496.96, 2112.6, 48.125);
|
||||
level.Splashes[ level.Splashes.size ] = (2713.97, 2216.31, 48.125);
|
||||
level.Splashes[ level.Splashes.size ] = (2809.76, 2479.41, 48.125);
|
||||
level.Splashes[ level.Splashes.size ] = (2309.78, 2443.11, 48.125);
|
||||
level.Splashes[ level.Splashes.size ] = (1056.33, 1062.1, 48.125);
|
||||
level.Splashes[ level.Splashes.size ] = (811.687, 700.835, 48.6218);
|
||||
level.Splashes[ level.Splashes.size ] = (354.261, 1669.95, 56.9991);
|
||||
level.Splashes[ level.Splashes.size ] = (537.104, 2067.5, 49.8029);
|
||||
level.Splashes[ level.Splashes.size ] = (560.938, 2519.57, 62.4628);
|
||||
level.Splashes[ level.Splashes.size ] = (958.897, 2210.97, 56.2892);
|
||||
level.Splashes[ level.Splashes.size ] = (1371.47, 2710.95, 48.125);
|
||||
level.Splashes[ level.Splashes.size ] = (2235.22, 1858.64, 47.7011);
|
||||
level.Splashes[ level.Splashes.size ] = (2465.25, 2971.7, 48.125);
|
||||
level.Splashes[ level.Splashes.size ] = (3286.19, 2945.31, 49.5356);
|
||||
level.Splashes[ level.Splashes.size ] = (2911.99, 2824.25, 48.125);
|
||||
level.Splashes[ level.Splashes.size ] = (2763.72, 2928.75, 48.125);
|
||||
level.Splashes[ level.Splashes.size ] = (2751.46, 3095.27, 48.125);
|
||||
level.Splashes[ level.Splashes.size ] = (2771.63, 2950.25, 48.125);
|
||||
level.Splashes[ level.Splashes.size ] = (2749.46, 1482.4, 73.4061);
|
||||
level.Splashes[ level.Splashes.size ] = (2476.87, 1365.42, 61.0747);
|
||||
level.Splashes[ level.Splashes.size ] = (975.505, 1757.56, 38.8804);
|
||||
level.Splashes[ level.Splashes.size ] = (1102.17, 1654.96, 51.4723);
|
||||
level.Splashes[ level.Splashes.size ] = (900.29, 1979.95, 58.1844);
|
||||
level.Splashes[ level.Splashes.size ] = (1459.9, 2725.41, 200.125);
|
||||
level.Splashes[ level.Splashes.size ] = (1557.67, 2458.37, 200.125);
|
||||
level.Splashes[ level.Splashes.size ] = (2778.25, 1350.74, 86.125);
|
||||
level.Splashes[ level.Splashes.size ] = (1200.61, 977.724, 50.0881);
|
||||
level.Splashes[ level.Splashes.size ] = (4072.1, 4400.43, -33.0761);
|
||||
level.Splashes[ level.Splashes.size ] = (5402.7, 5624.1, 35.0275);
|
||||
level.Splashes[ level.Splashes.size ] = (5863.43, 6279.28, -9.875);
|
||||
level.Splashes[ level.Splashes.size ] = (6626.52, 6632.35, 32.125);
|
||||
level.Splashes[ level.Splashes.size ] = (8485.53, 6829.77, 32.125);
|
||||
level.Splashes[ level.Splashes.size ] = (7540.74, 8508.53, 21.0811);
|
||||
level.Splashes[ level.Splashes.size ] = (5576.96, 5413.44, 57.337);
|
||||
level.Splashes[ level.Splashes.size ] = (889.164, -819.958, 112.664);
|
||||
level.Splashes[ level.Splashes.size ] = (1059.29, -2588.45, 147.758);
|
||||
level.Splashes[ level.Splashes.size ] = (2022.01, -3964.69, 19.2031);
|
||||
level.Splashes[ level.Splashes.size ] = (2695.6, -4787.36, -22.3511);
|
||||
level.Splashes[ level.Splashes.size ] = (3283.92, -5899.21, -20.3506);
|
||||
level.Splashes[ level.Splashes.size ] = (3142.61, -8011.33, 199.01);
|
||||
level.Splashes[ level.Splashes.size ] = (2241.88, -8500.55, 290.77);
|
||||
level.Splashes[ level.Splashes.size ] = (2662.24, -8294.52, 244.641);
|
||||
level.Splashes[ level.Splashes.size ] = (6563.17, 7447.62, 32.125);
|
||||
level.Splashes[ level.Splashes.size ] = (6864.86, 7330.22, 32.125);
|
||||
level.Splashes[ level.Splashes.size ] = (7264.26, 7318.64, 32.125);
|
||||
level.Splashes[ level.Splashes.size ] = (7494.27, 7609.68, 32.125);
|
||||
level.Splashes[ level.Splashes.size ] = (7810.41, 7977.32, 32.125);
|
||||
level.Splashes[ level.Splashes.size ] = (7932.96, 8233.96, 32.125);
|
||||
level.Splashes[ level.Splashes.size ] = (8175.53, 6958.91, 33.125);
|
||||
level.Splashes[ level.Splashes.size ] = (8824.76, 7185.87, 32.1245);
|
||||
level.Splashes[ level.Splashes.size ] = (8387.24, 7342.39, 32.1245);
|
||||
level.Splashes[ level.Splashes.size ] = (7193.07, 6218.34, 32.125);
|
||||
level.Splashes[ level.Splashes.size ] = (7452.77, 6836.35, 32.125);
|
||||
}
|
||||
|
||||
initRains()
|
||||
{
|
||||
level.Rains = [];
|
||||
|
||||
level.Rains[ 0 ] = (2735.35, -7239.37, 870.41);
|
||||
level.Rains[ 1 ] = (993.369, -1807.85, 843.46);
|
||||
level.Rains[ 2 ] = (1363.36, -4570.94, 937.27);
|
||||
level.Rains[ 3 ] = (7510.42, 7192.63, 908.21);
|
||||
level.Rains[ 4 ] = (1266.38, 1253.96, 882.74);
|
||||
level.Rains[ 5 ] = (2676.99, 2828.09, 876.66);
|
||||
level.Rains[ 6 ] = (1164.1, 866.845, 102.416);
|
||||
}
|
||||
|
||||
initNoises()
|
||||
{
|
||||
level.Noises = [];
|
||||
|
||||
level.Noises[ 0 ] = (1729.04, 2859.05, 48.125);
|
||||
level.Noises[ 1 ] = (2279.99, 2526.9, 48.125);
|
||||
level.Noises[ 2 ] = (1239.7, 2091.38, 48.8212);
|
||||
level.Noises[ 3 ] = (1003.96, 849.651, 48.125);
|
||||
}
|
||||
|
||||
initFog()
|
||||
{
|
||||
level.Fog = [];
|
||||
level.Fog[ level.Fog.size ] = ( 2340.18, -8500.27, 271.281 );
|
||||
level.Fog[ level.Fog.size ] = ( 2607.03, -8767.87, 303.632 );
|
||||
level.Fog[ level.Fog.size ] = ( 2445.96, -8448.35, 247.895 );
|
||||
level.Fog[ level.Fog.size ] = ( 2730.38, -8319.5, 228.436 );
|
||||
level.Fog[ level.Fog.size ] = ( 2528.44, -8345.1, 246.991 );
|
||||
level.Fog[ level.Fog.size ] = ( 2813.6, -8561.18, 276.992 );
|
||||
level.Fog[ level.Fog.size ] = ( 2579.73, -8153.93, 236.562 );
|
||||
level.Fog[ level.Fog.size ] = (1326.67, 2902.07, 90.4234);
|
||||
level.Fog[ level.Fog.size ] = (1249.32, 2203.13, 112.169);
|
||||
level.Fog[ level.Fog.size ] = (1250.72, 1984.63, 91.2697);
|
||||
level.Fog[ level.Fog.size ] = (874.072, 827.455, 109.491);
|
||||
level.Fog[ level.Fog.size ] = (2337.87, 2453.38, 103.78);
|
||||
}
|
||||
|
||||
initFog_A()
|
||||
{
|
||||
level.Fog_A = [];
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 2611.66, -4016.83, -18 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 2686.69, -4768.44, -18 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 2574.56, -5101.76, -18 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 737.339, -2932.52, 120.485 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 1045.44, -2733.61, 131.067 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 798.636, -2468.52, 159.229 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 532.72, -2452.5, 137.038 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 359.296, -2840.94, 112.157 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 1157.37, -3030.34, 119.941 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 594.127, -1570.28, 159.915 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 1086.97, -1500.63, 149.245 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 220.074, -1033.74, 133.88 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 1237.1, -1143.83, 133.107 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 634.094, -983.001, 119.293 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 891.147, -1236.79, 124.383 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 1055.2, -475.807, 92.034 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 444.509, -709.626, 119.435 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 856.828, -710.015, 105.769 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 1196.72, -2401.62, 157.596 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 3355.35, -4930.4, 47.4507 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 3492.81, 3662.36, 58.585 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 3595.77, 2998.96, 59.8827 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 6019.27, 6138.77, 10.4936 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 6362.4, 6461.85, 33.5 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 6076.19, 5853.46, 14.7122 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 7235.82, 6290.35, 32 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 5765.83, 9019.17, 124.173 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 5899.88, 9225.82, 139.265 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 5973.14, 8474.09, 107.744 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 5909.58, 7702.95, 25 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 7653.43, 9014.94, 46.1127 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 2421.5, 1936.32, 71.2253 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 2621.13, 1832.47, 99.4275 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 5966.24, 6407.13, 14.015 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 5730.06, 7422.93, 44.75 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 6501.46, 8757.82, 24 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 6388.53, 8115.48, 75.9441 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 6199.6, 7852.87, 34.896 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 6616.86, 8408.87, 90.5708 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 5894.96, 8697.57, 110.698 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 6102.05, 6423.88, 32.3473 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 5895.68, 6634.48, 30.0596 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 6247.8, 5410.88, 28.498 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 6398.65, 8364.53, 86.5132 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 6665.68, 8894, 24 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 6487, 9001.38, 24 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 6154.11, 9073.74, 69.3148 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 3635.68, 3804.13, 58.8301 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 3621.47, 2815.96, 61.1578 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 2027.09, 2823.92, 48 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 2267.12, 2527.33, 48 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 2471.2, 2175.27, 48 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 1734.73, 2830.96, 48 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 1470.25, 3010.36, 48 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 1057.47, 1625.66, 49.1076 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 1036.68, 1861.01, 48 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 1297.44, 910.321, 48 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 1500.01, 712.875, 48 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 2411.47, -5283.1, -18 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 4097.94, 4861.74, 2.99878 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 4457.4, 4920.69, 66.9258 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 4350.24, 5066.04, 43.9379 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 4541.56, 5376.24, 70.3374 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 4705.06, 5080.77, 57.6158 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 4889.98, 5333.01, 47.01 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 5191.74, 5124.35, 32.3675 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 4932.62, 5743.27, 46.4739 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 5260.01, 5960.01, 37.5239 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 5539.42, 5504.98, 42.2612 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 5260.04, 5658.69, 40.7657 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 5635.73, 5735.85, 46.6498 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 5527.39, 5982.94, 45.2672 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 4591.93, 5727.76, 58.976 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 5862.54, 5357.17, 39.2073 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 6068.67, 5565.78, 2 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 6386.02, 6638.15, 32 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 5606.75, 8782.74, 108.574 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 5513.95, 8237.25, 88.3965 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 4955.19, 7475.15, 79.7067 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 4864.25, 7854.5, 104.362 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 5063.43, 7685.32, 66.3038 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 4779.86, 7682.39, 112.231 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 4539.42, 7806.34, 138.596 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 4623.05, 8053.03, 148.074 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 4737.26, 8254.46, 137.169 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 4351.42, 8234.44, 181.423 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 4341.18, 8465.62, 175.27 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 4654.65, 8616.88, 166.751 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 5060.93, 6981.06, 64.4226 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 4617.92, 6692.1, 92.1133 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 4309.67, 6463.38, 131.804 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 7546.55, 8386.77, 27 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 7817.82, 8513.18, 27 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 8181.45, 8599.65, 36.3936 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 8562.12, 8775.54, 55.5653 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 7706.02, 8720.03, 28.4469 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 8307.68, 8388.6, 38.25 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 7703.63, 8217.21, 36.7309 );
|
||||
level.Fog_A[ level.Fog_A.size ] = ( 8732.14, 8670.03, 48.4463 );
|
||||
level.Fog_A[ level.Fog_A.size ] = (2590.81, 1828.48, 105.102);
|
||||
level.Fog_A[ level.Fog_A.size ] = (1087.23, 2828.19, 93.3798);
|
||||
level.Fog_A[ level.Fog_A.size ] = (1125.49, 2485.46, 101.832);
|
||||
level.Fog_A[ level.Fog_A.size ] = (1621.89, 2169.77, 98.5081);
|
||||
level.Fog_A[ level.Fog_A.size ] = (944.01, 1110.04, 99.8467);
|
||||
}
|
||||
|
||||
randomWeather()
|
||||
{
|
||||
while ( true )
|
||||
{
|
||||
switch( rollWeather( 3 ) )
|
||||
{
|
||||
case 0:
|
||||
start_Normal();
|
||||
break;
|
||||
|
||||
case 1:
|
||||
start_Fog();
|
||||
break;
|
||||
|
||||
case 2:
|
||||
start_Rain();
|
||||
break;
|
||||
}
|
||||
|
||||
wait randomMinuteRange( 2, 5);
|
||||
}
|
||||
}
|
||||
|
||||
setup_Rain()
|
||||
{
|
||||
foreach(splash in level.Splashes)
|
||||
level.FXs[ level.FXs.size ] = SpawnFx( level._effect[ "rain_splash_lite_128x128" ], splash, anglestoforward ((270,0,0)), anglestoup((270,0,0)) );
|
||||
|
||||
foreach(drip in level.Drips)
|
||||
level.FXs[ level.FXs.size ] = SpawnFx( level._effect[ "drips_fast" ], drip, anglestoforward (( 270, 357.614, 90.386 )), anglestoup(( 270, 357.614, 90.386 )) );
|
||||
|
||||
foreach(rain in level.Rains)
|
||||
level.FXs[ level.FXs.size ] = SpawnFx( level._effect[ "rain_mp_storm" ], rain, anglestoforward ((270,0,0)), anglestoup((270,0,0)) );
|
||||
|
||||
foreach(noise in level.Noises)
|
||||
level.FXs[ level.FXs.size ] = SpawnFx( level._effect[ "rain_noise_splashes" ], noise, anglestoforward ((270,0,0)), anglestoup((270,0,0)) );
|
||||
|
||||
level.FXs[ level.FXs.size ] = SpawnFx( level._effect[ "lightning" ], (-450.814, 1114.3, 1134.94) , anglestoforward ((270,0,0)), anglestoup((270,0,0)) );
|
||||
|
||||
level.FXs[ level.FXs.size ] = SpawnFx( level._effect[ "waterfall_drainage_mp" ], (1395.47, 3147.4, 155.855) , anglestoforward (( 88, -68.7933, -180 )), anglestoup(( 88, -68.7933, -180 )) );
|
||||
|
||||
level.FXs[ level.FXs.size ] = SpawnFx( level._effect[ "waterfall_drainage_splash_mp" ], (1397.94, 3136.79, 48.125), anglestoforward (( 270, 0, -110 )), anglestoup(( 270, 0, -110 )) );
|
||||
}
|
||||
|
||||
setup_Fog()
|
||||
{
|
||||
foreach(fog in level.Fog)
|
||||
level.FXs[ level.FXs.size ] = SpawnFx( level._effect[ "fog_hunted" ], fog, anglestoforward ((270,0,0)), anglestoup((270,0,0)) );
|
||||
|
||||
foreach(fog_a in level.Fog_A)
|
||||
level.FXs[ level.FXs.size ] = SpawnFx( level._effect[ "fog_hunted_a" ], fog_a, anglestoforward ((270,0,0)), anglestoup((270,0,0)) );
|
||||
}
|
||||
|
||||
start_Rain()
|
||||
{
|
||||
level.FxType = 2;
|
||||
|
||||
stop_Fx();
|
||||
level.FXs = [];
|
||||
setup_Rain();
|
||||
start_Fx();
|
||||
|
||||
ambientPlay( "ambient_mp_rain", 2 );
|
||||
setExpFog( 300, 4000, 0.5, 0.5, 0.5, 1, 3 );
|
||||
}
|
||||
|
||||
start_Fog()
|
||||
{
|
||||
level.FxType = 1;
|
||||
|
||||
stop_Fx();
|
||||
level.FXs = [];
|
||||
setup_Fog();
|
||||
start_Fx();
|
||||
|
||||
ambientPlay( "ambient_mp_rural", 2 );
|
||||
setExpFog( 300, 1500, 0.5, 0.5, 0.5, 1, 3 );
|
||||
}
|
||||
|
||||
start_Normal()
|
||||
{
|
||||
level.FxType = 0;
|
||||
|
||||
stop_Fx();
|
||||
|
||||
ambientPlay( "ambient_mp_rural", 2 );
|
||||
setExpFog( 300, 4000, 0.5, 0.5, 0.5, 1, 3 );
|
||||
}
|
||||
|
||||
start_Fx()
|
||||
{
|
||||
foreach(fx in level.FXs)
|
||||
TriggerFX( fx, -15 );
|
||||
|
||||
if( level.FxType == 2 || level.FxType == 4 )
|
||||
level.soundfx PlayLoopSound("emt_water_drain_flowing");
|
||||
}
|
||||
|
||||
stop_Fx()
|
||||
{
|
||||
foreach(fx in level.FXs)
|
||||
fx delete();
|
||||
|
||||
level.soundfx StopLoopSound();
|
||||
}
|
||||
|
||||
rollWeather( i )
|
||||
{
|
||||
random = randomInteger( i );
|
||||
|
||||
while( level.FxType == random )
|
||||
{
|
||||
wait 0.01;
|
||||
random = randomInteger( i );
|
||||
}
|
||||
|
||||
return random;
|
||||
}
|
||||
|
||||
randomInteger( i )
|
||||
{
|
||||
return randomInt( 65535 ) % i;
|
||||
}
|
||||
|
||||
randomMinuteRange(start, end)
|
||||
{
|
||||
return ( ( randomInt( 65535 ) % ( ( end * 60 ) - ( start * 60 ) ) ) + ( start * 60 ) );
|
||||
}
|
||||
@@ -0,0 +1,351 @@
|
||||
//_createfx generated. Do not touch!!
|
||||
#include common_scripts\utility;
|
||||
#include common_scripts\_createfx;
|
||||
|
||||
main()
|
||||
{
|
||||
|
||||
/*
|
||||
ent = createOneshotEffect( "snow_light" );
|
||||
ent.v[ "origin" ] = ( 1075.8, -5820.69, 408.498 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "snow_light";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_light" );
|
||||
ent.v[ "origin" ] = ( -1653.67, -5368.75, 396.635 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "snow_light";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_light" );
|
||||
ent.v[ "origin" ] = ( 3051.45, -6605.11, 304.969 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "snow_light";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_light" );
|
||||
ent.v[ "origin" ] = ( -344.3, -6547.2, 408.498 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "snow_light";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_light" );
|
||||
ent.v[ "origin" ] = ( -669.6, -3669.6, 408.498 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "snow_light";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_light" );
|
||||
ent.v[ "origin" ] = ( -107.2, -5224.7, 408.498 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "snow_light";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_light" );
|
||||
ent.v[ "origin" ] = ( 2612.1, -5740.3, 408.498 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "snow_light";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_light" );
|
||||
ent.v[ "origin" ] = ( 4908.1, -7834.4, 408.498 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "snow_light";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_light" );
|
||||
ent.v[ "origin" ] = ( 1411.6, -8023.9, 408.498 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "snow_light";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_light" );
|
||||
ent.v[ "origin" ] = ( 4899.7, -6132.9, 408.498 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "snow_light";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_light" );
|
||||
ent.v[ "origin" ] = ( 4114.7, -8103.2, 408.498 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "snow_light";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_light" );
|
||||
ent.v[ "origin" ] = ( -3121.6, -5982.4, 408.498 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "snow_light";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_light" );
|
||||
ent.v[ "origin" ] = ( -3836.9, -4272.9, 408.498 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "snow_light";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_light" );
|
||||
ent.v[ "origin" ] = ( -2246.9, -3003.3, 408.498 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "snow_light";
|
||||
ent.v[ "delay" ] = -15;
|
||||
*/
|
||||
|
||||
ent = createOneshotEffect( "hallway_smoke" );
|
||||
ent.v[ "origin" ] = ( 1550.76, -4958.51, 189.125 );
|
||||
ent.v[ "angles" ] = ( 358, 180, 180 );
|
||||
ent.v[ "fxid" ] = "hallway_smoke";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "hallway_smoke" );
|
||||
ent.v[ "origin" ] = ( 629.828, -4956.84, 194.125 );
|
||||
ent.v[ "angles" ] = ( 358, 180, 180 );
|
||||
ent.v[ "fxid" ] = "hallway_smoke";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "hallway_smoke" );
|
||||
ent.v[ "origin" ] = ( 662.009, -4757.96, 194.125 );
|
||||
ent.v[ "angles" ] = ( 358, 180, 180 );
|
||||
ent.v[ "fxid" ] = "hallway_smoke";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "hallway_smoke" );
|
||||
ent.v[ "origin" ] = ( 216.547, -4811.54, 188.125 );
|
||||
ent.v[ "angles" ] = ( 358, 268, -180 );
|
||||
ent.v[ "fxid" ] = "hallway_smoke";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "hallway_smoke" );
|
||||
ent.v[ "origin" ] = ( 1514.51, -4768.23, 193.125 );
|
||||
ent.v[ "angles" ] = ( 358, 180, 180 );
|
||||
ent.v[ "fxid" ] = "hallway_smoke";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "hallway_smoke" );
|
||||
ent.v[ "origin" ] = ( 1043.83, -4726.96, 182.125 );
|
||||
ent.v[ "angles" ] = ( 358, 268, -180 );
|
||||
ent.v[ "fxid" ] = "hallway_smoke";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "hallway_smoke" );
|
||||
ent.v[ "origin" ] = ( 1090.2, -4731.26, 48.125 );
|
||||
ent.v[ "angles" ] = ( 358, 268, -180 );
|
||||
ent.v[ "fxid" ] = "hallway_smoke";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "hallway_smoke" );
|
||||
ent.v[ "origin" ] = ( 1107.69, -4694.55, 314.875 );
|
||||
ent.v[ "angles" ] = ( 358, 268, -180 );
|
||||
ent.v[ "fxid" ] = "hallway_smoke";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "hallway_smoke" );
|
||||
ent.v[ "origin" ] = ( 1121.7, -6881.29, 41.125 );
|
||||
ent.v[ "angles" ] = ( 358, 268, -180 );
|
||||
ent.v[ "fxid" ] = "hallway_smoke";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "hallway_smoke" );
|
||||
ent.v[ "origin" ] = ( 1155.04, -6868.38, 178.125 );
|
||||
ent.v[ "angles" ] = ( 358, 268, -180 );
|
||||
ent.v[ "fxid" ] = "hallway_smoke";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "hallway_smoke" );
|
||||
ent.v[ "origin" ] = ( 1551.7, -6726.87, 192.376 );
|
||||
ent.v[ "angles" ] = ( 358, 180, 180 );
|
||||
ent.v[ "fxid" ] = "hallway_smoke";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "hallway_smoke" );
|
||||
ent.v[ "origin" ] = ( 1453.11, -6891.56, 195.114 );
|
||||
ent.v[ "angles" ] = ( 358, 180, 180 );
|
||||
ent.v[ "fxid" ] = "hallway_smoke";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "hallway_smoke" );
|
||||
ent.v[ "origin" ] = ( 2020.66, -6893.02, 196.125 );
|
||||
ent.v[ "angles" ] = ( 358, 268, -180 );
|
||||
ent.v[ "fxid" ] = "hallway_smoke";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "hallway_smoke" );
|
||||
ent.v[ "origin" ] = ( 654.647, -6726.59, 184.745 );
|
||||
ent.v[ "angles" ] = ( 358, 180, 180 );
|
||||
ent.v[ "fxid" ] = "hallway_smoke";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "hallway_smoke" );
|
||||
ent.v[ "origin" ] = ( 482.912, -6878.27, 191.005 );
|
||||
ent.v[ "angles" ] = ( 358, 180, 180 );
|
||||
ent.v[ "fxid" ] = "hallway_smoke";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "hallway_smoke" );
|
||||
ent.v[ "origin" ] = ( 836.679, -6878.9, 56 );
|
||||
ent.v[ "angles" ] = ( 358, 180, 180 );
|
||||
ent.v[ "fxid" ] = "hallway_smoke";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "hallway_smoke" );
|
||||
ent.v[ "origin" ] = ( 808.86, -6668.61, 61.125 );
|
||||
ent.v[ "angles" ] = ( 358, 180, 180 );
|
||||
ent.v[ "fxid" ] = "hallway_smoke";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "hallway_smoke" );
|
||||
ent.v[ "origin" ] = ( 408.906, -6727.93, 43 );
|
||||
ent.v[ "angles" ] = ( 358, 180, 180 );
|
||||
ent.v[ "fxid" ] = "hallway_smoke";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "hallway_smoke" );
|
||||
ent.v[ "origin" ] = ( -1742.44, -4451.62, 93.125 );
|
||||
ent.v[ "angles" ] = ( 358, 268, -180 );
|
||||
ent.v[ "fxid" ] = "hallway_smoke";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "hallway_smoke" );
|
||||
ent.v[ "origin" ] = ( -1969.21, -4468.89, 103.125 );
|
||||
ent.v[ "angles" ] = ( 358, 268, -180 );
|
||||
ent.v[ "fxid" ] = "hallway_smoke";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "hallway_smoke" );
|
||||
ent.v[ "origin" ] = ( -1526.5, -4445.67, 89.125 );
|
||||
ent.v[ "angles" ] = ( 358, 268, -180 );
|
||||
ent.v[ "fxid" ] = "hallway_smoke";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "hallway_smoke" );
|
||||
ent.v[ "origin" ] = ( 4041.33, -7147.25, 66.125 );
|
||||
ent.v[ "angles" ] = ( 358, 268, -180 );
|
||||
ent.v[ "fxid" ] = "hallway_smoke";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "hallway_smoke" );
|
||||
ent.v[ "origin" ] = ( 4031.73, -7617.67, 71.6777 );
|
||||
ent.v[ "angles" ] = ( 358, 268, -180 );
|
||||
ent.v[ "fxid" ] = "hallway_smoke";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_wind" );
|
||||
ent.v[ "origin" ] = ( 432.129, -5670.91, -23.875 );
|
||||
ent.v[ "angles" ] = ( 270, 324.232, -48.2316 );
|
||||
ent.v[ "fxid" ] = "snow_wind";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_wind" );
|
||||
ent.v[ "origin" ] = ( 303.57, -6434.82, -24 );
|
||||
ent.v[ "angles" ] = ( 270, 324.232, -48.2316 );
|
||||
ent.v[ "fxid" ] = "snow_wind";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_wind" );
|
||||
ent.v[ "origin" ] = ( 1019.3, -6436.2, -23.875 );
|
||||
ent.v[ "angles" ] = ( 270, 324.232, -48.2316 );
|
||||
ent.v[ "fxid" ] = "snow_wind";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_wind" );
|
||||
ent.v[ "origin" ] = ( 1020.47, -5675.67, -23.875 );
|
||||
ent.v[ "angles" ] = ( 270, 324.232, -48.2316 );
|
||||
ent.v[ "fxid" ] = "snow_wind";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_wind" );
|
||||
ent.v[ "origin" ] = ( 1861.86, -5808.81, -23.875 );
|
||||
ent.v[ "angles" ] = ( 270, 324.232, -48.2316 );
|
||||
ent.v[ "fxid" ] = "snow_wind";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_wind" );
|
||||
ent.v[ "origin" ] = ( 1744.84, -6442.87, -23.875 );
|
||||
ent.v[ "angles" ] = ( 270, 324.232, -48.2316 );
|
||||
ent.v[ "fxid" ] = "snow_wind";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_wind" );
|
||||
ent.v[ "origin" ] = ( 2290.18, -7503.09, 0 );
|
||||
ent.v[ "angles" ] = ( 270, 324.232, -48.2316 );
|
||||
ent.v[ "fxid" ] = "snow_wind";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_wind" );
|
||||
ent.v[ "origin" ] = ( 3711.78, -7322.79, 0 );
|
||||
ent.v[ "angles" ] = ( 270, 324.232, -48.2316 );
|
||||
ent.v[ "fxid" ] = "snow_wind";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_wind" );
|
||||
ent.v[ "origin" ] = ( 3324.84, -6677.31, 0.808061 );
|
||||
ent.v[ "angles" ] = ( 270, 324.232, -48.2316 );
|
||||
ent.v[ "fxid" ] = "snow_wind";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_wind" );
|
||||
ent.v[ "origin" ] = ( 3219.18, -5895.68, 0.124997 );
|
||||
ent.v[ "angles" ] = ( 270, 324.232, -48.2316 );
|
||||
ent.v[ "fxid" ] = "snow_wind";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_wind" );
|
||||
ent.v[ "origin" ] = ( -138.319, -4735.68, 0.124992 );
|
||||
ent.v[ "angles" ] = ( 270, 324.232, -48.2316 );
|
||||
ent.v[ "fxid" ] = "snow_wind";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_wind" );
|
||||
ent.v[ "origin" ] = ( -1152.14, -5324.66, 1.35875 );
|
||||
ent.v[ "angles" ] = ( 270, 324.232, -48.2316 );
|
||||
ent.v[ "fxid" ] = "snow_wind";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_wind" );
|
||||
ent.v[ "origin" ] = ( -2361.38, -5576.88, 60.5491 );
|
||||
ent.v[ "angles" ] = ( 270, 324.232, -48.2316 );
|
||||
ent.v[ "fxid" ] = "snow_wind";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_wind" );
|
||||
ent.v[ "origin" ] = ( -1293.29, -4649.61, 0.125 );
|
||||
ent.v[ "angles" ] = ( 270, 324.232, -48.2316 );
|
||||
ent.v[ "fxid" ] = "snow_wind";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_wind" );
|
||||
ent.v[ "origin" ] = ( -953.612, -6302.96, 0.125 );
|
||||
ent.v[ "angles" ] = ( 270, 324.232, -48.2316 );
|
||||
ent.v[ "fxid" ] = "snow_wind";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -33237.3, -6827.1, 326.139 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wood_creak_light";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -33773.3, -4805.33, 327.238 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wood_creak_light";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -35366.3, -2653.39, 372.675 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wood_creak_light";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -34645, -1066.74, 244.875 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wood_creak_heavy";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -34820.5, -903.31, 223.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wood_creak_heavy";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -34269.2, -1420.16, 223.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wood_creak_heavy";
|
||||
}
|
||||
@@ -0,0 +1,630 @@
|
||||
//_createfx generated. Do not touch!!
|
||||
#include common_scripts\utility;
|
||||
#include common_scripts\_createfx;
|
||||
main()
|
||||
{
|
||||
// CreateFX entities placed: 137
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -559.614, -3676.97, 325.512 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_leaf_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -1435.7, -4173.97, 254.075 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_leaf_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -1106.73, -4922.47, 226.13 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_leaf_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -1346.1, -5322.26, 308.629 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_leaf_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -2583.73, -5332.29, 317.635 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_leaf_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -518.534, -7499.48, 266.47 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_leaf_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 731.095, -6138.04, 283.744 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_leaf_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 660.824, -5504.7, 310.762 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_leaf_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1464.87, -5603.85, 306.798 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_leaf_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1412.83, -6137.83, 516.241 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_leaf_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1879.8, -5667.49, 277.503 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_leaf_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 2023.35, -6098.93, 307.192 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_leaf_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 2588.37, -6749.34, 272.166 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_leaf_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 2250.98, -7301.25, 272.356 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_leaf_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 2099.46, -7656.56, 311.894 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_leaf_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 2978.72, -8053.75, 274.629 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_leaf_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 3321.32, -7518.95, 362.96 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_leaf_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 3763.29, -7479.21, 324.993 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_leaf_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 3716.02, -6953.92, 364.761 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_leaf_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 4261.02, -7339.94, 296.111 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_leaf_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 4476.96, -6694.87, 322.421 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_leaf_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 4482.47, -6311.45, 220.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_leaf_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 4158.79, -6312.8, 280.546 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_leaf_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 3663.69, -6261.41, 377.963 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_leaf_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1240.17, -3977.94, 325.361 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_leaf_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 3136.13, -6401.18, 124.747 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_corner";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 2589.5, -7550.13, 155.422 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_corner";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1102.78, -6593.88, 137.323 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_corner";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -73.6506, -6239.86, 117.951 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_corner";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1055.82, -4759.97, 388.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_corner";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 2281.32, -5221.69, 128.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_corner";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -897.686, -5258.67, 109.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_corner";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -2624.82, -5070.13, 295.174 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_corner";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -2625.86, -3878.13, 335.047 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_corner";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -2756.78, -4898.25, 524.512 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_rattle_dull";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -2906.78, -3862.13, 553.088 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_rattle_ring";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -147.931, -3391.7, 222.321 );
|
||||
ent.v[ "angles" ] = ( 0, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_rattle_squeak";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 355.798, -6813.88, 72.6054 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_rock_light_debris";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 750.59, -6538.13, 55.682 );
|
||||
ent.v[ "angles" ] = ( 0, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_fence_whistle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1010.42, -7161.88, 128.859 );
|
||||
ent.v[ "angles" ] = ( 0, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wood_creak_heavy";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1912.13, -6843.46, 169.914 );
|
||||
ent.v[ "angles" ] = ( 0, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_rock_light_debris";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1727.88, -6538.13, 253.213 );
|
||||
ent.v[ "angles" ] = ( 0, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_fence_whistle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 388.149, -6941.88, 261.554 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wood_creak_heavy";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 712.609, -6141.91, -36.4052 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "nil";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 245.432, -6188.3, 8.06945 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_light_settle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -1648.77, -3950.13, 162.867 );
|
||||
ent.v[ "angles" ] = ( 0, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_room_home_lp_1";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -1996.62, -4269.88, 156.581 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_room_home_lp_3";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -2267.09, -5442.72, 75.3066 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_light_settle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 718.788, -6147.19, 65.2873 );
|
||||
ent.v[ "angles" ] = ( 0, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_treeA_lp";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 791.474, -5336.77, -24.0255 );
|
||||
ent.v[ "angles" ] = ( 0, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_foliage_mvmt_1_lp";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1626.87, -5346.81, -24 );
|
||||
ent.v[ "angles" ] = ( 0, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_foliage_mvmt_3_lp";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1608.94, -5537.81, -24.8828 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_foliage_mvmt_2_lp";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1533.23, -6327.88, -12.1221 );
|
||||
ent.v[ "angles" ] = ( 0, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_foliage_mvmt_2_lp";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 2023.84, -6098.48, 163.154 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_treeB_lp";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 2744.04, -6646.51, 42.8919 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_light_settle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 3736.83, -6819.86, 7.55716 );
|
||||
ent.v[ "angles" ] = ( 0, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_light_settle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 3272.77, -7506.71, 3.59847 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_foliage_mvmt_1_LP";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 3020.76, -7957.95, 10.6656 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_foliage_mvmt_2_LP";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 2531.67, -7521.45, 0 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_foliage_mvmt_3_LP";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1928.13, -7393.53, 1.93603 );
|
||||
ent.v[ "angles" ] = ( 0, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_foliage_mvmt_3_LP";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1928.13, -7962.98, 126.303 );
|
||||
ent.v[ "angles" ] = ( 0, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_treeA_lp";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 2446.56, -7821.17, 0 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_foliage_mvmt_2_LP";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 3319.66, -7517.25, 184.597 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_treeB_lp";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 4480.62, -6705.69, 138.708 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_treeA_lp";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1011.92, -4586.73, 139.875 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_room_home_lp_4";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1009, -4926.04, 267.875 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_room_home_lp_3";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1551.88, -4841.49, 246.143 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_room_home_lp_3";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1772.52, -4829.88, 272.475 );
|
||||
ent.v[ "angles" ] = ( 0, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_room_home_lp_4";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 665.665, -5493.04, 225.117 );
|
||||
ent.v[ "angles" ] = ( 0, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_treeA_lp";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 112.332, -4486.13, 267.709 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "nil";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -2656.73, -4126.13, 247.078 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_room_deep";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -2623.08, -5045.88, 276.214 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_room_deep";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -2652.42, -4014.13, 218.647 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_creak_deep_LP";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -2196.13, -4646.95, 175.279 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_creak_deep_LP";
|
||||
|
||||
ent = createOneshotEffect( "hallway_smoke" );
|
||||
ent.v[ "origin" ] = ( 1107.69, -4694.55, 314.875 );
|
||||
ent.v[ "angles" ] = ( 358, 268, -180 );
|
||||
ent.v[ "fxid" ] = "hallway_smoke";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "hallway_smoke" );
|
||||
ent.v[ "origin" ] = ( 4031.73, -7617.67, 71.6777 );
|
||||
ent.v[ "angles" ] = ( 358, 268, -180 );
|
||||
ent.v[ "fxid" ] = "hallway_smoke";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "room_dust_200_mp_vacant" );
|
||||
ent.v[ "origin" ] = ( 3512.73, -6296.43, 3.7528 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "room_dust_200_mp_vacant";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "room_dust_200_mp_vacant" );
|
||||
ent.v[ "origin" ] = ( 4558.29, -6249.84, 0.125004 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "room_dust_200_mp_vacant";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "leaves_ground_gentlewind_dust" );
|
||||
ent.v[ "origin" ] = ( 1095.76, -6137.64, -24 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 106 );
|
||||
ent.v[ "fxid" ] = "leaves_ground_gentlewind_dust";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "leaves_ground_gentlewind_dust" );
|
||||
ent.v[ "origin" ] = ( 410.035, -5924.11, -16.875 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 106 );
|
||||
ent.v[ "fxid" ] = "leaves_ground_gentlewind_dust";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "leaves_ground_gentlewind_dust" );
|
||||
ent.v[ "origin" ] = ( 804.225, -5816.89, -24 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 114 );
|
||||
ent.v[ "fxid" ] = "leaves_ground_gentlewind_dust";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "room_dust_200_mp_vacant" );
|
||||
ent.v[ "origin" ] = ( 138.234, -5590.39, -12.6697 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "room_dust_200_mp_vacant";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "room_dust_200_mp_vacant" );
|
||||
ent.v[ "origin" ] = ( 119.881, -6344.42, -20.7134 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "room_dust_200_mp_vacant";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "leaves_ground_gentlewind_dust" );
|
||||
ent.v[ "origin" ] = ( -334.486, -6286.24, 5.125 );
|
||||
ent.v[ "angles" ] = ( 272, 90, 16 );
|
||||
ent.v[ "fxid" ] = "leaves_ground_gentlewind_dust";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "room_dust_200_mp_vacant" );
|
||||
ent.v[ "origin" ] = ( -436.095, -6678.92, 10.0126 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "room_dust_200_mp_vacant";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "room_dust_200_mp_vacant" );
|
||||
ent.v[ "origin" ] = ( -147.865, -6326.12, 0.915226 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "room_dust_200_mp_vacant";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "leaves_ground_gentlewind_dust" );
|
||||
ent.v[ "origin" ] = ( -1146.06, -5212.01, 0.179725 );
|
||||
ent.v[ "angles" ] = ( 272, 90, -104 );
|
||||
ent.v[ "fxid" ] = "leaves_ground_gentlewind_dust";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "room_dust_200_mp_vacant" );
|
||||
ent.v[ "origin" ] = ( -1859.99, -5330.27, 27.2158 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "room_dust_200_mp_vacant";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "room_dust_200_mp_vacant" );
|
||||
ent.v[ "origin" ] = ( -2801.87, -5265.77, 35.4655 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "room_dust_200_mp_vacant";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "room_dust_200_mp_vacant" );
|
||||
ent.v[ "origin" ] = ( -2624.31, -5483.5, 37.9694 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "room_dust_200_mp_vacant";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "leaves_ground_gentlewind_dust" );
|
||||
ent.v[ "origin" ] = ( -1287.58, -4605.04, 0.125002 );
|
||||
ent.v[ "angles" ] = ( 272, 90, -104 );
|
||||
ent.v[ "fxid" ] = "leaves_ground_gentlewind_dust";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "leaves_ground_gentlewind_dust" );
|
||||
ent.v[ "origin" ] = ( -1263.99, -4044.32, 0.125002 );
|
||||
ent.v[ "angles" ] = ( 272, 90, -104 );
|
||||
ent.v[ "fxid" ] = "leaves_ground_gentlewind_dust";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "leaves_ground_gentlewind_dust" );
|
||||
ent.v[ "origin" ] = ( -204.848, -4098.17, 0.125001 );
|
||||
ent.v[ "angles" ] = ( 272, 90, -104 );
|
||||
ent.v[ "fxid" ] = "leaves_ground_gentlewind_dust";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "room_dust_200_mp_vacant" );
|
||||
ent.v[ "origin" ] = ( 1964.16, -5422.65, -21.48 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "room_dust_200_mp_vacant";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "leaves_ground_gentlewind_dust" );
|
||||
ent.v[ "origin" ] = ( 3110, -5490.3, 0.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 106 );
|
||||
ent.v[ "fxid" ] = "leaves_ground_gentlewind_dust";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "leaves_ground_gentlewind_dust" );
|
||||
ent.v[ "origin" ] = ( 3571.58, -6588.31, 0.125003 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 106 );
|
||||
ent.v[ "fxid" ] = "leaves_ground_gentlewind_dust";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "leaves_ground_gentlewind_dust" );
|
||||
ent.v[ "origin" ] = ( 4542.18, -6626.04, 0.125001 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 106 );
|
||||
ent.v[ "fxid" ] = "leaves_ground_gentlewind_dust";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "leaves_ground_gentlewind_dust" );
|
||||
ent.v[ "origin" ] = ( 2398.11, -7587.89, 0.125005 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 106 );
|
||||
ent.v[ "fxid" ] = "leaves_ground_gentlewind_dust";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "room_dust_200_mp_vacant" );
|
||||
ent.v[ "origin" ] = ( 3315.3, -7010.35, 8 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "room_dust_200_mp_vacant";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "dust_wind_slow_yel_loop" );
|
||||
ent.v[ "origin" ] = ( -1040.93, -5830.91, 0.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "dust_wind_slow_yel_loop";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "dust_wind_slow_yel_loop" );
|
||||
ent.v[ "origin" ] = ( -160.308, -5023.81, 0.125002 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "dust_wind_slow_yel_loop";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "dust_wind_slow_yel_loop" );
|
||||
ent.v[ "origin" ] = ( 1017.47, -5644.24, -24 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "dust_wind_slow_yel_loop";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "dust_wind_slow_yel_loop" );
|
||||
ent.v[ "origin" ] = ( 1131.83, -6342.4, -23.875 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "dust_wind_slow_yel_loop";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "dust_wind_slow_yel_loop" );
|
||||
ent.v[ "origin" ] = ( 1543.23, -5808.21, -24 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "dust_wind_slow_yel_loop";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "dust_wind_slow_yel_loop" );
|
||||
ent.v[ "origin" ] = ( -877.248, -6222.54, 0.124999 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "dust_wind_slow_yel_loop";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "dust_wind_slow_yel_loop" );
|
||||
ent.v[ "origin" ] = ( -929.016, -4050.03, 0.125004 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "dust_wind_slow_yel_loop";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "dust_wind_slow_yel_loop" );
|
||||
ent.v[ "origin" ] = ( -201.463, -4382.87, 0.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "dust_wind_slow_yel_loop";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "dust_wind_slow_yel_loop" );
|
||||
ent.v[ "origin" ] = ( 2034.8, -5817.2, -23.875 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "dust_wind_slow_yel_loop";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "dust_wind_slow_yel_loop" );
|
||||
ent.v[ "origin" ] = ( 3108.11, -5629.86, 0.124999 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "dust_wind_slow_yel_loop";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "dust_wind_slow_yel_loop" );
|
||||
ent.v[ "origin" ] = ( 4167.78, -6578.82, 0.124997 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "dust_wind_slow_yel_loop";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "dust_wind_slow_yel_loop" );
|
||||
ent.v[ "origin" ] = ( 3456.67, -7630.32, 0.125002 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "dust_wind_slow_yel_loop";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "dust_wind_slow_yel_loop" );
|
||||
ent.v[ "origin" ] = ( 2394.65, -7215.19, 0.124999 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "dust_wind_slow_yel_loop";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "dust_wind_slow_yel_loop" );
|
||||
ent.v[ "origin" ] = ( 2383.92, -6687.66, 0.124999 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "dust_wind_slow_yel_loop";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "dust_wind_slow_yel_loop" );
|
||||
ent.v[ "origin" ] = ( 2906.59, -6585.11, 0.124997 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "dust_wind_slow_yel_loop";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "dust_wind_slow_yel_loop" );
|
||||
ent.v[ "origin" ] = ( 3488.72, -6904.48, 0.125002 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "dust_wind_slow_yel_loop";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "dust_wind_slow_yel_loop" );
|
||||
ent.v[ "origin" ] = ( 3002.36, -7648.27, 0 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "dust_wind_slow_yel_loop";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
}
|
||||
|
||||
@@ -0,0 +1,539 @@
|
||||
//_createfx generated. Do not touch!!
|
||||
#include common_scripts\utility;
|
||||
#include common_scripts\_createfx;
|
||||
main()
|
||||
{
|
||||
// CreateFX entities placed: 101
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 5479.29, -670.512, 340.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_bog_aagun_firing";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 4361.84, -185.428, 320.642 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_bog_aagun_firing";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 2970.02, -888.368, 369.254 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_bog_aagun_firing";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1450.33, -664.001, 362.075 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_bog_aagun_firing";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 649.993, 299.241, 316 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_bog_aagun_firing";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 6202.19, 2096.8, 373.581 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_bog_aagun_firing";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 2546.59, 1078.37, 284.829 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_palm_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 2325.74, 1578.62, 326.116 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_palm_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 2752.71, 1356.16, 242.423 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_palm_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 3007.42, 1981.43, 318.353 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_palm_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 3285.8, 1991.8, 322.082 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_palm_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 3742.24, 1872.5, 298.602 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_palm_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 2971.68, 98.3418, 293.625 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_rattle_ring";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 4230.4, 189.48, 292.375 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_rattle_dull";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1861.04, -598.457, 235.835 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_rattle_pole";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 5353.24, 1769.85, -20 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_bog_leaf_mvmt1";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 5493.73, 1461.08, -20 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_frog_loop2";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 5847.18, 2399.54, 34.7341 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 6017.32, 2403.76, 45.1492 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_bog_crickets1";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 5143.11, 2069.02, -19.641 );
|
||||
ent.v[ "angles" ] = ( 0, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_bog_crickets1";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 4802.48, 1819.85, -19.341 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_bog_crickets2";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 4434.36, 1818.18, -14.0566 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_bog_leaf_rustle1";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 4570.64, 915.96, -10.6263 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_bog_leaf_rustle1";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 4471.25, 520.264, 2.75541 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cricket_loop6";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 5279.7, 606.876, 4.32383 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_bog_leaf_mvmt2";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 6243.64, 1183.65, 54.844 );
|
||||
ent.v[ "angles" ] = ( 0, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_bog_leaf_mvmt2";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 5853.45, 1737.09, 41.1811 );
|
||||
ent.v[ "angles" ] = ( 0, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_bog_leaf_rustle2";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 4388.11, 2445.58, -26 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 3178.94, 2307.35, 5.21037 );
|
||||
ent.v[ "angles" ] = ( 0, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 2373.15, 1947.62, 1.64708 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1621.45, 1256.8, -8.67868 );
|
||||
ent.v[ "angles" ] = ( 0, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1842.17, 659.037, 8.26905 );
|
||||
ent.v[ "angles" ] = ( 0, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1828.25, 200.786, -15.3926 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1748.05, 297.055, -16.8001 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cricket_loop4";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1701.74, 760.624, -6.24313 );
|
||||
ent.v[ "angles" ] = ( 0, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cricket_loop5";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1573.4, 1119.61, 4.03164 );
|
||||
ent.v[ "angles" ] = ( 0, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cricket_loop6";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1857.84, 1576.36, -26 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_bog_crickets1";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 2180.47, 1973.35, -26 );
|
||||
ent.v[ "angles" ] = ( 0, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_bog_crickets2";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 2758.38, 2397.61, -26 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_bog_crickets2";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 3352.04, 2454.99, -26 );
|
||||
ent.v[ "angles" ] = ( 0, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_bog_crickets1";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 3834, 2463.65, -26 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cicada_loop";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 4152.98, 2484.4, -26 );
|
||||
ent.v[ "angles" ] = ( 0, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cicada_loop";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 4679.16, 2333.73, -26 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_bog_crickets1";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 4267.88, 858.793, -2.00149 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cricket_bed_lp";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 3568.63, 1272.42, -5.93167 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cricket_bed_lp";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 3216.94, 1601.2, -3.29355 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_bog_leaf_rustle1";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 3301.05, 2026.67, 18.0346 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_bog_leaf_mvmt1";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 3811.26, 1751.02, -20 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_fly_close_lp";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 3308.26, 1770.46, 44.4183 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_fly_close_lp";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 3404.35, 1251.82, -5.60774 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cricket_loop5";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 4092.53, 1317.83, -16.9835 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cricket_loop5";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 4717.43, 986.128, -20 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cricket_bed_lp";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 4887.09, 501.644, 9.45651 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_bog_leaf_rustle2";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 5273, 912.067, -18.8579 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_fly_close_lp";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 5268.88, 1075.99, -20 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_bog_leaf_mvmt1";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 4229.63, 1829.73, -13.281 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_bog_leaf_mvmt1";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 2627.29, 1333.4, -23.6482 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_bog_leaf_mvmt1";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 3302.23, 2025.44, 204.008 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_palm_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1411.25, 1445.31, -26 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_water_stream_slow";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 2244.99, 2536.11, -22.3985 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_water_stream_slow";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 2872.84, 2525.31, -26 );
|
||||
ent.v[ "angles" ] = ( 0, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_water_stream_slow";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 3523.43, 2659.79, -26 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_water_stream_slow";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 4213.79, 2693.48, -26 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_water_stream_slow";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1805.61, 1973.23, -26 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_water_stream_slow";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 4774.45, 2564.64, -26 );
|
||||
ent.v[ "angles" ] = ( 0, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_water_stream_slow";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 3532.07, 888.462, 50.5513 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_fly_loop";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 2381.38, 1170.16, -25.5125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_fly_loop";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 2360.32, 674.141, -19.2892 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_fly_loop";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 5864.01, -285.487, 151.206 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_light_flurescent_hum";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 5012.68, -223.565, 124.23 );
|
||||
ent.v[ "angles" ] = ( 0, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_light_flurescent_hum2";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 4683.32, -1.57683, 124.998 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_light_flurescent_hum2";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 5361.3, 1639.92, -20 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_bog_leaf_mvmt1";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 5119.83, 1528.27, -20 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_fly_close_lp";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 3848.38, 222.364, 121.143 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_light_buzz_old";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 4047.75, 379.219, 121.208 );
|
||||
ent.v[ "angles" ] = ( 0, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_light_buzz_overtones";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 4255.24, 250.188, 120.48 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_light_buzz_roomtone";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 5870.33, -285.058, 151.239 );
|
||||
ent.v[ "angles" ] = ( 0, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_light_buzz_roomtone";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 5692.77, 456.388, 2.83565 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_bog_leaf_rustle1";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 5855.51, 716.96, 27.4999 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_bog_leaf_rustle2";
|
||||
|
||||
ent = createOneshotEffect( "antiair_runner" );
|
||||
ent.v[ "origin" ] = ( -388, -2764, 16 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "antiair_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "antiair_runner" );
|
||||
ent.v[ "origin" ] = ( 4914, -3147, -12 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "antiair_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "antiair_runner" );
|
||||
ent.v[ "origin" ] = ( 9740, 2048, 106 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "antiair_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fog_bog_a" );
|
||||
ent.v[ "origin" ] = ( 5366.78, 1078.98, -20 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "fog_bog_a";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fog_bog_a" );
|
||||
ent.v[ "origin" ] = ( 5285.37, 1607.48, -17.4944 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "fog_bog_a";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fog_bog_a" );
|
||||
ent.v[ "origin" ] = ( 4840.12, 1209.93, -18.3108 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "fog_bog_a";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fog_bog_a" );
|
||||
ent.v[ "origin" ] = ( 4152.28, 1073.18, -20 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "fog_bog_a";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fog_bog_a" );
|
||||
ent.v[ "origin" ] = ( 3996.98, 1388.36, -19.4735 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "fog_bog_a";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fog_bog_a" );
|
||||
ent.v[ "origin" ] = ( 3465.3, 1804.02, -2.61328 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "fog_bog_a";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fog_bog_a" );
|
||||
ent.v[ "origin" ] = ( 4792.46, 1809.77, -18.6662 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "fog_bog_a";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fog_bog_a" );
|
||||
ent.v[ "origin" ] = ( 2737.79, 1195.86, -36 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "fog_bog_a";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fog_bog_a" );
|
||||
ent.v[ "origin" ] = ( 2207.75, 1186.71, -36 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "fog_bog_a";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "firelp_barrel_pm" );
|
||||
ent.v[ "origin" ] = ( 4610.18, 1433.31, 13.3877 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "firelp_barrel_pm";
|
||||
ent.v[ "delay" ] = -15;
|
||||
ent.v[ "soundalias" ] = "fire_metal_small";
|
||||
|
||||
ent = createOneshotEffect( "firelp_barrel_pm" );
|
||||
ent.v[ "origin" ] = ( 4428.73, 1225.38, 13.9004 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "firelp_barrel_pm";
|
||||
ent.v[ "delay" ] = -15;
|
||||
ent.v[ "soundalias" ] = "fire_wood_small";
|
||||
|
||||
ent = createOneshotEffect( "firelp_barrel_pm" );
|
||||
ent.v[ "origin" ] = ( 4390.65, 1359.16, 61.8147 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "firelp_barrel_pm";
|
||||
ent.v[ "delay" ] = -15;
|
||||
ent.v[ "soundalias" ] = "fire_wood_small";
|
||||
|
||||
ent = createOneshotEffect( "firelp_barrel_pm" );
|
||||
ent.v[ "origin" ] = ( 1958.71, -64.9117, -12.8119 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "firelp_barrel_pm";
|
||||
ent.v[ "delay" ] = -15;
|
||||
ent.v[ "soundalias" ] = "fire_metal_medium";
|
||||
|
||||
ent = createOneshotEffect( "mp_bog_horizon_flash" );
|
||||
ent.v[ "origin" ] = ( 3341.13, 1292.05, -4.69841 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "mp_bog_horizon_flash";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "battlefield_smokebank_S" );
|
||||
ent.v[ "origin" ] = ( 2234.29, 229.819, -26.0303 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "battlefield_smokebank_S";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "battlefield_smokebank_S" );
|
||||
ent.v[ "origin" ] = ( 3283.44, 423.813, -26 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "battlefield_smokebank_S";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "battlefield_smokebank_S" );
|
||||
ent.v[ "origin" ] = ( 4765.31, 486.469, 14.8897 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "battlefield_smokebank_S";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "battlefield_smokebank_S" );
|
||||
ent.v[ "origin" ] = ( 5855.57, 1404.34, 12.663 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "battlefield_smokebank_S";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "battlefield_smokebank_S" );
|
||||
ent.v[ "origin" ] = ( 5728.1, 1990.67, 20.8385 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "battlefield_smokebank_S";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
}
|
||||
|
||||
@@ -0,0 +1,611 @@
|
||||
//_createfx generated. Do not touch!!
|
||||
#include common_scripts\utility;
|
||||
#include common_scripts\_createfx;
|
||||
main()
|
||||
{
|
||||
// CreateFX entities placed: 153
|
||||
ent = createOneshotEffect( "rain_heavy_mist" );
|
||||
ent.v[ "origin" ] = ( 2661.26, 7.93919, 681.971 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "rain_heavy_mist";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "rain_heavy_mist" );
|
||||
ent.v[ "origin" ] = ( -2609.62, -89.6212, 729.602 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "rain_heavy_mist";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "rain_heavy_mist" );
|
||||
ent.v[ "origin" ] = ( -572.933, 26.9681, 749.701 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "rain_heavy_mist";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "rain_heavy_mist" );
|
||||
ent.v[ "origin" ] = ( 992.009, -32.6488, 724.821 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "rain_heavy_mist";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "lightning" );
|
||||
ent.v[ "origin" ] = ( 388.606, 24.4658, 302.752 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "lightning";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "mp_cargoship_rain_noise01" );
|
||||
ent.v[ "origin" ] = ( 0, 0, 0 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "mp_cargoship_rain_noise01";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "mp_cargoship_rain_noise02" );
|
||||
ent.v[ "origin" ] = ( 0, 0, 0 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "mp_cargoship_rain_noise02";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "mp_cargoship_rain_noise03" );
|
||||
ent.v[ "origin" ] = ( 0, 0, 0 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "mp_cargoship_rain_noise03";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "mp_cargoship_rain_noise04" );
|
||||
ent.v[ "origin" ] = ( 0, 0, 0 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "mp_cargoship_rain_noise04";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "mp_cargoship_rain_noise05" );
|
||||
ent.v[ "origin" ] = ( 0, 0, 0 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "mp_cargoship_rain_noise05";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "mp_cargoship_rain_noise_ud01" );
|
||||
ent.v[ "origin" ] = ( 0, 0, 0 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "mp_cargoship_rain_noise_ud01";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "mp_cargoship_rain_noise_ud02" );
|
||||
ent.v[ "origin" ] = ( 0, 0, 0 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "mp_cargoship_rain_noise_ud02";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "mp_cargoship_rain_noise_ud03" );
|
||||
ent.v[ "origin" ] = ( 0, 0, 0 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "mp_cargoship_rain_noise_ud03";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "cgoshp_drips_a" );
|
||||
ent.v[ "origin" ] = ( 2934.39, 286.819, 444.084 );
|
||||
ent.v[ "angles" ] = ( 270, 276, 0 );
|
||||
ent.v[ "fxid" ] = "cgoshp_drips_a";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "cgoshp_drips_a" );
|
||||
ent.v[ "origin" ] = ( 3113.97, 266.618, 445.089 );
|
||||
ent.v[ "angles" ] = ( 274, 90, 162 );
|
||||
ent.v[ "fxid" ] = "cgoshp_drips_a";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "cgoshp_drips_a" );
|
||||
ent.v[ "origin" ] = ( 3306.58, -3.61145, 444.957 );
|
||||
ent.v[ "angles" ] = ( 270, 47.5394, -51.5394 );
|
||||
ent.v[ "fxid" ] = "cgoshp_drips_a";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "cgoshp_drips_a" );
|
||||
ent.v[ "origin" ] = ( 3264.82, 116.387, 444.16 );
|
||||
ent.v[ "angles" ] = ( 270, 196, 0 );
|
||||
ent.v[ "fxid" ] = "cgoshp_drips_a";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "cgoshp_drips_a" );
|
||||
ent.v[ "origin" ] = ( 3243.06, -192.744, 443.579 );
|
||||
ent.v[ "angles" ] = ( 270, 36, 0 );
|
||||
ent.v[ "fxid" ] = "cgoshp_drips_a";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "cgoshp_drips_a" );
|
||||
ent.v[ "origin" ] = ( 3023.05, -282.807, 441.545 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "cgoshp_drips_a";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "cgoshp_drips_a" );
|
||||
ent.v[ "origin" ] = ( 2842.64, -283.754, 444.106 );
|
||||
ent.v[ "angles" ] = ( 270, 348, 0 );
|
||||
ent.v[ "fxid" ] = "cgoshp_drips_a";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "cgoshp_drips_a" );
|
||||
ent.v[ "origin" ] = ( 2740.64, 2.27352, 443.125 );
|
||||
ent.v[ "angles" ] = ( 270, 192, 0 );
|
||||
ent.v[ "fxid" ] = "cgoshp_drips_a";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "cgoshp_drips_a" );
|
||||
ent.v[ "origin" ] = ( 2770.76, -173.486, 442.266 );
|
||||
ent.v[ "angles" ] = ( 270, 80, 0 );
|
||||
ent.v[ "fxid" ] = "cgoshp_drips_a";
|
||||
ent.v[ "delay" ] = -15;
|
||||
ent.v[ "soundalias" ] = "emt_rain_building";
|
||||
|
||||
ent = createOneshotEffect( "cgoshp_drips_a" );
|
||||
ent.v[ "origin" ] = ( 2756.73, 158.198, 443.392 );
|
||||
ent.v[ "angles" ] = ( 270, 260, 0 );
|
||||
ent.v[ "fxid" ] = "cgoshp_drips_a";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "cgoshp_drips_a" );
|
||||
ent.v[ "origin" ] = ( 2779.49, 384.404, 282.088 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "cgoshp_drips_a";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "cgoshp_drips_a" );
|
||||
ent.v[ "origin" ] = ( 2970.27, 396.04, 283.351 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "cgoshp_drips_a";
|
||||
ent.v[ "delay" ] = -15;
|
||||
ent.v[ "soundalias" ] = "emt_rain_building";
|
||||
|
||||
ent = createOneshotEffect( "cgoshp_drips_a" );
|
||||
ent.v[ "origin" ] = ( 3129.92, 391.933, 283 );
|
||||
ent.v[ "angles" ] = ( 270, 176, 0 );
|
||||
ent.v[ "fxid" ] = "cgoshp_drips_a";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "cgoshp_drips_a" );
|
||||
ent.v[ "origin" ] = ( 3278.28, 333.419, 283 );
|
||||
ent.v[ "angles" ] = ( 270, 148, 0 );
|
||||
ent.v[ "fxid" ] = "cgoshp_drips_a";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "cgoshp_drips_a" );
|
||||
ent.v[ "origin" ] = ( 2746.76, -390.587, 283.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "cgoshp_drips_a";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "cgoshp_drips_a" );
|
||||
ent.v[ "origin" ] = ( 2863.34, -385.079, 285.056 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "cgoshp_drips_a";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "cgoshp_drips_a" );
|
||||
ent.v[ "origin" ] = ( 3081.04, -391.004, 284.626 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "cgoshp_drips_a";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "cgoshp_drips_a" );
|
||||
ent.v[ "origin" ] = ( 3229.6, -373.235, 281.847 );
|
||||
ent.v[ "angles" ] = ( 270, 16, 0 );
|
||||
ent.v[ "fxid" ] = "cgoshp_drips_a";
|
||||
ent.v[ "delay" ] = -15;
|
||||
ent.v[ "soundalias" ] = "emt_rain_building";
|
||||
|
||||
ent = createOneshotEffect( "cgoshp_drips_a" );
|
||||
ent.v[ "origin" ] = ( 3378.9, -267.1, 280.831 );
|
||||
ent.v[ "angles" ] = ( 270, 36, 0 );
|
||||
ent.v[ "fxid" ] = "cgoshp_drips_a";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "cgoshp_drips_a" );
|
||||
ent.v[ "origin" ] = ( 3434.86, 27.2355, 281.207 );
|
||||
ent.v[ "angles" ] = ( 270, 92, 0 );
|
||||
ent.v[ "fxid" ] = "cgoshp_drips_a";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "cgoshp_drips_a" );
|
||||
ent.v[ "origin" ] = ( 3435.06, 192.708, 280.915 );
|
||||
ent.v[ "angles" ] = ( 270, 92, 0 );
|
||||
ent.v[ "fxid" ] = "cgoshp_drips_a";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "cgoshp_drips_a" );
|
||||
ent.v[ "origin" ] = ( 2657.56, -228.81, 286.242 );
|
||||
ent.v[ "angles" ] = ( 270, 87.9998, 0 );
|
||||
ent.v[ "fxid" ] = "cgoshp_drips_a";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "cgoshp_drips_a" );
|
||||
ent.v[ "origin" ] = ( 2661.33, -70.7578, 281.402 );
|
||||
ent.v[ "angles" ] = ( 270, 87.9998, 0 );
|
||||
ent.v[ "fxid" ] = "cgoshp_drips_a";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "cgoshp_drips_a" );
|
||||
ent.v[ "origin" ] = ( 2658.15, 91.1426, 284.539 );
|
||||
ent.v[ "angles" ] = ( 270, 87.9998, 0 );
|
||||
ent.v[ "fxid" ] = "cgoshp_drips_a";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "cgoshp_drips_a" );
|
||||
ent.v[ "origin" ] = ( 2657.4, 247.125, 283.635 );
|
||||
ent.v[ "angles" ] = ( 270, 87.9998, 0 );
|
||||
ent.v[ "fxid" ] = "cgoshp_drips_a";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "cgoshp_drips_a" );
|
||||
ent.v[ "origin" ] = ( 2427.18, 246.972, 123.125 );
|
||||
ent.v[ "angles" ] = ( 270, 91.9999, 0 );
|
||||
ent.v[ "fxid" ] = "cgoshp_drips_a";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "cgoshp_drips_a" );
|
||||
ent.v[ "origin" ] = ( 2430.69, 25.7404, 124.125 );
|
||||
ent.v[ "angles" ] = ( 270, 91.9999, 0 );
|
||||
ent.v[ "fxid" ] = "cgoshp_drips_a";
|
||||
ent.v[ "delay" ] = -15;
|
||||
ent.v[ "soundalias" ] = "emt_rain_roof";
|
||||
|
||||
ent = createOneshotEffect( "cgoshp_drips_a" );
|
||||
ent.v[ "origin" ] = ( 2419.98, -247.479, 122.125 );
|
||||
ent.v[ "angles" ] = ( 270, 91.9999, 0 );
|
||||
ent.v[ "fxid" ] = "cgoshp_drips_a";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "cgoshp_drips_a" );
|
||||
ent.v[ "origin" ] = ( 2429.65, -469.372, 123.125 );
|
||||
ent.v[ "angles" ] = ( 270, 91.9999, 0 );
|
||||
ent.v[ "fxid" ] = "cgoshp_drips_a";
|
||||
ent.v[ "delay" ] = -15;
|
||||
ent.v[ "soundalias" ] = "emt_rain_building";
|
||||
|
||||
ent = createOneshotEffect( "cgoshp_drips_a" );
|
||||
ent.v[ "origin" ] = ( 2433.21, 517.985, 123.04 );
|
||||
ent.v[ "angles" ] = ( 270, 91.9999, 0 );
|
||||
ent.v[ "fxid" ] = "cgoshp_drips_a";
|
||||
ent.v[ "delay" ] = -15;
|
||||
ent.v[ "soundalias" ] = "emt_rain_building";
|
||||
|
||||
ent = createOneshotEffect( "cgoshp_drips_a" );
|
||||
ent.v[ "origin" ] = ( 946.688, 87.5605, 123.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "cgoshp_drips_a";
|
||||
ent.v[ "delay" ] = -15;
|
||||
ent.v[ "soundalias" ] = "emt_rain_roof";
|
||||
|
||||
ent = createOneshotEffect( "cgoshp_drips" );
|
||||
ent.v[ "origin" ] = ( 1100.29, -79.1835, 125.25 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "cgoshp_drips";
|
||||
ent.v[ "delay" ] = -15;
|
||||
ent.v[ "soundalias" ] = "emt_rain_building";
|
||||
|
||||
ent = createOneshotEffect( "cgoshp_drips_a" );
|
||||
ent.v[ "origin" ] = ( 883.816, -188.827, 124.125 );
|
||||
ent.v[ "angles" ] = ( 270, 252, 0 );
|
||||
ent.v[ "fxid" ] = "cgoshp_drips_a";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "cgoshp_drips_a" );
|
||||
ent.v[ "origin" ] = ( -461.227, -90.1313, 124.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "cgoshp_drips_a";
|
||||
ent.v[ "delay" ] = -15;
|
||||
ent.v[ "soundalias" ] = "emt_rain_roof";
|
||||
|
||||
ent = createOneshotEffect( "cgoshp_drips_a" );
|
||||
ent.v[ "origin" ] = ( -649.465, 88.9878, 124.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "cgoshp_drips_a";
|
||||
ent.v[ "delay" ] = -15;
|
||||
ent.v[ "soundalias" ] = "emt_rain_building";
|
||||
|
||||
ent = createOneshotEffect( "cgoshp_drips_a" );
|
||||
ent.v[ "origin" ] = ( -722.225, -168.713, 125.125 );
|
||||
ent.v[ "angles" ] = ( 270, 75.9999, 0 );
|
||||
ent.v[ "fxid" ] = "cgoshp_drips_a";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "cgoshp_drips" );
|
||||
ent.v[ "origin" ] = ( -469.353, 84.0074, 123.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "cgoshp_drips";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "cgoshp_drips" );
|
||||
ent.v[ "origin" ] = ( -468.513, -12.546, 124.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "cgoshp_drips";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "cgoshp_drips_a" );
|
||||
ent.v[ "origin" ] = ( -2298, 419.892, 170.777 );
|
||||
ent.v[ "angles" ] = ( 270, 91.9999, 0 );
|
||||
ent.v[ "fxid" ] = "cgoshp_drips_a";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "cgoshp_drips_a" );
|
||||
ent.v[ "origin" ] = ( -2298.24, 12.8391, 171.202 );
|
||||
ent.v[ "angles" ] = ( 270, 91.9999, 0 );
|
||||
ent.v[ "fxid" ] = "cgoshp_drips_a";
|
||||
ent.v[ "delay" ] = -15;
|
||||
ent.v[ "soundalias" ] = "emt_rain_roof";
|
||||
|
||||
ent = createOneshotEffect( "cgoshp_drips_a" );
|
||||
ent.v[ "origin" ] = ( -2298.06, -200.451, 172.559 );
|
||||
ent.v[ "angles" ] = ( 270, 91.9999, 0 );
|
||||
ent.v[ "fxid" ] = "cgoshp_drips_a";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "cgoshp_drips_a" );
|
||||
ent.v[ "origin" ] = ( -2298, -404.118, 170.822 );
|
||||
ent.v[ "angles" ] = ( 270, 91.9999, 0 );
|
||||
ent.v[ "fxid" ] = "cgoshp_drips_a";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "cgoshp_drips_a" );
|
||||
ent.v[ "origin" ] = ( -2343.25, -579.63, 171.066 );
|
||||
ent.v[ "angles" ] = ( 270, 91.9999, 0 );
|
||||
ent.v[ "fxid" ] = "cgoshp_drips_a";
|
||||
ent.v[ "delay" ] = -15;
|
||||
ent.v[ "soundalias" ] = "emt_rain_building";
|
||||
|
||||
ent = createOneshotEffect( "cgoshp_drips_a" );
|
||||
ent.v[ "origin" ] = ( -2344, 604.493, 172.426 );
|
||||
ent.v[ "angles" ] = ( 270, 91.9999, 0 );
|
||||
ent.v[ "fxid" ] = "cgoshp_drips_a";
|
||||
ent.v[ "delay" ] = -15;
|
||||
ent.v[ "soundalias" ] = "emt_rain_building";
|
||||
|
||||
ent = createOneshotEffect( "cgoshp_drips_a" );
|
||||
ent.v[ "origin" ] = ( -2298.19, 219.298, 170.512 );
|
||||
ent.v[ "angles" ] = ( 270, 91.9999, 0 );
|
||||
ent.v[ "fxid" ] = "cgoshp_drips_a";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "cgoshp_drips_a" );
|
||||
ent.v[ "origin" ] = ( -3034.98, -422.45, 174.875 );
|
||||
ent.v[ "angles" ] = ( 270, 12.8868, 175.113 );
|
||||
ent.v[ "fxid" ] = "cgoshp_drips_a";
|
||||
ent.v[ "delay" ] = -15;
|
||||
ent.v[ "soundalias" ] = "emt_rain_roof";
|
||||
|
||||
ent = createOneshotEffect( "cgoshp_drips_a" );
|
||||
ent.v[ "origin" ] = ( -2831.64, -530.144, 171.939 );
|
||||
ent.v[ "angles" ] = ( 270, 358.603, 149.397 );
|
||||
ent.v[ "fxid" ] = "cgoshp_drips_a";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "cgoshp_drips_a" );
|
||||
ent.v[ "origin" ] = ( -3393.34, -262.815, 175.501 );
|
||||
ent.v[ "angles" ] = ( 270, 12.8868, 175.113 );
|
||||
ent.v[ "fxid" ] = "cgoshp_drips_a";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "cgoshp_drips_a" );
|
||||
ent.v[ "origin" ] = ( -3398.84, 257.504, 172.239 );
|
||||
ent.v[ "angles" ] = ( 270, 12.8868, 175.113 );
|
||||
ent.v[ "fxid" ] = "cgoshp_drips_a";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "cgoshp_drips_a" );
|
||||
ent.v[ "origin" ] = ( -2613.5, -507.737, 340.125 );
|
||||
ent.v[ "angles" ] = ( 270, 12.8868, 175.113 );
|
||||
ent.v[ "fxid" ] = "cgoshp_drips_a";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "cgoshp_drips_a" );
|
||||
ent.v[ "origin" ] = ( -2806.28, -490.323, 335.335 );
|
||||
ent.v[ "angles" ] = ( 270, 12.8868, 175.113 );
|
||||
ent.v[ "fxid" ] = "cgoshp_drips_a";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "cgoshp_drips_a" );
|
||||
ent.v[ "origin" ] = ( -2860.76, 506.264, 173.318 );
|
||||
ent.v[ "angles" ] = ( 270, 357.711, -145.711 );
|
||||
ent.v[ "fxid" ] = "cgoshp_drips_a";
|
||||
ent.v[ "delay" ] = -15;
|
||||
ent.v[ "soundalias" ] = "emt_rain_roof";
|
||||
|
||||
ent = createOneshotEffect( "cgoshp_drips_a" );
|
||||
ent.v[ "origin" ] = ( -2430.53, 489.234, 333.571 );
|
||||
ent.v[ "angles" ] = ( 270, 12.8868, 175.113 );
|
||||
ent.v[ "fxid" ] = "cgoshp_drips_a";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "cgoshp_drips_a" );
|
||||
ent.v[ "origin" ] = ( -2637.08, 489.077, 334.74 );
|
||||
ent.v[ "angles" ] = ( 270, 12.8868, 175.113 );
|
||||
ent.v[ "fxid" ] = "cgoshp_drips_a";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "cgoshp_drips_a" );
|
||||
ent.v[ "origin" ] = ( -3434.86, 41.3531, 180.125 );
|
||||
ent.v[ "angles" ] = ( 270, 34.6197, -122.62 );
|
||||
ent.v[ "fxid" ] = "cgoshp_drips_a";
|
||||
ent.v[ "delay" ] = -15;
|
||||
ent.v[ "soundalias" ] = "emt_rain_building";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -1712.15, 61.1535, 123.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_rain_metal";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -898.38, -233.155, 110.683 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_rain_metal";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -892.537, 230.702, 110.685 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_rain_metal";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1297.2, 186.021, 145 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_rain_metal";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 2047.53, -44.8112, 123.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_rain_metal";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 444.946, -540.951, 419.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_ship_chain_sway";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 353.465, 223.296, 411.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_ship_chain_sway";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -1248.68, -117.984, 416.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_ship_chain_sway";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 2623.57, 0.988373, 1649.11 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_ship_chain_sway";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 2950.4, 4.68033, 754.42 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_rattle_pole";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 801.69, 197.794, 463.645 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_rattle_pole";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 823.976, -297.235, 473.316 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_rattle_pole";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -755.644, 172.209, 422.608 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_rattle_pole";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -740.377, -177.189, 407.613 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_rattle_pole";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -1169.38, 282.728, 231.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_rattle_dull";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -813.965, -543.507, 178.457 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_rattle_dull";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 777.39, -632.272, 230.562 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_rattle_dull";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1542.69, 332.189, 215.43 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_rattle_dull";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 3255.21, -4.62583, 496.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_rattle_squeak";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -2373.87, 35.6959, 621.411 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_rattle_squeak";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 2811.86, -222.249, 352.976 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_pipe_gas";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 2962.46, 220.937, 303.875 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_pipe_gas";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 2961.35, -77.5968, 278.143 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_ac_duct_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -2423.23, -94.125, 182.372 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_ac_duct_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -2452.18, 281.602, 171.875 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_pipe_water";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -2585.67, -413.353, 191.875 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_pipe_water";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 188.377, -342.689, 123.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_rain_metal";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 183.375, 363.827, 118.74 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_rain_metal";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 579.082, -232.171, 60.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_rain_metal";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1496.67, -338.929, 231.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_rain_metal";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 2055.43, 462.166, 123.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_rain_metal";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 2174.25, -506.21, 123.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_rain_metal";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -1911.2, -430.849, 123.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_rain_metal";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -1769.04, 493.153, 123.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_rain_metal";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1003.71, -600.459, 231.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_rain_metal";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 961.769, 583.179, 123.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_rain_metal";
|
||||
|
||||
}
|
||||
@@ -0,0 +1,920 @@
|
||||
//_createfx generated. Do not touch!!
|
||||
#include common_scripts\utility;
|
||||
#include common_scripts\_createfx;
|
||||
main()
|
||||
{
|
||||
// CreateFX entities placed: 161
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 444.946, -540.951, 419.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_ship_chain_sway";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 353.465, 223.296, 411.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_ship_chain_sway";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -1248.68, -117.984, 416.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_ship_chain_sway";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 2623.57, 0.988373, 1649.11 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_ship_chain_sway";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 2950.4, 4.68033, 754.42 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_rattle_pole";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 801.69, 197.794, 463.645 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_rattle_pole";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 823.976, -297.235, 473.316 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_rattle_pole";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -755.644, 172.209, 422.608 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_rattle_pole";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -740.377, -177.189, 407.613 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_rattle_pole";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -1169.38, 282.728, 231.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_rattle_dull";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -813.965, -543.507, 178.457 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_rattle_dull";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 777.39, -632.272, 230.562 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_rattle_dull";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1542.69, 332.189, 215.43 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_rattle_dull";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 3255.21, -4.62583, 496.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_rattle_squeak";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -2373.87, 35.6959, 621.411 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_rattle_squeak";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 2811.86, -222.249, 352.976 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_pipe_gas";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 2962.46, 220.937, 303.875 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_pipe_gas";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 2961.35, -77.5968, 278.143 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_ac_duct_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -2423.23, -94.125, 182.372 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_ac_duct_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -2452.18, 281.602, 171.875 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_pipe_water";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -2585.67, -413.353, 191.875 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_pipe_water";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 577.326, -204.383, 62.6841 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_flat_surface";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 2231.65, 839.269, -208 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_water_ice";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1742.78, 815.664, -208 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_water_ice";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1258.08, 793.981, -208 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_water_ice";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 731.546, 755.854, -208 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_water_ice";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 184.257, 777.925, -208 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_water_ice";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -1122.99, 761.918, -208 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_water_ice";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -1511.06, 761.977, -202.553 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_water_ice";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -1826.86, 724.425, -208 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_water_ice";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -2234.32, 737.55, -208 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_water_ice";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -2728.57, 818.36, -90.6456 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_water_ice";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -3232.19, 508.078, -145.902 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_water_ice";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -3632.55, 180.926, -103.087 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_water_ice";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -3678.65, -271.023, -80.8057 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_water_ice";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -3404.02, -534.521, -71.2545 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_water_ice";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -3008.53, -676.207, -66.3821 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_water_ice";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -2563.42, -789.989, -41.9651 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_water_ice";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -2121.89, -816.43, -87.9038 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_water_ice";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -1770.01, -771.702, -208 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_water_ice";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -1383.51, -714.35, -208 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_water_ice";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -1033.62, -726.095, -208 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_water_ice";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -9.24158, -744.596, -208 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_water_ice";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 383.072, -718.034, -208 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_water_ice";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 823.841, -724.802, -202.09 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_water_ice";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1367.63, -707.019, -208 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_water_ice";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1739.26, -725.383, -181.554 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_water_ice";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 2323.93, -735.168, -202.898 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_water_ice";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 2111.05, -86.2366, 116.875 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_shipping_container";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 2011.84, -71.5159, 116.875 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_shipping_container";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 975.346, -62.875, 139.407 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_corridor";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -624.406, -62.875, 132.46 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_corridor";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -1668, 66.9741, 25.125 );
|
||||
ent.v[ "angles" ] = ( 270, 348, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_shipping_container";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -1765.61, 63.7259, 25.125 );
|
||||
ent.v[ "angles" ] = ( 270, 348, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_shipping_container";
|
||||
|
||||
ent = createLoopEffect( "snow_light_cargoship_sh" );
|
||||
ent.v[ "origin" ] = ( 1093.11, 13.9103, 237.745 );
|
||||
ent.v[ "angles" ] = ( 272, 0, 160 );
|
||||
ent.v[ "fxid" ] = "snow_light_cargoship_sh";
|
||||
ent.v[ "delay" ] = 0.5;
|
||||
|
||||
ent = createLoopEffect( "snow_light_cargoship_sh" );
|
||||
ent.v[ "origin" ] = ( -4094.64, -275.586, 771.99 );
|
||||
ent.v[ "angles" ] = ( 272, 0, 160 );
|
||||
ent.v[ "fxid" ] = "snow_light_cargoship_sh";
|
||||
ent.v[ "delay" ] = 0.5;
|
||||
|
||||
ent = createLoopEffect( "snow_light_cargoship_sh" );
|
||||
ent.v[ "origin" ] = ( -173.031, 45.3521, 253.066 );
|
||||
ent.v[ "angles" ] = ( 272, 0, 160 );
|
||||
ent.v[ "fxid" ] = "snow_light_cargoship_sh";
|
||||
ent.v[ "delay" ] = 0.5;
|
||||
|
||||
ent = createLoopEffect( "snow_light_cargoship_sh" );
|
||||
ent.v[ "origin" ] = ( 3453.84, -4.22394, 347.271 );
|
||||
ent.v[ "angles" ] = ( 272, 0, 160 );
|
||||
ent.v[ "fxid" ] = "snow_light_cargoship_sh";
|
||||
ent.v[ "delay" ] = 0.5;
|
||||
|
||||
ent = createLoopEffect( "snow_light_cargoship_sh" );
|
||||
ent.v[ "origin" ] = ( 2237.91, 62.8135, 210.982 );
|
||||
ent.v[ "angles" ] = ( 272, 0, 160 );
|
||||
ent.v[ "fxid" ] = "snow_light_cargoship_sh";
|
||||
ent.v[ "delay" ] = 0.5;
|
||||
|
||||
ent = createLoopEffect( "snow_light_cargoship_sh" );
|
||||
ent.v[ "origin" ] = ( -645.14, 0.926399, 233.519 );
|
||||
ent.v[ "angles" ] = ( 272, 0, 160 );
|
||||
ent.v[ "fxid" ] = "snow_light_cargoship_sh";
|
||||
ent.v[ "delay" ] = 0.5;
|
||||
|
||||
ent = createLoopEffect( "snow_light_cargoship_sh" );
|
||||
ent.v[ "origin" ] = ( -2236.19, 1370.47, 137.297 );
|
||||
ent.v[ "angles" ] = ( 272, 0, 160 );
|
||||
ent.v[ "fxid" ] = "snow_light_cargoship_sh";
|
||||
ent.v[ "delay" ] = 0.5;
|
||||
|
||||
ent = createLoopEffect( "snow_light_cargoship_sh" );
|
||||
ent.v[ "origin" ] = ( -2270.67, -647.874, 126.125 );
|
||||
ent.v[ "angles" ] = ( 272, 0, 160 );
|
||||
ent.v[ "fxid" ] = "snow_light_cargoship_sh";
|
||||
ent.v[ "delay" ] = 0.5;
|
||||
|
||||
ent = createLoopEffect( "snow_light_cargoship_sh" );
|
||||
ent.v[ "origin" ] = ( -3176.73, 38.2544, 263.125 );
|
||||
ent.v[ "angles" ] = ( 272, 0, 160 );
|
||||
ent.v[ "fxid" ] = "snow_light_cargoship_sh";
|
||||
ent.v[ "delay" ] = 0.5;
|
||||
|
||||
ent = createLoopEffect( "snow_light_cargoship_sh" );
|
||||
ent.v[ "origin" ] = ( -3292.98, -941.912, 37.6257 );
|
||||
ent.v[ "angles" ] = ( 272, 0, 160 );
|
||||
ent.v[ "fxid" ] = "snow_light_cargoship_sh";
|
||||
ent.v[ "delay" ] = 0.5;
|
||||
|
||||
ent = createLoopEffect( "snow_light_cargoship_sh" );
|
||||
ent.v[ "origin" ] = ( -3629.52, 577.024, 88.2305 );
|
||||
ent.v[ "angles" ] = ( 272, 0, 160 );
|
||||
ent.v[ "fxid" ] = "snow_light_cargoship_sh";
|
||||
ent.v[ "delay" ] = 0.5;
|
||||
|
||||
ent = createLoopEffect( "snow_light_cargoship_sh" );
|
||||
ent.v[ "origin" ] = ( -1520.99, -1296.84, -9.39095 );
|
||||
ent.v[ "angles" ] = ( 272, 0, 160 );
|
||||
ent.v[ "fxid" ] = "snow_light_cargoship_sh";
|
||||
ent.v[ "delay" ] = 0.5;
|
||||
|
||||
ent = createLoopEffect( "snow_light_cargoship_sh" );
|
||||
ent.v[ "origin" ] = ( 718.924, -912.087, 48.6694 );
|
||||
ent.v[ "angles" ] = ( 272, 0, 160 );
|
||||
ent.v[ "fxid" ] = "snow_light_cargoship_sh";
|
||||
ent.v[ "delay" ] = 0.5;
|
||||
|
||||
ent = createLoopEffect( "snow_light_cargoship_sh" );
|
||||
ent.v[ "origin" ] = ( 654.836, 1129.68, -15.9339 );
|
||||
ent.v[ "angles" ] = ( 272, 0, 160 );
|
||||
ent.v[ "fxid" ] = "snow_light_cargoship_sh";
|
||||
ent.v[ "delay" ] = 0.5;
|
||||
|
||||
ent = createLoopEffect( "snow_light_cargoship_sh" );
|
||||
ent.v[ "origin" ] = ( -569.169, 1198.21, 64.0376 );
|
||||
ent.v[ "angles" ] = ( 272, 0, 160 );
|
||||
ent.v[ "fxid" ] = "snow_light_cargoship_sh";
|
||||
ent.v[ "delay" ] = 0.5;
|
||||
|
||||
ent = createLoopEffect( "snow_light_cargoship_sh" );
|
||||
ent.v[ "origin" ] = ( 2977.9, 1096.62, 212.782 );
|
||||
ent.v[ "angles" ] = ( 272, 0, 160 );
|
||||
ent.v[ "fxid" ] = "snow_light_cargoship_sh";
|
||||
ent.v[ "delay" ] = 0.5;
|
||||
|
||||
ent = createLoopEffect( "snow_light_cargoship_sh" );
|
||||
ent.v[ "origin" ] = ( 3117.84, -672.26, 185.348 );
|
||||
ent.v[ "angles" ] = ( 272, 0, 160 );
|
||||
ent.v[ "fxid" ] = "snow_light_cargoship_sh";
|
||||
ent.v[ "delay" ] = 0.5;
|
||||
|
||||
ent = createLoopEffect( "snow_clouds_sh" );
|
||||
ent.v[ "origin" ] = ( 1349.92, -456.112, 82.9428 );
|
||||
ent.v[ "angles" ] = ( 356.088, 257.972, 112.833 );
|
||||
ent.v[ "fxid" ] = "snow_clouds_sh";
|
||||
ent.v[ "delay" ] = 0.5;
|
||||
|
||||
ent = createLoopEffect( "snow_clouds_sh" );
|
||||
ent.v[ "origin" ] = ( 129.356, -546.301, 120.469 );
|
||||
ent.v[ "angles" ] = ( 356.088, 257.972, 112.833 );
|
||||
ent.v[ "fxid" ] = "snow_clouds_sh";
|
||||
ent.v[ "delay" ] = 0.5;
|
||||
|
||||
ent = createLoopEffect( "snow_clouds_sh" );
|
||||
ent.v[ "origin" ] = ( -1815.9, -981.301, 102.544 );
|
||||
ent.v[ "angles" ] = ( 356.088, 257.972, 112.833 );
|
||||
ent.v[ "fxid" ] = "snow_clouds_sh";
|
||||
ent.v[ "delay" ] = 0.5;
|
||||
|
||||
ent = createLoopEffect( "snow_clouds_sh" );
|
||||
ent.v[ "origin" ] = ( 1555.36, 1279.2, 66.4351 );
|
||||
ent.v[ "angles" ] = ( 356.088, 257.972, 112.833 );
|
||||
ent.v[ "fxid" ] = "snow_clouds_sh";
|
||||
ent.v[ "delay" ] = 0.5;
|
||||
|
||||
ent = createLoopEffect( "snow_clouds_sh" );
|
||||
ent.v[ "origin" ] = ( 310.815, 1007.3, 108.609 );
|
||||
ent.v[ "angles" ] = ( 356.088, 257.972, 112.833 );
|
||||
ent.v[ "fxid" ] = "snow_clouds_sh";
|
||||
ent.v[ "delay" ] = 0.5;
|
||||
|
||||
ent = createLoopEffect( "snow_clouds_sh" );
|
||||
ent.v[ "origin" ] = ( -1009.64, 1834.62, 51.7455 );
|
||||
ent.v[ "angles" ] = ( 356.088, 257.972, 112.833 );
|
||||
ent.v[ "fxid" ] = "snow_clouds_sh";
|
||||
ent.v[ "delay" ] = 0.5;
|
||||
|
||||
ent = createLoopEffect( "snow_clouds_sh" );
|
||||
ent.v[ "origin" ] = ( -1648.56, 2022.58, 133.994 );
|
||||
ent.v[ "angles" ] = ( 356.088, 257.972, 112.833 );
|
||||
ent.v[ "fxid" ] = "snow_clouds_sh";
|
||||
ent.v[ "delay" ] = 0.5;
|
||||
|
||||
ent = createLoopEffect( "snow_clouds_sh" );
|
||||
ent.v[ "origin" ] = ( -3542.28, 367.501, 272.056 );
|
||||
ent.v[ "angles" ] = ( 356.088, 257.972, 112.833 );
|
||||
ent.v[ "fxid" ] = "snow_clouds_sh";
|
||||
ent.v[ "delay" ] = 0.5;
|
||||
|
||||
ent = createLoopEffect( "snow_light_cargoship_sh" );
|
||||
ent.v[ "origin" ] = ( -1808.13, 0, 192.559 );
|
||||
ent.v[ "angles" ] = ( 272, 0, 160 );
|
||||
ent.v[ "fxid" ] = "snow_light_cargoship_sh";
|
||||
ent.v[ "delay" ] = 0.5;
|
||||
|
||||
ent = createLoopEffect( "snow_clouds_sh" );
|
||||
ent.v[ "origin" ] = ( -3954.82, 285.978, 183.847 );
|
||||
ent.v[ "angles" ] = ( 356.088, 257.972, 112.833 );
|
||||
ent.v[ "fxid" ] = "snow_clouds_sh";
|
||||
ent.v[ "delay" ] = 0.5;
|
||||
|
||||
ent = createLoopEffect( "snow_clouds_sh" );
|
||||
ent.v[ "origin" ] = ( 4186.26, -376.572, 262.62 );
|
||||
ent.v[ "angles" ] = ( 356.088, 257.972, 112.833 );
|
||||
ent.v[ "fxid" ] = "snow_clouds_sh";
|
||||
ent.v[ "delay" ] = 0.5;
|
||||
|
||||
ent = createLoopEffect( "snow_clouds_sh" );
|
||||
ent.v[ "origin" ] = ( 2608.32, 944.354, 254.125 );
|
||||
ent.v[ "angles" ] = ( 356.088, 257.972, 112.833 );
|
||||
ent.v[ "fxid" ] = "snow_clouds_sh";
|
||||
ent.v[ "delay" ] = 0.5;
|
||||
|
||||
ent = createLoopEffect( "fire_cargo" );
|
||||
ent.v[ "origin" ] = ( 3413.3, 13809.8, 385.52 );
|
||||
ent.v[ "angles" ] = ( 273.167, 300.728, -33.2201 );
|
||||
ent.v[ "fxid" ] = "fire_cargo";
|
||||
ent.v[ "delay" ] = 0.5;
|
||||
|
||||
ent = createLoopEffect( "red_light" );
|
||||
ent.v[ "origin" ] = ( -1515.49, 2277.48, 81.2256 );
|
||||
ent.v[ "angles" ] = ( 282, 270, 90 );
|
||||
ent.v[ "fxid" ] = "red_light";
|
||||
ent.v[ "delay" ] = 0.5;
|
||||
|
||||
ent = createLoopEffect( "red_light" );
|
||||
ent.v[ "origin" ] = ( -7794.41, 2881.23, 98.639 );
|
||||
ent.v[ "angles" ] = ( 278, 270, 90 );
|
||||
ent.v[ "fxid" ] = "red_light";
|
||||
ent.v[ "delay" ] = 0.5;
|
||||
|
||||
ent = createLoopEffect( "red_light" );
|
||||
ent.v[ "origin" ] = ( -1018.31, -1852.36, 73.2203 );
|
||||
ent.v[ "angles" ] = ( 278.939, 296.677, 61.6029 );
|
||||
ent.v[ "fxid" ] = "red_light";
|
||||
ent.v[ "delay" ] = 0.5;
|
||||
|
||||
ent = createLoopEffect( "red_light" );
|
||||
ent.v[ "origin" ] = ( 3269.83, 31.5032, 462.381 );
|
||||
ent.v[ "angles" ] = ( 272, 90, -90 );
|
||||
ent.v[ "fxid" ] = "red_light";
|
||||
ent.v[ "delay" ] = 0.5;
|
||||
|
||||
ent = createLoopEffect( "codo_fx_ray_ceiling_amber_dim_sm01" );
|
||||
ent.v[ "origin" ] = ( -2441.23, 138.021, 184.125 );
|
||||
ent.v[ "angles" ] = ( 88, 360, -180 );
|
||||
ent.v[ "fxid" ] = "codo_fx_ray_ceiling_amber_dim_sm01";
|
||||
ent.v[ "delay" ] = 0.5;
|
||||
|
||||
ent = createLoopEffect( "codo_fx_ray_ceiling_amber_dim_sm" );
|
||||
ent.v[ "origin" ] = ( -2396.87, -301.687, 172.916 );
|
||||
ent.v[ "angles" ] = ( 48, 180, -180 );
|
||||
ent.v[ "fxid" ] = "codo_fx_ray_ceiling_amber_dim_sm";
|
||||
ent.v[ "delay" ] = 0.5;
|
||||
|
||||
ent = createLoopEffect( "red_light" );
|
||||
ent.v[ "origin" ] = ( 2433.98, 2898.34, 63.3551 );
|
||||
ent.v[ "angles" ] = ( 282, 90, -90 );
|
||||
ent.v[ "fxid" ] = "red_light";
|
||||
ent.v[ "delay" ] = 0.5;
|
||||
|
||||
ent = createLoopEffect( "red_light" );
|
||||
ent.v[ "origin" ] = ( -5919.82, 413.324, 99.4631 );
|
||||
ent.v[ "angles" ] = ( 274, 90, -90 );
|
||||
ent.v[ "fxid" ] = "red_light";
|
||||
ent.v[ "delay" ] = 0.5;
|
||||
|
||||
ent = createLoopEffect( "codo_fx_ray_ceiling_amber_dim_sm01" );
|
||||
ent.v[ "origin" ] = ( -2373.02, 133.528, 342.815 );
|
||||
ent.v[ "angles" ] = ( 88, 360, -180 );
|
||||
ent.v[ "fxid" ] = "codo_fx_ray_ceiling_amber_dim_sm01";
|
||||
ent.v[ "delay" ] = 0.5;
|
||||
|
||||
ent = createLoopEffect( "codo_fx_ray_ceiling_amber_dim_sm01" );
|
||||
ent.v[ "origin" ] = ( 3004, 118.914, 289.079 );
|
||||
ent.v[ "angles" ] = ( 41.9698, 178.271, -2.68894 );
|
||||
ent.v[ "fxid" ] = "codo_fx_ray_ceiling_amber_dim_sm01";
|
||||
ent.v[ "delay" ] = 0.5;
|
||||
|
||||
ent = createLoopEffect( "codo_fx_ray_ceiling_amber_dim_sm" );
|
||||
ent.v[ "origin" ] = ( 2992.64, 31.8381, 456.688 );
|
||||
ent.v[ "angles" ] = ( 87.2965, 106.385, 106.473 );
|
||||
ent.v[ "fxid" ] = "codo_fx_ray_ceiling_amber_dim_sm";
|
||||
ent.v[ "delay" ] = 0.5;
|
||||
|
||||
ent = createLoopEffect( "codo_fx_ray_ceiling_amber_dim_sm01" );
|
||||
ent.v[ "origin" ] = ( 2836.37, -130.896, 453.918 );
|
||||
ent.v[ "angles" ] = ( 65.6831, 270.524, 1.41928 );
|
||||
ent.v[ "fxid" ] = "codo_fx_ray_ceiling_amber_dim_sm01";
|
||||
ent.v[ "delay" ] = 0.5;
|
||||
|
||||
ent = createOneshotEffect( "snow_spray_detail_oriented_runner_sh" );
|
||||
ent.v[ "origin" ] = ( -1704.43, -34.4476, 113.125 );
|
||||
ent.v[ "angles" ] = ( 0, 270, 0 );
|
||||
ent.v[ "fxid" ] = "snow_spray_detail_oriented_runner_sh";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_spray_detail_oriented_runner_sh" );
|
||||
ent.v[ "origin" ] = ( -914.211, 151.248, 97.0943 );
|
||||
ent.v[ "angles" ] = ( 0, 270, 0 );
|
||||
ent.v[ "fxid" ] = "snow_spray_detail_oriented_runner_sh";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_spray_detail_oriented_runner_sh" );
|
||||
ent.v[ "origin" ] = ( 183.375, 274.725, 121.857 );
|
||||
ent.v[ "angles" ] = ( 0, 270, 0 );
|
||||
ent.v[ "fxid" ] = "snow_spray_detail_oriented_runner_sh";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_spray_detail_oriented_runner_sh" );
|
||||
ent.v[ "origin" ] = ( 1599.91, -131.479, 52 );
|
||||
ent.v[ "angles" ] = ( 0, 270, 0 );
|
||||
ent.v[ "fxid" ] = "snow_spray_detail_oriented_runner_sh";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_spray_detail_oriented_runner_sh" );
|
||||
ent.v[ "origin" ] = ( 2131.82, 428.2, 118.125 );
|
||||
ent.v[ "angles" ] = ( 0, 270, 0 );
|
||||
ent.v[ "fxid" ] = "snow_spray_detail_oriented_runner_sh";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_wind_sh" );
|
||||
ent.v[ "origin" ] = ( 3387.91, 138.906, 176.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "snow_wind_sh";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_spiral_runner_sh" );
|
||||
ent.v[ "origin" ] = ( 3147.72, -442.956, 176 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "snow_spiral_runner_sh";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_spray_detail_oriented_large_runner_sh" );
|
||||
ent.v[ "origin" ] = ( 1856.22, 1335.18, -174.875 );
|
||||
ent.v[ "angles" ] = ( 0, 270, 0 );
|
||||
ent.v[ "fxid" ] = "snow_spray_detail_oriented_large_runner_sh";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_spray_detail_oriented_large_runner_sh" );
|
||||
ent.v[ "origin" ] = ( 1435.69, 1285.25, -173.116 );
|
||||
ent.v[ "angles" ] = ( 0, 270, 0 );
|
||||
ent.v[ "fxid" ] = "snow_spray_detail_oriented_large_runner_sh";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_spray_detail_oriented_large_runner_sh" );
|
||||
ent.v[ "origin" ] = ( 1310.31, 1450.76, -154.21 );
|
||||
ent.v[ "angles" ] = ( 0, 270, 0 );
|
||||
ent.v[ "fxid" ] = "snow_spray_detail_oriented_large_runner_sh";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_spray_detail_oriented_large_runner_sh" );
|
||||
ent.v[ "origin" ] = ( 229.737, 1556.6, -171.771 );
|
||||
ent.v[ "angles" ] = ( 0, 270, 0 );
|
||||
ent.v[ "fxid" ] = "snow_spray_detail_oriented_large_runner_sh";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_spray_detail_oriented_large_runner_sh" );
|
||||
ent.v[ "origin" ] = ( -620.34, 2230.89, -179.875 );
|
||||
ent.v[ "angles" ] = ( 0, 270, 0 );
|
||||
ent.v[ "fxid" ] = "snow_spray_detail_oriented_large_runner_sh";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_clouds_sh" );
|
||||
ent.v[ "origin" ] = ( 449.958, 1296.45, -79.4191 );
|
||||
ent.v[ "angles" ] = ( 0, -90, 0 );
|
||||
ent.v[ "fxid" ] = "snow_clouds_sh";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_clouds_sh" );
|
||||
ent.v[ "origin" ] = ( -17.2615, 2286.72, 67.0886 );
|
||||
ent.v[ "angles" ] = ( 0, -90, 0 );
|
||||
ent.v[ "fxid" ] = "snow_clouds_sh";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_clouds_sh" );
|
||||
ent.v[ "origin" ] = ( -1445.58, 2168.32, 25.8208 );
|
||||
ent.v[ "angles" ] = ( 0, -90, 0 );
|
||||
ent.v[ "fxid" ] = "snow_clouds_sh";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_clouds_sh" );
|
||||
ent.v[ "origin" ] = ( -2820.57, -1520.04, 162.235 );
|
||||
ent.v[ "angles" ] = ( 0, -90, 0 );
|
||||
ent.v[ "fxid" ] = "snow_clouds_sh";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_clouds_sh" );
|
||||
ent.v[ "origin" ] = ( 2888.03, -2271.56, 17.0625 );
|
||||
ent.v[ "angles" ] = ( 0, -90, 0 );
|
||||
ent.v[ "fxid" ] = "snow_clouds_sh";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_clouds_sh" );
|
||||
ent.v[ "origin" ] = ( 2527.41, 1602.56, 42.7507 );
|
||||
ent.v[ "angles" ] = ( 0, -90, 0 );
|
||||
ent.v[ "fxid" ] = "snow_clouds_sh";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_clouds_sh" );
|
||||
ent.v[ "origin" ] = ( -5593.65, 173.849, 63.5796 );
|
||||
ent.v[ "angles" ] = ( 0, -90, 0 );
|
||||
ent.v[ "fxid" ] = "snow_clouds_sh";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_clouds_sh" );
|
||||
ent.v[ "origin" ] = ( -6087.28, 2641.53, 25.2488 );
|
||||
ent.v[ "angles" ] = ( 0, -90, 0 );
|
||||
ent.v[ "fxid" ] = "snow_clouds_sh";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_clouds_sh" );
|
||||
ent.v[ "origin" ] = ( -3916.68, 2453.77, -50.8793 );
|
||||
ent.v[ "angles" ] = ( 0, -90, 0 );
|
||||
ent.v[ "fxid" ] = "snow_clouds_sh";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_clouds_sh" );
|
||||
ent.v[ "origin" ] = ( 2383.67, -2109.65, 682.77 );
|
||||
ent.v[ "angles" ] = ( 0, -90, 0 );
|
||||
ent.v[ "fxid" ] = "snow_clouds_sh";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_clouds_sh" );
|
||||
ent.v[ "origin" ] = ( 3659.77, -3650, 248.059 );
|
||||
ent.v[ "angles" ] = ( 0, -90, 0 );
|
||||
ent.v[ "fxid" ] = "snow_clouds_sh";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_spray_detail_oriented_runner_400x400_sh" );
|
||||
ent.v[ "origin" ] = ( 181.276, 383.738, 16.5 );
|
||||
ent.v[ "angles" ] = ( 0, 270, 0 );
|
||||
ent.v[ "fxid" ] = "snow_spray_detail_oriented_runner_400x400_sh";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_spray_detail_oriented_runner_400x400_sh" );
|
||||
ent.v[ "origin" ] = ( 313.161, -25.3142, 16.125 );
|
||||
ent.v[ "angles" ] = ( 0, 270, 0 );
|
||||
ent.v[ "fxid" ] = "snow_spray_detail_oriented_runner_400x400_sh";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_spray_detail_oriented_runner_sh" );
|
||||
ent.v[ "origin" ] = ( 514.043, 167.807, 16.125 );
|
||||
ent.v[ "angles" ] = ( 0, 270, 0 );
|
||||
ent.v[ "fxid" ] = "snow_spray_detail_oriented_runner_sh";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_spray_detail_oriented_runner_sh" );
|
||||
ent.v[ "origin" ] = ( 617.588, -234.618, 61.125 );
|
||||
ent.v[ "angles" ] = ( 0, 270, 0 );
|
||||
ent.v[ "fxid" ] = "snow_spray_detail_oriented_runner_sh";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_spray_detail_oriented_runner_400x400_sh" );
|
||||
ent.v[ "origin" ] = ( -1392.19, 345.348, 16.125 );
|
||||
ent.v[ "angles" ] = ( 0, 270, 0 );
|
||||
ent.v[ "fxid" ] = "snow_spray_detail_oriented_runner_400x400_sh";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_spray_detail_oriented_runner_sh" );
|
||||
ent.v[ "origin" ] = ( -640.424, -73.2508, 176.125 );
|
||||
ent.v[ "angles" ] = ( 0, 270, 0 );
|
||||
ent.v[ "fxid" ] = "snow_spray_detail_oriented_runner_sh";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_spray_detail_oriented_runner_sh" );
|
||||
ent.v[ "origin" ] = ( -560.383, -310.484, 176.125 );
|
||||
ent.v[ "angles" ] = ( 0, 270, 0 );
|
||||
ent.v[ "fxid" ] = "snow_spray_detail_oriented_runner_sh";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_spray_detail_oriented_runner_sh" );
|
||||
ent.v[ "origin" ] = ( -509.161, 246.091, 176.125 );
|
||||
ent.v[ "angles" ] = ( 0, 270, 0 );
|
||||
ent.v[ "fxid" ] = "snow_spray_detail_oriented_runner_sh";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_spray_detail_oriented_runner_sh" );
|
||||
ent.v[ "origin" ] = ( -1404.65, -568.723, 16.125 );
|
||||
ent.v[ "angles" ] = ( 0, 270, 0 );
|
||||
ent.v[ "fxid" ] = "snow_spray_detail_oriented_runner_sh";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_spray_detail_oriented_runner_sh" );
|
||||
ent.v[ "origin" ] = ( -1081.65, -629.768, -32.5 );
|
||||
ent.v[ "angles" ] = ( 0, 270, 0 );
|
||||
ent.v[ "fxid" ] = "snow_spray_detail_oriented_runner_sh";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_spray_detail_oriented_runner_400x400_sh" );
|
||||
ent.v[ "origin" ] = ( 1788.32, 275.454, 16.125 );
|
||||
ent.v[ "angles" ] = ( 0, 270, 0 );
|
||||
ent.v[ "fxid" ] = "snow_spray_detail_oriented_runner_400x400_sh";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_spray_detail_oriented_runner_sh" );
|
||||
ent.v[ "origin" ] = ( 1050.78, 224.62, 176.125 );
|
||||
ent.v[ "angles" ] = ( 0, 270, 0 );
|
||||
ent.v[ "fxid" ] = "snow_spray_detail_oriented_runner_sh";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_spray_detail_oriented_runner_sh" );
|
||||
ent.v[ "origin" ] = ( 1018.93, -245.607, 176.125 );
|
||||
ent.v[ "angles" ] = ( 0, 270, 0 );
|
||||
ent.v[ "fxid" ] = "snow_spray_detail_oriented_runner_sh";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_spray_detail_oriented_runner_sh" );
|
||||
ent.v[ "origin" ] = ( 1772.84, -529.076, 16.125 );
|
||||
ent.v[ "angles" ] = ( 0, 270, 0 );
|
||||
ent.v[ "fxid" ] = "snow_spray_detail_oriented_runner_sh";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_clouds_sh" );
|
||||
ent.v[ "origin" ] = ( -6147.02, 1404.83, 551.08 );
|
||||
ent.v[ "angles" ] = ( 0, -90, 0 );
|
||||
ent.v[ "fxid" ] = "snow_clouds_sh";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_clouds_sh" );
|
||||
ent.v[ "origin" ] = ( 1124.2, 2786.51, 62.7778 );
|
||||
ent.v[ "angles" ] = ( 0, -90, 0 );
|
||||
ent.v[ "fxid" ] = "snow_clouds_sh";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_clouds_sh" );
|
||||
ent.v[ "origin" ] = ( 802.978, 2239.44, 145.335 );
|
||||
ent.v[ "angles" ] = ( 0, -90, 0 );
|
||||
ent.v[ "fxid" ] = "snow_clouds_sh";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_clouds_sh" );
|
||||
ent.v[ "origin" ] = ( -3084.53, 292.11, 498.094 );
|
||||
ent.v[ "angles" ] = ( 0, -90, 0 );
|
||||
ent.v[ "fxid" ] = "snow_clouds_sh";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_clouds_sh" );
|
||||
ent.v[ "origin" ] = ( 4240.77, 591.483, 356.38 );
|
||||
ent.v[ "angles" ] = ( 0, -90, 0 );
|
||||
ent.v[ "fxid" ] = "snow_clouds_sh";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_spray_detail_oriented_runner_400x400_sh" );
|
||||
ent.v[ "origin" ] = ( 3770.75, -0.314746, 212.125 );
|
||||
ent.v[ "angles" ] = ( 0, 270, 0 );
|
||||
ent.v[ "fxid" ] = "snow_spray_detail_oriented_runner_400x400_sh";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_spray_detail_oriented_runner_sh" );
|
||||
ent.v[ "origin" ] = ( 3454.28, 353.098, 207 );
|
||||
ent.v[ "angles" ] = ( 0, 270, 0 );
|
||||
ent.v[ "fxid" ] = "snow_spray_detail_oriented_runner_sh";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_spray_detail_oriented_runner_sh" );
|
||||
ent.v[ "origin" ] = ( 3335.23, 207.536, 336.908 );
|
||||
ent.v[ "angles" ] = ( 0, 270, 0 );
|
||||
ent.v[ "fxid" ] = "snow_spray_detail_oriented_runner_sh";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_spray_detail_oriented_runner_sh" );
|
||||
ent.v[ "origin" ] = ( 3150.39, -208.362, 486 );
|
||||
ent.v[ "angles" ] = ( 0, 270, 0 );
|
||||
ent.v[ "fxid" ] = "snow_spray_detail_oriented_runner_sh";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_wind_sh" );
|
||||
ent.v[ "origin" ] = ( 3465.11, -469.96, 303.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "snow_wind_sh";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_wind_sh" );
|
||||
ent.v[ "origin" ] = ( 3189.69, -333.022, 176.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "snow_wind_sh";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_spiral_runner_sh" );
|
||||
ent.v[ "origin" ] = ( 3252.27, -275.193, 337 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "snow_spiral_runner_sh";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_spiral_runner_sh" );
|
||||
ent.v[ "origin" ] = ( 3398.06, -13.9041, 338.969 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "snow_spiral_runner_sh";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_spiral_runner_sh" );
|
||||
ent.v[ "origin" ] = ( 2783.67, -535.476, 176.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "snow_spiral_runner_sh";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_spiral_runner_sh" );
|
||||
ent.v[ "origin" ] = ( 1821.4, -267.353, 16.5 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "snow_spiral_runner_sh";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_spiral_runner_sh" );
|
||||
ent.v[ "origin" ] = ( 1426.32, 216.775, 16.5 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "snow_spiral_runner_sh";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_spiral_runner_sh" );
|
||||
ent.v[ "origin" ] = ( 1668.54, 484.994, 16.3711 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "snow_spiral_runner_sh";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_spiral_runner_sh" );
|
||||
ent.v[ "origin" ] = ( 217.866, 102.579, 16.5 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "snow_spiral_runner_sh";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_spiral_runner_sh" );
|
||||
ent.v[ "origin" ] = ( -492.396, -357.319, 16.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "snow_spiral_runner_sh";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_spiral_runner_sh" );
|
||||
ent.v[ "origin" ] = ( -1841.53, -260.734, 16.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "snow_spiral_runner_sh";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_spiral_runner_sh" );
|
||||
ent.v[ "origin" ] = ( -1460.56, 369.423, 16.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "snow_spiral_runner_sh";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_spiral_runner_sh" );
|
||||
ent.v[ "origin" ] = ( -1235.74, -18.1963, 16.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "snow_spiral_runner_sh";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_spiral_runner_sh" );
|
||||
ent.v[ "origin" ] = ( 2920.92, 346.261, 336.5 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "snow_spiral_runner_sh";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_spray_detail_oriented_runner_sh" );
|
||||
ent.v[ "origin" ] = ( 2740.63, 300.488, 336.5 );
|
||||
ent.v[ "angles" ] = ( 0, 270, 0 );
|
||||
ent.v[ "fxid" ] = "snow_spray_detail_oriented_runner_sh";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_spiral_runner_sh" );
|
||||
ent.v[ "origin" ] = ( 2724.58, -207.364, 338.5 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "snow_spiral_runner_sh";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_clouds_sh" );
|
||||
ent.v[ "origin" ] = ( 1941.71, 1757.8, 170.004 );
|
||||
ent.v[ "angles" ] = ( 0, -90, 0 );
|
||||
ent.v[ "fxid" ] = "snow_clouds_sh";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_spray_detail_oriented_runner_sh" );
|
||||
ent.v[ "origin" ] = ( -1031.49, 332.133, 221.613 );
|
||||
ent.v[ "angles" ] = ( 0, 270, 0 );
|
||||
ent.v[ "fxid" ] = "snow_spray_detail_oriented_runner_sh";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "snow_spray_detail_oriented_runner_sh" );
|
||||
ent.v[ "origin" ] = ( 3194.74, 236.845, 394.88 );
|
||||
ent.v[ "angles" ] = ( 0, 270, 0 );
|
||||
ent.v[ "fxid" ] = "snow_spray_detail_oriented_runner_sh";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
}
|
||||
|
||||
@@ -0,0 +1,505 @@
|
||||
//_createfx generated. Do not touch!!
|
||||
#include common_scripts\utility;
|
||||
#include common_scripts\_createfx;
|
||||
main()
|
||||
{
|
||||
// CreateFX entities placed: 95
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1822.87, -219.063, 199.714 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_leaf_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1761.21, -1212.5, 165.976 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_palm_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1247.5, -2021.49, 154.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_leaf_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 907.466, -2033, 294.064 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_palm_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 623.11, -1673.74, 248.065 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_palm_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 48.2803, -1867.12, 201.742 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_palm_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -516.402, -1386.7, 249.641 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_palm_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -442.829, -693.036, 286.31 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_palm_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -8.84772, -321.868, 267.794 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_leaf_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -804.673, 586.869, 348.829 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_palm_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -272.199, 628.367, 338.975 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_leaf_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -1020.68, 1303.34, 332.826 );
|
||||
ent.v[ "angles" ] = ( 278.477, 135.157, -132.842 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_palm_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 529.697, 1759.27, 258.613 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_palm_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1445.97, 1175.26, 261.742 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_leaf_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1736.45, 1461.75, 230.452 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_leaf_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1932.32, 891.452, 214.108 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_leaf_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1778.01, 1194.62, 136 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cricket_loop";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1158.34, 1405.39, 132.438 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cricket_loop";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 750.3, 797.37, 143.25 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cicada_loop";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -333.125, 634.053, 231.556 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cricket_loop";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -83.9913, -513.727, 116.27 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cricket_loop";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 570.262, -2064.23, 132.367 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cicada_loop";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1411.59, -1266.7, 64.6023 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cricket_loop";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1708.42, 384.083, 142.942 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cicada_loop";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1831.9, -134.655, 204.787 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1327.02, -1801.23, 88.434 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_elec_transformer_box";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 75.9079, 1979.05, 323.587 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_elec_transformer_box";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 720.734, 1255.66, 403.148 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_rock_rubble";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -775.875, 1575.09, 506.423 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_rock_rubble";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 823.106, -364.107, 169.658 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_sheet_knocking";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 410.924, 503.557, 204.409 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_sheet_knocking";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 739.139, 566.963, 214.071 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_sheet_knocking";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1007.25, 580.349, 205.468 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_sheet_knocking";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 707.518, 905.949, 195.165 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_sheet_knocking";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1896.8, 52.0674, 140.37 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_sheet_knocking";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1618.1, 1246.99, 186.785 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_sheet_knocking";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -122.562, -1654.59, 197.557 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_palm_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -440.637, -397.099, 292.271 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_palm_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 305.038, -1613.36, 175.012 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_palm_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 398.125, 1383.77, 225.572 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_rock_small_debris";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 467.871, -1210.77, 96 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cicada_loop";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -409.329, -771.204, 120.173 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cicada_loop";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 942.013, -771.877, 409.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_rattle_ring";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1821.49, 737.752, 674.881 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_corrugate_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 329.011, -2507.94, 260.233 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_dog_distant_loop";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 975.098, 572.635, 287.345 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_tower_creaking";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -765.834, 1876.13, 360.836 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_rock_rubble";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 569.305, 1133.11, 264.875 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wood_creak_light_res";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1476.77, 327.173, 340.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wood_creak_light_res";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1383.26, 783.875, 450.809 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wood_creak_light_res";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1534.34, -827.854, 565.785 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_rattle_squeak";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 942.887, -1925.61, 164.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wood_creak_light_res";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 191.054, 2313.75, 406.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wood_creak_light_res";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1100.89, 1417.54, 408.925 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_rattle_dull";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -432.13, 288.09, 528.62 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_rattle_pole";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1000.22, -424.943, 168.017 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_desert_light";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1797.22, -20.6535, 227.105 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_desert_light";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1331.34, 711.512, 667.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_desert_light";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -417.595, 1259.14, 385.002 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_desert_light";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -382.675, 2433.17, 373.331 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_desert_light";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -218.066, -1502.93, 161.251 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_desert_light";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 777.094, -1237.15, 382.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_desert_light";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1440.1, 490.804, 681.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -13.338, 783.37, 140.289 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cicada_loop";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 228.88, -552.385, 451.179 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_rattle_squeak";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1821.96, 295.527, 212.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wood_creak_light_res";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 319.412, 1328.06, 273.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wood_creak_light_res";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 56.5871, -666.495, 312.84 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_ac_duct_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1566.81, 763.041, 197.931 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_ac_duct_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 177.784, 2035.78, 404.937 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_ac_duct_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1509.03, -1566.32, 66.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_industrial_hum_large";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 433.219, 1637.33, 127.728 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cricket_loop";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 50.6293, -661.875, 83.756 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_industrial_hum_small";
|
||||
|
||||
ent = createOneshotEffect( "battlefield_smokebank_S" );
|
||||
ent.v[ "origin" ] = ( 591.801, 506.885, 143.693 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "battlefield_smokebank_S";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "dust_wind_spiral" );
|
||||
ent.v[ "origin" ] = ( 185.452, 1036.01, 141.737 );
|
||||
ent.v[ "angles" ] = ( 276, 0, 0 );
|
||||
ent.v[ "fxid" ] = "dust_wind_spiral";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "dust_wind_spiral" );
|
||||
ent.v[ "origin" ] = ( 298.675, 1805.04, 132.799 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "dust_wind_spiral";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "dust_wind_spiral" );
|
||||
ent.v[ "origin" ] = ( 1626.7, 92.8971, 128.002 );
|
||||
ent.v[ "angles" ] = ( 282.163, 254.676, 99.5342 );
|
||||
ent.v[ "fxid" ] = "dust_wind_spiral";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fog_ground_200_heavy_rundown_tropical" );
|
||||
ent.v[ "origin" ] = ( 567.496, -1022.39, 95.6481 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "fog_ground_200_heavy_rundown_tropical";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "dust_wind_fast" );
|
||||
ent.v[ "origin" ] = ( -159.696, -1421.45, 60.2851 );
|
||||
ent.v[ "angles" ] = ( 270, 349.418, -81.4175 );
|
||||
ent.v[ "fxid" ] = "dust_wind_fast";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "dust_wind_fast" );
|
||||
ent.v[ "origin" ] = ( 987.283, -1396.34, 64 );
|
||||
ent.v[ "angles" ] = ( 270, 349.418, -81.4175 );
|
||||
ent.v[ "fxid" ] = "dust_wind_fast";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "dust_wind_fast" );
|
||||
ent.v[ "origin" ] = ( 714.223, -443.814, 144.279 );
|
||||
ent.v[ "angles" ] = ( 270, 349.418, -81.4175 );
|
||||
ent.v[ "fxid" ] = "dust_wind_fast";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "dust_wind_slow" );
|
||||
ent.v[ "origin" ] = ( 1191.96, -462.06, 81.0504 );
|
||||
ent.v[ "angles" ] = ( 270, 3.43142, -87.431 );
|
||||
ent.v[ "fxid" ] = "dust_wind_slow";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "dust_wind_slow" );
|
||||
ent.v[ "origin" ] = ( -468.46, 1251.02, 239.951 );
|
||||
ent.v[ "angles" ] = ( 270, 3.43142, -87.431 );
|
||||
ent.v[ "fxid" ] = "dust_wind_slow";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "dust_wind_spiral" );
|
||||
ent.v[ "origin" ] = ( -243.099, 1889.93, 243.136 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "dust_wind_spiral";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "dust_wind_slow" );
|
||||
ent.v[ "origin" ] = ( 253.807, -104.357, 132.302 );
|
||||
ent.v[ "angles" ] = ( 270, 3.43142, -87.431 );
|
||||
ent.v[ "fxid" ] = "dust_wind_slow";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "dust_wind_slow" );
|
||||
ent.v[ "origin" ] = ( 400.631, -1528.55, 60.1176 );
|
||||
ent.v[ "angles" ] = ( 270, 3.43142, -87.431 );
|
||||
ent.v[ "fxid" ] = "dust_wind_slow";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "dust_wind_spiral" );
|
||||
ent.v[ "origin" ] = ( -310.954, -391.079, 104.039 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "dust_wind_spiral";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "dust_wind_spiral" );
|
||||
ent.v[ "origin" ] = ( -241.4, -972.168, 100.49 );
|
||||
ent.v[ "angles" ] = ( 278, 270, 90 );
|
||||
ent.v[ "fxid" ] = "dust_wind_spiral";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "dust_wind_spiral" );
|
||||
ent.v[ "origin" ] = ( -434.328, 496.868, 230.602 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "dust_wind_spiral";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "hallway_smoke_light" );
|
||||
ent.v[ "origin" ] = ( 1618.84, 583.146, 338.125 );
|
||||
ent.v[ "angles" ] = ( 358, 86, 90 );
|
||||
ent.v[ "fxid" ] = "hallway_smoke_light";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "hallway_smoke_light" );
|
||||
ent.v[ "origin" ] = ( 1781.27, 546.691, 227.125 );
|
||||
ent.v[ "angles" ] = ( 318.121, 84.6272, 93.4527 );
|
||||
ent.v[ "fxid" ] = "hallway_smoke_light";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "hallway_smoke_light" );
|
||||
ent.v[ "origin" ] = ( 1791.44, 574.949, 438.213 );
|
||||
ent.v[ "angles" ] = ( 318.121, 84.6272, 93.4527 );
|
||||
ent.v[ "fxid" ] = "hallway_smoke_light";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "moth_runner" );
|
||||
ent.v[ "origin" ] = ( 308.213, 423.814, 155.289 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "moth_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "moth_runner" );
|
||||
ent.v[ "origin" ] = ( 1162, 880, 170.4 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "moth_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "hallway_smoke_light" );
|
||||
ent.v[ "origin" ] = ( -251.8, 1153.1, 229 );
|
||||
ent.v[ "angles" ] = ( 0, 90, 0 );
|
||||
ent.v[ "fxid" ] = "hallway_smoke_light";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
}
|
||||
|
||||
@@ -0,0 +1,749 @@
|
||||
//_createfx generated. Do not touch!!
|
||||
#include common_scripts\utility;
|
||||
#include common_scripts\_createfx;
|
||||
main()
|
||||
{
|
||||
// CreateFX entities placed: 203
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 4166.18, -42.8449, 277.479 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_palm_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 3244.99, -2252.21, 198.678 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_palm_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 5068.48, -4150.93, 177.549 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_palm_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 3076.01, -1128.49, 56.2458 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_fly_loop";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 4548.75, -270.521, 143.875 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_light_flourescent_hum";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 5112.97, -537.197, 143.875 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_light_flourescent_hum";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 5507.63, -1122.36, 299.083 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_light_flourescent_hum";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 4844.46, -4916.53, -13.3526 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_light_flourescent_hum";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 3515.02, -3461.37, -16.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_light_flourescent_hum";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 3189.06, -3298.13, -115.48 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_pipe_gas";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 5997.65, -3301.35, 98.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_rattle_ring";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 4199.19, 168.53, 287.52 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_rattle_ring";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 2933.49, 30.4216, 300.034 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_rattle_squeak";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 3404.59, -1450.84, 435.255 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_rattle_dull";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 4300.99, -2370.78, 320.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_rattle_pole";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 4157, -4683.07, 373.992 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_rattle_ring";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 6608.13, -4502.26, 312.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_rattle_squeak";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 5521.28, -2713.59, 508.261 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_rattle_ring";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 3791.06, -1686.42, 153.875 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_light_flourescent_hum";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 4034.23, -1794.99, 153.875 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_ac_metal_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 3547.9, -1581.15, 153.875 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_ac_metal_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 6041.59, -2679.41, 155.875 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_light_flourescent_hum";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 5635.49, -3272.06, -19.5959 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_elec_transformer_box";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 5096.54, -3495.25, 71.875 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_ac_metal_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 5577.13, -4953.25, -90.1664 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_ac_metal_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 3773.3, -3884.24, -67.6969 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_elec_transformer_box";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 5439.05, -4968.27, -125.607 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_pipe_gas";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 6016.37, -995.49, 63.3158 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_refrigerator_hum";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 4387.92, -4887.18, 15.875 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_ac_metal_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 5600.32, -4237.84, 198.856 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_powerline_hum";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 5042.4, -4199.77, 229.144 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_powerline_hum";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 4671.17, -4040.19, 220.686 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_powerline_hum";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 4049.54, -3489.07, 236.183 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_powerline_hum";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 4851.39, -3029.27, 265.685 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_powerline_hum";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 4798.3, -2400.4, 322.909 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_powerline_hum";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 5507.96, -2070.7, 406.534 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_powerline_hum";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 5766.99, -1730.27, 385.05 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_powerline_hum";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 5193.91, -1235.09, 391.378 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_powerline_hum";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 4385.34, -1006.8, 388.029 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_powerline_hum";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 4320.29, -1410.9, 393.349 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_powerline_hum";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 3809.99, -1220.05, 385.907 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_powerline_hum";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 3748.52, -549.11, 361.932 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_powerline_hum";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 2940.81, -864.002, 387.008 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_paper_flutter";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 4709.51, -1342.39, 394.511 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_paper_flutter";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 4413.41, -111.117, 325.714 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cloth_flap_tent";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 3441.13, -1118.16, 284.763 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cloth_flap_tent";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 3772.3, -1317.91, 159.658 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cloth_flap_tent";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 4092.23, -1514.12, 157.631 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cloth_flap_tent";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 4408.52, -525.095, 164.987 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cloth_flap_tent";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 4754.1, -655.869, 157.429 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cloth_flap_tent";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 4831.01, -1778.02, 141.669 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cloth_flap_tent";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 5178.14, -1128.78, 256.088 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cloth_flap_tent";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 5606.43, -1434.37, 258.298 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cloth_flap_tent";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 5487.52, -1152.14, 397.731 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cloth_flap_tent";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 5606.59, -1431.98, 395.292 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt-cloth_flap_tent";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 6233.21, -1761.61, 161.451 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cloth_flap_tent";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 5710.54, -2349.23, 277.709 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cloth_flap_tent";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 5474.68, -2691.32, 278.844 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cloth_flap_tent";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 5156.69, -3058.31, 243.806 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cloth_flap_tent";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 5541.21, -3215.93, 44.807 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cloth_flap_tent";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 5356.21, -3140.21, 395.873 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cloth_flap_tent";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 4957.72, -3307.16, 255.685 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cloth_flap_tent";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 4745.01, -3584.38, 116.419 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cloth_flap_tent";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 5608.18, -3045.03, 278.684 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cloth_flap_tent";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 5295.45, -3776.35, 316.481 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cloth_flap_tent";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 5635.45, -3572.04, 242.648 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cloth_flap_tent";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 6289.01, -3709.6, 15.1776 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cloth_flap_tent";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 6274.81, -3466.74, 259.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cloth_flap_tent";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 6284.86, -3676.26, 518.674 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cloth_flap_tent";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 6307.03, -4991.83, 119.194 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cloth_flap_tent";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 6313.52, -4991.23, 390.381 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cloth_flap_tent";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 6298.04, -5634.26, 123.753 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cloth_flap_tent";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 6297.97, -6032.99, 123.558 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cloth_flap_tent";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 3298.28, -4970.48, -1.65469 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cloth_flap_tent";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 4362.38, -3090.38, 192.421 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cloth_flap_tent";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 4453.45, -2827.77, 189.628 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cloth_flap_tent";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 4708.27, -2292.54, 254.75 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cloth_flap_tent";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 4833.66, -1970.81, 269.531 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cloth_flap_tent";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 4083.23, -1510.38, 405.88 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cloth_flap_tent";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 3726.99, -1293.98, 406.953 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cloth_flap_tent";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 3060.75, -846.698, 351.166 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cloth_flap_tent";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 4858.64, -1929.97, 136.921 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_creaking_lp";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 5242.74, -3079.96, 85.9802 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_creaking_lp";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 3642.52, -4297.11, -20.7681 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cloth_flap_tent";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 5818.53, -1634.75, 177.517 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wood_creak_light";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 6005.95, -2047.58, 306.356 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wood_creak_light";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 4672.03, -2289.66, 185.929 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wood_creak_light";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 5536.57, -3252.28, 175.587 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wood_creak_light";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 3906.7, -2476.73, -1.42633 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wood_creak_light";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 3308.33, -2066.16, 477.01 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_palm_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 3062.17, -2414.6, 479.354 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_palm_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 2806.1, -2523.47, 686.031 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_palm_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 2271.67, -3390.96, 425.968 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_palm_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 2162.95, -3491.5, 698.398 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_palm_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 4998.69, -4047.78, 347.367 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_palm_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 4953.82, -4220.4, 603.184 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_palm_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 6436.24, -1338.12, 231.396 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wood_creak_light";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 4190.21, -2548.91, 188.92 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cloth_flap_tent";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 4854.87, -3277.05, 59.2981 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cloth_flap_tent";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 3787.49, -2767.69, 126.86 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wood_creak_light";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 6631.34, -4489.88, 81.7343 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wood_creak_light";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 4441.27, -3519.46, 295 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_paper_flutter";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 3676.19, -775.251, -15.9449 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "amb_wind_building_l";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 4269.91, -1162.64, 18.5084 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "amb_wind_building_r";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 4826.15, -1375.23, 22 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "amb_wind_building_l";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 5337.79, -1697.21, 14 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "amb_wind_building_r";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 5116.55, -2244.17, -5.46752 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "amb_wind_building_l";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 4861.36, -2688.83, -63.7163 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "amb_wind_building_r";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 4534.91, -3297.8, -136.584 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "amb_wind_building_l";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 4408.22, -3939.31, -143 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "amb_wind_building_r";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 3858.76, -4517.81, -62.7985 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "amb_wind_building_l";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 4386.7, -4497.45, -102.12 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "amb_wind_air_l";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 5302.12, -4463.9, -164.495 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "amb_wind_building_l";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 6204.21, -4413.83, -119.797 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "amb_wind_air_r";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 6033.99, -4104, -157.249 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "amb_wind_building_r";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 3805.83, -3762.61, -121.304 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "amb_wind_air_l";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 3896.84, -3046.82, -118.939 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "amb_wind_building_r";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 4855.82, -2063.96, 6.9825 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "amb_wind_air_r";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 6074.67, -1674.42, 8.35943 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "amb_wind_building_l";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 4390.85, -746.084, 23.3628 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "amb_wind_air_r";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 3730.27, -419.095, 30.0092 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "amb_wind_air_l";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 3277.54, -931.705, 8.28628 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "amb_wind_air_r";
|
||||
|
||||
ent = createOneshotEffect( "paper_falling" );
|
||||
ent.v[ "origin" ] = ( 5538.67, -4614.16, 265.815 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "paper_falling";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "paper_falling" );
|
||||
ent.v[ "origin" ] = ( 4445.61, -4606.26, 309.735 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "paper_falling";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "paper_falling" );
|
||||
ent.v[ "origin" ] = ( 4443.17, -3355.01, 300.295 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "paper_falling";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "paper_falling" );
|
||||
ent.v[ "origin" ] = ( 5197.5, -2066.49, 348.772 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "paper_falling";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "paper_falling" );
|
||||
ent.v[ "origin" ] = ( 4665.43, -1326.59, 373.019 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "paper_falling";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "paper_falling" );
|
||||
ent.v[ "origin" ] = ( 3455.47, -915.694, 340.101 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "paper_falling";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "battlefield_smokebank_S" );
|
||||
ent.v[ "origin" ] = ( 5924.76, -4493.45, -156 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "battlefield_smokebank_S";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "dust_wind_slow" );
|
||||
ent.v[ "origin" ] = ( 3317.08, 202.501, -24.6668 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "dust_wind_slow";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "dust_wind_slow" );
|
||||
ent.v[ "origin" ] = ( 3580.04, -489.819, -27.5227 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "dust_wind_slow";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "dust_wind_slow" );
|
||||
ent.v[ "origin" ] = ( 3882.13, -1015.27, 0.9338 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "dust_wind_slow";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "dust_wind_slow" );
|
||||
ent.v[ "origin" ] = ( 4336.53, -1173.51, 20.4339 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "dust_wind_slow";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "dust_wind_slow" );
|
||||
ent.v[ "origin" ] = ( 4821.64, -1353.32, 22 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "dust_wind_slow";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "dust_wind_slow" );
|
||||
ent.v[ "origin" ] = ( 5279.84, -1603.61, 14 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "dust_wind_slow";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "dust_wind_slow" );
|
||||
ent.v[ "origin" ] = ( 5340.67, -2114.09, 7.97217 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "dust_wind_slow";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "dust_wind_slow" );
|
||||
ent.v[ "origin" ] = ( 4928.01, -2752.56, -66.8918 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "dust_wind_slow";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "dust_wind_slow" );
|
||||
ent.v[ "origin" ] = ( 4555.95, -3233.09, -123.028 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "dust_wind_slow";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "thin_black_smoke_L" );
|
||||
ent.v[ "origin" ] = ( 7025.29, -4581.9, 536.501 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "thin_black_smoke_L";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "thin_black_smoke_L" );
|
||||
ent.v[ "origin" ] = ( 3103.25, -6553.5, 286.613 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "thin_black_smoke_L";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "thin_black_smoke_L" );
|
||||
ent.v[ "origin" ] = ( -1557.08, 969.988, 39.5923 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "thin_black_smoke_L";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "thin_black_smoke_M" );
|
||||
ent.v[ "origin" ] = ( 2151.76, -495.643, 130.666 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "thin_black_smoke_M";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "battlefield_smokebank_S" );
|
||||
ent.v[ "origin" ] = ( 5153.09, -4396.4, -164.008 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "battlefield_smokebank_S";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "battlefield_smokebank_S" );
|
||||
ent.v[ "origin" ] = ( 4205.36, -3988.47, -109.947 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "battlefield_smokebank_S";
|
||||
ent.v[ "delay" ] = -15;
|
||||
}
|
||||
|
||||
File diff suppressed because it is too large.
Load diff
@@ -0,0 +1,891 @@
|
||||
//_createfx generated. Do not touch!!
|
||||
#include common_scripts\utility;
|
||||
#include common_scripts\_createfx;
|
||||
main()
|
||||
{
|
||||
// CreateFX entities placed: 156
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -6735.08, -1302.96, -337.372 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_traffic_bigcity_distant";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 199, 879, 2181 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_highelevation_wind";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -1333.11, 1783.17, 393.149 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_palm_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -551.474, 2512.44, 494.24 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_palm_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1040.84, 2536.12, 497.93 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_palm_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1562.38, 2132.86, 449.006 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_palm_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1627.44, 605.167, 418.656 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_palm_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1559.95, 208.967, 385.537 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_palm_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1459.55, -98.9189, 459.053 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_palm_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1476.26, -658.602, 468.289 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_palm_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1066.19, 516.643, 357.75 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_palm_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -192.378, -1234.45, 285.594 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_palm_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -1069.27, -984.731, 251.822 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_palm_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -336.567, 2525.46, 434.076 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_leaf_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -160.325, -974.999, 185.446 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_leaf_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 640.367, 2001.86, 293.818 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_leaf_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1083.55, 2843.85, 467.031 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_leaf_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -39.7882, 2702.29, 454.599 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_leaf_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -1201.7, 2563.06, 443.919 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_leaf_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 444.905, -1324.98, 309.204 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_leaf_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 967.833, -1369.67, 287.355 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_leaf_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1479.41, -1336.74, 192 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_leaf_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -708.621, -1029.96, 131.362 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_rattle_squeak";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1337.7, 1716.83, 294.65 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_ship_chain_sway";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 444.583, 516.639, 445.658 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_rattle_ring";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -573.29, 955.263, 577.074 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_rattle_ring";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -128.796, 1756.32, 562.528 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_rattle_dull";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 115.383, 1117.94, 661.461 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_rattle_dull";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -362.327, -570.527, 304.489 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_sheet_knocking";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 95.711, -838.253, 304.539 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_sheet_knocking";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -548.827, 585.343, 421.467 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_sheet_knocking";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 24.2305, 357.428, 448.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_sheet_knocking";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -15.2864, 823.882, 306.248 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_sheet_knocking";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 882.104, 858.056, 469.529 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_sheet_knocking";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1105.32, 987.338, 312.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_sheet_knocking";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1400.59, 900.937, 312.451 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_sheet_knocking";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1570.61, 1090.58, 312.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_sheet_knocking";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1042.59, 364.06, 305.899 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_sheet_knocking";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 860.906, 127.061, 310.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_sheet_knocking";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 902.79, 2674.38, 335.113 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_sheet_knocking";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 681.397, 2643.66, 341.55 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_sheet_knocking";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 307.805, 2640.54, 344.207 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_sheet_knocking";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -1126.72, 0, 57.2232 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_sheet_knocking";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -1837.81, 643.993, 192.989 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_sheet_knocking";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -834.063, 1508.47, 246.718 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_sheet_knocking";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -377.375, 661.437, 163.158 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_elec_transformer_box";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -1788.82, 698.966, 90.3991 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_elec_transformer_box";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -44.4377, 1355.21, 203.815 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_elec_transformer_box";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 477.601, 3464.21, 583.197 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_dog_distant_loop";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1677.68, -1123.84, 592.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_dog_distant_loop";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -331.573, -418.854, 291.258 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wood_creak_light_res";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 212.695, -676.225, 295.875 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wood_creak_light_res";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 556.119, -386.865, 307.875 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wood_creak_light_res";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -823.353, 176.582, 271.875 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wood_creak_light_res";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -553.195, 368.551, 271.875 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wood_creak_light_res";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -48.9309, 354.196, 439.875 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wood_creak_light_res";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 120.325, 417.858, 439.875 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wood_creak_light_res";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -238.622, 952.838, 415.875 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wood_creak_light_res";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -265.161, 1348.99, 443.978 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wood_creak_light_res";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -368.484, 1126.31, 441.557 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wood_creak_light_res";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1389.78, 620.347, 297.344 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wood_creak_light_res";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1362.67, 240.055, 302.975 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wood_creak_light_res";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1001.02, -126.945, 311.875 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wood_creak_light_res";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1333.05, -240.45, 307.875 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wood_creak_light_res";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1369.96, -957.35, 331.875 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wood_creak_light_res";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -575.582, 191.875, 48.2944 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wood_creak_light_res";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -551.301, 1272.6, 168.934 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_refrigerator_hum";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 616.125, 1085.46, 430.551 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wood_creak_light_res";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 887.875, 1925.51, 253.16 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_elec_transformer_box";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -1227.55, 2119.04, 264.293 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cicada_loop";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -1247.59, 1706.68, 221.373 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cicada_loop";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -906.903, -664.972, 16.9777 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cicada_loop";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -565.946, -930.046, 20.4273 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cicada_loop";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -102.808, -976.151, 68 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cricket_loop1";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 457.063, -1293.21, 174.551 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cricket_loop1";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1319.59, -645.08, 206.21 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cricket_loop1";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1298.04, -444.425, 209.673 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cicada_loop";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 852.112, -334.639, 195.317 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cricket_loop1";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1439.12, 496.741, 202.453 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cricket_loop1";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1770.25, 1194.6, 193.143 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cricket_loop1";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1184.63, 1532.27, 183.902 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cricket_loop1";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1113.66, 1775.2, 193.777 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cicada_loop";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 935.334, 2924.07, 292.69 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cricket_loop1";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1177.78, 1458.66, 236.192 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_sheet_knocking";
|
||||
|
||||
ent = createOneshotEffect( "trash_spiral_runner" );
|
||||
ent.v[ "origin" ] = ( -462.783, -58.6629, -2.73966 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "trash_spiral_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "trash_spiral_runner" );
|
||||
ent.v[ "origin" ] = ( -1051.11, 621.4, 3.6149 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "trash_spiral_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "trash_spiral_runner" );
|
||||
ent.v[ "origin" ] = ( -1332.22, 1816.69, 221.59 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "trash_spiral_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "trash_spiral_runner" );
|
||||
ent.v[ "origin" ] = ( -1150.92, 131.088, 3.96635 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "trash_spiral_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "trash_spiral_runner" );
|
||||
ent.v[ "origin" ] = ( 246.726, -1000.97, 6 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "trash_spiral_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "trash_spiral_runner" );
|
||||
ent.v[ "origin" ] = ( -21.4184, 873.772, 144 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "trash_spiral_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "trash_spiral_runner" );
|
||||
ent.v[ "origin" ] = ( 354.071, 323.208, 0.686417 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "trash_spiral_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "trash_spiral_runner" );
|
||||
ent.v[ "origin" ] = ( -82.3389, 1425.58, 152.261 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "trash_spiral_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "trash_spiral_runner" );
|
||||
ent.v[ "origin" ] = ( 549.789, 2736.17, 284.879 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "trash_spiral_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "trash_spiral_runner" );
|
||||
ent.v[ "origin" ] = ( 850.432, 1704.62, 167.341 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "trash_spiral_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "trash_spiral_runner" );
|
||||
ent.v[ "origin" ] = ( 1216.94, 571.941, 186 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "trash_spiral_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "trash_spiral_runner" );
|
||||
ent.v[ "origin" ] = ( 1164.9, -78.2278, 186 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "trash_spiral_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "trash_spiral_runner" );
|
||||
ent.v[ "origin" ] = ( 1090.19, -532.361, 186 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "trash_spiral_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "trash_spiral_runner" );
|
||||
ent.v[ "origin" ] = ( 890.341, -962.634, 192 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "trash_spiral_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "trash_spiral_runner" );
|
||||
ent.v[ "origin" ] = ( -1106.03, 2331.57, 280.826 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "trash_spiral_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "trash_spiral_runner" );
|
||||
ent.v[ "origin" ] = ( 681.492, 2317.05, 283.842 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "trash_spiral_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "trash_spiral_runner" );
|
||||
ent.v[ "origin" ] = ( 52.2276, 2299.85, 283.62 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "trash_spiral_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "insects_carcass_runner" );
|
||||
ent.v[ "origin" ] = ( 68.964, 1890.72, 264.589 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "insects_carcass_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
ent.v[ "soundalias" ] = "emt_fly_loop";
|
||||
|
||||
ent = createOneshotEffect( "insects_carcass_runner" );
|
||||
ent.v[ "origin" ] = ( -107.66, 1132.06, 161.306 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "insects_carcass_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
ent.v[ "soundalias" ] = "emt_fly_loop";
|
||||
|
||||
ent = createOneshotEffect( "insects_carcass_runner" );
|
||||
ent.v[ "origin" ] = ( 436.681, 329.689, 2.88991 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "insects_carcass_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
ent.v[ "soundalias" ] = "emt_fly_loop";
|
||||
|
||||
ent = createOneshotEffect( "insects_carcass_runner" );
|
||||
ent.v[ "origin" ] = ( 1333.7, -217.576, 202.413 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "insects_carcass_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
ent.v[ "soundalias" ] = "emt_fly_loop";
|
||||
|
||||
ent = createOneshotEffect( "insects_carcass_runner" );
|
||||
ent.v[ "origin" ] = ( 42.618, -941.077, 38.9266 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "insects_carcass_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
ent.v[ "soundalias" ] = "emt_fly_loop";
|
||||
|
||||
ent = createOneshotEffect( "insects_carcass_runner" );
|
||||
ent.v[ "origin" ] = ( -565.579, -737.772, 22.2636 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "insects_carcass_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
ent.v[ "soundalias" ] = "emt_fly_loop";
|
||||
|
||||
ent = createOneshotEffect( "insects_carcass_runner" );
|
||||
ent.v[ "origin" ] = ( -853.556, -889.051, 38.3752 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "insects_carcass_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
ent.v[ "soundalias" ] = "emt_fly_loop";
|
||||
|
||||
ent = createOneshotEffect( "insects_carcass_runner" );
|
||||
ent.v[ "origin" ] = ( -1549.78, 3.20382, 64.4889 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "insects_carcass_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
ent.v[ "soundalias" ] = "emt_fly_loop";
|
||||
|
||||
ent = createOneshotEffect( "insects_carcass_runner" );
|
||||
ent.v[ "origin" ] = ( -632.544, 2616.06, 314.745 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "insects_carcass_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
ent.v[ "soundalias" ] = "emt_fly_loop";
|
||||
|
||||
ent = createOneshotEffect( "insects_carcass_runner" );
|
||||
ent.v[ "origin" ] = ( -259.453, 2565.87, 343.924 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "insects_carcass_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
ent.v[ "soundalias" ] = "emt_fly_loop";
|
||||
|
||||
ent = createOneshotEffect( "insects_carcass_runner" );
|
||||
ent.v[ "origin" ] = ( -104.067, 2658.33, 332.434 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "insects_carcass_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
ent.v[ "soundalias" ] = "emt_fly_loop";
|
||||
|
||||
ent = createOneshotEffect( "insects_carcass_runner" );
|
||||
ent.v[ "origin" ] = ( 72.7937, 2808.37, 335.782 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "insects_carcass_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
ent.v[ "soundalias" ] = "emt_fly_loop";
|
||||
|
||||
ent = createOneshotEffect( "insects_carcass_runner" );
|
||||
ent.v[ "origin" ] = ( -482.996, 1952.2, 304.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "insects_carcass_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
ent.v[ "soundalias" ] = "emt_fly_loop";
|
||||
|
||||
ent = createOneshotEffect( "insects_carcass_runner" );
|
||||
ent.v[ "origin" ] = ( 355.798, 1402.61, 154.869 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "insects_carcass_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
ent.v[ "soundalias" ] = "emt_fly_loop";
|
||||
|
||||
ent = createOneshotEffect( "insects_carcass_runner" );
|
||||
ent.v[ "origin" ] = ( -579.15, 1134.3, 195.68 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "insects_carcass_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
ent.v[ "soundalias" ] = "emt_fly_loop";
|
||||
|
||||
ent = createOneshotEffect( "insects_carcass_runner" );
|
||||
ent.v[ "origin" ] = ( 185.149, 326.193, 210.322 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "insects_carcass_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
ent.v[ "soundalias" ] = "emt_fly_loop";
|
||||
|
||||
ent = createOneshotEffect( "insects_carcass_runner" );
|
||||
ent.v[ "origin" ] = ( 96.9444, 243.238, 325.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "insects_carcass_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
ent.v[ "soundalias" ] = "emt_fly_loop";
|
||||
|
||||
ent = createOneshotEffect( "insects_carcass_runner" );
|
||||
ent.v[ "origin" ] = ( -653.935, 976.122, 297.542 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "insects_carcass_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
ent.v[ "soundalias" ] = "emt_fly_loop";
|
||||
|
||||
ent = createOneshotEffect( "hallway_smoke_light" );
|
||||
ent.v[ "origin" ] = ( 135.759, 1688.13, 290.125 );
|
||||
ent.v[ "angles" ] = ( 313.995, 89.7988, -93.8528 );
|
||||
ent.v[ "fxid" ] = "hallway_smoke_light";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "hallway_smoke_light" );
|
||||
ent.v[ "origin" ] = ( 489.551, 1394.28, 196 );
|
||||
ent.v[ "angles" ] = ( 2, 174, -90 );
|
||||
ent.v[ "fxid" ] = "hallway_smoke_light";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "leaves_fall_gentlewind" );
|
||||
ent.v[ "origin" ] = ( 65.3788, -1206.04, 270.572 );
|
||||
ent.v[ "angles" ] = ( 270, 34.7843, 49.2157 );
|
||||
ent.v[ "fxid" ] = "leaves_fall_gentlewind";
|
||||
ent.v[ "delay" ] = -15;
|
||||
ent.v[ "soundalias" ] = "emt_tree_leaf_rustle";
|
||||
|
||||
ent = createOneshotEffect( "leaves_fall_gentlewind" );
|
||||
ent.v[ "origin" ] = ( -312.906, 2532.64, 516.085 );
|
||||
ent.v[ "angles" ] = ( 270, 357.711, -93.7105 );
|
||||
ent.v[ "fxid" ] = "leaves_fall_gentlewind";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "leaves_fall_gentlewind" );
|
||||
ent.v[ "origin" ] = ( -1192.24, 1646.5, 420.473 );
|
||||
ent.v[ "angles" ] = ( 270, 349.138, 34.8624 );
|
||||
ent.v[ "fxid" ] = "leaves_fall_gentlewind";
|
||||
ent.v[ "delay" ] = -15;
|
||||
ent.v[ "soundalias" ] = "emt_tree_leaf_rustle";
|
||||
|
||||
ent = createOneshotEffect( "hallway_smoke_light" );
|
||||
ent.v[ "origin" ] = ( 294.458, -450.856, 199.125 );
|
||||
ent.v[ "angles" ] = ( 2, 178, -90 );
|
||||
ent.v[ "fxid" ] = "hallway_smoke_light";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "hallway_smoke_light" );
|
||||
ent.v[ "origin" ] = ( -121.962, -453.232, 199.125 );
|
||||
ent.v[ "angles" ] = ( 2, 178, -90 );
|
||||
ent.v[ "fxid" ] = "hallway_smoke_light";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "hallway_smoke_light" );
|
||||
ent.v[ "origin" ] = ( 336.375, -612.729, 199.125 );
|
||||
ent.v[ "angles" ] = ( 2, 178, -90 );
|
||||
ent.v[ "fxid" ] = "hallway_smoke_light";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "hallway_smoke_light" );
|
||||
ent.v[ "origin" ] = ( -931.1, -426.921, 129.062 );
|
||||
ent.v[ "angles" ] = ( 309.703, 351.411, -85.1507 );
|
||||
ent.v[ "fxid" ] = "hallway_smoke_light";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "trash_spiral_runner" );
|
||||
ent.v[ "origin" ] = ( 93.1672, -86.5516, -6.00001 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "trash_spiral_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "room_smoke_200" );
|
||||
ent.v[ "origin" ] = ( -74.3742, -691.924, 168.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "room_smoke_200";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "room_smoke_200" );
|
||||
ent.v[ "origin" ] = ( -659.587, 257.804, 144.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "room_smoke_200";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "room_smoke_200" );
|
||||
ent.v[ "origin" ] = ( 62.5565, 335.333, 176.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "room_smoke_200";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "room_smoke_200" );
|
||||
ent.v[ "origin" ] = ( -85.4485, 589.622, 176.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "room_smoke_200";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "room_smoke_200" );
|
||||
ent.v[ "origin" ] = ( 81.6227, 572.997, 176.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "room_smoke_200";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "room_smoke_200" );
|
||||
ent.v[ "origin" ] = ( -371.045, 1255.31, 152.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "room_smoke_200";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "room_smoke_200" );
|
||||
ent.v[ "origin" ] = ( -420.135, 1263.36, 288.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "room_smoke_200";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "room_smoke_200" );
|
||||
ent.v[ "origin" ] = ( 50.933, 334.726, 312.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "room_smoke_200";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "room_smoke_200" );
|
||||
ent.v[ "origin" ] = ( 827.98, 1219.17, 347.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "room_smoke_200";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "room_smoke_200" );
|
||||
ent.v[ "origin" ] = ( -56.7644, 1718.58, 318.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "room_smoke_200";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "room_smoke_200" );
|
||||
ent.v[ "origin" ] = ( -1362.09, 1280.68, 187.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "room_smoke_200";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "room_smoke_200" );
|
||||
ent.v[ "origin" ] = ( -1179.01, 1259.2, 184.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "room_smoke_200";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "insects_carcass_runner" );
|
||||
ent.v[ "origin" ] = ( 927.983, 2906.18, 291.81 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "insects_carcass_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
ent.v[ "soundalias" ] = "emt_fly_loop";
|
||||
|
||||
ent = createOneshotEffect( "insects_carcass_runner" );
|
||||
ent.v[ "origin" ] = ( 934.106, 2838.63, 299.573 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "insects_carcass_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
ent.v[ "soundalias" ] = "emt_fly_loop";
|
||||
|
||||
ent = createOneshotEffect( "insects_carcass_runner" );
|
||||
ent.v[ "origin" ] = ( 896.274, 2869.02, 293.617 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "insects_carcass_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
ent.v[ "soundalias" ] = "emt_fly_loop";
|
||||
|
||||
ent = createOneshotEffect( "insects_carcass_runner" );
|
||||
ent.v[ "origin" ] = ( 934.719, 2769.45, 308.197 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "insects_carcass_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
ent.v[ "soundalias" ] = "emt_fly_loop";
|
||||
|
||||
ent = createOneshotEffect( "insects_carcass_runner" );
|
||||
ent.v[ "origin" ] = ( 860.036, 2896.35, 292.049 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "insects_carcass_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
ent.v[ "soundalias" ] = "emt_fly_loop";
|
||||
|
||||
ent = createOneshotEffect( "insects_carcass_runner" );
|
||||
ent.v[ "origin" ] = ( 908.705, 2892.24, 335.315 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "insects_carcass_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
ent.v[ "soundalias" ] = "emt_fly_loop";
|
||||
|
||||
ent = createOneshotEffect( "insects_carcass_runner" );
|
||||
ent.v[ "origin" ] = ( 790.865, 2905.36, 291.288 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "insects_carcass_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
ent.v[ "soundalias" ] = "emt_fly_loop";
|
||||
|
||||
ent = createOneshotEffect( "insects_carcass_runner" );
|
||||
ent.v[ "origin" ] = ( 873.573, 2709.26, 295.633 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "insects_carcass_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
ent.v[ "soundalias" ] = "emt_fly_loop";
|
||||
|
||||
ent = createOneshotEffect( "insects_carcass_runner" );
|
||||
ent.v[ "origin" ] = ( 281.724, 2886.23, 292.911 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "insects_carcass_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
ent.v[ "soundalias" ] = "emt_fly_loop";
|
||||
|
||||
ent = createOneshotEffect( "insects_carcass_runner" );
|
||||
ent.v[ "origin" ] = ( -729.079, 574.409, 33.0387 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "insects_carcass_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
ent.v[ "soundalias" ] = "emt_fly_loop";
|
||||
|
||||
ent = createOneshotEffect( "insects_carcass_runner" );
|
||||
ent.v[ "origin" ] = ( -1422.46, 1595.98, 199.325 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "insects_carcass_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
ent.v[ "soundalias" ] = "emt_fly_loop";
|
||||
|
||||
ent = createOneshotEffect( "room_smoke_200" );
|
||||
ent.v[ "origin" ] = ( 69.4227, -461.721, 32.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "room_smoke_200";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "room_smoke_200" );
|
||||
ent.v[ "origin" ] = ( 21.7987, -384.125, 50.7487 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "room_smoke_200";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "hallway_smoke_light" );
|
||||
ent.v[ "origin" ] = ( -117.845, -412.891, 87.125 );
|
||||
ent.v[ "angles" ] = ( 309.703, 351.411, -85.1507 );
|
||||
ent.v[ "fxid" ] = "hallway_smoke_light";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "hallway_smoke_light" );
|
||||
ent.v[ "origin" ] = ( -9.10505, -391.461, 113.346 );
|
||||
ent.v[ "angles" ] = ( 309.703, 351.411, -85.1507 );
|
||||
ent.v[ "fxid" ] = "hallway_smoke_light";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
}
|
||||
|
||||
@@ -0,0 +1,688 @@
|
||||
//_createfx generated. Do not touch!!
|
||||
#include common_scripts\utility;
|
||||
#include common_scripts\_createfx;
|
||||
main()
|
||||
{
|
||||
// CreateFX entities placed: 126
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -872.39, 315.968, -52.003 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_drum_pings";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1520.39, 1283.968, -7.003 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_drum_pings";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 792.39, -24.968, -66.003 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_drum_pings";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1183.39, -71.968, -16.003 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_drum_pings";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 837.39, -780.968, 3.003 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_drum_pings";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -1001.39, 1392.968, -19.003 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_drum_pings";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1487.39, 2259.968, 10.003 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_sheet_knocking";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1028.39, -252.968, 182.003 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_sheet_knocking";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1002.76, -137.39, 131.529 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_light_fluorescent_hum";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1009.89, -233.104, -21.875 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wharehouse_tone_b";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 450.138, 987.999, 372.963 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_leaf_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1076.93, 1116.09, 219.471 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_leaf_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -575.464, 193.068, 13.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_leaf_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -924.256, 320.756, -11.8347 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_leaf_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -1120.35, 1688.99, -17.1911 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wood_creak_heavy_res";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -984.588, 1852.49, 72.8174 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_large_flag_flap";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -357.674, 803.484, -48 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wharehouse_tone_d";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1557.55, 1327.55, 79.5121 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_leaf_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1184.23, 1739.19, -12.9106 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_industrial_hum_small";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -364.637, 1816.69, -4.8738 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_industrial_hum_small";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -67.7523, 1204.4, 91.875 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wharehouse_tone_d";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -190.791, 1243.78, 199.875 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_corner";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 371.213, 531.127, 124.192 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_bird_distant_chirp_loop";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -217.866, -1912.32, 327.846 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_bird_distant_caw_loop";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1202.91, 2990.65, 371.492 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_bird_distant_peck_loop";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 2577.22, 1216.69, -13.2574 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_light_settle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1895.85, 1105.15, 72.2126 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_palm_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1359.58, 455.044, 27.6447 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_palm_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 816.068, 371.404, 67.9178 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_palm_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 447.233, 120.72, 107.457 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_palm_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -229.517, 532.251, 66.9642 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_palm_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 78.3796, 150.651, 199.147 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_palm_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -491.072, -392.051, 16.7966 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_palm_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 531.833, -225.2, 65.4009 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_palm_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1750.1, 2602.69, 110.745 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_palm_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 259.539, 2905.68, 189.464 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_palm_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -771.944, 2098.69, 68.7336 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_palm_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -483.022, 1334.98, 66.6587 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_palm_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -1314.33, 649.541, 93.5098 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_palm_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -560.991, -1470.36, 114.901 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_mountain_heavy";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 620.342, -1468.75, 214.923 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "sh_env_mountain_wind_1";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -321.647, 496.397, 199.913 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "sh_env_mountain_wind_2";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 2866.37, 2029.27, 127.481 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_mountain_heavy";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1388.91, 2845.29, 176.134 );
|
||||
ent.v[ "angles" ] = ( 282, 270, 90 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_mountain_heavy";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1152.45, 988.458, 404.291 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "sh_env_mountain_wind_1";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1187.7, 1390.63, 295.302 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_flat_surface";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 441.282, 990.354, 371.875 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_corner";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 129.915, 1791.36, 185.48 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "sh_env_mountain_wind_3";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 547.287, 1650.28, 9.52919 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_light_settle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 334.07, 1992.29, 53.2089 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_sheet_knocking";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 165.077, 2194.89, 62.6164 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wood_creak_heavy_res";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 204.439, 2074.75, 171.963 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_mountain_light";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -73.5475, 2033.41, 165.71 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wood_creak_light";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -160.329, 1815.8, 111.309 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_elec_transformer_box";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 446.329, 2673.8, 9.309 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_elec_transformer_box";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 895.329, -43.8, 112.309 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_elec_transformer_box";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 874.183, 2085.88, 20.3671 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_rattle_loop";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1145.77, 2106.88, 6.08204 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wood_creak_heavy_res";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 506.77, 952.88, 352.08204 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wood_creak_heavy_res";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1030.94, 1749.73, 28.5296 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wood_creak_light";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 766.137, 361.505, -28.3354 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cricket_loop";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1865.48, 2187.93, 76.7294 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_light_fluorescent_hum";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1926.33, 2543.88, 32.4624 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_sheet_knocking";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1952.66, 1920.13, 66.491 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_rattle_loop";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1847.15, 2172.88, 10.875 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wharehouse_tone_a";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1927.15, 2220.88, -43.875 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wharehouse_tone_a";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 2080.77, 1717.28, 48.1222 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 2125.52, 1736.63, -4.0212 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_light_settle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1764.17, 1904.88, -7.93004 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_elec_transformer_box";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1453.34, 2557.66, 45.7378 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1259.67, 2473.33, -24.5683 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_light_settle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 951.084, 2558.73, 46.2669 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 654.865, 2686.88, 4.75788 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_sheet_knocking";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 183.625, 2666.55, 16.7645 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_sheet_knocking";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -76.3289, 2682.88, 77.7234 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_elec_transformer_box";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -414.703, 2557.7, 44.7916 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -549.868, 2133.1, -24.7579 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wood_creak_heavy_res";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -745.6, 1627.63, -14.6382 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_sheet_knocking";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -556.129, 1486.51, -1.38231 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_light_settle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -960.99, 1604.99, -56.7153 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wharehouse_tone_d";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -985.698, 1167.46, 7.82734 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wood_creak_light";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -223.188, 2051, 51.1331 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_rattle_loop";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 570.754, 1086.66, 33.3687 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_rattle_loop";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1156.29, 1304.9, -47.875 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wharehouse_tone_d";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1175.07, 1371.59, 91.875 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wood_creak_heavy_res";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 33.7212, 1098.13, 20.809 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_sheet_knocking";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -301.369, 646.879, -8.30293 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cricket_loop";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -100.902, -125.198, -124.429 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wharehouse_tone_b";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -92.9788, 23.1048, 38.6544 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_sheet_knocking";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 2830.316, 1238.402, 123.5813 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_large_flag_flap";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -299.316, -150.402, 24.5813 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_large_flag_flap";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 47.875, -424.335, -87.149 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wood_creak_light";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -407.875, -136.113, -4.27731 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wood_creak_heavy_res";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 158.111, -62.7236, -128 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_inside_container_lp";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 275.875, -160.137, -74.8982 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wood_creak_heavy_res";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 851.716, -25.875, -32.9353 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_rattle_loop";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1313.93, 237.545, -53.4965 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_rock_light_debris";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1500.95, 358.71, -38.1797 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cricket_loop";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1489.82, 798.803, -34.4796 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wood_creak_light";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1116.38, 962.134, -12.0269 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wood_creak_heavy_res";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 966.523, 834.789, 32.1472 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_rattle_loop";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1505.25, 1251.87, -1.20199 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_sheet_knocking";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -1213.25, 1167.87, 2.20199 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_sheet_knocking";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1538.79, 1390.89, -47.875 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wood_creak_heavy_res";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 2176.12, 1291.4, 48.1042 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -155.79, 1380.94, 12.604 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_rattle_loop";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -74.2635, 1228.1, 91.875 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wood_creak_heavy_res";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 68.4081, 1412.44, 84.5294 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_light_fluorescent_hum";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -11.6297, 1317.93, 3.03345 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_light_settle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -88.5472, 955.682, 88.0519 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_lamp_hum";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 35.8802, 1463.56, 134.915 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_sheet_knocking";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -1186.8802, 1186.56, 9.915 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_sheet_knocking";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -66.4763, 1170.45, 300.934 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_mountain_light";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 189.49, 554.384, -10.3423 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_rock_small_debris";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -174.995, -648.235, -99.9475 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_light_settle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -446.078, -907.875, -111.213 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wood_creak_light";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 315.875, -790.312, -108.752 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_rock_light_debris";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 102.328, -907.875, -118.017 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wood_creak_light";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 348.135, -667.26, 36.0769 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_sheet_knocking";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 407.785, 166.739, -62.8156 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_rock_light_debris";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 104.851, 71.0855, -20.6679 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_lamp_hum";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 167.747, -240.482, -21.9866 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_lamp_hum";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -370.888, 1832.96, -3.0877 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_ac_metal_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -880.787, 2045.15, -13.5429 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_sheet_knocking";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -1100.99, 1652.11, 68.2989 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_large_flag_flap";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -1407.51, 1007.96, -17.0338 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_sheet_knocking";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -931.746, 826.846, -8.68801 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_light_settle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -700.788, 411.326, -92.8148 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "amb_inside_container_lp";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -778.875, 389.382, -14.2713 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_rattle_loop";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -783.946, -501.241, 132.818 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_obstacle_corner";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -871.176, 1690.55, 49.7403 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_lamp_hum";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -179.648, 152.125, 53.4172 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_large_flag_flap";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 476.875, -1011.13, -47.5017 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 575.766, -361.802, -36.1529 );
|
||||
ent.v[ "angles" ] = ( 0, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_cricket_loop";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1973.76, 1895.22, 107.727 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_ac_metal_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1945.44, 2279.22, 86 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_rattle_loop";
|
||||
|
||||
}
|
||||
|
||||
@@ -0,0 +1,51 @@
|
||||
//_createfx generated. Do not touch!!
|
||||
|
||||
#include common_scripts\utility;
|
||||
#include common_scripts\_createfx;
|
||||
|
||||
main()
|
||||
{
|
||||
// CreateFX entities placed: 15
|
||||
ent = createOneshotEffect( "amb_dust_hangar" );
|
||||
ent.v[ "origin" ] = ( 634.754, 919.889, 248.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "amb_dust_hangar";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "amb_dust_hangar" );
|
||||
ent.v[ "origin" ] = ( 693.875, 1471.26, 279.095 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "amb_dust_hangar";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "amb_dust_hangar" );
|
||||
ent.v[ "origin" ] = ( 615.771, 2360.61, 303.114 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "amb_dust_hangar";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "amb_dust_hangar" );
|
||||
ent.v[ "origin" ] = ( 546.383, 1868.54, 238.682 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "amb_dust_hangar";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "ground_smoke_launch_a" );
|
||||
ent.v[ "origin" ] = ( 496.461, 2137.29, 28.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "ground_smoke_launch_a";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "ground_smoke_launch_a" );
|
||||
ent.v[ "origin" ] = ( 532.291, 920.723, 28.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "ground_smoke_launch_a";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "ground_smoke_launch_a" );
|
||||
ent.v[ "origin" ] = ( 651.757, 1486.79, 40.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "ground_smoke_launch_a";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
}
|
||||
@@ -0,0 +1,750 @@
|
||||
//_createfx generated. Do not touch!!
|
||||
#include common_scripts\utility;
|
||||
#include common_scripts\_createfx;
|
||||
main()
|
||||
{
|
||||
// CreateFX entities placed: 137
|
||||
ent = createLoopEffect( "fx_mp_nuked_glint" );
|
||||
ent.v[ "origin" ] = ( 1089.39, 140.735, -15.7909 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "fx_mp_nuked_glint";
|
||||
ent.v[ "delay" ] = 5.2;
|
||||
|
||||
ent = createLoopEffect( "fx_mp_nuked_glint" );
|
||||
ent.v[ "origin" ] = ( 1001.66, 116.059, 13.0845 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "fx_mp_nuked_glint";
|
||||
ent.v[ "delay" ] = 5;
|
||||
|
||||
ent = createLoopEffect( "fx_mp_nuked_glint" );
|
||||
ent.v[ "origin" ] = ( 961.782, 105.672, -9.09822 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "fx_mp_nuked_glint";
|
||||
ent.v[ "delay" ] = 4;
|
||||
|
||||
ent = createLoopEffect( "fx_mp_nuked_glint_sm" );
|
||||
ent.v[ "origin" ] = ( 1084.38, 135.201, 28.2246 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "fx_mp_nuked_glint_sm";
|
||||
ent.v[ "delay" ] = 3;
|
||||
|
||||
ent = createLoopEffect( "fx_mp_nuked_glint" );
|
||||
ent.v[ "origin" ] = ( 1139.08, 148.665, 28.8157 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "fx_mp_nuked_glint";
|
||||
ent.v[ "delay" ] = 3.25;
|
||||
|
||||
ent = createLoopEffect( "fx_mp_nuked_glint" );
|
||||
ent.v[ "origin" ] = ( 1094.64, 290.268, -15.4943 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "fx_mp_nuked_glint";
|
||||
ent.v[ "delay" ] = 4.1;
|
||||
|
||||
ent = createLoopEffect( "fx_mp_nuked_glint" );
|
||||
ent.v[ "origin" ] = ( 1093.78, 400.194, -3.54597 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "fx_mp_nuked_glint";
|
||||
ent.v[ "delay" ] = 3.44;
|
||||
|
||||
ent = createLoopEffect( "fx_mp_nuked_glint" );
|
||||
ent.v[ "origin" ] = ( 866.295, 354.134, -21.29 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "fx_mp_nuked_glint";
|
||||
ent.v[ "delay" ] = 4.9;
|
||||
|
||||
ent = createLoopEffect( "fx_mp_nuked_glint" );
|
||||
ent.v[ "origin" ] = ( 1048.95, 454.074, -23.0799 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "fx_mp_nuked_glint";
|
||||
ent.v[ "delay" ] = 5.25;
|
||||
|
||||
ent = createLoopEffect( "fx_mp_nuked_glint_sm" );
|
||||
ent.v[ "origin" ] = ( 1069.23, 112.755, -13.2755 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "fx_mp_nuked_glint_sm";
|
||||
ent.v[ "delay" ] = 4;
|
||||
|
||||
ent = createLoopEffect( "fx_mp_nuked_glint_sm" );
|
||||
ent.v[ "origin" ] = ( 1124.34, 142.05, -15.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "fx_mp_nuked_glint_sm";
|
||||
ent.v[ "delay" ] = 4.5;
|
||||
|
||||
ent = createLoopEffect( "fx_mp_nuked_glint_sm" );
|
||||
ent.v[ "origin" ] = ( 1081.13, 425.168, -12.774 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "fx_mp_nuked_glint_sm";
|
||||
ent.v[ "delay" ] = 5.4;
|
||||
|
||||
ent = createLoopEffect( "fx_mp_nuked_glint_sm" );
|
||||
ent.v[ "origin" ] = ( 1057.26, 455.91, 27.8187 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "fx_mp_nuked_glint_sm";
|
||||
ent.v[ "delay" ] = 3.9;
|
||||
|
||||
ent = createLoopEffect( "fx_mp_nuked_glint_sm" );
|
||||
ent.v[ "origin" ] = ( 911.35, 380.926, -20.0576 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "fx_mp_nuked_glint_sm";
|
||||
ent.v[ "delay" ] = 4;
|
||||
|
||||
ent = createLoopEffect( "fx_mp_nuked_glint_sm" );
|
||||
ent.v[ "origin" ] = ( 891.755, 401.9, -20.3994 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "fx_mp_nuked_glint_sm";
|
||||
ent.v[ "delay" ] = 5.5;
|
||||
|
||||
ent = createLoopEffect( "fx_mp_nuked_glint" );
|
||||
ent.v[ "origin" ] = ( 1440.95, 1047.45, 18.0128 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "fx_mp_nuked_glint";
|
||||
ent.v[ "delay" ] = 2;
|
||||
|
||||
ent = createLoopEffect( "fx_mp_nuked_glint_sm" );
|
||||
ent.v[ "origin" ] = ( -192.774, 541, 7.37088 );
|
||||
ent.v[ "angles" ] = ( 270, 2.65013, 13.3499 );
|
||||
ent.v[ "fxid" ] = "fx_mp_nuked_glint_sm";
|
||||
ent.v[ "delay" ] = 2.33;
|
||||
|
||||
ent = createLoopEffect( "fx_mp_nuked_glint_sm" );
|
||||
ent.v[ "origin" ] = ( -271.638, 487.116, 29.0023 );
|
||||
ent.v[ "angles" ] = ( 270, 2.65013, 13.3499 );
|
||||
ent.v[ "fxid" ] = "fx_mp_nuked_glint_sm";
|
||||
ent.v[ "delay" ] = 2;
|
||||
|
||||
ent = createLoopEffect( "fx_mp_nuked_glint_sm" );
|
||||
ent.v[ "origin" ] = ( -215.236, 526.028, -15.6249 );
|
||||
ent.v[ "angles" ] = ( 270, 2.65013, 13.3499 );
|
||||
ent.v[ "fxid" ] = "fx_mp_nuked_glint_sm";
|
||||
ent.v[ "delay" ] = 1.25;
|
||||
|
||||
ent = createLoopEffect( "fx_mp_nuked_glint" );
|
||||
ent.v[ "origin" ] = ( -1028.46, 446.498, 11.3041 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "fx_mp_nuked_glint";
|
||||
ent.v[ "delay" ] = 4.77;
|
||||
|
||||
ent = createLoopEffect( "fx_mp_nuked_glint_sm" );
|
||||
ent.v[ "origin" ] = ( -249.328, 502.504, 7.13441 );
|
||||
ent.v[ "angles" ] = ( 270, 2.65013, 13.3499 );
|
||||
ent.v[ "fxid" ] = "fx_mp_nuked_glint_sm";
|
||||
ent.v[ "delay" ] = 1.4;
|
||||
|
||||
ent = createLoopEffect( "fx_mp_nuked_glint_sm" );
|
||||
ent.v[ "origin" ] = ( 999.345, 120.363, -19.4381 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "fx_mp_nuked_glint_sm";
|
||||
ent.v[ "delay" ] = 4.44;
|
||||
|
||||
ent = createLoopEffect( "fx_mp_nuked_glint" );
|
||||
ent.v[ "origin" ] = ( 1095.06, 320.115, 50.7942 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "fx_mp_nuked_glint";
|
||||
ent.v[ "delay" ] = 3.66;
|
||||
|
||||
ent = createLoopEffect( "fx_mp_nuked_glint" );
|
||||
ent.v[ "origin" ] = ( -811.018, 669.167, -16.5142 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "fx_mp_nuked_glint";
|
||||
ent.v[ "delay" ] = 4.2;
|
||||
|
||||
ent = createLoopEffect( "fx_mp_nuked_glint_sm" );
|
||||
ent.v[ "origin" ] = ( -1036.77, 406.941, -19.5391 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "fx_mp_nuked_glint_sm";
|
||||
ent.v[ "delay" ] = 4.22;
|
||||
|
||||
ent = createLoopEffect( "fx_mp_nuked_glint_sm" );
|
||||
ent.v[ "origin" ] = ( 944.381, 99.5306, -31.7513 );
|
||||
ent.v[ "angles" ] = ( 270, 2.65013, 13.3499 );
|
||||
ent.v[ "fxid" ] = "fx_mp_nuked_glint_sm";
|
||||
ent.v[ "delay" ] = 2.8;
|
||||
|
||||
ent = createLoopEffect( "fx_mp_nuked_glint_sm" );
|
||||
ent.v[ "origin" ] = ( -984.636, 585.63, 29.5845 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "fx_mp_nuked_glint_sm";
|
||||
ent.v[ "delay" ] = 5.3;
|
||||
|
||||
ent = createLoopEffect( "fx_mp_nuked_glint_sm" );
|
||||
ent.v[ "origin" ] = ( -1025.96, 537.156, -1.66225 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "fx_mp_nuked_glint_sm";
|
||||
ent.v[ "delay" ] = 3.66;
|
||||
|
||||
ent = createLoopEffect( "fx_mp_nuked_glint_sm" );
|
||||
ent.v[ "origin" ] = ( -935, 721.738, 29.5629 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "fx_mp_nuked_glint_sm";
|
||||
ent.v[ "delay" ] = 4.7;
|
||||
|
||||
ent = createLoopEffect( "fx_mp_nuked_glint" );
|
||||
ent.v[ "origin" ] = ( -914.643, 707.875, -15.9605 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "fx_mp_nuked_glint";
|
||||
ent.v[ "delay" ] = 5.5;
|
||||
|
||||
ent = createLoopEffect( "fx_mp_nuked_glint" );
|
||||
ent.v[ "origin" ] = ( -962.249, 629.379, -15.7227 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "fx_mp_nuked_glint";
|
||||
ent.v[ "delay" ] = 4.88;
|
||||
|
||||
ent = createLoopEffect( "fx_mp_nuked_glint" );
|
||||
ent.v[ "origin" ] = ( -837.498, 685.221, 28.7356 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "fx_mp_nuked_glint";
|
||||
ent.v[ "delay" ] = 4.33;
|
||||
|
||||
ent = createLoopEffect( "fx_mp_nuked_glint" );
|
||||
ent.v[ "origin" ] = ( -1014.94, 477.738, -22.8343 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "fx_mp_nuked_glint";
|
||||
ent.v[ "delay" ] = 4.88;
|
||||
|
||||
ent = createOneshotEffect( "fx_insects_butterfly_flutter_radial" );
|
||||
ent.v[ "origin" ] = ( 1380.71, 798.2, -64 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "fx_insects_butterfly_flutter_radial";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_insects_butterfly_flutter_radial" );
|
||||
ent.v[ "origin" ] = ( 1582.57, 297.468, -64 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "fx_insects_butterfly_flutter_radial";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_insects_butterfly_flutter_radial" );
|
||||
ent.v[ "origin" ] = ( 1512.89, 46.7042, -4.2584 );
|
||||
ent.v[ "angles" ] = ( 270, 0, -2 );
|
||||
ent.v[ "fxid" ] = "fx_insects_butterfly_flutter_radial";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_insects_butterfly_flutter_radial" );
|
||||
ent.v[ "origin" ] = ( 1678.33, 861.024, 2.80246 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "fx_insects_butterfly_flutter_radial";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_insects_butterfly_flutter_radial" );
|
||||
ent.v[ "origin" ] = ( 668.279, 923.732, -1.00519 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "fx_insects_butterfly_flutter_radial";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_insects_butterfly_flutter_radial" );
|
||||
ent.v[ "origin" ] = ( -1987.96, 298.953, -65.586 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "fx_insects_butterfly_flutter_radial";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_insects_butterfly_flutter_radial" );
|
||||
ent.v[ "origin" ] = ( -1932.87, 481.657, -64.4081 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "fx_insects_butterfly_flutter_radial";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_insects_butterfly_flutter_radial" );
|
||||
ent.v[ "origin" ] = ( -1473.29, 122.971, -29.2644 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "fx_insects_butterfly_flutter_radial";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_insects_butterfly_flutter_radial" );
|
||||
ent.v[ "origin" ] = ( -1381.53, 876.419, -64 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "fx_insects_butterfly_flutter_radial";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_insects_butterfly_flutter_radial" );
|
||||
ent.v[ "origin" ] = ( -395.344, -229.751, -16.116 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "fx_insects_butterfly_flutter_radial";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_insects_butterfly_flutter_radial" );
|
||||
ent.v[ "origin" ] = ( 289.941, 779.828, -62.5964 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 6 );
|
||||
ent.v[ "fxid" ] = "fx_insects_butterfly_flutter_radial";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_insects_butterfly_flutter_radial" );
|
||||
ent.v[ "origin" ] = ( -338.089, -811.233, -60.309 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "fx_insects_butterfly_flutter_radial";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_insects_butterfly_flutter_radial" );
|
||||
ent.v[ "origin" ] = ( -1558.24, 373.437, -64 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "fx_insects_butterfly_flutter_radial";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_insects_butterfly_flutter_radial" );
|
||||
ent.v[ "origin" ] = ( 1318.82, -346.136, -68.0028 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "fx_insects_butterfly_flutter_radial";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_insects_butterfly_flutter_radial" );
|
||||
ent.v[ "origin" ] = ( -726.157, 1224.53, -62.9858 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "fx_insects_butterfly_flutter_radial";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_mp_nuked_double_rainbow" );
|
||||
ent.v[ "origin" ] = ( -18617.3, 6521.43, 435.24 );
|
||||
ent.v[ "angles" ] = ( 0, 336, -2 );
|
||||
ent.v[ "fxid" ] = "fx_mp_nuked_double_rainbow";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_insects_butterfly_flutter" );
|
||||
ent.v[ "origin" ] = ( -1457.31, 62.8673, -25.0432 );
|
||||
ent.v[ "angles" ] = ( 0, 346, 0 );
|
||||
ent.v[ "fxid" ] = "fx_insects_butterfly_flutter";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_insects_butterfly_flutter" );
|
||||
ent.v[ "origin" ] = ( -1656.68, 1115.59, -28.722 );
|
||||
ent.v[ "angles" ] = ( 0, 290, 0 );
|
||||
ent.v[ "fxid" ] = "fx_insects_butterfly_flutter";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_insects_butterfly_flutter" );
|
||||
ent.v[ "origin" ] = ( 218.502, 1023.87, -8.03401 );
|
||||
ent.v[ "angles" ] = ( 360, 290, -4 );
|
||||
ent.v[ "fxid" ] = "fx_insects_butterfly_flutter";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_insects_butterfly_flutter" );
|
||||
ent.v[ "origin" ] = ( -1237.47, 89.4512, -36.3132 );
|
||||
ent.v[ "angles" ] = ( 0, 10, 0 );
|
||||
ent.v[ "fxid" ] = "fx_insects_butterfly_flutter";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_insects_butterfly_flutter" );
|
||||
ent.v[ "origin" ] = ( -1159.82, 1013.4, -58 );
|
||||
ent.v[ "angles" ] = ( 354.059, 333.957, 0.83804 );
|
||||
ent.v[ "fxid" ] = "fx_insects_butterfly_flutter";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_insects_butterfly_flutter" );
|
||||
ent.v[ "origin" ] = ( 479.921, 693.457, -43.875 );
|
||||
ent.v[ "angles" ] = ( 0, 228, 0 );
|
||||
ent.v[ "fxid" ] = "fx_insects_butterfly_flutter";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_insects_butterfly_flutter" );
|
||||
ent.v[ "origin" ] = ( 1770.51, 91.0958, -5.65204 );
|
||||
ent.v[ "angles" ] = ( 0, 108, 0 );
|
||||
ent.v[ "fxid" ] = "fx_insects_butterfly_flutter";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_insects_butterfly_flutter" );
|
||||
ent.v[ "origin" ] = ( 374.835, -157.669, -40.8993 );
|
||||
ent.v[ "angles" ] = ( 0, 96, 0 );
|
||||
ent.v[ "fxid" ] = "fx_insects_butterfly_flutter";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_insects_butterfly_flutter" );
|
||||
ent.v[ "origin" ] = ( -531.053, 917.534, -27.5118 );
|
||||
ent.v[ "angles" ] = ( 0, 310, 0 );
|
||||
ent.v[ "fxid" ] = "fx_insects_butterfly_flutter";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_insects_butterfly_flutter" );
|
||||
ent.v[ "origin" ] = ( 10.2974, 1104.32, -20.2839 );
|
||||
ent.v[ "angles" ] = ( 356.196, 218.041, -1.23795 );
|
||||
ent.v[ "fxid" ] = "fx_insects_butterfly_flutter";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_insects_butterfly_flutter_radial" );
|
||||
ent.v[ "origin" ] = ( -292.016, 730.946, -64 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 6 );
|
||||
ent.v[ "fxid" ] = "fx_insects_butterfly_flutter_radial";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_insects_butterfly_flutter_radial" );
|
||||
ent.v[ "origin" ] = ( -1343.01, -372.05, -62.7842 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 6 );
|
||||
ent.v[ "fxid" ] = "fx_insects_butterfly_flutter_radial";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_insects_butterfly_flutter_radial" );
|
||||
ent.v[ "origin" ] = ( 1976.87, 432.423, -64 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 6 );
|
||||
ent.v[ "fxid" ] = "fx_insects_butterfly_flutter_radial";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
/*
|
||||
ent = createOneshotEffect( "fx_mp_sand_blowing_xlg_distant" );
|
||||
ent.v[ "origin" ] = ( -539.818, 5300.14, -250.745 );
|
||||
ent.v[ "angles" ] = ( 278.014, 7.47926, 178.502 );
|
||||
ent.v[ "fxid" ] = "fx_mp_sand_blowing_xlg_distant";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_mp_sand_blowing_xlg_distant" );
|
||||
ent.v[ "origin" ] = ( -3338.47, 4840.99, -76.1917 );
|
||||
ent.v[ "angles" ] = ( 274.016, 8.97207, 177.016 );
|
||||
ent.v[ "fxid" ] = "fx_mp_sand_blowing_xlg_distant";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_mp_sand_blowing_xlg_distant" );
|
||||
ent.v[ "origin" ] = ( -6593.95, 4438.22, -18.0108 );
|
||||
ent.v[ "angles" ] = ( 274.016, 8.97201, 177.016 );
|
||||
ent.v[ "fxid" ] = "fx_mp_sand_blowing_xlg_distant";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_mp_sand_blowing_xlg_distant" );
|
||||
ent.v[ "origin" ] = ( -6809.13, 1233.31, -51.4233 );
|
||||
ent.v[ "angles" ] = ( 276.068, 15.8712, 164.046 );
|
||||
ent.v[ "fxid" ] = "fx_mp_sand_blowing_xlg_distant";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_mp_sand_blowing_xlg_distant" );
|
||||
ent.v[ "origin" ] = ( -6685.25, -2370.53, -277.782 );
|
||||
ent.v[ "angles" ] = ( 271.673, 95.6186, 84.3858 );
|
||||
ent.v[ "fxid" ] = "fx_mp_sand_blowing_xlg_distant";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_mp_sand_blowing_xlg_distant" );
|
||||
ent.v[ "origin" ] = ( 4729.01, -513.858, -10.0635 );
|
||||
ent.v[ "angles" ] = ( 274.016, 8.97193, 177.017 );
|
||||
ent.v[ "fxid" ] = "fx_mp_sand_blowing_xlg_distant";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_mp_sand_blowing_xlg_distant" );
|
||||
ent.v[ "origin" ] = ( 4892.13, 1636.37, 6.69938 );
|
||||
ent.v[ "angles" ] = ( 272.022, 11.9227, 174.069 );
|
||||
ent.v[ "fxid" ] = "fx_mp_sand_blowing_xlg_distant";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_mp_sand_blowing_xlg_distant" );
|
||||
ent.v[ "origin" ] = ( 2903.06, -3240.39, -218.859 );
|
||||
ent.v[ "angles" ] = ( 274.016, 8.97165, 177.016 );
|
||||
ent.v[ "fxid" ] = "fx_mp_sand_blowing_xlg_distant";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_mp_sand_blowing_xlg_distant" );
|
||||
ent.v[ "origin" ] = ( -1856.93, -7854.79, -35.1803 );
|
||||
ent.v[ "angles" ] = ( 272, 180.003, 5.99616 );
|
||||
ent.v[ "fxid" ] = "fx_mp_sand_blowing_xlg_distant";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_mp_sand_blowing_xlg_distant" );
|
||||
ent.v[ "origin" ] = ( -6537.56, -7443.97, -63.4712 );
|
||||
ent.v[ "angles" ] = ( 272, 180.003, 5.99616 );
|
||||
ent.v[ "fxid" ] = "fx_mp_sand_blowing_xlg_distant";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_mp_sand_blowing_xlg_distant" );
|
||||
ent.v[ "origin" ] = ( -10816.2, -1285.87, -106.642 );
|
||||
ent.v[ "angles" ] = ( 272, 180.003, 5.99616 );
|
||||
ent.v[ "fxid" ] = "fx_mp_sand_blowing_xlg_distant";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_mp_sand_blowing_xlg_distant" );
|
||||
ent.v[ "origin" ] = ( 6528.81, 750.753, 49.6596 );
|
||||
ent.v[ "angles" ] = ( 274.016, 8.97193, 177.017 );
|
||||
ent.v[ "fxid" ] = "fx_mp_sand_blowing_xlg_distant";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_mp_sand_blowing_xlg_distant" );
|
||||
ent.v[ "origin" ] = ( 6034.55, -3955.61, 20.6725 );
|
||||
ent.v[ "angles" ] = ( 274.016, 8.97165, 177.016 );
|
||||
ent.v[ "fxid" ] = "fx_mp_sand_blowing_xlg_distant";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_mp_sand_windy_heavy_sm_slow" );
|
||||
ent.v[ "origin" ] = ( -1261.98, 1399.59, -71.3934 );
|
||||
ent.v[ "angles" ] = ( 0, 328, 0 );
|
||||
ent.v[ "fxid" ] = "fx_mp_sand_windy_heavy_sm_slow";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_mp_sand_windy_heavy_sm_slow" );
|
||||
ent.v[ "origin" ] = ( -1042.47, 1900.93, -53.9062 );
|
||||
ent.v[ "angles" ] = ( 0, 328, 0 );
|
||||
ent.v[ "fxid" ] = "fx_mp_sand_windy_heavy_sm_slow";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_mp_sand_windy_heavy_sm_slow" );
|
||||
ent.v[ "origin" ] = ( 689.725, 2234.61, -86.7695 );
|
||||
ent.v[ "angles" ] = ( 0, 286, 0 );
|
||||
ent.v[ "fxid" ] = "fx_mp_sand_windy_heavy_sm_slow";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_mp_sand_windy_heavy_sm_slow" );
|
||||
ent.v[ "origin" ] = ( 861.112, 1858.99, -81.7426 );
|
||||
ent.v[ "angles" ] = ( 1.95628, 30.0071, 0.415985 );
|
||||
ent.v[ "fxid" ] = "fx_mp_sand_windy_heavy_sm_slow";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_mp_sand_windy_heavy_sm_slow" );
|
||||
ent.v[ "origin" ] = ( 1098.59, 1399.99, -71.3533 );
|
||||
ent.v[ "angles" ] = ( 1.98904, 24.0036, 0.209141 );
|
||||
ent.v[ "fxid" ] = "fx_mp_sand_windy_heavy_sm_slow";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_mp_sand_windy_heavy_sm_slow" );
|
||||
ent.v[ "origin" ] = ( 1112.27, 1342.21, -68.503 );
|
||||
ent.v[ "angles" ] = ( 1.98904, 24.0036, 0.209141 );
|
||||
ent.v[ "fxid" ] = "fx_mp_sand_windy_heavy_sm_slow";
|
||||
ent.v[ "delay" ] = -15;
|
||||
*/
|
||||
ent = createOneshotEffect( "fx_insects_butterfly_flutter" );
|
||||
ent.v[ "origin" ] = ( 1229.25, 1196.27, -49.1348 );
|
||||
ent.v[ "angles" ] = ( 359.499, 88.1284, -2.28973 );
|
||||
ent.v[ "fxid" ] = "fx_insects_butterfly_flutter";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_insects_butterfly_flutter" );
|
||||
ent.v[ "origin" ] = ( 748.693, 2101.3, -42.938 );
|
||||
ent.v[ "angles" ] = ( 347.686, 310.512, -0.888223 );
|
||||
ent.v[ "fxid" ] = "fx_insects_butterfly_flutter";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_insects_butterfly_flutter_radial" );
|
||||
ent.v[ "origin" ] = ( 35.3538, 1970.23, 35.9555 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "fx_insects_butterfly_flutter_radial";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_insects_butterfly_flutter_radial" );
|
||||
ent.v[ "origin" ] = ( 995.034, 1909.3, -83.3255 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "fx_insects_butterfly_flutter_radial";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_insects_butterfly_flutter" );
|
||||
ent.v[ "origin" ] = ( -716.992, 2050.66, -25.3613 );
|
||||
ent.v[ "angles" ] = ( 1.51723, 240.142, 1.78677 );
|
||||
ent.v[ "fxid" ] = "fx_insects_butterfly_flutter";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_insects_butterfly_flutter" );
|
||||
ent.v[ "origin" ] = ( -946.996, 1319.88, -51.5895 );
|
||||
ent.v[ "angles" ] = ( 359.341, 84.1311, -2.24925 );
|
||||
ent.v[ "fxid" ] = "fx_insects_butterfly_flutter";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_mp_nuked_sprinkler" );
|
||||
ent.v[ "origin" ] = ( -651.249, 1046.18, -65.8594 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "fx_mp_nuked_sprinkler";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_mp_nuked_sprinkler" );
|
||||
ent.v[ "origin" ] = ( 498.514, -332.339, -62.7565 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "fx_mp_nuked_sprinkler";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_mp_nuked_sprinkler" );
|
||||
ent.v[ "origin" ] = ( 777.24, 1187.6, -63.1138 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "fx_mp_nuked_sprinkler";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
/*
|
||||
ent = createOneshotEffect( "fx_mp_sand_blowing_xlg_distant" );
|
||||
ent.v[ "origin" ] = ( -8113.06, 3836.48, 230.857 );
|
||||
ent.v[ "angles" ] = ( 274.016, 8.97201, 177.016 );
|
||||
ent.v[ "fxid" ] = "fx_mp_sand_blowing_xlg_distant";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_mp_sand_blowing_xlg_distant" );
|
||||
ent.v[ "origin" ] = ( 1155.47, 5647, 2.73363 );
|
||||
ent.v[ "angles" ] = ( 274.016, 8.97201, 177.016 );
|
||||
ent.v[ "fxid" ] = "fx_mp_sand_blowing_xlg_distant";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_mp_sand_blowing_xlg_distant" );
|
||||
ent.v[ "origin" ] = ( -4539.55, 4017.67, -107.694 );
|
||||
ent.v[ "angles" ] = ( 274.016, 8.97201, 177.016 );
|
||||
ent.v[ "fxid" ] = "fx_mp_sand_blowing_xlg_distant";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_mp_sand_blowing_xlg_distant" );
|
||||
ent.v[ "origin" ] = ( -5456.04, 2049.42, -16.6114 );
|
||||
ent.v[ "angles" ] = ( 274.016, 8.97201, 177.016 );
|
||||
ent.v[ "fxid" ] = "fx_mp_sand_blowing_xlg_distant";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_mp_sand_blowing_xlg_distant" );
|
||||
ent.v[ "origin" ] = ( -5122.86, -2240.19, -38.5271 );
|
||||
ent.v[ "angles" ] = ( 274.016, 8.9718, 163.016 );
|
||||
ent.v[ "fxid" ] = "fx_mp_sand_blowing_xlg_distant";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_mp_sand_blowing_xlg_distant" );
|
||||
ent.v[ "origin" ] = ( -9608, -1217.06, -17.4208 );
|
||||
ent.v[ "angles" ] = ( 274.016, 8.97201, 177.016 );
|
||||
ent.v[ "fxid" ] = "fx_mp_sand_blowing_xlg_distant";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_mp_sand_blowing_xlg_distant" );
|
||||
ent.v[ "origin" ] = ( 1362.55, -3120.39, -93.9436 );
|
||||
ent.v[ "angles" ] = ( 274.016, 8.97193, 177.017 );
|
||||
ent.v[ "fxid" ] = "fx_mp_sand_blowing_xlg_distant";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_mp_sand_blowing_xlg_distant" );
|
||||
ent.v[ "origin" ] = ( 3165.64, 182.094, -111.055 );
|
||||
ent.v[ "angles" ] = ( 274.016, 8.97193, 177.017 );
|
||||
ent.v[ "fxid" ] = "fx_mp_sand_blowing_xlg_distant";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_mp_sand_blowing_xlg_distant" );
|
||||
ent.v[ "origin" ] = ( -1372.11, 4431.85, -3.59134 );
|
||||
ent.v[ "angles" ] = ( 274.016, 8.97193, 177.017 );
|
||||
ent.v[ "fxid" ] = "fx_mp_sand_blowing_xlg_distant";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_mp_sand_blowing_xlg_distant" );
|
||||
ent.v[ "origin" ] = ( 2817.02, 3490.59, -0.556664 );
|
||||
ent.v[ "angles" ] = ( 274.016, 8.97193, 177.017 );
|
||||
ent.v[ "fxid" ] = "fx_mp_sand_blowing_xlg_distant";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_mp_sand_blowing_xlg_distant" );
|
||||
ent.v[ "origin" ] = ( 7635.16, -160.581, 509.276 );
|
||||
ent.v[ "angles" ] = ( 274.016, 8.97193, 177.017 );
|
||||
ent.v[ "fxid" ] = "fx_mp_sand_blowing_xlg_distant";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_mp_sand_windy_heavy_sm_slow" );
|
||||
ent.v[ "origin" ] = ( -239.178, 355.931, -77.3015 );
|
||||
ent.v[ "angles" ] = ( 2, 0, 0 );
|
||||
ent.v[ "fxid" ] = "fx_mp_sand_windy_heavy_sm_slow";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_mp_sand_windy_heavy_sm_slow" );
|
||||
ent.v[ "origin" ] = ( -1603.07, 487.367, -64 );
|
||||
ent.v[ "angles" ] = ( 0, 342, 0 );
|
||||
ent.v[ "fxid" ] = "fx_mp_sand_windy_heavy_sm_slow";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_mp_sand_windy_heavy_sm_slow" );
|
||||
ent.v[ "origin" ] = ( -1643.15, 1011.3, -66 );
|
||||
ent.v[ "angles" ] = ( 0, 346, 0 );
|
||||
ent.v[ "fxid" ] = "fx_mp_sand_windy_heavy_sm_slow";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_mp_sand_windy_heavy_sm_slow" );
|
||||
ent.v[ "origin" ] = ( -400.229, 40.3149, -67.8718 );
|
||||
ent.v[ "angles" ] = ( 0, 348, 0 );
|
||||
ent.v[ "fxid" ] = "fx_mp_sand_windy_heavy_sm_slow";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_mp_sand_windy_heavy_sm_slow" );
|
||||
ent.v[ "origin" ] = ( 174.905, 16.5658, -74.7991 );
|
||||
ent.v[ "angles" ] = ( 1.99878, 2.00125, 0 );
|
||||
ent.v[ "fxid" ] = "fx_mp_sand_windy_heavy_sm_slow";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_mp_sand_windy_heavy_sm_slow" );
|
||||
ent.v[ "origin" ] = ( 1257.84, 785.703, -70 );
|
||||
ent.v[ "angles" ] = ( 0.209015, 5.99637, -1.98905 );
|
||||
ent.v[ "fxid" ] = "fx_mp_sand_windy_heavy_sm_slow";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_mp_sand_windy_heavy_sm_slow" );
|
||||
ent.v[ "origin" ] = ( 1567.89, 203.485, -64 );
|
||||
ent.v[ "angles" ] = ( 0, 12, 0 );
|
||||
ent.v[ "fxid" ] = "fx_mp_sand_windy_heavy_sm_slow";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_mp_sand_windy_heavy_sm_slow" );
|
||||
ent.v[ "origin" ] = ( 275.547, 491.532, -75.5312 );
|
||||
ent.v[ "angles" ] = ( 0, 12, 0 );
|
||||
ent.v[ "fxid" ] = "fx_mp_sand_windy_heavy_sm_slow";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_mp_sand_windy_heavy_sm_slow" );
|
||||
ent.v[ "origin" ] = ( -422.376, 849.946, -77 );
|
||||
ent.v[ "angles" ] = ( 0, 336, 0 );
|
||||
ent.v[ "fxid" ] = "fx_mp_sand_windy_heavy_sm_slow";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_mp_sand_windy_heavy_sm_slow" );
|
||||
ent.v[ "origin" ] = ( 17.1573, -402.046, -77.3457 );
|
||||
ent.v[ "angles" ] = ( 2, 0, 0 );
|
||||
ent.v[ "fxid" ] = "fx_mp_sand_windy_heavy_sm_slow";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
*/
|
||||
ent = createOneshotEffect( "fx_mp_nuked_double_rainbow_lg" );
|
||||
ent.v[ "origin" ] = ( -18617.3, 6521.43, 4242.24 );
|
||||
ent.v[ "angles" ] = ( 0, 336, -2 );
|
||||
ent.v[ "fxid" ] = "fx_mp_nuked_double_rainbow_lg";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_mp_nuked_hose_spray" );
|
||||
ent.v[ "origin" ] = ( 375.775, -1001.87, -16.8608 );
|
||||
ent.v[ "angles" ] = ( 344.111, 268.224, -2.13021 );
|
||||
ent.v[ "fxid" ] = "fx_mp_nuked_hose_spray";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
/*
|
||||
ent = createOneshotEffect( "fx_mp_sand_windy_heavy_sm_slow" );
|
||||
ent.v[ "origin" ] = ( -1030.97, -114.339, -68.4904 );
|
||||
ent.v[ "angles" ] = ( 0, 342, 0 );
|
||||
ent.v[ "fxid" ] = "fx_mp_sand_windy_heavy_sm_slow";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_mp_sand_windy_heavy_sm_slow" );
|
||||
ent.v[ "origin" ] = ( -1326.37, 54.6568, -70.2933 );
|
||||
ent.v[ "angles" ] = ( 0, 342, 0 );
|
||||
ent.v[ "fxid" ] = "fx_mp_sand_windy_heavy_sm_slow";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_mp_sand_windy_heavy_sm_slow" );
|
||||
ent.v[ "origin" ] = ( 691.511, -174.142, -71 );
|
||||
ent.v[ "angles" ] = ( 0, 12, 0 );
|
||||
ent.v[ "fxid" ] = "fx_mp_sand_windy_heavy_sm_slow";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_mp_sand_windy_heavy_sm_slow" );
|
||||
ent.v[ "origin" ] = ( 969.171, -84.5194, -73.0103 );
|
||||
ent.v[ "angles" ] = ( 0, 12, 0 );
|
||||
ent.v[ "fxid" ] = "fx_mp_sand_windy_heavy_sm_slow";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_mp_sand_windy_heavy_sm_slow" );
|
||||
ent.v[ "origin" ] = ( 1831.09, 226.046, -67 );
|
||||
ent.v[ "angles" ] = ( 360, 12, -6 );
|
||||
ent.v[ "fxid" ] = "fx_mp_sand_windy_heavy_sm_slow";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_mp_sand_windy_heavy_sm_slow" );
|
||||
ent.v[ "origin" ] = ( 1721.25, 498.797, -76 );
|
||||
ent.v[ "angles" ] = ( 360, 12, -6 );
|
||||
ent.v[ "fxid" ] = "fx_mp_sand_windy_heavy_sm_slow";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_mp_sand_windy_heavy_sm_slow" );
|
||||
ent.v[ "origin" ] = ( 1424.29, 973.867, -59.8057 );
|
||||
ent.v[ "angles" ] = ( 360, 12, -6 );
|
||||
ent.v[ "fxid" ] = "fx_mp_sand_windy_heavy_sm_slow";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_mp_sand_windy_heavy_sm_slow" );
|
||||
ent.v[ "origin" ] = ( -82.7862, -42.8045, -81.8734 );
|
||||
ent.v[ "angles" ] = ( 359.309, 4.00383, 0.206337 );
|
||||
ent.v[ "fxid" ] = "fx_mp_sand_windy_heavy_sm_slow";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_mp_sand_windy_heavy_sm_slow" );
|
||||
ent.v[ "origin" ] = ( -2064.04, 586.732, -69.9446 );
|
||||
ent.v[ "angles" ] = ( 0, 346, 0 );
|
||||
ent.v[ "fxid" ] = "fx_mp_sand_windy_heavy_sm_slow";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "fx_mp_sand_windy_heavy_sm_slow" );
|
||||
ent.v[ "origin" ] = ( -2169.63, 388.636, -60.599 );
|
||||
ent.v[ "angles" ] = ( 0, 346, 0 );
|
||||
ent.v[ "fxid" ] = "fx_mp_sand_windy_heavy_sm_slow";
|
||||
ent.v[ "delay" ] = -15;
|
||||
*/
|
||||
}
|
||||
|
||||
@@ -0,0 +1,937 @@
|
||||
//_createfx generated. Do not touch!!
|
||||
#include common_scripts\utility;
|
||||
#include common_scripts\_createfx;
|
||||
main()
|
||||
{
|
||||
// CreateFX entities placed: 182
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 61.589, -251.13, -145.273 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_rattle_pole";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -119.975, -247.526, -113.736 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -234.629, -255.29, -109.911 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -396.083, -248.225, -114.141 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -491.62, -106.959, -113.047 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -491.152, 96.1518, -138.847 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -500.282, 251.672, -113.307 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -497.552, 413.793, -113.058 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -492, 550.637, -112.957 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -492.851, 681.702, -115.025 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -490.864, 1069.67, -113.519 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -487.618, 1232.36, -152.643 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -483.264, 1351, -115.316 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -491.541, 1501.61, -113.171 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -492.794, 1719, 18.9002 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -386.801, 1854.18, 18.1019 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -165.263, 1851.08, 19.2061 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 46.9897, 1851.64, 17.2756 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 214.295, 1831.7, 18.7039 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 352.819, 1832.42, 18.5754 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 497.923, 1832, -121.723 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 593.847, 1831.73, -115.128 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 774.391, 1832.94, -111.529 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 934.953, 1833.51, -113.694 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1069.55, 1842.74, -113.079 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1236.35, 1834.54, -113.643 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1358.43, 1825.42, -113.653 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1520.15, 1831.72, -113.201 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1663.92, 1799.96, -113.076 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1664.14, 1534.77, -108 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1659.27, 1409.21, -108 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1652.94, 1281.1, -112 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1659.93, 1153.54, -109.074 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1664.61, 734.453, -115.519 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1663.28, 536.869, -113.717 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1672.54, 388.264, -113.027 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1672.49, 259.15, -113.685 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1663.57, 90.3141, -142.157 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1661.32, -32.4253, -113.204 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1664.47, -157.833, -113.469 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1598.75, -247.903, -113.097 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1476.3, -247.424, -113.883 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1267.03, -248.899, -113.441 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1095.98, -258.279, -113.983 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 973.731, -107.351, -132.414 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 862.93, -248.413, -113.413 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 700.261, -248.78, -115.639 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 460.915, -249.854, -129.627 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 292.351, -249.722, -113.035 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -40.2248, 1518.11, 108.517 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_tower_creaking";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 760.184, 890, 239.41 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_tower_creaking";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 890.757, 452.577, -109.833 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_corrugate_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1068.24, 829.264, 13.6933 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_corrugate_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 203.93, 846.701, -130.146 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_corrugate_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 560.329, 750.308, -130.41 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_corrugate_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1661.49, 559.622, -166.608 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_corrugate_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -327.922, -242.049, -188.083 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_corrugate_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 360.378, -249.801, -162.928 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_corrugate_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -491.077, 367.798, -169.153 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_corrugate_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -311.211, 1279.81, -172.622 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_corrugate_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -61.3899, 1715.97, -92.9639 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_corrugate_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 860.564, 1828.99, -187.904 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_corrugate_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1148.93, 159.231, -104.496 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_drum_pings";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1458.15, -76.9237, -104.914 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_drum_pings";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1535.46, 492.58, -179.365 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_drum_pings";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 725.592, 1368.67, -81.1182 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_drum_pings";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -230.935, 75.2587, -147.876 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_drum_pings";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 404.213, -74.6604, -175.499 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_drum_pings";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 862.164, -142.567, -157.216 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_drum_pings";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1789.88, 1654.61, -92.96 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_drum_pings";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -288.094, 533.858, -168.285 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_sheet_knocking";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -13.2297, -48.3994, -158.766 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_sheet_knocking";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 489.2, 330.48, -145.509 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_sheet_knocking";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 537.2, 540.464, -26.6006 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_sheet_knocking";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 489.2, 790.354, 90.2108 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_sheet_knocking";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -386, 1013.11, -181.071 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_sheet_knocking";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -476, 958.126, -171.427 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_sheet_knocking";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -386, 822.28, -152.381 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_sheet_knocking";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -374.125, 1596.44, -98.719 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_sheet_knocking";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 694.354, 1230.25, -172.176 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_sheet_knocking";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1260.99, 1215.88, -139.322 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_sheet_knocking";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1400.77, 1448.13, -156.178 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_sheet_knocking";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1550.88, 1005.87, -190.648 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_sheet_knocking";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1459.42, 851.148, -145.548 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_sheet_knocking";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 574.581, 1111.28, -139.116 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_corrugate_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 630.682, 435, -174.149 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_rattle_dull";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -92.7424, -24.6498, -182.394 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_rattle_dull";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -348, 1561.25, -33.5333 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_rattle_squeak";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1297.49, 141.698, -23.2326 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_pipe_clanking";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1054.51, 766.046, -18.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_ship_chain_sway";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 527.75, 762, -20.6451 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_rattle_ring";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -352.834, 833.056, -133.622 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_desert_light";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -375.792, 1678.38, -56.875 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_desert_light";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1296.82, 1369.11, -105.875 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_desert_light";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1599.92, 820.075, -133.182 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_desert_light";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 769.559, 50.125, -102.066 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_desert_light";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -299.056, 80.4909, -156.845 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_desert_light";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -510.261, 396.197, -232.334 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_fence_whistle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -484.125, 1278.16, -128.708 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_fence_whistle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 233.641, 437.131, -161.875 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_fence_whistle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1183.31, 680.374, -7.60008 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_fence_whistle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 759.2, 1031.04, 396.178 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_fence_whistle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 524.47, 1116, 266.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_fence_whistle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1287.57, 1831.34, -108 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_fence_whistle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 649.357, 1830.56, -121.33 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_fence_whistle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1673.14, 302.96, -120.351 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_fence_whistle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1378.02, -242.656, -113.717 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_fence_whistle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 429.397, -252.3, -113.555 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_fence_whistle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 727.888, -1731.46, -228.185 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_insects_desert_02";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -1296.83, 1362.05, -226.953 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_insects_desert_05";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 682.227, 1110.88, -45.1718 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_fence_whistle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1003, 664, 28 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tarp_plastic_1";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1044, 799, 132 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tarp_plastic_2";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1025, 858, -54 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tarp_plastic_2";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1041, 665, -54 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tarp_plastic_3";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 766, 787, 243 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tarp_plastic_3";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 775, 795, 389 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tarp_plastic_1";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -102.835, 1519.45, 772.412 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_oil_fire_loop";
|
||||
|
||||
ent = createOneshotEffect( "sand_spray_detail_runner400x400" );
|
||||
ent.v[ "origin" ] = ( -58.8515, 181.543, -236.057 );
|
||||
ent.v[ "angles" ] = ( 360, 180, 180 );
|
||||
ent.v[ "fxid" ] = "sand_spray_detail_runner400x400";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "sand_spray_detail_runner400x400" );
|
||||
ent.v[ "origin" ] = ( -269.44, 659.604, -236.605 );
|
||||
ent.v[ "angles" ] = ( 360, 180, 180 );
|
||||
ent.v[ "fxid" ] = "sand_spray_detail_runner400x400";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "sand_spray_detail_runner400x400" );
|
||||
ent.v[ "origin" ] = ( 813.839, 115.125, -240.294 );
|
||||
ent.v[ "angles" ] = ( 360, 180, 180 );
|
||||
ent.v[ "fxid" ] = "sand_spray_detail_runner400x400";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "sand_spray_detail_runner400x400" );
|
||||
ent.v[ "origin" ] = ( 322.577, 1421.24, -234.979 );
|
||||
ent.v[ "angles" ] = ( 360, 180, 180 );
|
||||
ent.v[ "fxid" ] = "sand_spray_detail_runner400x400";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "sand_spray_detail_runner0x400" );
|
||||
ent.v[ "origin" ] = ( 1508.23, 1302.68, -232.49 );
|
||||
ent.v[ "angles" ] = ( 0, 174, -180 );
|
||||
ent.v[ "fxid" ] = "sand_spray_detail_runner0x400";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "sand_spray_detail_runner0x400" );
|
||||
ent.v[ "origin" ] = ( 1323.91, 879.546, -224.575 );
|
||||
ent.v[ "angles" ] = ( 0, 174, -180 );
|
||||
ent.v[ "fxid" ] = "sand_spray_detail_runner0x400";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "sand_spray_detail_runner0x400" );
|
||||
ent.v[ "origin" ] = ( 1297.63, 415.734, -242.208 );
|
||||
ent.v[ "angles" ] = ( 0, 74, -180 );
|
||||
ent.v[ "fxid" ] = "sand_spray_detail_runner0x400";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "sand_spray_detail_runner0x400" );
|
||||
ent.v[ "origin" ] = ( 986.336, 1242.74, -230.759 );
|
||||
ent.v[ "angles" ] = ( 360, 38, 180 );
|
||||
ent.v[ "fxid" ] = "sand_spray_detail_runner0x400";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "sand_spray_cliff_oriented_runner" );
|
||||
ent.v[ "origin" ] = ( 467.685, 2300.14, -90.4344 );
|
||||
ent.v[ "angles" ] = ( 0, 304, 0 );
|
||||
ent.v[ "fxid" ] = "sand_spray_cliff_oriented_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "sand_spray_cliff_oriented_runner" );
|
||||
ent.v[ "origin" ] = ( -341.117, 877.212, -136.537 );
|
||||
ent.v[ "angles" ] = ( 0, 304, 0 );
|
||||
ent.v[ "fxid" ] = "sand_spray_cliff_oriented_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "sand_spray_cliff_oriented_runner" );
|
||||
ent.v[ "origin" ] = ( 808.586, 495.088, -141.875 );
|
||||
ent.v[ "angles" ] = ( 0, 304, 0 );
|
||||
ent.v[ "fxid" ] = "sand_spray_cliff_oriented_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "sand_spray_cliff_oriented_runner" );
|
||||
ent.v[ "origin" ] = ( 1302.29, 1253.79, -112.875 );
|
||||
ent.v[ "angles" ] = ( 0, 304, 0 );
|
||||
ent.v[ "fxid" ] = "sand_spray_cliff_oriented_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "sand_spray_cliff_oriented_runner" );
|
||||
ent.v[ "origin" ] = ( 979.09, 1927.55, -207.686 );
|
||||
ent.v[ "angles" ] = ( 0, 304, 0 );
|
||||
ent.v[ "fxid" ] = "sand_spray_cliff_oriented_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "sand_spray_detail_oriented_runner" );
|
||||
ent.v[ "origin" ] = ( 233.094, -57.7385, -228.457 );
|
||||
ent.v[ "angles" ] = ( 0, 304, 0 );
|
||||
ent.v[ "fxid" ] = "sand_spray_detail_oriented_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "sand_spray_detail_oriented_runner" );
|
||||
ent.v[ "origin" ] = ( 1127.53, -137.553, -235.126 );
|
||||
ent.v[ "angles" ] = ( 0, 304, 0 );
|
||||
ent.v[ "fxid" ] = "sand_spray_detail_oriented_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "sand_spray_detail_oriented_runner" );
|
||||
ent.v[ "origin" ] = ( 1519.25, 285.815, -231.081 );
|
||||
ent.v[ "angles" ] = ( 0, 304, 0 );
|
||||
ent.v[ "fxid" ] = "sand_spray_detail_oriented_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "sand_spray_detail_oriented_runner" );
|
||||
ent.v[ "origin" ] = ( 1541.34, -110.414, -223.37 );
|
||||
ent.v[ "angles" ] = ( 0, 304, 0 );
|
||||
ent.v[ "fxid" ] = "sand_spray_detail_oriented_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "sand_spray_detail_oriented_runner" );
|
||||
ent.v[ "origin" ] = ( 1582.65, 659.114, -227.103 );
|
||||
ent.v[ "angles" ] = ( 0, 304, 0 );
|
||||
ent.v[ "fxid" ] = "sand_spray_detail_oriented_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "sand_spray_detail_oriented_runner" );
|
||||
ent.v[ "origin" ] = ( 847.987, 997.816, -234.138 );
|
||||
ent.v[ "angles" ] = ( 0, 304, 0 );
|
||||
ent.v[ "fxid" ] = "sand_spray_detail_oriented_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "sand_spray_detail_oriented_runner" );
|
||||
ent.v[ "origin" ] = ( 394.457, 651.02, -240 );
|
||||
ent.v[ "angles" ] = ( 0, 304, 0 );
|
||||
ent.v[ "fxid" ] = "sand_spray_detail_oriented_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "sand_spray_detail_oriented_runner" );
|
||||
ent.v[ "origin" ] = ( 521.532, 1052.66, -210.875 );
|
||||
ent.v[ "angles" ] = ( 0, 304, 0 );
|
||||
ent.v[ "fxid" ] = "sand_spray_detail_oriented_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "sand_spray_detail_oriented_runner" );
|
||||
ent.v[ "origin" ] = ( 724.469, 1192.2, -172.348 );
|
||||
ent.v[ "angles" ] = ( 0, 304, 0 );
|
||||
ent.v[ "fxid" ] = "sand_spray_detail_oriented_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "sand_spray_detail_oriented_runner" );
|
||||
ent.v[ "origin" ] = ( 703.427, 1791.19, -203.104 );
|
||||
ent.v[ "angles" ] = ( 0, 304, 0 );
|
||||
ent.v[ "fxid" ] = "sand_spray_detail_oriented_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "sand_spray_detail_oriented_runner" );
|
||||
ent.v[ "origin" ] = ( 1153.14, 777.03, -2.19977 );
|
||||
ent.v[ "angles" ] = ( 0, 304, 0 );
|
||||
ent.v[ "fxid" ] = "sand_spray_detail_oriented_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "sand_spray_detail_oriented_runner" );
|
||||
ent.v[ "origin" ] = ( 866.854, 686.741, -234.489 );
|
||||
ent.v[ "angles" ] = ( 0, 304, 0 );
|
||||
ent.v[ "fxid" ] = "sand_spray_detail_oriented_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "sand_spray_detail_oriented_runner" );
|
||||
ent.v[ "origin" ] = ( -210.013, 1557.72, -61.0534 );
|
||||
ent.v[ "angles" ] = ( 0, 304, 0 );
|
||||
ent.v[ "fxid" ] = "sand_spray_detail_oriented_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "oil_rig_fire_mp" );
|
||||
ent.v[ "origin" ] = ( -102.637, 1525.29, 772.412 );
|
||||
ent.v[ "angles" ] = ( 272.388, 277.822, -77.5699 );
|
||||
ent.v[ "fxid" ] = "oil_rig_fire_mp";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "sand_spray_cliff_oriented_runner" );
|
||||
ent.v[ "origin" ] = ( 575.2, 786.332, 179.883 );
|
||||
ent.v[ "angles" ] = ( 0, 304, 0 );
|
||||
ent.v[ "fxid" ] = "sand_spray_cliff_oriented_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "sand_spray_cliff_oriented_runner" );
|
||||
ent.v[ "origin" ] = ( 442.343, 733.875, 0.676941 );
|
||||
ent.v[ "angles" ] = ( 0, 304, 0 );
|
||||
ent.v[ "fxid" ] = "sand_spray_cliff_oriented_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "sand_spray_cliff_oriented_runner" );
|
||||
ent.v[ "origin" ] = ( 967.138, 713.888, -19.7643 );
|
||||
ent.v[ "angles" ] = ( 0, 304, 0 );
|
||||
ent.v[ "fxid" ] = "sand_spray_cliff_oriented_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "sand_spray_cliff_oriented_runner" );
|
||||
ent.v[ "origin" ] = ( 1741.76, 813.875, 66.8905 );
|
||||
ent.v[ "angles" ] = ( 0, 304, 0 );
|
||||
ent.v[ "fxid" ] = "sand_spray_cliff_oriented_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "sand_spray_cliff_oriented_runner" );
|
||||
ent.v[ "origin" ] = ( 1738.53, 520.868, 44.6901 );
|
||||
ent.v[ "angles" ] = ( 0, 304, 0 );
|
||||
ent.v[ "fxid" ] = "sand_spray_cliff_oriented_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "sand_spray_cliff_oriented_runner" );
|
||||
ent.v[ "origin" ] = ( 1927.13, 1024.74, 70.146 );
|
||||
ent.v[ "angles" ] = ( 0, 304, 0 );
|
||||
ent.v[ "fxid" ] = "sand_spray_cliff_oriented_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "sand_spray_cliff_oriented_runner" );
|
||||
ent.v[ "origin" ] = ( 656.219, 1335.1, 16.599 );
|
||||
ent.v[ "angles" ] = ( 0, 304, 0 );
|
||||
ent.v[ "fxid" ] = "sand_spray_cliff_oriented_runner";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -107.44, 1519.02, 772 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_oil_rig_flare";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1184.03, 468.852, -220.803 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_dust_debris";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 15.3015, -130.519, -240.004 );
|
||||
ent.v[ "angles" ] = ( 0, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_dust_debris";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -40.2968, -0.897391, -240.994 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "elm_wind_leafy_whistle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -235.922, 159.082, -197 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_dust_debris";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -227.85, 390.389, -226.864 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_dust_debris";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -270.656, 583.318, -241.664 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "elm_wind_leafy_whistle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -269.093, 1003.17, -236.865 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "elm_wind_leafy_whistle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -261.18, 1269.86, -232.529 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "elm_wind_leafy_whistle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -184.125, 1373.71, -174.034 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_dust_debris";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 104.125, 1377.54, -177.088 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_dust_debris";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 319.108, 1211.69, -233.408 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "elm_wind_leafy_whistle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 363.648, 994.066, -213.733 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_dust_debris";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 575.547, 1380.35, -224.815 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "elm_wind_leafy_whistle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 801.352, 1545.41, -244.3 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "elm_wind_leafy_whistle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 830.927, 1418.89, -229.029 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "elm_wind_leafy_whistle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 984.83, 962.125, -235.068 );
|
||||
ent.v[ "angles" ] = ( 0, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "elm_wind_leafy_whistle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1224.06, 1140.18, -227.097 );
|
||||
ent.v[ "angles" ] = ( 0, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "elm_wind_leafy_whistle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1394.05, 983.711, -233.386 );
|
||||
ent.v[ "angles" ] = ( 0, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "elm_wind_leafy_whistle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 975.624, -105.611, -241.289 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "elm_wind_leafy_whistle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 658.17, 88.5202, -236.829 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "elm_wind_leafy_whistle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 252.81, 51.2097, -216.46 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_dust_debris";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 973.707, 798.411, 131.566 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_rattle_loop";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 522.046, 938.55, -147.681 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_creaking";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 157.075, 484.821, -218.133 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_dust_debris";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1320.58, 629.638, -230.421 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "elm_wind_leafy_whistle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1655.88, -231.347, -222.549 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "elm_wind_leafy_whistle";
|
||||
|
||||
}
|
||||
|
||||
@@ -0,0 +1,125 @@
|
||||
//_createfx generated. Do not touch!!
|
||||
#include common_scripts\utility;
|
||||
#include common_scripts\_createfx;
|
||||
main()
|
||||
{
|
||||
// CreateFX entities placed: 121
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1026.31, 690.984, 325.106 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_leaf_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -74.0565, -1064.84, 395.295 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_leaf_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 672.98, 116.825, 298.125 );
|
||||
ent.v[ "angles" ] = ( 0, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_ac_metal_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -15.6846, -531.97, 298.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_ac_metal_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -609.761, 98.299, 298.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_ac_metal_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 17.674, 657.888, 298.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_ac_metal_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 139.752, 127.875, 358.052 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_ac_metal_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 482.075, 1591.5, 523.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_ship_chain_sway";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -774.494, -632.406, 332.547 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_treeA_lp";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 63.875, 128.89, 392.724 );
|
||||
ent.v[ "angles" ] = ( 0, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_flat_surface";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 780.594, -763.875, 304.545 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_treeB_lp";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1190.88, -235.615, 325 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_flat_surface";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 738.938, 770.663, 307.269 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_treeA_lp";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -406.884, -387.643, 212.276 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_leaf_rustle";
|
||||
|
||||
ent = createOneshotEffect( "mist_hunted_fav" );
|
||||
ent.v[ "origin" ] = ( 529.182, 402.978, 194 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "mist_hunted_fav";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "mist_hunted_fav" );
|
||||
ent.v[ "origin" ] = ( 293.407, -404.612, 194 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "mist_hunted_fav";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "mist_hunted_fav" );
|
||||
ent.v[ "origin" ] = ( -494.269, -404.613, 208.65 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "mist_hunted_fav";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "mist_hunted_fav" );
|
||||
ent.v[ "origin" ] = ( -437.342, 44.2978, 194 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "mist_hunted_fav";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "mist_hunted_fav" );
|
||||
ent.v[ "origin" ] = ( -8.40515, 48.6187, 194 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "mist_hunted_fav";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "mist_hunted_fav" );
|
||||
ent.v[ "origin" ] = ( -18.4671, 850.419, 199.613 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "mist_hunted_fav";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "mist_hunted_fav" );
|
||||
ent.v[ "origin" ] = ( -610.763, 847.477, 197.121 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "mist_hunted_fav";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "mist_hunted_fav" );
|
||||
ent.v[ "origin" ] = ( 657.552, -492.835, 195.54 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "mist_hunted_fav";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
}
|
||||
@@ -0,0 +1,713 @@
|
||||
//_createfx generated. Do not touch!!
|
||||
#include common_scripts\utility;
|
||||
#include common_scripts\_createfx;
|
||||
main()
|
||||
{
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -74.0565, -1064.84, 395.295 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_tree_leaf_rustle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 672.98, 116.825, 298.125 );
|
||||
ent.v[ "angles" ] = ( 0, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_ac_metal_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -15.6846, -531.97, 298.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_ac_metal_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -609.761, 98.299, 298.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_ac_metal_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 17.674, 657.888, 298.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_ac_metal_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 139.752, 127.875, 358.052 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_ac_metal_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 482.075, 1591.5, 523.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_ship_chain_sway";
|
||||
|
||||
ent = createOneshotEffect( "rain_mp_storm" );
|
||||
ent.v[ "origin" ] = ( 152.673, -132.508, 846.935 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "rain_mp_storm";
|
||||
ent.v[ "delay" ] = 0.5;
|
||||
|
||||
ent = createOneshotEffect( "rain_splash_lite_64x64" );
|
||||
ent.v[ "origin" ] = ( 13.3575, -297.184, 193.39 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "rain_splash_lite_64x64";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "rain_splash_lite_64x64" );
|
||||
ent.v[ "origin" ] = ( -341.427, -272.408, 192.656 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "rain_splash_lite_64x64";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "rain_splash_lite_64x64" );
|
||||
ent.v[ "origin" ] = ( -514.243, 407.654, 191.975 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "rain_splash_lite_64x64";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "rain_splash_lite_64x64" );
|
||||
ent.v[ "origin" ] = ( -233.839, 518.156, 191.952 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "rain_splash_lite_64x64";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "rain_splash_lite_64x64" );
|
||||
ent.v[ "origin" ] = ( 245.141, 413.932, 192.883 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "rain_splash_lite_64x64";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "rain_splash_lite_64x64" );
|
||||
ent.v[ "origin" ] = ( 422.569, -154.862, 192.583 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "rain_splash_lite_64x64";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "rain_splash_lite_64x64" );
|
||||
ent.v[ "origin" ] = ( 365.076, 112.49, 191.952 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "rain_splash_lite_64x64";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "rain_splash_lite_64x64" );
|
||||
ent.v[ "origin" ] = ( 133.14, 64.8535, 191.952 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "rain_splash_lite_64x64";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "rain_splash_lite_64x64" );
|
||||
ent.v[ "origin" ] = ( -208.511, 69.3521, 192.839 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "rain_splash_lite_64x64";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "rain_splash_lite_64x64" );
|
||||
ent.v[ "origin" ] = ( 526.074, 652.564, 191.952 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "rain_splash_lite_64x64";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "rain_splash_lite_64x64" );
|
||||
ent.v[ "origin" ] = ( 601.246, -332.732, 192.329 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "rain_splash_lite_64x64";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "rain_splash_lite_64x64" );
|
||||
ent.v[ "origin" ] = ( 279.671, -307.855, 191.952 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "rain_splash_lite_64x64";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "rain_splash_lite_64x64" );
|
||||
ent.v[ "origin" ] = ( -1537, 97.8, 190.329 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "rain_splash_lite_64x64";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "rain_splash_lite_64x64" );
|
||||
ent.v[ "origin" ] = ( -1011.5, -519.1, 191.829 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "rain_splash_lite_64x64";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "rain_splash_lite_64x64" );
|
||||
ent.v[ "origin" ] = ( 1549.9, 573.9, 190.329 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "rain_splash_lite_64x64";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "rain_splash_lite_64x64" );
|
||||
ent.v[ "origin" ] = ( 1044.4, -418.9, 190.329 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "rain_splash_lite_64x64";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "rain_noise_splashes_fade" );
|
||||
ent.v[ "origin" ] = ( 216.429, -460.682, 192.911 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "rain_noise_splashes_fade";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "rain_noise_splashes_fade" );
|
||||
ent.v[ "origin" ] = ( 478.373, 421.688, 191.952 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "rain_noise_splashes_fade";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "rain_noise_splashes_fade" );
|
||||
ent.v[ "origin" ] = ( 289.523, 642.927, 197.479 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "rain_noise_splashes_fade";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "rain_noise_splashes_fade" );
|
||||
ent.v[ "origin" ] = ( -351.138, 619.851, 191.952 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "rain_noise_splashes_fade";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "rain_noise_splashes_fade" );
|
||||
ent.v[ "origin" ] = ( -424.145, 756.436, 191.952 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "rain_noise_splashes_fade";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "rain_noise_splashes_fade" );
|
||||
ent.v[ "origin" ] = ( -152.095, 79.2238, 192.096 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "rain_noise_splashes_fade";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "rain_noise_splashes_fade" );
|
||||
ent.v[ "origin" ] = ( -602.378, -190.696, 195.005 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "rain_noise_splashes_fade";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "rain_noise_splashes_fade" );
|
||||
ent.v[ "origin" ] = ( 1475.9, 95.1, 190.005 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "rain_noise_splashes_fade";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "rain_noise_splashes_fade" );
|
||||
ent.v[ "origin" ] = ( 913.9, 129.7, 190.005 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "rain_noise_splashes_fade";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "rain_noise_splashes_fade" );
|
||||
ent.v[ "origin" ] = ( -1148.9, 20.9, 190.05 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "rain_noise_splashes_fade";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "rain_noise_splashes_fade" );
|
||||
ent.v[ "origin" ] = ( -1599.7, 561.3, 184.05 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "rain_noise_splashes_fade";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "rain_noise_splashes_fade" );
|
||||
ent.v[ "origin" ] = ( -56.1877, -304.662, 191.952 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "rain_noise_splashes_fade";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "rain_noise_splashes_fade" );
|
||||
ent.v[ "origin" ] = ( -535.197, -596.132, 191.826 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "rain_noise_splashes_fade";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "rain_noise_splashes_fade" );
|
||||
ent.v[ "origin" ] = ( 394.787, -282.492, 193.743 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "rain_noise_splashes_fade";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "waterfall_drainage_mp" );
|
||||
ent.v[ "origin" ] = ( 491.5, -729.956, 393.005 );
|
||||
ent.v[ "angles" ] = ( 88, 0, 0 );
|
||||
ent.v[ "fxid" ] = "waterfall_drainage_mp";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "waterfall_drainage_splash_mp" );
|
||||
ent.v[ "origin" ] = ( 500.889, -725.637, 192.125 );
|
||||
ent.v[ "angles" ] = ( 88, 0, -84 );
|
||||
ent.v[ "fxid" ] = "waterfall_drainage_splash_mp";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "waterfall_drainage_splash_mp" );
|
||||
ent.v[ "origin" ] = ( 35.348, -726.944, 192.125 );
|
||||
ent.v[ "angles" ] = ( 88, 0, -84 );
|
||||
ent.v[ "fxid" ] = "waterfall_drainage_splash_mp";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "waterfall_drainage_mp" );
|
||||
ent.v[ "origin" ] = ( 35.082, -728.876, 388.642 );
|
||||
ent.v[ "angles" ] = ( 88, 0, 0 );
|
||||
ent.v[ "fxid" ] = "waterfall_drainage_mp";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "waterfall_drainage_mp" );
|
||||
ent.v[ "origin" ] = ( -230.041, -745.34, 396.883 );
|
||||
ent.v[ "angles" ] = ( 88, 0, 0 );
|
||||
ent.v[ "fxid" ] = "waterfall_drainage_mp";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "waterfall_drainage_splash_mp" );
|
||||
ent.v[ "origin" ] = ( -229.775, -743.407, 200.366 );
|
||||
ent.v[ "angles" ] = ( 88, 0, -84 );
|
||||
ent.v[ "fxid" ] = "waterfall_drainage_splash_mp";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "waterfall_drainage_mp" );
|
||||
ent.v[ "origin" ] = ( -319.132, -106.362, 376.037 );
|
||||
ent.v[ "angles" ] = ( 88, 0, 0 );
|
||||
ent.v[ "fxid" ] = "waterfall_drainage_mp";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "waterfall_drainage_mp" );
|
||||
ent.v[ "origin" ] = ( 66.7621, 236.986, 389.47 );
|
||||
ent.v[ "angles" ] = ( 88, 0, 0 );
|
||||
ent.v[ "fxid" ] = "waterfall_drainage_mp";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "waterfall_drainage_splash_mp" );
|
||||
ent.v[ "origin" ] = ( -314.101, -101.059, 191.952 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 178 );
|
||||
ent.v[ "fxid" ] = "waterfall_drainage_splash_mp";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "waterfall_drainage_splash_mp" );
|
||||
ent.v[ "origin" ] = ( 62.6488, 233.543, 193.07 );
|
||||
ent.v[ "angles" ] = ( 270, 0, -6 );
|
||||
ent.v[ "fxid" ] = "waterfall_drainage_splash_mp";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "rain_noise_splashes_fade" );
|
||||
ent.v[ "origin" ] = ( -346.569, -130.908, 191.952 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "rain_noise_splashes_fade";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "rain_noise_splashes_fade" );
|
||||
ent.v[ "origin" ] = ( 41.4869, 252.921, 193.571 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "rain_noise_splashes_fade";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "drips_fast" );
|
||||
ent.v[ "origin" ] = ( 116.014, -526.854, 295.406 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "drips_fast";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "drips_fast" );
|
||||
ent.v[ "origin" ] = ( 113.125, -426.891, 293.575 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "drips_fast";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "drips_fast" );
|
||||
ent.v[ "origin" ] = ( -143.224, -557.166, 293.277 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "drips_fast";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "drips_fast" );
|
||||
ent.v[ "origin" ] = ( -290.643, -209.125, 300.866 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "drips_fast";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "drips_fast" );
|
||||
ent.v[ "origin" ] = ( -598.572, -49.125, 295.91 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "drips_fast";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "drips_fast" );
|
||||
ent.v[ "origin" ] = ( -644.718, -49.125, 293.006 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "drips_fast";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "drips_fast" );
|
||||
ent.v[ "origin" ] = ( -321.125, 193.888, 294.101 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "drips_fast";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "drips_fast" );
|
||||
ent.v[ "origin" ] = ( -321.125, 289.583, 294.505 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "drips_fast";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "drips_fast" );
|
||||
ent.v[ "origin" ] = ( -321.125, 317.624, 295.613 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "drips_fast";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "drips_fast" );
|
||||
ent.v[ "origin" ] = ( -301.54, 0.125, 399.238 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "drips_fast";
|
||||
ent.v[ "delay" ] = -15;
|
||||
ent = createOneshotEffect( "drips_fast" );
|
||||
ent.v[ "origin" ] = ( -256.458, 1.125, 401.232 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "drips_fast";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "drips_fast" );
|
||||
ent.v[ "origin" ] = ( -136.125, 508.118, 290.265 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "drips_fast";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "drips_fast" );
|
||||
ent.v[ "origin" ] = ( -78.7864, 723.979, 292.875 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "drips_fast";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "drips_fast" );
|
||||
ent.v[ "origin" ] = ( -95.6979, 691.109, 294.866 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "drips_fast";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "drips_fast" );
|
||||
ent.v[ "origin" ] = ( 138.562, 582.409, 295.064 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "drips_fast";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "drips_fast" );
|
||||
ent.v[ "origin" ] = ( 143.357, 592.693, 294.55 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "drips_fast";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "drips_fast" );
|
||||
ent.v[ "origin" ] = ( 209.526, 337.125, 297.498 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "drips_fast";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "drips_fast" );
|
||||
ent.v[ "origin" ] = ( 304.231, 337.125, 403.19 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "drips_fast";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "drips_fast" );
|
||||
ent.v[ "origin" ] = ( 548.351, 225.125, 294.289 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "drips_fast";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "drips_fast" );
|
||||
ent.v[ "origin" ] = ( 681.701, 225.125, 293.139 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "drips_fast";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "drips_fast" );
|
||||
ent.v[ "origin" ] = ( 662.831, 223.125, 292.028 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "drips_fast";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "drips_fast" );
|
||||
ent.v[ "origin" ] = ( 666.991, 225.125, 293.398 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "drips_fast";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "drips_fast" );
|
||||
ent.v[ "origin" ] = ( 321.125, -25.228, 293.054 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "drips_fast";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "drips_fast" );
|
||||
ent.v[ "origin" ] = ( 251.113, 1.125, 295.617 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "drips_fast";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "drips_fast" );
|
||||
ent.v[ "origin" ] = ( 321.125, -172.207, 295.039 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "drips_fast";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "drips_fast" );
|
||||
ent.v[ "origin" ] = ( 118.837, -537.388, 294.533 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "drips_fast";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "drips_fast" );
|
||||
ent.v[ "origin" ] = ( 120.705, -544.363, 296.258 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "drips_fast";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "drips_fast" );
|
||||
ent.v[ "origin" ] = ( 62.875, 205.53, 295.023 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "drips_fast";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "drips_fast" );
|
||||
ent.v[ "origin" ] = ( 62.875, 192.915, 296.785 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "drips_fast";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "drips_fast" );
|
||||
ent.v[ "origin" ] = ( 63.1097, 257.866, 400.875 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "drips_fast";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "drips_fast" );
|
||||
ent.v[ "origin" ] = ( 62.875, -20.1908, 294.863 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "drips_fast";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "drips_fast" );
|
||||
ent.v[ "origin" ] = ( 62.875, -133.111, 294.21 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "drips_fast";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "drips_fast" );
|
||||
ent.v[ "origin" ] = ( 29.0529, -15.0014, 217.508 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "drips_fast";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "drips_fast" );
|
||||
ent.v[ "origin" ] = ( -67.2227, 1.125, 292.831 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "drips_fast";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "rain_heavy_mist" );
|
||||
ent.v[ "origin" ] = ( -1.71183, 1847.57, 797.853 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "rain_heavy_mist";
|
||||
ent.v[ "delay" ] = 0.5;
|
||||
|
||||
ent = createOneshotEffect( "rain_heavy_mist" );
|
||||
ent.v[ "origin" ] = ( -665.927, 1157.38, 653.541 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "rain_heavy_mist";
|
||||
ent.v[ "delay" ] = 0.5;
|
||||
|
||||
ent = createOneshotEffect( "rain_heavy_mist" );
|
||||
ent.v[ "origin" ] = ( 2061.18, 2103.51, 737.487 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "rain_heavy_mist";
|
||||
ent.v[ "delay" ] = 0.5;
|
||||
|
||||
ent = createOneshotEffect( "rain_heavy_mist" );
|
||||
ent.v[ "origin" ] = ( 154.619, -144.349, 846.935 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "rain_heavy_mist";
|
||||
ent.v[ "delay" ] = 0.5;
|
||||
|
||||
ent = createOneshotEffect( "rain_heavy_mist" );
|
||||
ent.v[ "origin" ] = ( 355.466, 1274.35, 533.349 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "rain_heavy_mist";
|
||||
ent.v[ "delay" ] = 0.5;
|
||||
|
||||
ent = createOneshotEffect( "rain_heavy_mist" );
|
||||
ent.v[ "origin" ] = ( -1106.88, 433.458, 470.787 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "rain_heavy_mist";
|
||||
ent.v[ "delay" ] = 0.5;
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1352.1, 363.849, 300 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_rain_metal";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1238.8, -523.3, 303 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_rain_metal";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 206.1, -113.5, 300 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_rain_metal";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -179.9, 238.7, 300 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_rain_metal";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -1411.5, 383.5, 300 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_rain_metal";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -1247.6, -509.9, 306 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_rain_metal";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -654.1, 77.8, 468.2 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_rain_roof";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 623.9, 77.8, 468.2 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_rain_roof";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 684.8, 938.3, 243.8 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_rain_foliage";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 550, -470.3, 243.8 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_rain_foliage";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -565, -310.2, 249.8 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_rain_foliage";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -672.6, 874.5, 238.8 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_rain_foliage";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -419.5, 765.3, 287.6 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "can_rain_00";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1944, -313.5, 623 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_rain_roof";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1944, 160.9, 623 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_rain_roof";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1944, 754, 623 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_rain_roof";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -2025, 562, 533 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_rain_roof";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -2025, 132, 533 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_rain_roof";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -2025, -407, 533 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_rain_roof";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -1085, -831, 400 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_rain_building";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -492.9, -791, 449 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_rain_building";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 296, -753, 427 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_rain_building";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 953.3, -842.6, 400 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_rain_building";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 508, 658, 250 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_rain_foliage";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -583, 548.6, 253 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_rain_foliage";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 144.7, 615.2, 205 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "amb_rain_carlite";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -82.4, 699.7, 205 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "amb_rain_carlite";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -131.7, -585.9, 205 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "amb_rain_carlite";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 108.2, -513.2, 205 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "amb_rain_carlite";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -615.7, -46.4, 210 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "amb_rain_carlite";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 682.7, 222.9, 210 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "amb_rain_carlite";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -15.2, 604, 320 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_rain_roof";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -53.5, -486, 320 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_rain_roof";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 846.5, -322.3, 320 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_rain_roof";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -858.4, -322.3, 320 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_rain_roof";
|
||||
|
||||
}
|
||||
@@ -0,0 +1,162 @@
|
||||
#include common_scripts\utility;
|
||||
#include common_scripts\_createfx;
|
||||
main()
|
||||
{
|
||||
ent = createOneshotEffect( "smoke_plume_white_02" );
|
||||
ent.v[ "origin" ] = ( -604.265, -3635.55, 1293.1 );
|
||||
ent.v[ "angles" ] = ( 349.242, 64.4235, 153.711 );
|
||||
ent.v[ "fxid" ] = "smoke_plume_white_02";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "smoke_plume_white_01" );
|
||||
ent.v[ "origin" ] = ( 576.819, -3301.71, 1103.15 );
|
||||
ent.v[ "angles" ] = ( 0.145482, 70.4257, 167.356 );
|
||||
ent.v[ "fxid" ] = "smoke_plume_white_01";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "insects_carcass_flies_c" );
|
||||
ent.v[ "origin" ] = ( 2649.18, -1190.82, -11.0862 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "insects_carcass_flies_c";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "insects_carcass_flies_c" );
|
||||
ent.v[ "origin" ] = ( 2639.9, -1329.01, -1.01466 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "insects_carcass_flies_c";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "insects_carcass_flies_c" );
|
||||
ent.v[ "origin" ] = ( -39.187, -2192.27, 14.3555 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "insects_carcass_flies_c";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "insects_carcass_flies_c" );
|
||||
ent.v[ "origin" ] = ( -1131.06, -1735.09, 32.1235 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "insects_carcass_flies_c";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "insects_carcass_flies_c" );
|
||||
ent.v[ "origin" ] = ( -1638.14, -987.224, -4.65573 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "insects_carcass_flies_c";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "insects_carcass_flies_c" );
|
||||
ent.v[ "origin" ] = ( -2258.41, -508.32, 14.6608 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "insects_carcass_flies_c";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "insects_carcass_flies_c" );
|
||||
ent.v[ "origin" ] = ( -2004.95, 53.6735, -6.43715 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "insects_carcass_flies_c";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "insects_carcass_flies_c" );
|
||||
ent.v[ "origin" ] = ( -1293.8, 414.655, -8 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "insects_carcass_flies_c";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "insects_carcass_flies_c" );
|
||||
ent.v[ "origin" ] = ( -726.081, 367.58, -6.86164 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "insects_carcass_flies_c";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "insects_carcass_flies_c" );
|
||||
ent.v[ "origin" ] = ( -1826.46, 1118.41, -5.91308 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "insects_carcass_flies_c";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "insects_carcass_flies_c" );
|
||||
ent.v[ "origin" ] = ( -750.271, 1507.95, 107.362 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "insects_carcass_flies_c";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "insects_carcass_flies_c" );
|
||||
ent.v[ "origin" ] = ( -137.503, 915.525, -5.44412 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "insects_carcass_flies_c";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "insects_carcass_flies_c" );
|
||||
ent.v[ "origin" ] = ( -282.014, 676.25, -8 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "insects_carcass_flies_c";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "insects_carcass_flies_c" );
|
||||
ent.v[ "origin" ] = ( 185.605, 603.191, -2.84231 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "insects_carcass_flies_c";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "insects_carcass_flies_c" );
|
||||
ent.v[ "origin" ] = ( 1200.94, 1328.12, -8 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "insects_carcass_flies_c";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "insects_carcass_flies_c" );
|
||||
ent.v[ "origin" ] = ( 945.524, 557.858, -8 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "insects_carcass_flies_c";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "insects_carcass_flies_c" );
|
||||
ent.v[ "origin" ] = ( 2021.48, -1072.58, -62.4015 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "insects_carcass_flies_c";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "insects_carcass_flies_c" );
|
||||
ent.v[ "origin" ] = ( -777.142, -450.328, -3.85937 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "insects_carcass_flies_c";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "insects_carcass_flies_c" );
|
||||
ent.v[ "origin" ] = ( -294.369, -1026.83, -4.63902 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "insects_carcass_flies_c";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "insects_carcass_flies_c" );
|
||||
ent.v[ "origin" ] = ( 200.167, -641.983, -8 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "insects_carcass_flies_c";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "insects_carcass_flies_c" );
|
||||
ent.v[ "origin" ] = ( 142.984, -1284.9, -1.51408 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "insects_carcass_flies_c";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "insects_carcass_flies_c" );
|
||||
ent.v[ "origin" ] = ( -1466.01, -1667.43, -8.56199 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "insects_carcass_flies_c";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "insects_carcass_flies_c" );
|
||||
ent.v[ "origin" ] = ( -1908.67, 200.929, -1.89356 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "insects_carcass_flies_c";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "insects_carcass_flies_c" );
|
||||
ent.v[ "origin" ] = ( 1319.23, 1320.27, -7.99999 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "fxid" ] = "insects_carcass_flies_c";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
}
|
||||
|
||||
@@ -0,0 +1,574 @@
|
||||
//_createfx generated. Do not touch!!
|
||||
#include common_scripts\utility;
|
||||
#include common_scripts\_createfx;
|
||||
main()
|
||||
{
|
||||
// CreateFX entities placed: 208
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1731.92, 912.655, 129.185 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_light_fluorescent_hum";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1734.54, 653.063, 129.346 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_light_fluorescent_hum";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1710.13, 259.711, 120.8 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_light_fluorescent_hum";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -575.26, -534.177, 249.336 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_light_fluorescent_hum";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 2405.49, -1357.51, 67.297 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1859.42, -1345.57, 82.13 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 2264.15, -945.229, 150.261 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1091.36, -2227.27, 87.323 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -199.697, -1266.74, 160.92 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_ac_duct_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 88.006, -1122.7, 145.624 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_ac_duct_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -36.9944, -794.758, 84.0973 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_drum_pings";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -1472.43, -1023.89, 183.891 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_industrial_air_vent";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -651.561, 102.12, 95.875 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_light_fluorescent_hum";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -505.383, 1320.4, 70.382 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -1169.07, 685.532, 403.475 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_tower_creaking";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -1917.15, 174.671, 106.207 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_tarp_flap";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -1912.33, -549.613, 104.078 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_tarp_flap";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1184.39, -1372.43, 117 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_ac_duct_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 246.727, -29.4327, 287.875 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_rattle_pole";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1091.12, -2097.48, 130.451 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_fence_whistle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 386.14, 1409.21, 162.425 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_fence_whistle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -700.102, 1313.72, 156.274 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_fence_whistle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -2369.58, -567.875, 58.5573 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_flat_surface";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -1908.53, -1487.88, 166.356 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_flat_surface";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -1495.03, -1014.63, 179.86 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_lightrain_metal";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -1415.2, -1394.63, 18.6187 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_sheet_knocking";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -1380.89, 1782.25, 240.969 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -1354.12, 1314.84, 76.061 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -1976.92, 1151.73, 85.7 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 326.938, -2258.2, 80.003 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_metal_rattle_squeak";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1262.01, -1852.23, 77.934 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 214.936, 1306.75, 88.135 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 570.34, 1409.2, 92.807 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1006.54, -1535.15, 69.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 49.8829, -1261.84, 124.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -1588.77, 1147.6, 80.125 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -694.97, 1488.96, 127.58 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_chainlink_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1455.3, -51.8106, 173 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_flat_surface";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 904.7, -1233.98, 223 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_flat_surface";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -1504.7, 770.125, 135.926 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_interior_wood";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -695.875, -449.151, 226.581 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_interior_wood";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1993.11, -1611.86, 75.4157 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_interior_wood";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 991.054, 788.629, 112 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wind_interior_wood";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -1011.66, 445.372, 143.626 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_pipe_air_hiss";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -266.779, 681.25, -7.00025 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_fly_loop";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1568.22, 394.926, 172.611 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_pipe_air_hiss";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 895.875, 905.107, 196.001 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_corrugate_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 222.323, 160.897, 240.832 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_pipe_air_hiss";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -85.3612, 201.388, 223.288 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_pipe_gas";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -408.667, 200.372, 228.997 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_pipe_air_hiss";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 288.053, -47.8508, 230.717 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_pipe_gas";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 387.458, -350.906, 189.929 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_ship_steam_vent";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -564.603, -223.484, 235.269 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_ship_steam_vent";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -1004.66, -341.039, 150.946 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_ship_steam_vent";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -732.835, 358.339, -6.93078 );
|
||||
ent.v[ "angles" ] = ( 0, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_fly_loop";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -1055.88, 111.721, 106.426 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_corrugate_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -126.02, 280.629, 76.4759 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_computer_fan";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 141.295, 280.629, 65.0681 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_computer_fan";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -73.7484, -25.0551, 254.758 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_industrial_hum_large";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 611.06, 138.533, 127.875 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_industrial_hum_small";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -367.907, -207.49, 234.43 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_ship_steam_vent";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1045.04, -488.454, 202.788 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_ac_metal_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 423.75, 41.0743, 228.5 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_ship_steam_vent";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 634.125, 30.4, 165.192 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_computer_fan";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 884.465, 53.5615, 206.804 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_computer_fan";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 883.933, 238.291, 207.565 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_computer_fan";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 470.038, 297.692, 255.475 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_light_buzz_roomtone";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 128.229, 245.396, 222.462 );
|
||||
ent.v[ "angles" ] = ( 0, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "amb_air_machine_room_tone_lp";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -378.444, -196.583, 240.094 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "amb_air_machine_room_tone_lp";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -655.378, 42.6871, 93.2996 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_light_buzz_old";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -611.37, -270.43, 65.9078 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wharehouse_tone_a";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -431.193, -7.51137, 42.2853 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wharehouse_tone_a";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -1049.88, -213.839, 70.787 );
|
||||
ent.v[ "angles" ] = ( 0, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wharehouse_tone_b";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 869.289, -208.575, 42.8925 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wharehouse_tone_c";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1012.38, -636.961, 152.352 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_ac_air_vent";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 15.9757, -535.417, 249.201 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_light_fluorescent_hum";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( -79.583, -417.44, 255.875 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wharehouse_tone_d";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1045.04, -899.939, 141.786 );
|
||||
ent.v[ "angles" ] = ( 0, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wharehouse_tone_d";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 931.97, 162.637, 118.549 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_light_buzz_wharehouse";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 611.854, 1207.88, 191.075 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_mtl_corrugate_rattle";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 933.901, 550.685, -8 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_fly_loop";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1275.18, -144.24, 63.8542 );
|
||||
ent.v[ "angles" ] = ( 0, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_ac_air_vent";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1357.83, -1296.24, 91.8305 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_ac_air_vent";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1113.94, -1697.43, 110.807 );
|
||||
ent.v[ "angles" ] = ( 270, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_ac_air_vent";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 531.963, -832.57, 106.549 );
|
||||
ent.v[ "angles" ] = ( 0, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_wharehouse_tone_b";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1411.19, -1035.56, 97.9243 );
|
||||
ent.v[ "angles" ] = ( 0, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_pipe_gas";
|
||||
|
||||
ent = createLoopSound();
|
||||
ent.v[ "origin" ] = ( 1670.41, -982.419, 88.0339 );
|
||||
ent.v[ "angles" ] = ( 0, 0, 0 );
|
||||
ent.v[ "soundalias" ] = "emt_pipe_air_hiss";
|
||||
|
||||
ent = createOneshotEffect( "oxygen_leak" );
|
||||
ent.v[ "origin" ] = ( -70.3887, 203.595, 224.1 );
|
||||
ent.v[ "angles" ] = ( 34, 90, -90 );
|
||||
ent.v[ "fxid" ] = "oxygen_leak";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "oxygen_leak" );
|
||||
ent.v[ "origin" ] = ( 417.687, 68.068, 223.077 );
|
||||
ent.v[ "angles" ] = ( 13.9652, 179.004, -4.1221 );
|
||||
ent.v[ "fxid" ] = "oxygen_leak";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "oxygen_leak" );
|
||||
ent.v[ "origin" ] = ( 444.338, -208.787, 251.892 );
|
||||
ent.v[ "angles" ] = ( 75.4627, 254.675, 73.9052 );
|
||||
ent.v[ "fxid" ] = "oxygen_leak";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "oxygen_leak" );
|
||||
ent.v[ "origin" ] = ( -31.8941, -205.505, 251.18 );
|
||||
ent.v[ "angles" ] = ( 75.4627, 254.675, 73.9052 );
|
||||
ent.v[ "fxid" ] = "oxygen_leak";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "oxygen_leak" );
|
||||
ent.v[ "origin" ] = ( 56.9631, -141.417, 220.526 );
|
||||
ent.v[ "angles" ] = ( 37.7513, 277.141, 97.2339 );
|
||||
ent.v[ "fxid" ] = "oxygen_leak";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "oxygen_leak" );
|
||||
ent.v[ "origin" ] = ( -563.058, -231.168, 230.523 );
|
||||
ent.v[ "angles" ] = ( 53.9847, 267.942, 86.5131 );
|
||||
ent.v[ "fxid" ] = "oxygen_leak";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "oxygen_leak" );
|
||||
ent.v[ "origin" ] = ( -368.517, -208.141, 232.651 );
|
||||
ent.v[ "angles" ] = ( 58.5263, 72.0491, -90.9159 );
|
||||
ent.v[ "fxid" ] = "oxygen_leak";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "oxygen_leak" );
|
||||
ent.v[ "origin" ] = ( 350.316, -162.888, 245.033 );
|
||||
ent.v[ "angles" ] = ( 274.467, 333.518, 26.6913 );
|
||||
ent.v[ "fxid" ] = "oxygen_leak";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "oxygen_leak" );
|
||||
ent.v[ "origin" ] = ( 58.3574, 44.1639, 221.376 );
|
||||
ent.v[ "angles" ] = ( 63.4485, 81.147, -102.869 );
|
||||
ent.v[ "fxid" ] = "oxygen_leak";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "oxygen_leak" );
|
||||
ent.v[ "origin" ] = ( -396.968, 200.278, 234.665 );
|
||||
ent.v[ "angles" ] = ( 297.739, 19.8334, 161.264 );
|
||||
ent.v[ "fxid" ] = "oxygen_leak";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "oxygen_leak" );
|
||||
ent.v[ "origin" ] = ( 288.499, -40.1465, 226.599 );
|
||||
ent.v[ "angles" ] = ( 13.9652, 179.004, -4.1221 );
|
||||
ent.v[ "fxid" ] = "oxygen_leak";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "oxygen_leak" );
|
||||
ent.v[ "origin" ] = ( 225.083, 163.374, 233.593 );
|
||||
ent.v[ "angles" ] = ( 86, 90, -90 );
|
||||
ent.v[ "fxid" ] = "oxygen_leak";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "oxygen_leak" );
|
||||
ent.v[ "origin" ] = ( 226.39, -213.632, 257.166 );
|
||||
ent.v[ "angles" ] = ( 30.8817, 283.198, 101.594 );
|
||||
ent.v[ "fxid" ] = "oxygen_leak";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "oxygen_leak" );
|
||||
ent.v[ "origin" ] = ( 1406.13, -1035.96, 95.144 );
|
||||
ent.v[ "angles" ] = ( 37.7513, 277.141, 97.2339 );
|
||||
ent.v[ "fxid" ] = "oxygen_leak";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "oxygen_leak" );
|
||||
ent.v[ "origin" ] = ( 1667.88, -977.964, 87.3721 );
|
||||
ent.v[ "angles" ] = ( 80.2015, 57.2903, -125.806 );
|
||||
ent.v[ "fxid" ] = "oxygen_leak";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "oxygen_leak" );
|
||||
ent.v[ "origin" ] = ( 1583.46, 384.125, 172.937 );
|
||||
ent.v[ "angles" ] = ( 53.6365, 84.8868, -99.6671 );
|
||||
ent.v[ "fxid" ] = "oxygen_leak";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "oxygen_leak" );
|
||||
ent.v[ "origin" ] = ( 1381.18, 397.057, 281.967 );
|
||||
ent.v[ "angles" ] = ( 42.8817, 203.796, -52.7428 );
|
||||
ent.v[ "fxid" ] = "oxygen_leak";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "oxygen_leak" );
|
||||
ent.v[ "origin" ] = ( -1006.55, 443.094, 147.751 );
|
||||
ent.v[ "angles" ] = ( 48.4282, 20.1965, -173.78 );
|
||||
ent.v[ "fxid" ] = "oxygen_leak";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "oxygen_leak" );
|
||||
ent.v[ "origin" ] = ( 467.293, -2546.99, 636.474 );
|
||||
ent.v[ "angles" ] = ( 37.7513, 277.141, 97.2339 );
|
||||
ent.v[ "fxid" ] = "oxygen_leak";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "oxygen_leak" );
|
||||
ent.v[ "origin" ] = ( 698.472, -2588.7, 613.702 );
|
||||
ent.v[ "angles" ] = ( 15.3348, 195.718, 54.4235 );
|
||||
ent.v[ "fxid" ] = "oxygen_leak";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "oxygen_leak" );
|
||||
ent.v[ "origin" ] = ( 909.786, -2620.21, 646.105 );
|
||||
ent.v[ "angles" ] = ( 330.108, 17.1077, -100.24 );
|
||||
ent.v[ "fxid" ] = "oxygen_leak";
|
||||
ent.v[ "delay" ] = -15;
|
||||
|
||||
ent = createOneshotEffect( "oxygen_leak" );
|
||||
ent.v[ "origin" ] = ( 500.935, -2780.74, 647.157 );
|
||||
ent.v[ "angles" ] = ( 323.329, 44.1237, -151.675 );
|
||||
ent.v[ "fxid" ] = "oxygen_leak";
|
||||
ent.v[ "delay" ] = -15;
|
||||
}
|
||||
|
||||
File diff suppressed because it is too large.
Load diff
@@ -0,0 +1,474 @@
|
||||
{
|
||||
"_color" "0.5 0.5 .62 1"
|
||||
"ambient" ".116"
|
||||
"sundiffusecolor" "0.75 0.82 0.85"
|
||||
"diffusefraction" ".35"
|
||||
"classname" "worldspawn"
|
||||
"sundirection" "-70 72 0"
|
||||
"suncolor" "0.9 0.95 1"
|
||||
"sunlight" "0.9"
|
||||
}
|
||||
{
|
||||
"origin" "0 -448 -32"
|
||||
"angles" "0 90 0"
|
||||
"classname" "info_player_start"
|
||||
}
|
||||
{
|
||||
"classname" "mp_dm_spawn"
|
||||
"angles" "0 140 0"
|
||||
"origin" "608 -469 -32"
|
||||
}
|
||||
{
|
||||
"classname" "mp_dm_spawn"
|
||||
"angles" "0 180 0"
|
||||
"origin" "696 10 -32"
|
||||
}
|
||||
{
|
||||
"classname" "mp_dm_spawn"
|
||||
"angles" "0 -140 0"
|
||||
"origin" "618 474 -32"
|
||||
}
|
||||
{
|
||||
"classname" "mp_dm_spawn"
|
||||
"angles" "0 -90 0"
|
||||
"origin" "-5 500 -32"
|
||||
}
|
||||
{
|
||||
"classname" "mp_dm_spawn"
|
||||
"angles" "0 -40 0"
|
||||
"origin" "-621 518 -32"
|
||||
}
|
||||
{
|
||||
"classname" "mp_dm_spawn"
|
||||
"angles" "0 0 0"
|
||||
"origin" "-612 -4 -32"
|
||||
}
|
||||
{
|
||||
"classname" "mp_dm_spawn"
|
||||
"angles" "0 40 0"
|
||||
"origin" "-636 -521 -32"
|
||||
}
|
||||
{
|
||||
"classname" "mp_dm_spawn"
|
||||
"angles" "0 -60 0"
|
||||
"origin" "3 -477 -32"
|
||||
}
|
||||
|
||||
{
|
||||
"classname" "mp_tdm_spawn_axis_start"
|
||||
"angles" "0 140 0"
|
||||
"origin" "608 -469 -32"
|
||||
}
|
||||
{
|
||||
"classname" "mp_tdm_spawn_axis_start"
|
||||
"angles" "0 180 0"
|
||||
"origin" "696 10 -32"
|
||||
}
|
||||
{
|
||||
"classname" "mp_tdm_spawn_allies_start"
|
||||
"angles" "0 -140 0"
|
||||
"origin" "618 474 1532"
|
||||
}
|
||||
{
|
||||
"classname" "mp_tdm_spawn_allies_start"
|
||||
"angles" "0 -90 0"
|
||||
"origin" "-5 500 1532"
|
||||
}
|
||||
{
|
||||
"classname" "mp_tdm_spawn"
|
||||
"angles" "0 -40 0"
|
||||
"origin" "-621 518 -32"
|
||||
}
|
||||
{
|
||||
"classname" "mp_tdm_spawn"
|
||||
"angles" "0 0 0"
|
||||
"origin" "-612 -4 -32"
|
||||
}
|
||||
{
|
||||
"classname" "mp_tdm_spawn"
|
||||
"angles" "0 40 0"
|
||||
"origin" "-636 -521 -32"
|
||||
}
|
||||
{
|
||||
"classname" "mp_tdm_spawn"
|
||||
"angles" "0 -60 0"
|
||||
"origin" "3 -477 -32"
|
||||
}
|
||||
{
|
||||
"origin" "-600 -500 1000"
|
||||
"TargetName" "minimap_corner"
|
||||
"classname" "script_origin"
|
||||
}
|
||||
{
|
||||
"origin" "600 500 1000"
|
||||
"TargetName" "minimap_corner"
|
||||
"classname" "script_origin"
|
||||
}
|
||||
|
||||
|
||||
{
|
||||
"classname" "script_origin"
|
||||
"angles" "0 300 0"
|
||||
"_color" ".5 1 1"
|
||||
"origin" "-40 600 600"
|
||||
"script_accel" "20"
|
||||
"script_airspeed" "40"
|
||||
"targetname" "auto481"
|
||||
"target" "auto483"
|
||||
"script_delay" "2"
|
||||
}
|
||||
{
|
||||
"classname" "script_origin"
|
||||
"angles" "0 335 0"
|
||||
"_color" ".5 1 1"
|
||||
"origin" "-300 500 636"
|
||||
"script_accel" "15"
|
||||
"script_airspeed" "40"
|
||||
"targetname" "auto483"
|
||||
"script_delay" "3"
|
||||
"target" "auto476"
|
||||
}
|
||||
{
|
||||
"classname" "script_origin"
|
||||
"angles" "0 175 0"
|
||||
"_color" ".5 1 1"
|
||||
"origin" "300 600 536"
|
||||
"script_accel" "20"
|
||||
"script_airspeed" "35"
|
||||
"targetname" "auto480"
|
||||
"target" "auto481"
|
||||
}
|
||||
{
|
||||
"classname" "script_origin"
|
||||
"angles" "0 205 0"
|
||||
"_color" ".5 1 1"
|
||||
"origin" "530 420 508"
|
||||
"script_accel" "15"
|
||||
"script_airspeed" "30"
|
||||
"targetname" "auto479"
|
||||
"target" "auto480"
|
||||
"script_delay" "3"
|
||||
}
|
||||
{
|
||||
"classname" "script_origin"
|
||||
"angles" "0 150 0"
|
||||
"_color" ".5 1 1"
|
||||
"origin" "520 51 464"
|
||||
"script_accel" "20"
|
||||
"script_airspeed" "35"
|
||||
"targetname" "auto478"
|
||||
"target" "auto479"
|
||||
}
|
||||
{
|
||||
"classname" "script_origin"
|
||||
"angles" "0 85 0"
|
||||
"_color" ".5 1 1"
|
||||
"origin" "110 -160 536"
|
||||
"targetname" "auto477"
|
||||
"script_accel" "15"
|
||||
"script_airspeed" "30"
|
||||
"target" "auto478"
|
||||
"script_delay" "3"
|
||||
}
|
||||
{
|
||||
"classname" "script_origin"
|
||||
"angles" "0 340 0"
|
||||
"_color" ".5 1 1"
|
||||
"origin" "-280 -5 656"
|
||||
"targetname" "auto476"
|
||||
"script_accel" "15"
|
||||
"script_airspeed" "40"
|
||||
"target" "auto477"
|
||||
}
|
||||
{
|
||||
"target" "auto476"
|
||||
"origin" "-250 20 872"
|
||||
"targetname" "heli_loop_start"
|
||||
"_color" ".5 1 1"
|
||||
"angles" "0 1.00179e-005 0"
|
||||
"classname" "script_origin"
|
||||
}
|
||||
{
|
||||
"classname" "script_origin"
|
||||
"origin" "600 105 803"
|
||||
"_color" "0 1 .5"
|
||||
"angles" "0 170 0"
|
||||
"targetname" "auto474"
|
||||
"script_accel" "15"
|
||||
"script_airspeed" "30"
|
||||
"target" "auto475"
|
||||
}
|
||||
{
|
||||
"classname" "script_origin"
|
||||
"origin" "900 60 1090"
|
||||
"_color" "0 1 .5"
|
||||
"angles" "0 170 0"
|
||||
"targetname" "auto473"
|
||||
"script_accel" "20"
|
||||
"script_airspeed" "40"
|
||||
"target" "auto474"
|
||||
}
|
||||
{
|
||||
"classname" "script_origin"
|
||||
"origin" "1600 1100 984"
|
||||
"_color" "0 1 .5"
|
||||
"angles" "0 245 0"
|
||||
"targetname" "auto472"
|
||||
"script_accel" "20"
|
||||
"script_airspeed" "60"
|
||||
"target" "auto473"
|
||||
}
|
||||
{
|
||||
"classname" "script_origin"
|
||||
"targetname" "heli_start"
|
||||
"origin" "1680 5200 976"
|
||||
"_color" "0 1 .5"
|
||||
"angles" "0 255 0"
|
||||
"target" "auto472"
|
||||
}
|
||||
{
|
||||
"classname" "script_origin"
|
||||
"origin" "61 820 819"
|
||||
"_color" "0 1 .5"
|
||||
"angles" "0 275 0"
|
||||
"targetname" "auto469"
|
||||
"script_accel" "15"
|
||||
"script_airspeed" "30"
|
||||
"target" "auto470"
|
||||
}
|
||||
{
|
||||
"classname" "script_origin"
|
||||
"origin" "-184 870 850"
|
||||
"_color" "0 1 .5"
|
||||
"angles" "0 285 0"
|
||||
"targetname" "auto468"
|
||||
"script_accel" "20"
|
||||
"script_airspeed" "40"
|
||||
"target" "auto469"
|
||||
}
|
||||
{
|
||||
"classname" "script_origin"
|
||||
"origin" "400 360 756"
|
||||
"_color" "0 1 .5"
|
||||
"angles" "0 220 0"
|
||||
"script_accel" "15"
|
||||
"script_airspeed" "30"
|
||||
"targetname" "auto475"
|
||||
"target" "auto467"
|
||||
}
|
||||
{
|
||||
"classname" "script_origin"
|
||||
"origin" "60 427 796"
|
||||
"_color" "0 1 .5"
|
||||
"angles" "0 270 0"
|
||||
"script_accel" "15"
|
||||
"script_airspeed" "30"
|
||||
"targetname" "auto471"
|
||||
"target" "auto467"
|
||||
}
|
||||
{
|
||||
"classname" "script_origin"
|
||||
"origin" "-1060 1080 1000"
|
||||
"_color" "0 1 .5"
|
||||
"angles" "0 305 0"
|
||||
"targetname" "auto466"
|
||||
"script_accel" "20"
|
||||
"script_airspeed" "40"
|
||||
"target" "auto468"
|
||||
}
|
||||
{
|
||||
"classname" "script_origin"
|
||||
"targetname" "heli_start"
|
||||
"origin" "-1050 1200 992"
|
||||
"_color" "0 1 .5"
|
||||
"angles" "0 285 0"
|
||||
"target" "auto466"
|
||||
}
|
||||
{
|
||||
"classname" "script_origin"
|
||||
"targetname" "auto463"
|
||||
"origin" "-40 90 775"
|
||||
"_color" "0 1 .5"
|
||||
"angles" "0 90 0"
|
||||
"script_accel" "20"
|
||||
"script_airspeed" "60"
|
||||
"target" "auto467"
|
||||
}
|
||||
{
|
||||
"classname" "script_origin"
|
||||
"targetname" "auto462"
|
||||
"origin" "-80 -170 690"
|
||||
"_color" "0 1 .5"
|
||||
"angles" "0 90 0"
|
||||
"target" "auto463"
|
||||
"script_accel" "20"
|
||||
"script_airspeed" "40"
|
||||
}
|
||||
{
|
||||
"classname" "script_origin"
|
||||
"targetname" "auto461"
|
||||
"origin" "-290 -400 540"
|
||||
"_color" "0 1 .5"
|
||||
"angles" "0 30 0"
|
||||
"target" "auto462"
|
||||
"script_accel" "20"
|
||||
"script_airspeed" "40"
|
||||
}
|
||||
{
|
||||
"classname" "script_origin"
|
||||
"targetname" "auto460"
|
||||
"origin" "-620 -1204 432"
|
||||
"_color" "0 1 .5"
|
||||
"angles" "0 90 0"
|
||||
"target" "auto461"
|
||||
"script_accel" "20"
|
||||
"script_airspeed" "60"
|
||||
}
|
||||
{
|
||||
"classname" "script_origin"
|
||||
"targetname" "auto42"
|
||||
"origin" "520 40 892"
|
||||
"target" "auto44"
|
||||
"script_airspeed" "50"
|
||||
"script_accel" "30"
|
||||
"angles" "0 345 0"
|
||||
}
|
||||
{
|
||||
"classname" "script_origin"
|
||||
"origin" "1270 -140 408"
|
||||
"targetname" "auto44"
|
||||
"script_airspeed" "50"
|
||||
"script_accel" "30"
|
||||
"angles" "0 345 0"
|
||||
}
|
||||
{
|
||||
"classname" "script_origin"
|
||||
"targetname" "heli_start"
|
||||
"origin" "-630 -1220 424"
|
||||
"_color" "0 1 .5"
|
||||
"angles" "0 90 0"
|
||||
"target" "auto460"
|
||||
}
|
||||
{
|
||||
"target" "auto471"
|
||||
"script_airspeed" "40"
|
||||
"script_accel" "15"
|
||||
"targetname" "auto470"
|
||||
"angles" "0 50 0"
|
||||
"_color" "0 1 .5"
|
||||
"origin" "130 600 839.5"
|
||||
"classname" "script_origin"
|
||||
}
|
||||
{
|
||||
"target" "auto467"
|
||||
"targetname" "heli_dest"
|
||||
"origin" "110 250 744"
|
||||
"angles" "0 30 0"
|
||||
"_color" "0 1 .5"
|
||||
"classname" "script_origin"
|
||||
}
|
||||
{
|
||||
"script_airspeed" "30"
|
||||
"script_accel" "10"
|
||||
"angles" "0 270 0"
|
||||
"_color" "0 1 .5"
|
||||
"origin" "130 240 759.5"
|
||||
"targetname" "auto467"
|
||||
"classname" "script_origin"
|
||||
}
|
||||
{
|
||||
"angles" "0 345 0"
|
||||
"target" "auto482"
|
||||
"origin" "190 230 952"
|
||||
"targetname" "heli_crash_start"
|
||||
"classname" "script_origin"
|
||||
}
|
||||
{
|
||||
"angles" "0 345 0"
|
||||
"script_accel" "20"
|
||||
"script_airspeed" "40"
|
||||
"target" "auto42"
|
||||
"origin" "195 240 952"
|
||||
"targetname" "auto482"
|
||||
"classname" "script_origin"
|
||||
}
|
||||
{
|
||||
"target" "auto488"
|
||||
"targetname" "heli_attack_start"
|
||||
"_color" "0.000000 0.000000 0.000000"
|
||||
"origin" "285 -6 540"
|
||||
"classname" "script_origin"
|
||||
"radius" "512"
|
||||
"angles" "0 210 0"
|
||||
}
|
||||
{
|
||||
"target" "auto489"
|
||||
"targetname" "auto488"
|
||||
"angles" "0 140 0"
|
||||
"radius" "512"
|
||||
"classname" "script_origin"
|
||||
"origin" "-70 7 556"
|
||||
"_color" "0.000000 0.000000 0.000000"
|
||||
}
|
||||
{
|
||||
"target" "auto490"
|
||||
"targetname" "auto489"
|
||||
"_color" "0.000000 0.000000 0.000000"
|
||||
"origin" "-170 360 572"
|
||||
"classname" "script_origin"
|
||||
"radius" "512"
|
||||
"angles" "0 90 0"
|
||||
}
|
||||
{
|
||||
"target" "auto491"
|
||||
"targetname" "auto490"
|
||||
"angles" "0 35 0"
|
||||
"radius" "512"
|
||||
"classname" "script_origin"
|
||||
"origin" "-27 475 588"
|
||||
"_color" "0.000000 0.000000 0.000000"
|
||||
}
|
||||
{
|
||||
"target" "auto492"
|
||||
"targetname" "auto491"
|
||||
"angles" "0 330 0"
|
||||
"radius" "512"
|
||||
"classname" "script_origin"
|
||||
"origin" "500 450 508"
|
||||
"_color" "0.000000 0.000000 0.000000"
|
||||
}
|
||||
{
|
||||
"target" "heli_attack_start"
|
||||
"angles" "0 270 0"
|
||||
"radius" "512"
|
||||
"classname" "script_origin"
|
||||
"origin" "415 220 492"
|
||||
"_color" "0.000000 0.000000 0.000000"
|
||||
"targetname" "auto492"
|
||||
}
|
||||
{
|
||||
"origin" "-1200 1200 976"
|
||||
"targetname" "heli_leave"
|
||||
"classname" "script_origin"
|
||||
}
|
||||
{
|
||||
"classname" "script_origin"
|
||||
"targetname" "heli_leave"
|
||||
"origin" "-1300 -800 976"
|
||||
}
|
||||
{
|
||||
"classname" "script_origin"
|
||||
"targetname" "heli_leave"
|
||||
"origin" "-1300 1180 976"
|
||||
}
|
||||
{
|
||||
"classname" "script_origin"
|
||||
"targetname" "heli_leave"
|
||||
"origin" "1400 1200 976"
|
||||
}
|
||||
|
||||
{
|
||||
"classname" "script_origin"
|
||||
"targetname" "airstrikeheight"
|
||||
"origin" "0 0 600"
|
||||
}
|
||||
@@ -0,0 +1,402 @@
|
||||
main()
|
||||
{
|
||||
//------------------
|
||||
//EFECTS DEFINITIONS
|
||||
//------------------
|
||||
|
||||
qBarrels = false;
|
||||
precacheItem( "barrel_mp" );
|
||||
barrels = getentarray ("explodable_barrel","targetname");
|
||||
if ( (isdefined(barrels)) && (barrels.size > 0) )
|
||||
qBarrels = true;
|
||||
barrels = getentarray ("explodable_barrel","script_noteworthy");
|
||||
if ( (isdefined(barrels)) && (barrels.size > 0) )
|
||||
qBarrels = true;
|
||||
if (qBarrels)
|
||||
{
|
||||
level.breakables_fx["barrel"]["explode"] = loadfx ("props/barrelExp");
|
||||
level.breakables_fx["barrel"]["burn_start"] = loadfx ("props/barrel_ignite");
|
||||
level.breakables_fx["barrel"]["burn"] = loadfx ("props/barrel_fire_top");
|
||||
}
|
||||
oilspill = getentarray ("oil_spill","targetname");
|
||||
if(isdefined(oilspill) && oilspill.size > 0)
|
||||
{
|
||||
level.breakables_fx["oilspill"]["burn"] = loadfx ("props/barrel_fire");
|
||||
level.breakables_fx["oilspill"]["spark"] = loadfx("impacts/small_metalhit_1");
|
||||
}
|
||||
|
||||
//------------------
|
||||
//------------------
|
||||
|
||||
|
||||
//-----------------
|
||||
//SOUND DEFINITIONS
|
||||
//-----------------
|
||||
level.barrelExpSound = "explo_metal_rand";
|
||||
//-----------------
|
||||
//-----------------
|
||||
|
||||
|
||||
level.barrelHealth = 150;
|
||||
maxBrokenPieces = 25;
|
||||
//-------------
|
||||
//-------------
|
||||
|
||||
level.precachemodeltype = [];
|
||||
level.barrelExplodingThisFrame = false;
|
||||
level.breakables_clip = [];
|
||||
|
||||
temp = getentarray ("breakable clip","targetname");
|
||||
for (i=0;i<temp.size;i++)
|
||||
level.breakables_clip[level.breakables_clip.size] = temp[i];
|
||||
level._breakable_utility_modelarray = [];
|
||||
level._breakable_utility_modelindex = 0;
|
||||
level._breakable_utility_maxnum = maxBrokenPieces;
|
||||
common_scripts\utility::array_thread(getentarray ("explodable_barrel","targetname"), ::explodable_barrel_think);
|
||||
//common_scripts\utility::array_thread(getentarray ("explodable_barrel","script_noteworthy"), ::explodable_barrel_think); ASK MO
|
||||
common_scripts\utility::array_thread(getentarray ("oil_spill", "targetname"), ::oil_spill_think);
|
||||
}
|
||||
|
||||
oil_spill_think()
|
||||
{
|
||||
self.end = getstruct(self.target, "targetname");
|
||||
self.start = getstruct(self.end.target, "targetname");
|
||||
self.barrel = getClosestEnt(self.start.origin, getentarray ("explodable_barrel","targetname"));
|
||||
self.extra = getent(self.target, "targetname");
|
||||
self setcandamage(true);
|
||||
|
||||
if(isdefined(self.barrel))
|
||||
{
|
||||
self.barrel.oilspill = true;
|
||||
self thread oil_spill_burn_after();
|
||||
}
|
||||
|
||||
while(1)
|
||||
{
|
||||
self waittill("damage", other, damage, direction_vec, P, type );
|
||||
if(type == "MOD_MELEE" || type == "MOD_IMPACT")
|
||||
continue;
|
||||
|
||||
self.damageOwner = other;
|
||||
|
||||
playfx (level.breakables_fx["oilspill"]["spark"], P, direction_vec);
|
||||
//P = pointOnSegmentNearestToPoint(self.start.origin, self.end.origin, P);
|
||||
thread oil_spill_burn_section(P);
|
||||
self thread oil_spill_burn(P, self.start.origin);
|
||||
self thread oil_spill_burn(P, self.end.origin);
|
||||
break;
|
||||
}
|
||||
if(isdefined(self.barrel))
|
||||
self.barrel waittill("exploding");
|
||||
|
||||
self.extra delete();
|
||||
self hide();
|
||||
|
||||
wait 10;
|
||||
self delete();
|
||||
}
|
||||
|
||||
getClosestEnt(org, array)
|
||||
{
|
||||
if (array.size < 1)
|
||||
return;
|
||||
|
||||
// dist = distance(array[0] getorigin(), org);
|
||||
// ent = array[0];
|
||||
dist = 256;
|
||||
ent = undefined;
|
||||
for (i=0;i<array.size;i++)
|
||||
{
|
||||
newdist = distance(array[i] getorigin(), org);
|
||||
if (newdist >= dist)
|
||||
continue;
|
||||
dist = newdist;
|
||||
ent = array[i];
|
||||
}
|
||||
return ent;
|
||||
}
|
||||
|
||||
oil_spill_burn_after()
|
||||
{
|
||||
while(1)
|
||||
{
|
||||
self.barrel waittill("damage", amount ,attacker, direction_vec, P, type);
|
||||
if(type == "MOD_MELEE" || type == "MOD_IMPACT")
|
||||
continue;
|
||||
break;
|
||||
}
|
||||
self.damageOwner = attacker;
|
||||
|
||||
// do not pass damage owner if they have disconnected before the barrels explode
|
||||
if ( !isdefined( self.damageOwner ) )
|
||||
self radiusdamage (self.origin, 4, 10, 10 );
|
||||
else
|
||||
self radiusdamage (self.origin, 4, 10, 10, self.damageOwner);
|
||||
}
|
||||
|
||||
oil_spill_burn(P, dest)
|
||||
{
|
||||
|
||||
forward = vectornormalize(dest - P);
|
||||
dist = distance(p, dest);
|
||||
range = 8;
|
||||
interval = common_scripts\utility::vector_multiply(forward, range);
|
||||
angle = vectortoangles(forward);
|
||||
right = anglestoright(angle);
|
||||
|
||||
barrels = getentarray ("explodable_barrel","targetname");
|
||||
distsqr = 22 * 22;
|
||||
|
||||
test = spawn("script_origin", P);
|
||||
test hide();
|
||||
|
||||
num = 0;
|
||||
while(1)
|
||||
{
|
||||
dist -= range;
|
||||
if(dist < range *.1)
|
||||
break;
|
||||
|
||||
p += (interval + common_scripts\utility::vector_multiply(right, randomfloatrange(-6, 6)));
|
||||
|
||||
thread oil_spill_burn_section(P);
|
||||
num++;
|
||||
if(num == 4)
|
||||
{
|
||||
num = 0;
|
||||
}
|
||||
|
||||
test.origin = P;
|
||||
|
||||
remove = [];
|
||||
barrels = common_scripts\utility::array_removeUndefined(barrels);
|
||||
for(i=0; i<barrels.size; i++)
|
||||
{
|
||||
vec = anglestoup(barrels[i].angles);
|
||||
start = barrels[i].origin + (common_scripts\utility::vector_multiply(vec, 22));
|
||||
pos = physicstrace(start, start + (0,0,-64));
|
||||
|
||||
if(distancesquared(P, pos) < distsqr)
|
||||
{
|
||||
remove[remove.size] = barrels[i];
|
||||
d = (80 + randomfloat(10));
|
||||
|
||||
if ( !isdefined ( self.damageOwner ) )
|
||||
self radiusdamage (barrels[i].origin, 4, d, d);
|
||||
else
|
||||
self radiusdamage (barrels[i].origin, 4, d, d, self.damageOwner);
|
||||
//barrels[i] dodamage( , P);
|
||||
}
|
||||
}
|
||||
for(i=0; i<remove.size; i++)
|
||||
barrels = common_scripts\utility::array_remove(barrels, remove[i]);
|
||||
wait .1;
|
||||
}
|
||||
|
||||
if(!isdefined(self.barrel))
|
||||
return;
|
||||
if( distance(P, self.start.origin) < 32)
|
||||
{
|
||||
d = (80 + randomfloat(10));
|
||||
if ( !isdefined ( self.damageOwner ) )
|
||||
self radiusdamage (self.barrel.origin, 4, d, d);
|
||||
else
|
||||
self radiusdamage (self.barrel.origin, 4, d, d, self.damageOwner);
|
||||
}
|
||||
}
|
||||
|
||||
oil_spill_burn_section(P)
|
||||
{
|
||||
count = 0;
|
||||
time = 0;
|
||||
playfx (level.breakables_fx["oilspill"]["burn"], P);
|
||||
|
||||
while(time < 5)
|
||||
{
|
||||
if ( !isdefined ( self.damageOwner ) )
|
||||
self radiusdamage(P, 32, 5, 1);
|
||||
else
|
||||
self radiusdamage(P, 32, 5, 1, self.damageOwner);
|
||||
time += 1;
|
||||
wait 1;
|
||||
}
|
||||
}
|
||||
|
||||
explodable_barrel_think()
|
||||
{
|
||||
if (self.classname != "script_model")
|
||||
return;
|
||||
// if ( (self.model != "com_barrel_benzin") && (self.model != "com_barrel_benzin_snow") )
|
||||
// return;
|
||||
if(!isdefined(level.precachemodeltype["com_barrel_benzin"]))
|
||||
{
|
||||
level.precachemodeltype["com_barrel_benzin"] = true;
|
||||
precacheModel("com_barrel_piece");
|
||||
precacheModel("com_barrel_piece2");
|
||||
}
|
||||
self endon ("exploding");
|
||||
|
||||
self breakable_clip();
|
||||
self.damageTaken = 0;
|
||||
self setcandamage(true);
|
||||
for (;;)
|
||||
{
|
||||
self waittill("damage", amount ,attacker, direction_vec, P, type);
|
||||
if(type == "MOD_MELEE" || type == "MOD_IMPACT")
|
||||
continue;
|
||||
|
||||
self.damagetype = type;
|
||||
|
||||
self.damageOwner = attacker;
|
||||
|
||||
if (level.barrelExplodingThisFrame)
|
||||
wait randomfloat(1);
|
||||
self.damageTaken += amount;
|
||||
if (self.damageTaken == amount)
|
||||
self thread explodable_barrel_burn();
|
||||
}
|
||||
}
|
||||
|
||||
explodable_barrel_burn()
|
||||
{
|
||||
count = 0;
|
||||
startedfx = false;
|
||||
|
||||
up = anglestoup(self.angles);
|
||||
worldup = anglestoup((0,90,0));
|
||||
dot = vectordot(up, worldup);
|
||||
|
||||
offset1 = (0,0,0);
|
||||
offset2 = common_scripts\utility::vector_multiply(up, 44);
|
||||
|
||||
if(dot < .5)
|
||||
{
|
||||
offset1 = common_scripts\utility::vector_multiply(up, 22) - (0,0,30);
|
||||
offset2 = common_scripts\utility::vector_multiply(up, 22) + (0,0,14);
|
||||
}
|
||||
|
||||
if( self.damagetype != "MOD_GRENADE_SPLASH" && self.damagetype != "MOD_GRENADE" )
|
||||
{
|
||||
while (self.damageTaken < level.barrelHealth)
|
||||
{
|
||||
if (!startedfx)
|
||||
{
|
||||
playfx (level.breakables_fx["barrel"]["burn_start"], self.origin + offset1);
|
||||
startedfx = true;
|
||||
}
|
||||
if (count > 20)
|
||||
count = 0;
|
||||
|
||||
playfx (level.breakables_fx["barrel"]["burn"], self.origin + offset2);
|
||||
|
||||
if (count == 0)
|
||||
{
|
||||
self.damageTaken += (10 + randomfloat(10));
|
||||
}
|
||||
count++;
|
||||
wait 0.05;
|
||||
}
|
||||
}
|
||||
self thread explodable_barrel_explode();
|
||||
}
|
||||
|
||||
explodable_barrel_explode()
|
||||
{
|
||||
self notify ("exploding");
|
||||
self notify ("death");
|
||||
|
||||
up = anglestoup(self.angles);
|
||||
worldup = anglestoup((0,90,0));
|
||||
dot = vectordot(up, worldup);
|
||||
|
||||
offset = (0,0,0);
|
||||
if(dot < .5)
|
||||
{
|
||||
start = (self.origin + common_scripts\utility::vector_multiply(up, 22));
|
||||
end = physicstrace(start, (start + (0,0,-64)));
|
||||
offset = end - self.origin;
|
||||
}
|
||||
offset += (0,0,4);
|
||||
|
||||
self playsound (level.barrelExpSound);
|
||||
//level thread play_sound_in_space(level.barrelExpSound, self.origin);
|
||||
playfx (level.breakables_fx["barrel"]["explode"], self.origin + offset);
|
||||
|
||||
level.barrelExplodingThisFrame = true;
|
||||
|
||||
if (isdefined (self.remove))
|
||||
{
|
||||
self.remove delete();
|
||||
}
|
||||
|
||||
phyExpMagnitude = 2;
|
||||
minDamage = 1;
|
||||
maxDamage = 250;
|
||||
blastRadius = 250;
|
||||
if (isdefined(self.radius))
|
||||
blastRadius = self.radius;
|
||||
|
||||
// do not pass damage owner if they have disconnected before the barrels explode
|
||||
if ( !isdefined( self.damageOwner ) )
|
||||
self radiusDamage(self.origin + (0,0,30), blastRadius, maxDamage, minDamage, undefined, "MOD_EXPLOSIVE", "barrel_mp");
|
||||
else
|
||||
self radiusDamage(self.origin + (0,0,30), blastRadius, maxDamage, minDamage, self.damageOwner, "MOD_EXPLOSIVE", "barrel_mp" );
|
||||
|
||||
physicsExplosionSphere( self.origin + (0,0,30), blastRadius, blastRadius/2, phyExpMagnitude );
|
||||
|
||||
self maps\mp\gametypes\_shellshock::barrel_earthQuake();
|
||||
|
||||
if (randomint(2) == 0)
|
||||
self setModel("com_barrel_piece");
|
||||
else
|
||||
self setModel("com_barrel_piece2");
|
||||
self setCanDamage( false );
|
||||
|
||||
if(dot < .5)
|
||||
{
|
||||
start = (self.origin + common_scripts\utility::vector_multiply(up, 22));
|
||||
pos = physicstrace(start, (start + (0,0,-64)));
|
||||
|
||||
self.origin = pos;
|
||||
self.angles += (0,0,90);
|
||||
|
||||
}
|
||||
wait 0.05;
|
||||
level.barrelExplodingThisFrame = false;
|
||||
}
|
||||
|
||||
getstruct(name, type)
|
||||
{
|
||||
if(!isdefined(level.struct_class_names))
|
||||
return undefined;
|
||||
|
||||
array = level.struct_class_names[type][name];
|
||||
if(!isdefined(array))
|
||||
return undefined;
|
||||
if(array.size > 1)
|
||||
{
|
||||
assertMsg ("getstruct used for more than one struct of type " + type + " called " + name +".");
|
||||
return undefined;
|
||||
}
|
||||
return array[0];
|
||||
}
|
||||
|
||||
breakable_clip()
|
||||
{
|
||||
//targeted brushmodels take priority over proximity based breakables - nate
|
||||
if (isdefined(self.target))
|
||||
{
|
||||
targ = getent(self.target,"targetname");
|
||||
if(targ.classname == "script_brushmodel")
|
||||
{
|
||||
self.remove = targ;
|
||||
return;
|
||||
}
|
||||
}
|
||||
//setup it's removable clip part
|
||||
if ((isdefined (level.breakables_clip)) && (level.breakables_clip.size > 0))
|
||||
self.remove = getClosestEnt( self.origin , level.breakables_clip );
|
||||
if (isdefined (self.remove))
|
||||
level.breakables_clip = common_scripts\utility::array_remove ( level.breakables_clip , self.remove );
|
||||
}
|
||||
|
||||
@@ -0,0 +1,37 @@
|
||||
/******************************************************/
|
||||
/* Map by momo5502, xetal & Dasfonia */
|
||||
/******************************************************/
|
||||
|
||||
|
||||
#include common_scripts\utility;
|
||||
#include maps\mp\_utility;
|
||||
#include maps\mp\gametypes\_hud_util;
|
||||
|
||||
main()
|
||||
{
|
||||
SetDvarIfUninitialized( "hunted_weather", 2 ); // 0 = Fog | 1 = Rain | 2 = Dynamic weather
|
||||
|
||||
level.hunted_weather = GetDvarInt( "hunted_weather" );
|
||||
|
||||
if( level.hunted_weather < 0 || level.hunted_weather > 2 )
|
||||
level.hunted_weather = ( randomint( 65534 ) % 3 );
|
||||
|
||||
maps\mp\_load::main();
|
||||
maps\createart\co_hunted_art::main();
|
||||
maps\mp\co_hunted_fx::main();
|
||||
maps\mp\hunted_precache::main();
|
||||
|
||||
game[ "attackers" ] = "allies";
|
||||
game[ "defenders" ] = "axis";
|
||||
|
||||
maps\mp\_compass::setupMiniMap( "compass_map_hunted" );
|
||||
setdvar( "compassmaxrange", "3000" );
|
||||
|
||||
if( level.hunted_weather == 0 )
|
||||
ambientPlay( "ambient_mp_rural", 0 );
|
||||
|
||||
else if( level.hunted_weather == 1 )
|
||||
ambientPlay( "ambient_mp_rain", 0 );
|
||||
|
||||
level notify("village_start_weather");
|
||||
}
|
||||
@@ -0,0 +1,92 @@
|
||||
#include common_scripts\utility;
|
||||
#include maps\mp\_utility;
|
||||
|
||||
main()
|
||||
{
|
||||
//level._effect["firelp_vhc_lrg_pm_farview"] = loadfx ("fire/firelp_vhc_lrg_pm_farview");
|
||||
//level._effect["lighthaze"] = loadfx ("misc/lighthaze");
|
||||
level._effect[ "firelp_med_pm" ] = loadfx( "fire/firelp_med_pm" );
|
||||
level._effect[ "firelp_small_pm" ] = loadfx( "fire/firelp_small_pm" );
|
||||
level._effect[ "firelp_small_pm_a" ] = loadfx( "fire/firelp_small_pm_a" );
|
||||
level._effect[ "fog_hunted" ] = loadfx( "weather/fog_hunted" );
|
||||
level._effect[ "fog_hunted_a" ] = loadfx( "weather/fog_hunted_a" );
|
||||
level._effect[ "bird_pm" ] = loadfx( "misc/bird_pm" );
|
||||
level._effect[ "bird_takeoff_pm" ] = loadfx( "misc/bird_takeoff_pm" );
|
||||
level._effect[ "leaves" ] = loadfx( "misc/leaves" );
|
||||
level._effect[ "leaves_runner" ] = loadfx( "misc/leaves_runner" );
|
||||
level._effect[ "leaves_runner_1" ] = loadfx( "misc/leaves_runner_1" );
|
||||
level._effect[ "leaves_lp" ] = loadfx( "misc/leaves_lp" );
|
||||
level._effect[ "leaves_gl" ] = loadfx( "misc/leaves_gl" );
|
||||
level._effect[ "leaves_gl_a" ] = loadfx( "misc/leaves_gl_a" );
|
||||
level._effect[ "leaves_gl_b" ] = loadfx( "misc/leaves_gl_b" );
|
||||
level._effect[ "hunted_vl" ] = loadfx( "misc/hunted_vl" );
|
||||
level._effect[ "hunted_vl_sm" ] = loadfx( "misc/hunted_vl_sm" );
|
||||
level._effect[ "hunted_vl_od_lrg" ] = loadfx( "misc/hunted_vl_od_lrg" );
|
||||
level._effect[ "hunted_vl_od_lrg_a" ] = loadfx( "misc/hunted_vl_od_lrg_a" );
|
||||
level._effect[ "hunted_vl_od_sml" ] = loadfx( "misc/hunted_vl_od_sml" );
|
||||
level._effect[ "hunted_vl_od_sml_a" ] = loadfx( "misc/hunted_vl_od_sml_a" );
|
||||
level._effect[ "hunted_vl_od_dtl_a" ] = loadfx( "misc/hunted_vl_od_dtl_a" );
|
||||
level._effect[ "hunted_vl_od_dtl_b" ] = loadfx( "misc/hunted_vl_od_dtl_b" );
|
||||
level._effect[ "mist_hunted_add" ] = loadfx( "weather/mist_hunted_add" );
|
||||
level._effect[ "insects_light_hunted" ] = loadfx( "misc/insects_light_hunted" );
|
||||
level._effect[ "insects_light_hunted_a" ] = loadfx( "misc/insects_light_hunted_a" );
|
||||
level._effect[ "hunted_vl_white_eql" ] = loadfx( "misc/hunted_vl_white_eql" );
|
||||
// level._effect["hunted_vl_white_eql_flare"] = loadfx ("misc/hunted_vl_white_eql_flare");
|
||||
level._effect[ "hunted_vl_white_eql_a" ] = loadfx( "misc/hunted_vl_white_eql_a" );
|
||||
// level._effect["grenadeexp_fuel"] = loadfx ("explosions/grenadeexp_fuel");
|
||||
// level._effect["hunted_fel"] = loadfx ("misc/hunted_fel");
|
||||
level._effect[ "greenhouse_fog_spot_lit" ] = loadfx( "smoke/greenhouse_fog_spot_lit" );
|
||||
level._effect[ "waterfall_hunted" ] = loadfx( "misc/waterfall_hunted" );
|
||||
level._effect[ "stream_hunted" ] = loadfx( "misc/stream_hunted" );
|
||||
|
||||
//footstep fx
|
||||
|
||||
setFootstepEffect( "asphalt", loadfx( "impacts/footstep_dust_dark" ) );
|
||||
setFootstepEffect( "brick", loadfx( "impacts/footstep_dust_dark" ) );
|
||||
setFootstepEffect( "carpet", loadfx( "impacts/footstep_dust_dark" ) );
|
||||
setFootstepEffect( "cloth", loadfx( "impacts/footstep_dust_dark" ) );
|
||||
setFootstepEffect( "concrete", loadfx( "impacts/footstep_dust_dark" ) );
|
||||
setFootstepEffect( "dirt", loadfx( "impacts/footstep_dust_dark" ) );
|
||||
setFootstepEffect( "foliage", loadfx( "impacts/footstep_dust_dark" ) );
|
||||
setFootstepEffect( "grass", loadfx( "impacts/footstep_dust_dark" ) );
|
||||
setFootstepEffect( "metal", loadfx( "impacts/footstep_dust_dark" ) );
|
||||
setFootstepEffect( "mud", loadfx( "impacts/footstep_mud_dark" ) );
|
||||
setFootstepEffect( "rock", loadfx( "impacts/footstep_dust_dark" ) );
|
||||
setFootstepEffect( "sand", loadfx( "impacts/footstep_dust_dark" ) );
|
||||
setFootstepEffect( "water", loadfx( "impacts/footstep_water_dark" ) );
|
||||
setFootstepEffect( "wood", loadfx( "impacts/footstep_dust_dark" ) );
|
||||
|
||||
//Rain Fx :D
|
||||
level._effect[ "rain_mp_storm" ] = loadfx( "weather/rain_mp_storm" );
|
||||
level._effect[ "rain_noise_splashes" ] = loadfx( "weather/rain_noise_splashes" );
|
||||
level._effect[ "rain_splash_lite_128x128" ] = loadfx( "weather/rain_splash_lite_128x128" );
|
||||
level._effect[ "drips_fast" ] = loadfx( "misc/drips_fast" );
|
||||
level._effect[ "lightning" ] = loadfx( "weather/lightning_mp_storm" );
|
||||
level._effect[ "waterfall_drainage_mp" ] = loadfx( "water/waterfall_drainage_mp" );
|
||||
level._effect[ "waterfall_drainage_splash_mp" ] = loadfx( "water/waterfall_drainage_splash_mp" );
|
||||
|
||||
maps\createfx\co_hunted_fx::main();
|
||||
}
|
||||
|
||||
setFootstepEffect( name, fx )
|
||||
{
|
||||
assertEx( isdefined( name ), "Need to define the footstep surface type." );
|
||||
assertEx( isdefined( fx ), "Need to define the mud footstep effect." );
|
||||
if( !isdefined( anim.optionalStepEffects ) )
|
||||
anim.optionalStepEffects = [];
|
||||
anim.optionalStepEffects[ anim.optionalStepEffects.size ] = name;
|
||||
level._effect[ "step_" + name ] = fx;
|
||||
anim.optionalStepEffectFunction = playFootStepEffect();
|
||||
}
|
||||
|
||||
playFootStepEffect(foot, groundType)
|
||||
{
|
||||
for (i=0;i<anim.optionalStepEffects.size;i++)
|
||||
{
|
||||
if (groundType != anim.optionalStepEffects[i])
|
||||
continue;
|
||||
org = self gettagorigin(foot);
|
||||
playfx(level._effect["step_" + anim.optionalStepEffects[i]], org, org + (0,0,100));
|
||||
return;
|
||||
}
|
||||
}
|
||||
File diff suppressed because it is too large.
Load diff
File diff suppressed because it is too large.
Load diff
@@ -0,0 +1,261 @@
|
||||
#include maps\mp\_utility;
|
||||
#include maps\mp\gametypes\_hud_util;
|
||||
#include common_scripts\utility;
|
||||
|
||||
init()
|
||||
{
|
||||
level.splitscreen = isSplitScreen();
|
||||
level.ps3 = (getDvar( "ps3Game" ) == "true");
|
||||
level.xenon = (getDvar( "xenonGame" ) == "true");
|
||||
level.console = (level.ps3 || level.xenon);
|
||||
|
||||
level.onlineGame = getDvarInt( "onlinegame" );
|
||||
|
||||
//level.rankedMatch = ( level.onlineGame );
|
||||
setDvarIfUninitialized ("scr_classic", 0);
|
||||
setDvarIfUninitialized ("scr_rankedmatch", 1);
|
||||
level.rankedMatch = ((getDvarInt( "scr_rankedmatch" ) == 1) && level.onlineGame);
|
||||
|
||||
/#
|
||||
if ( getdvarint( "scr_forcerankedmatch" ) == 1 )
|
||||
{
|
||||
level.onlineGame = true;
|
||||
level.rankedMatch = true;
|
||||
}
|
||||
#/
|
||||
|
||||
level.script = toLower( getDvar( "mapname" ) );
|
||||
level.gametype = toLower( getDvar( "g_gametype" ) );
|
||||
|
||||
level.otherTeam["allies"] = "axis";
|
||||
level.otherTeam["axis"] = "allies";
|
||||
|
||||
level.teamBased = false;
|
||||
|
||||
level.objectiveBased = false;
|
||||
|
||||
level.endGameOnTimeLimit = true;
|
||||
|
||||
level.showingFinalKillcam = false;
|
||||
|
||||
level.tiSpawnDelay = getDvarInt( "scr_tispawndelay" );
|
||||
|
||||
// hack to allow maps with no scripts to run correctly
|
||||
if ( !isDefined( level.tweakablesInitialized ) )
|
||||
maps\mp\gametypes\_tweakables::init();
|
||||
|
||||
precacheString( &"MP_HALFTIME" );
|
||||
precacheString( &"MP_OVERTIME" );
|
||||
precacheString( &"MP_ROUNDEND" );
|
||||
precacheString( &"MP_INTERMISSION" );
|
||||
precacheString( &"MP_SWITCHING_SIDES" );
|
||||
precacheString( &"MP_FRIENDLY_FIRE_WILL_NOT" );
|
||||
precacheString( &"PLATFORM_REVIVE" );
|
||||
|
||||
precacheString( &"MP_OBITUARY_NEUTRAL" );
|
||||
precacheString( &"MP_OBITUARY_FRIENDLY" );
|
||||
precacheString( &"MP_OBITUARY_ENEMY" );
|
||||
|
||||
if ( level.splitScreen )
|
||||
precacheString( &"MP_ENDED_GAME" );
|
||||
else
|
||||
precacheString( &"MP_HOST_ENDED_GAME" );
|
||||
|
||||
level.halftimeType = "halftime";
|
||||
level.halftimeSubCaption = &"MP_SWITCHING_SIDES";
|
||||
|
||||
level.lastStatusTime = 0;
|
||||
level.wasWinning = "none";
|
||||
|
||||
level.lastSlowProcessFrame = 0;
|
||||
|
||||
level.placement["allies"] = [];
|
||||
level.placement["axis"] = [];
|
||||
level.placement["all"] = [];
|
||||
|
||||
level.postRoundTime = 5.0;
|
||||
|
||||
level.playersLookingForSafeSpawn = [];
|
||||
|
||||
registerDvars();
|
||||
|
||||
precacheModel( "vehicle_mig29_desert" );
|
||||
precacheModel( "projectile_cbu97_clusterbomb" );
|
||||
precacheModel( "tag_origin" );
|
||||
|
||||
level.fx_airstrike_afterburner = loadfx ("fire/jet_afterburner");
|
||||
level.fx_airstrike_contrail = loadfx ("smoke/jet_contrail");
|
||||
|
||||
if ( level.console )
|
||||
precacheLeaderboards( "LB_KILLS LB_WINS LB_TOTALXP LB_ACCURACY" );
|
||||
|
||||
level.teamCount["allies"] = 0;
|
||||
level.teamCount["axis"] = 0;
|
||||
level.teamCount["spectator"] = 0;
|
||||
|
||||
level.aliveCount["allies"] = 0;
|
||||
level.aliveCount["axis"] = 0;
|
||||
level.aliveCount["spectator"] = 0;
|
||||
|
||||
level.livesCount["allies"] = 0;
|
||||
level.livesCount["axis"] = 0;
|
||||
|
||||
level.oneLeftTime = [];
|
||||
|
||||
level.hasSpawned["allies"] = 0;
|
||||
level.hasSpawned["axis"] = 0;
|
||||
|
||||
/#
|
||||
if ( getdvarint( "scr_runlevelandquit" ) == 1 )
|
||||
{
|
||||
thread runLevelAndQuit();
|
||||
}
|
||||
#/
|
||||
}
|
||||
|
||||
|
||||
/#
|
||||
runLevelAndQuit()
|
||||
{
|
||||
wait 1;
|
||||
while ( level.players.size < 1 )
|
||||
{
|
||||
wait 0.5;
|
||||
}
|
||||
wait 0.5;
|
||||
level notify( "game_ended" );
|
||||
exitLevel();
|
||||
}
|
||||
#/
|
||||
|
||||
|
||||
registerDvars()
|
||||
{
|
||||
makeDvarServerInfo( "ui_bomb_timer", 0 );
|
||||
makeDvarServerInfo( "ui_danger_team", "" );
|
||||
|
||||
makeDvarServerInfo( "camera_thirdPerson", getDvarInt( "scr_thirdPerson" ) );
|
||||
|
||||
makeDvarServerInfo( "ranked", level.rankedMatch );
|
||||
}
|
||||
|
||||
SetupCallbacks()
|
||||
{
|
||||
level.onXPEvent = ::onXPEvent;
|
||||
|
||||
level.getSpawnPoint = ::blank;
|
||||
level.onSpawnPlayer = ::blank;
|
||||
level.onRespawnDelay = ::blank;
|
||||
|
||||
level.onTimeLimit = maps\mp\gametypes\_gamelogic::default_onTimeLimit;
|
||||
level.onHalfTime = maps\mp\gametypes\_gamelogic::default_onHalfTime;
|
||||
level.onDeadEvent = maps\mp\gametypes\_gamelogic::default_onDeadEvent;
|
||||
level.onOneLeftEvent = maps\mp\gametypes\_gamelogic::default_onOneLeftEvent;
|
||||
|
||||
level.onPrecacheGametype = ::blank;
|
||||
level.onStartGameType = ::blank;
|
||||
level.onPlayerKilled = ::blank;
|
||||
|
||||
level.autoassign = maps\mp\gametypes\_menus::menuAutoAssign;
|
||||
level.spectator = maps\mp\gametypes\_menus::menuSpectator;
|
||||
level.class = maps\mp\gametypes\_menus::menuClass;
|
||||
level.allies = maps\mp\gametypes\_menus::menuAllies;
|
||||
level.axis = maps\mp\gametypes\_menus::menuAxis;
|
||||
}
|
||||
|
||||
|
||||
|
||||
blank( arg1, arg2, arg3, arg4, arg5, arg6, arg7, arg8, arg9, arg10 )
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
|
||||
/#
|
||||
xpRateThread()
|
||||
{
|
||||
self endon ( "death" );
|
||||
self endon ( "disconnect" );
|
||||
level endon ( "game_ended" );
|
||||
|
||||
gameFlagWait( "prematch_done" );
|
||||
|
||||
for ( ;; )
|
||||
{
|
||||
wait ( 5.0 );
|
||||
if ( level.players[0].pers["team"] == "allies" || level.players[0].pers["team"] == "axis" )
|
||||
self maps\mp\gametypes\_rank::giveRankXP( "kill", int(min( getDvarInt( "scr_xprate" ), 50 )) );
|
||||
}
|
||||
}
|
||||
#/
|
||||
|
||||
testMenu()
|
||||
{
|
||||
self endon ( "death" );
|
||||
self endon ( "disconnect" );
|
||||
|
||||
for ( ;; )
|
||||
{
|
||||
wait ( 10.0 );
|
||||
|
||||
notifyData = spawnStruct();
|
||||
notifyData.titleText = &"MP_CHALLENGE_COMPLETED";
|
||||
notifyData.notifyText = "wheee";
|
||||
notifyData.sound = "mp_challenge_complete";
|
||||
|
||||
self thread maps\mp\gametypes\_hud_message::notifyMessage( notifyData );
|
||||
}
|
||||
}
|
||||
|
||||
testShock()
|
||||
{
|
||||
self endon ( "death" );
|
||||
self endon ( "disconnect" );
|
||||
|
||||
for ( ;; )
|
||||
{
|
||||
wait ( 3.0 );
|
||||
|
||||
numShots = randomInt( 6 );
|
||||
|
||||
for ( i = 0; i < numShots; i++ )
|
||||
{
|
||||
iPrintLnBold( numShots );
|
||||
self shellShock( "frag_grenade_mp", 0.2 );
|
||||
wait ( 0.1 );
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
onXPEvent( event )
|
||||
{
|
||||
//self thread maps\mp\_loot::giveMoney( event, 10 );
|
||||
self thread maps\mp\gametypes\_rank::giveRankXP( event );
|
||||
}
|
||||
|
||||
|
||||
|
||||
fakeLag()
|
||||
{
|
||||
self endon ( "disconnect" );
|
||||
self.fakeLag = randomIntRange( 50, 150 );
|
||||
|
||||
for ( ;; )
|
||||
{
|
||||
self setClientDvar( "fakelag_target", self.fakeLag );
|
||||
wait ( randomFloatRange( 5.0, 15.0 ) );
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
debugLine( start, end )
|
||||
{
|
||||
for ( i = 0; i < 50; i++ )
|
||||
{
|
||||
line( start, end );
|
||||
wait .05;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,594 @@
|
||||
#include maps\mp\_utility;
|
||||
#include maps\mp\gametypes\_hud_util;
|
||||
|
||||
init()
|
||||
{
|
||||
precacheString(&"PLATFORM_PRESS_TO_SKIP");
|
||||
precacheString(&"PLATFORM_PRESS_TO_RESPAWN");
|
||||
precacheString(&"PLATFORM_PRESS_TO_COPYCAT");
|
||||
precacheShader("specialty_copycat");
|
||||
|
||||
level.killcam = maps\mp\gametypes\_tweakables::getTweakableValue( "game", "allowkillcam" );
|
||||
}
|
||||
|
||||
killcam(
|
||||
attackerNum, // entity number of the attacker
|
||||
killcamentityindex, // entity number of the entity to view (grenade, airstrike, etc)
|
||||
killcamentitystarttime, // time at which the killcamentity came into being
|
||||
sWeapon, // killing weapon
|
||||
predelay, // time between player death and beginning of killcam
|
||||
offsetTime, // something to do with how far back in time the killer was seeing the world when he made the kill; latency related, sorta
|
||||
timeUntilRespawn, // will the player be allowed to respawn after the killcam?
|
||||
maxtime, // time remaining until map ends; the killcam will never last longer than this. undefined = no limit
|
||||
attacker, // entity object of attacker
|
||||
victim // entity object of the victim
|
||||
)
|
||||
{
|
||||
// monitors killcam and hides HUD elements during killcam session
|
||||
//if ( !level.splitscreen )
|
||||
// self thread killcam_HUD_off();
|
||||
|
||||
self endon("disconnect");
|
||||
self endon("spawned");
|
||||
level endon("game_ended");
|
||||
|
||||
if ( attackerNum < 0 )
|
||||
return;
|
||||
|
||||
// length from killcam start to killcam end
|
||||
if (getdvar("scr_killcam_time") == "") {
|
||||
if ( sWeapon == "artillery_mp" || sWeapon == "stealth_bomb_mp" )
|
||||
camtime = (gettime() - killcamentitystarttime) / 1000 - predelay - .1;
|
||||
else if ( level.showingFinalKillcam )
|
||||
camtime = 4.0;
|
||||
else if ( sWeapon == "javelin_mp" )
|
||||
camtime = 8;
|
||||
else if ( issubstr( sWeapon, "remotemissile_" ) )
|
||||
camtime = 5;
|
||||
else if ( !timeUntilRespawn || timeUntilRespawn > 5.0 ) // if we're not going to respawn, we can take more time to watch what happened
|
||||
camtime = 5.0;
|
||||
else if ( sWeapon == "frag_grenade_mp" || sWeapon == "frag_grenade_short_mp" || sWeapon == "semtex_mp" )
|
||||
camtime = 4.25; // show long enough to see grenade thrown
|
||||
else
|
||||
camtime = 2.5;
|
||||
}
|
||||
else
|
||||
camtime = getdvarfloat("scr_killcam_time");
|
||||
|
||||
if (isdefined(maxtime)) {
|
||||
if (camtime > maxtime)
|
||||
camtime = maxtime;
|
||||
if (camtime < .05)
|
||||
camtime = .05;
|
||||
}
|
||||
|
||||
// time after player death that killcam continues for
|
||||
if (getdvar("scr_killcam_posttime") == "")
|
||||
postdelay = 2;
|
||||
else {
|
||||
postdelay = getdvarfloat("scr_killcam_posttime");
|
||||
if (postdelay < 0.05)
|
||||
postdelay = 0.05;
|
||||
}
|
||||
|
||||
/* timeline:
|
||||
|
||||
| camtime | postdelay |
|
||||
| | predelay |
|
||||
|
||||
^ killcam start ^ player death ^ killcam end
|
||||
^ player starts watching killcam
|
||||
|
||||
*/
|
||||
|
||||
killcamlength = camtime + postdelay;
|
||||
|
||||
// don't let the killcam last past the end of the round.
|
||||
if (isdefined(maxtime) && killcamlength > maxtime)
|
||||
{
|
||||
// first trim postdelay down to a minimum of 1 second.
|
||||
// if that doesn't make it short enough, trim camtime down to a minimum of 1 second.
|
||||
// if that's still not short enough, cancel the killcam.
|
||||
if ( maxtime < 2 )
|
||||
return;
|
||||
|
||||
if (maxtime - camtime >= 1) {
|
||||
// reduce postdelay so killcam ends at end of match
|
||||
postdelay = maxtime - camtime;
|
||||
}
|
||||
else {
|
||||
// distribute remaining time over postdelay and camtime
|
||||
postdelay = 1;
|
||||
camtime = maxtime - 1;
|
||||
}
|
||||
|
||||
// recalc killcamlength
|
||||
killcamlength = camtime + postdelay;
|
||||
}
|
||||
|
||||
killcamoffset = camtime + predelay;
|
||||
|
||||
startTime = getTime();
|
||||
self notify ( "begin_killcam", startTime );
|
||||
|
||||
self.sessionstate = "spectator";
|
||||
self.forcespectatorclient = attackerNum;
|
||||
self.killcamentity = -1;
|
||||
if ( killcamentityindex >= 0 )
|
||||
self thread setKillCamEntity( killcamentityindex, killcamoffset, killcamentitystarttime );
|
||||
self.archivetime = killcamoffset;
|
||||
self.killcamlength = killcamlength;
|
||||
self.psoffsettime = offsetTime;
|
||||
|
||||
// ignore spectate permissions
|
||||
self allowSpectateTeam("allies", true);
|
||||
self allowSpectateTeam("axis", true);
|
||||
self allowSpectateTeam("freelook", true);
|
||||
self allowSpectateTeam("none", true);
|
||||
|
||||
if ( isDefined( attacker ) && level.showingFinalKillcam ) // attacker may have disconnected
|
||||
{
|
||||
self openMenu( "killedby_card_display" );
|
||||
self SetCardDisplaySlot( attacker, 7 );
|
||||
}
|
||||
|
||||
self thread endedKillcamCleanup();
|
||||
|
||||
// wait till the next server frame to allow code a chance to update archivetime if it needs trimming
|
||||
wait 0.05;
|
||||
|
||||
assertex( self.archivetime <= killcamoffset + 0.0001, "archivetime: " + self.archivetime + ", killcamoffset: " + killcamoffset );
|
||||
if ( self.archivetime < killcamoffset )
|
||||
println( "WARNING: Code trimmed killcam time by " + (killcamoffset - self.archivetime) + " seconds because it doesn't have enough game time recorded!" );
|
||||
|
||||
camtime = self.archivetime - .05 - predelay;
|
||||
killcamlength = camtime + postdelay;
|
||||
self.killcamlength = killcamlength;
|
||||
|
||||
if ( camtime <= 0 ) // if we're not looking back in time far enough to even see the death, cancel
|
||||
{
|
||||
println( "Cancelling killcam because we don't even have enough recorded to show the death." );
|
||||
|
||||
self.sessionstate = "dead";
|
||||
self.forcespectatorclient = -1;
|
||||
self.killcamentity = -1;
|
||||
self.archivetime = 0;
|
||||
self.psoffsettime = 0;
|
||||
|
||||
self notify ( "killcam_ended" );
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
if ( level.showingFinalKillcam )
|
||||
thread doFinalKillCamFX( camtime );
|
||||
|
||||
self.killcam = true;
|
||||
|
||||
self initKCElements();
|
||||
|
||||
if ( !level.splitscreen )
|
||||
{
|
||||
self.kc_timer.alpha = 1;
|
||||
self.kc_timer setTenthsTimer(camtime);
|
||||
}
|
||||
|
||||
if ( timeUntilRespawn && !level.gameEnded )
|
||||
{
|
||||
if ( timeUntilRespawn > 0 )
|
||||
setLowerMessage( "kc_info", game["strings"]["waiting_to_spawn"], timeUntilRespawn );
|
||||
else
|
||||
setLowerMessage( "kc_info", &"PLATFORM_PRESS_TO_SKIP" );
|
||||
}
|
||||
else if ( !level.gameEnded )
|
||||
{
|
||||
setLowerMessage( "kc_info", &"PLATFORM_PRESS_TO_RESPAWN" );
|
||||
}
|
||||
|
||||
if ( !level.showingFinalKillcam )
|
||||
self.kc_skiptext.alpha = 1;
|
||||
else
|
||||
self.kc_skiptext.alpha = 0;
|
||||
|
||||
self.kc_othertext.alpha = 0;
|
||||
self.kc_icon.alpha = 0;
|
||||
|
||||
self thread spawnedKillcamCleanup();
|
||||
|
||||
if ( self == victim && victim _hasPerk( "specialty_copycat" ) && isDefined( victim.pers["copyCatLoadout"] ) )
|
||||
self thread waitKCCopyCatButton( attacker );
|
||||
|
||||
if ( !level.showingFinalKillcam )
|
||||
self thread waitSkipKillcamButton( timeUntilRespawn );
|
||||
else
|
||||
self notify ( "showing_final_killcam" );
|
||||
|
||||
self thread endKillcamIfNothingToShow();
|
||||
|
||||
self waittillKillcamOver();
|
||||
|
||||
if ( level.showingFinalKillcam )
|
||||
{
|
||||
self thread maps\mp\gametypes\_playerlogic::spawnEndOfGame();
|
||||
return;
|
||||
}
|
||||
|
||||
self thread calculateKillCamTime( startTime );
|
||||
|
||||
self thread killcamCleanup( true );
|
||||
}
|
||||
|
||||
|
||||
doFinalKillCamFX( camTime )
|
||||
{
|
||||
if ( isDefined( level.doingFinalKillcamFx ) )
|
||||
return;
|
||||
level.doingFinalKillcamFx = true;
|
||||
|
||||
intoSlowMoTime = camTime;
|
||||
if ( intoSlowMoTime > 1.0 )
|
||||
{
|
||||
intoSlowMoTime = 1.0;
|
||||
wait( camTime - 1.0 );
|
||||
}
|
||||
|
||||
//setSlowMotion( 1.0, 0.25, intoSlowMoTime ); // start timescale, end timescale, lerp duration
|
||||
wait( intoSlowMoTime + .5 );
|
||||
//setSlowMotion( 0.25, 1, 1.0 );
|
||||
|
||||
level.doingFinalKillcamFx = undefined;
|
||||
}
|
||||
|
||||
|
||||
calculateKillCamTime( startTime )
|
||||
{
|
||||
watchedTime = int(getTime() - startTime);
|
||||
self incPlayerStat( "killcamtimewatched", watchedTime );
|
||||
}
|
||||
|
||||
waittillKillcamOver()
|
||||
{
|
||||
self endon("abort_killcam");
|
||||
|
||||
wait(self.killcamlength - 0.05);
|
||||
}
|
||||
|
||||
setKillCamEntity( killcamentityindex, killcamoffset, starttime )
|
||||
{
|
||||
self endon("disconnect");
|
||||
self endon("killcam_ended");
|
||||
|
||||
killcamtime = (gettime() - killcamoffset * 1000);
|
||||
|
||||
if ( starttime > killcamtime )
|
||||
{
|
||||
wait .05;
|
||||
// code may have trimmed archivetime after the first frame if we couldn't go back in time as far as requested.
|
||||
killcamoffset = self.archivetime;
|
||||
killcamtime = (gettime() - killcamoffset * 1000);
|
||||
|
||||
if ( starttime > killcamtime )
|
||||
wait (starttime - killcamtime) / 1000;
|
||||
}
|
||||
self.killcamentity = killcamentityindex;
|
||||
}
|
||||
|
||||
waitSkipKillcamButton( timeUntilRespawn )
|
||||
{
|
||||
self endon("disconnect");
|
||||
self endon("killcam_ended");
|
||||
|
||||
while(self useButtonPressed())
|
||||
wait .05;
|
||||
|
||||
while(!(self useButtonPressed()))
|
||||
wait .05;
|
||||
|
||||
if ( !matchMakingGame() )
|
||||
self incPlayerStat( "killcamskipped", 1 );
|
||||
|
||||
if ( timeUntilRespawn <= 0 )
|
||||
clearLowerMessage( "kc_info" );
|
||||
|
||||
self notify("abort_killcam");
|
||||
}
|
||||
|
||||
waitKCCopyCatButton( attacker )
|
||||
{
|
||||
self endon("disconnect");
|
||||
self endon("killcam_ended");
|
||||
|
||||
self waitCopyCatButton( attacker );
|
||||
|
||||
self notify("abort_killcam");
|
||||
}
|
||||
|
||||
waitDeathCopyCatButton( attacker )
|
||||
{
|
||||
self endon ( "disconnect" );
|
||||
|
||||
self initKCElements();
|
||||
|
||||
usedCopycat = self waitCopyCatButton( attacker );
|
||||
|
||||
if ( !isDefined( usedCopycat ) )
|
||||
{
|
||||
self.kc_icon.alpha = 0;
|
||||
self.kc_othertext.alpha = 0;
|
||||
}
|
||||
}
|
||||
|
||||
waitCopyCatButton( attacker )
|
||||
{
|
||||
self endon ( "spawned_player" );
|
||||
self endon ( "death_delay_finished" );
|
||||
self.kc_icon setShader( "specialty_copycat", 48, 48 );
|
||||
self.kc_othertext setText( &"PLATFORM_PRESS_TO_COPYCAT" );
|
||||
self.kc_othertext.alpha = 1;
|
||||
self.kc_icon.alpha = 1;
|
||||
|
||||
self notifyOnPlayerCommand( "use_copycat", "weapnext" );
|
||||
|
||||
self waittill( "use_copycat" );
|
||||
|
||||
self.pers["copyCatLoadout"]["inUse"] = true;
|
||||
self.pers["copyCatLoadout"]["owner"] = attacker;
|
||||
|
||||
self.kc_othertext fadeOverTime( 0.5 );
|
||||
self.kc_othertext.alpha = 0;
|
||||
|
||||
self.kc_icon fadeOverTime( 0.25 );
|
||||
self.kc_icon scaleOverTime( 0.25, 512, 512 );
|
||||
self.kc_icon.alpha = 0;
|
||||
|
||||
if ( isDefined( attacker ) )
|
||||
attacker thread maps\mp\gametypes\_hud_message::playerCardSplashNotify( "copied", self );
|
||||
|
||||
self playLocalSound( "copycat_steal_class" );
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
waitSkipKillcamSafeSpawnButton()
|
||||
{
|
||||
self endon("disconnect");
|
||||
self endon("killcam_ended");
|
||||
|
||||
if ( !self maps\mp\gametypes\_playerlogic::maySpawn() )
|
||||
return;
|
||||
|
||||
while(self fragButtonPressed())
|
||||
wait .05;
|
||||
|
||||
while(!(self fragButtonPressed()))
|
||||
wait .05;
|
||||
|
||||
self.wantSafeSpawn = true;
|
||||
|
||||
self notify("abort_killcam");
|
||||
}
|
||||
|
||||
endKillcamIfNothingToShow()
|
||||
{
|
||||
self endon("disconnect");
|
||||
self endon("killcam_ended");
|
||||
|
||||
while(1)
|
||||
{
|
||||
// code may trim our archivetime to zero if there is nothing "recorded" to show.
|
||||
// this can happen when the person we're watching in our killcam goes into killcam himself.
|
||||
// in this case, end the killcam.
|
||||
if ( self.archivetime <= 0 )
|
||||
break;
|
||||
wait .05;
|
||||
}
|
||||
|
||||
self notify("abort_killcam");
|
||||
}
|
||||
|
||||
spawnedKillcamCleanup()
|
||||
{
|
||||
self endon("disconnect");
|
||||
self endon("killcam_ended");
|
||||
|
||||
self waittill("spawned");
|
||||
self thread killcamCleanup( false );
|
||||
}
|
||||
|
||||
endedKillcamCleanup()
|
||||
{
|
||||
self endon("disconnect");
|
||||
self endon("killcam_ended");
|
||||
|
||||
level waittill("game_ended");
|
||||
|
||||
self thread killcamCleanup( true );
|
||||
}
|
||||
|
||||
killcamCleanup( clearState )
|
||||
{
|
||||
if(isDefined(self.kc_skiptext))
|
||||
self.kc_skiptext.alpha = 0;
|
||||
|
||||
if(isDefined(self.kc_timer))
|
||||
self.kc_timer.alpha = 0;
|
||||
|
||||
if(isDefined(self.kc_icon))
|
||||
self.kc_icon.alpha = 0;
|
||||
|
||||
if(isDefined(self.kc_othertext))
|
||||
self.kc_othertext.alpha = 0;
|
||||
|
||||
self.killcam = undefined;
|
||||
|
||||
if ( !level.gameEnded )
|
||||
self clearLowerMessage( "kc_info" );
|
||||
|
||||
self thread maps\mp\gametypes\_spectating::setSpectatePermissions();
|
||||
|
||||
self notify("killcam_ended"); // do this last, in case this function was called from a thread ending on it
|
||||
|
||||
if ( !clearState )
|
||||
return;
|
||||
|
||||
self.sessionstate = "dead";
|
||||
self ClearKillcamState();
|
||||
}
|
||||
|
||||
|
||||
|
||||
cancelKillCamOnUse()
|
||||
{
|
||||
self.cancelKillcam = false;
|
||||
self thread cancelKillCamOnUse_specificButton( ::cancelKillCamUseButton, ::cancelKillCamCallback );
|
||||
//self thread cancelKillCamOnUse_specificButton( ::cancelKillCamSafeSpawnButton, ::cancelKillCamSafeSpawnCallback );
|
||||
}
|
||||
|
||||
cancelKillCamUseButton()
|
||||
{
|
||||
return self useButtonPressed();
|
||||
}
|
||||
cancelKillCamSafeSpawnButton()
|
||||
{
|
||||
return self fragButtonPressed();
|
||||
}
|
||||
cancelKillCamCallback()
|
||||
{
|
||||
self.cancelKillcam = true;
|
||||
}
|
||||
cancelKillCamSafeSpawnCallback()
|
||||
{
|
||||
self.cancelKillcam = true;
|
||||
self.wantSafeSpawn = true;
|
||||
}
|
||||
|
||||
cancelKillCamOnUse_specificButton( pressingButtonFunc, finishedFunc )
|
||||
{
|
||||
self endon ( "death_delay_finished" );
|
||||
self endon ( "disconnect" );
|
||||
level endon ( "game_ended" );
|
||||
|
||||
for ( ;; )
|
||||
{
|
||||
if ( !self [[pressingButtonFunc]]() )
|
||||
{
|
||||
wait ( 0.05 );
|
||||
continue;
|
||||
}
|
||||
|
||||
buttonTime = 0;
|
||||
while( self [[pressingButtonFunc]]() )
|
||||
{
|
||||
buttonTime += 0.05;
|
||||
wait ( 0.05 );
|
||||
}
|
||||
|
||||
if ( buttonTime >= 0.5 )
|
||||
continue;
|
||||
|
||||
buttonTime = 0;
|
||||
|
||||
while ( !self [[pressingButtonFunc]]() && buttonTime < 0.5 )
|
||||
{
|
||||
buttonTime += 0.05;
|
||||
wait ( 0.05 );
|
||||
}
|
||||
|
||||
if ( buttonTime >= 0.5 )
|
||||
continue;
|
||||
|
||||
self [[finishedFunc]]();
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
initKCElements()
|
||||
{
|
||||
if ( !isDefined( self.kc_skiptext ) )
|
||||
{
|
||||
self.kc_skiptext = newClientHudElem(self);
|
||||
self.kc_skiptext.archived = false;
|
||||
self.kc_skiptext.x = 0;
|
||||
self.kc_skiptext.alignX = "center";
|
||||
self.kc_skiptext.alignY = "top";
|
||||
self.kc_skiptext.horzAlign = "center_adjustable";
|
||||
self.kc_skiptext.vertAlign = "top_adjustable";
|
||||
self.kc_skiptext.sort = 1; // force to draw after the bars
|
||||
self.kc_skiptext.font = "default";
|
||||
self.kc_skiptext.foreground = true;
|
||||
self.kc_skiptext.hideWhenInMenu = true;
|
||||
|
||||
if ( level.splitscreen )
|
||||
{
|
||||
self.kc_skiptext.y = 20;
|
||||
self.kc_skiptext.fontscale = 1.2; // 1.8/1.5
|
||||
}
|
||||
else
|
||||
{
|
||||
self.kc_skiptext.y = 32;
|
||||
self.kc_skiptext.fontscale = 1.8;
|
||||
}
|
||||
}
|
||||
|
||||
if ( !isDefined( self.kc_othertext ) )
|
||||
{
|
||||
self.kc_othertext = newClientHudElem(self);
|
||||
self.kc_othertext.archived = false;
|
||||
self.kc_othertext.y = 18;
|
||||
self.kc_othertext.alignX = "left";
|
||||
self.kc_othertext.alignY = "top";
|
||||
self.kc_othertext.horzAlign = "center";
|
||||
self.kc_othertext.vertAlign = "middle";
|
||||
self.kc_othertext.sort = 10; // force to draw after the bars
|
||||
self.kc_othertext.font = "small";
|
||||
self.kc_othertext.foreground = true;
|
||||
self.kc_othertext.hideWhenInMenu = true;
|
||||
|
||||
if ( level.splitscreen )
|
||||
{
|
||||
self.kc_othertext.x = 16;
|
||||
self.kc_othertext.fontscale = 1.2;
|
||||
}
|
||||
else
|
||||
{
|
||||
self.kc_othertext.x = 62;
|
||||
self.kc_othertext.fontscale = 1.6;
|
||||
}
|
||||
}
|
||||
|
||||
if ( !isDefined( self.kc_icon ) )
|
||||
{
|
||||
self.kc_icon = newClientHudElem(self);
|
||||
self.kc_icon.archived = false;
|
||||
self.kc_icon.x = 16;
|
||||
self.kc_icon.y = 16;
|
||||
self.kc_icon.alignX = "left";
|
||||
self.kc_icon.alignY = "top";
|
||||
self.kc_icon.horzAlign = "center";
|
||||
self.kc_icon.vertAlign = "middle";
|
||||
self.kc_icon.sort = 1; // force to draw after the bars
|
||||
self.kc_icon.foreground = true;
|
||||
self.kc_icon.hideWhenInMenu = true;
|
||||
}
|
||||
|
||||
if ( !level.splitscreen )
|
||||
{
|
||||
if ( !isdefined( self.kc_timer ) )
|
||||
{
|
||||
self.kc_timer = createFontString( "hudbig", 1.0 );
|
||||
self.kc_timer.archived = false;
|
||||
self.kc_timer.x = 0;
|
||||
self.kc_timer.alignX = "center";
|
||||
self.kc_timer.alignY = "middle";
|
||||
self.kc_timer.horzAlign = "center_safearea";
|
||||
self.kc_timer.vertAlign = "top_adjustable";
|
||||
self.kc_timer.y = 42;
|
||||
self.kc_timer.sort = 1; // force to draw after the bars
|
||||
self.kc_timer.font = "hudbig";
|
||||
self.kc_timer.foreground = true;
|
||||
self.kc_timer.color = (0.85,0.85,0.85);
|
||||
self.kc_timer.hideWhenInMenu = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -0,0 +1,584 @@
|
||||
#include maps\mp\_utility;
|
||||
|
||||
init()
|
||||
{
|
||||
//Intricate - Create DVAR for forcing auto assign, useful for server that would like it.
|
||||
SetDvarIfUninitialized("scr_player_forceautoassign", true);
|
||||
if ( !isDefined( game["gamestarted"] ) )
|
||||
{
|
||||
game["menu_team"] = "team_marinesopfor";
|
||||
game["menu_class_allies"] = "class_marines";
|
||||
game["menu_changeclass_allies"] = "changeclass_marines";
|
||||
game["menu_initteam_allies"] = "initteam_marines";
|
||||
game["menu_class_axis"] = "class_opfor";
|
||||
game["menu_changeclass_axis"] = "changeclass_opfor";
|
||||
game["menu_initteam_axis"] = "initteam_opfor";
|
||||
game["menu_class"] = "class";
|
||||
game["menu_changeclass"] = "changeclass";
|
||||
game["menu_onemanarmy"] = "onemanarmy";
|
||||
game["menu_controls"] = "ingame_controls";
|
||||
|
||||
if ( !level.console )
|
||||
{
|
||||
game["menu_muteplayer"] = "muteplayer";
|
||||
precacheMenu(game["menu_muteplayer"]);
|
||||
}
|
||||
else
|
||||
{
|
||||
//game["menu_options"] = "ingame_options";
|
||||
game["menu_leavegame"] = "popup_leavegame";
|
||||
|
||||
if(level.splitscreen)
|
||||
{
|
||||
game["menu_team"] += "_splitscreen";
|
||||
game["menu_class_allies"] += "_splitscreen";
|
||||
game["menu_changeclass_allies"] += "_splitscreen";
|
||||
game["menu_class_axis"] += "_splitscreen";
|
||||
game["menu_changeclass_axis"] += "_splitscreen";
|
||||
game["menu_class"] += "_splitscreen";
|
||||
game["menu_controls"] += "_splitscreen";
|
||||
//game["menu_options"] += "_splitscreen";
|
||||
game["menu_leavegame"] += "_splitscreen";
|
||||
game["menu_onemanarmy"] += "_splitscreen";
|
||||
|
||||
game["menu_changeclass_defaults_splitscreen"] = "changeclass_defaults_splitscreen";
|
||||
game["menu_changeclass_custom_splitscreen"] = "changeclass_custom_splitscreen";
|
||||
game["menu_onemanarmy_defaults_splitscreen"] = "onemanarmy_defaults_splitscreen";
|
||||
game["menu_onemanarmy_custom_splitscreen"] = "onemanarmy_custom_splitscreen";
|
||||
|
||||
precacheMenu(game["menu_changeclass_defaults_splitscreen"]);
|
||||
precacheMenu(game["menu_changeclass_custom_splitscreen"]);
|
||||
precacheMenu(game["menu_onemanarmy_defaults_splitscreen"]);
|
||||
precacheMenu(game["menu_onemanarmy_custom_splitscreen"]);
|
||||
}
|
||||
|
||||
precacheMenu(game["menu_controls"]);
|
||||
//precacheMenu(game["menu_options"]);
|
||||
precacheMenu(game["menu_leavegame"]);
|
||||
|
||||
//precacheMenu("status_update");
|
||||
}
|
||||
|
||||
precacheMenu("scoreboard");
|
||||
precacheMenu(game["menu_team"]);
|
||||
precacheMenu(game["menu_class_allies"]);
|
||||
precacheMenu(game["menu_changeclass_allies"]);
|
||||
precacheMenu(game["menu_initteam_allies"]);
|
||||
precacheMenu(game["menu_class_axis"]);
|
||||
precacheMenu(game["menu_changeclass_axis"]);
|
||||
precacheMenu(game["menu_class"]);
|
||||
precacheMenu(game["menu_changeclass"]);
|
||||
precacheMenu(game["menu_initteam_axis"]);
|
||||
precacheMenu(game["menu_onemanarmy"]);
|
||||
|
||||
precacheString( &"MP_HOST_ENDED_GAME" );
|
||||
precacheString( &"MP_HOST_ENDGAME_RESPONSE" );
|
||||
}
|
||||
|
||||
level thread onPlayerConnect();
|
||||
}
|
||||
|
||||
onPlayerConnect()
|
||||
{
|
||||
for(;;)
|
||||
{
|
||||
level waittill("connected", player);
|
||||
|
||||
player thread onMenuResponse();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
isOptionsMenu( menu )
|
||||
{
|
||||
if ( menu == game["menu_changeclass"] )
|
||||
return true;
|
||||
|
||||
if ( menu == game["menu_team"] )
|
||||
return true;
|
||||
|
||||
if ( menu == game["menu_controls"] )
|
||||
return true;
|
||||
|
||||
if ( isSubStr( menu, "pc_options" ) )
|
||||
return true;
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
onMenuResponse()
|
||||
{
|
||||
self endon("disconnect");
|
||||
|
||||
for(;;)
|
||||
{
|
||||
self waittill("menuresponse", menu, response);
|
||||
|
||||
if ( response == "back" )
|
||||
{
|
||||
self closepopupMenu();
|
||||
self closeInGameMenu();
|
||||
|
||||
if ( isOptionsMenu( menu ) )
|
||||
{
|
||||
if( self.pers["team"] == "allies" )
|
||||
self openpopupMenu( game["menu_class_allies"] );
|
||||
if( self.pers["team"] == "axis" )
|
||||
self openpopupMenu( game["menu_class_axis"] );
|
||||
}
|
||||
continue;
|
||||
}
|
||||
|
||||
if(response == "changeteam")
|
||||
{
|
||||
self closepopupMenu();
|
||||
self closeInGameMenu();
|
||||
self openpopupMenu(game["menu_team"]);
|
||||
}
|
||||
|
||||
if(response == "changeclass_marines" )
|
||||
{
|
||||
self closepopupMenu();
|
||||
self closeInGameMenu();
|
||||
if ( getDvar( "g_gametype" ) != "oitc" && getDvar( "g_gametype" ) != "gg" && getDvar( "g_gametype" ) != "ss" && !isDefined(level.customClassCB) )
|
||||
{
|
||||
self openpopupMenu( game["menu_changeclass_allies"] );
|
||||
}
|
||||
continue;
|
||||
}
|
||||
|
||||
if(response == "changeclass_opfor" )
|
||||
{
|
||||
self closepopupMenu();
|
||||
self closeInGameMenu();
|
||||
if ( getDvar( "g_gametype" ) != "oitc" && getDvar( "g_gametype" ) != "gg" && getDvar( "g_gametype" ) != "ss" && !isDefined(level.customClassCB) )
|
||||
{
|
||||
self openpopupMenu( game["menu_changeclass_axis"] );
|
||||
}
|
||||
continue;
|
||||
}
|
||||
|
||||
if(response == "changeclass_marines_splitscreen" )
|
||||
self openpopupMenu( "changeclass_marines_splitscreen" );
|
||||
|
||||
if(response == "changeclass_opfor_splitscreen" )
|
||||
self openpopupMenu( "changeclass_opfor_splitscreen" );
|
||||
|
||||
if(response == "endgame")
|
||||
{
|
||||
if(level.splitscreen)
|
||||
{
|
||||
endparty();
|
||||
|
||||
if ( !level.gameEnded )
|
||||
{
|
||||
level thread maps\mp\gametypes\_gamelogic::forceEnd();
|
||||
}
|
||||
}
|
||||
|
||||
continue;
|
||||
}
|
||||
|
||||
if ( response == "endround" )
|
||||
{
|
||||
if ( !self isHost() )
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
if ( !level.gameEnded )
|
||||
{
|
||||
setDvar("sv_dontrotate", 1);
|
||||
level thread maps\mp\gametypes\_gamelogic::forceEnd();
|
||||
}
|
||||
else
|
||||
{
|
||||
self closepopupMenu();
|
||||
self closeInGameMenu();
|
||||
self iprintln( &"MP_HOST_ENDGAME_RESPONSE" );
|
||||
}
|
||||
continue;
|
||||
}
|
||||
|
||||
if(menu == game["menu_team"])
|
||||
{
|
||||
switch(response)
|
||||
{
|
||||
case "allies":
|
||||
self [[level.allies]]();
|
||||
break;
|
||||
|
||||
case "axis":
|
||||
self [[level.axis]]();
|
||||
break;
|
||||
|
||||
case "autoassign":
|
||||
self [[level.autoassign]]();
|
||||
break;
|
||||
|
||||
case "spectator":
|
||||
self [[level.spectator]]();
|
||||
break;
|
||||
}
|
||||
} // the only responses remain are change class events
|
||||
else if ( menu == game["menu_changeclass"] ||
|
||||
( isDefined( game["menu_changeclass_defaults_splitscreen"] ) && menu == game["menu_changeclass_defaults_splitscreen"] ) ||
|
||||
( isDefined( game["menu_changeclass_custom_splitscreen"] ) && menu == game["menu_changeclass_custom_splitscreen"] ) )
|
||||
{
|
||||
self closepopupMenu();
|
||||
self closeInGameMenu();
|
||||
|
||||
self.selectedClass = true;
|
||||
self [[level.class]](response);
|
||||
}
|
||||
else if ( !level.console )
|
||||
{
|
||||
if(menu == game["menu_quickcommands"])
|
||||
maps\mp\gametypes\_quickmessages::quickcommands(response);
|
||||
else if(menu == game["menu_quickstatements"])
|
||||
maps\mp\gametypes\_quickmessages::quickstatements(response);
|
||||
else if(menu == game["menu_quickresponses"])
|
||||
maps\mp\gametypes\_quickmessages::quickresponses(response);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
getTeamAssignment()
|
||||
{
|
||||
teams[0] = "allies";
|
||||
teams[1] = "axis";
|
||||
|
||||
if ( !level.teamBased )
|
||||
return teams[randomInt(2)];
|
||||
|
||||
if ( self.sessionteam != "none" && self.sessionteam != "spectator" && self.sessionstate != "playing" && self.sessionstate != "dead" )
|
||||
{
|
||||
assignment = self.sessionteam;
|
||||
}
|
||||
else
|
||||
{
|
||||
playerCounts = self maps\mp\gametypes\_teams::CountPlayers();
|
||||
|
||||
// if teams are equal return the team with the lowest score
|
||||
if ( playerCounts["allies"] == playerCounts["axis"] )
|
||||
{
|
||||
if( getTeamScore( "allies" ) == getTeamScore( "axis" ) )
|
||||
assignment = teams[randomInt(2)];
|
||||
else if ( getTeamScore( "allies" ) < getTeamScore( "axis" ) )
|
||||
assignment = "allies";
|
||||
else
|
||||
assignment = "axis";
|
||||
}
|
||||
else if( playerCounts["allies"] < playerCounts["axis"] )
|
||||
{
|
||||
assignment = "allies";
|
||||
}
|
||||
else
|
||||
{
|
||||
assignment = "axis";
|
||||
}
|
||||
}
|
||||
|
||||
return assignment;
|
||||
}
|
||||
|
||||
|
||||
menuAutoAssign()
|
||||
{
|
||||
self closeMenus();
|
||||
|
||||
assignment = getTeamAssignment();
|
||||
|
||||
if ( isDefined( self.pers["team"] ) && (self.sessionstate == "playing" || self.sessionstate == "dead") )
|
||||
{
|
||||
if ( assignment == self.pers["team"] )
|
||||
{
|
||||
self beginClassChoice();
|
||||
return;
|
||||
}
|
||||
else
|
||||
{
|
||||
self.switching_teams = true;
|
||||
self.joining_team = assignment;
|
||||
self.leaving_team = self.pers["team"];
|
||||
self suicide();
|
||||
}
|
||||
}
|
||||
|
||||
self addToTeam( assignment );
|
||||
self.pers["class"] = undefined;
|
||||
self.class = undefined;
|
||||
|
||||
if ( !isAlive( self ) )
|
||||
self.statusicon = "hud_status_dead";
|
||||
|
||||
self notify("end_respawn");
|
||||
|
||||
self beginClassChoice();
|
||||
}
|
||||
|
||||
|
||||
beginClassChoice( forceNewChoice )
|
||||
{
|
||||
assert( self.pers["team"] == "axis" || self.pers["team"] == "allies" );
|
||||
|
||||
if ( getDvar( "g_gametype" ) == "oitc" || getDvar( "g_gametype" ) == "gg" || getDvar( "g_gametype" ) == "ss" || isDefined(level.customClassCB) )
|
||||
{
|
||||
if ( !isAlive( self ) )
|
||||
self thread maps\mp\gametypes\_playerlogic::predictAboutToSpawnPlayerOverTime( 0.1 );
|
||||
|
||||
self.selectedClass = true;
|
||||
self menuClass( "assault_mp,0" );
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
team = self.pers["team"];
|
||||
|
||||
// menu_changeclass_team is the one where you choose one of the n classes to play as.
|
||||
// menu_class_team is where you can choose to change your team, class, controls, or leave game.
|
||||
self openpopupMenu( game[ "menu_changeclass_" + team ] );
|
||||
|
||||
if ( !isAlive( self ) )
|
||||
self thread maps\mp\gametypes\_playerlogic::predictAboutToSpawnPlayerOverTime( 0.1 );
|
||||
}
|
||||
|
||||
|
||||
beginTeamChoice()
|
||||
{
|
||||
//Intricate - We put the auto assign where the actual team selection is. Also make sure that a mod isn't loaded, mainly to prevent bugs with them.
|
||||
if( GetDvar("scr_player_forceautoassign") && GetDvar("fs_game") == "" )
|
||||
self notify("menuresponse", game["menu_team"], "autoassign");
|
||||
else
|
||||
self openpopupMenu( game["menu_team"] );
|
||||
|
||||
}
|
||||
|
||||
|
||||
showMainMenuForTeam()
|
||||
{
|
||||
assert( self.pers["team"] == "axis" || self.pers["team"] == "allies" );
|
||||
|
||||
team = self.pers["team"];
|
||||
|
||||
// menu_changeclass_team is the one where you choose one of the n classes to play as.
|
||||
// menu_class_team is where you can choose to change your team, class, controls, or leave game.
|
||||
self openpopupMenu( game[ "menu_class_" + team ] );
|
||||
}
|
||||
|
||||
menuAllies()
|
||||
{
|
||||
self closeMenus();
|
||||
|
||||
if(self.pers["team"] != "allies")
|
||||
{
|
||||
if( level.teamBased && !maps\mp\gametypes\_teams::getJoinTeamPermissions( "allies" ) )
|
||||
{
|
||||
self openpopupMenu(game["menu_team"]);
|
||||
return;
|
||||
}
|
||||
|
||||
// allow respawn when switching teams during grace period.
|
||||
if ( level.inGracePeriod && !self.hasDoneCombat )
|
||||
self.hasSpawned = false;
|
||||
|
||||
if(self.sessionstate == "playing")
|
||||
{
|
||||
self.switching_teams = true;
|
||||
self.joining_team = "allies";
|
||||
self.leaving_team = self.pers["team"];
|
||||
self suicide();
|
||||
}
|
||||
|
||||
self addToTeam( "allies" );
|
||||
self.pers["class"] = undefined;
|
||||
self.class = undefined;
|
||||
|
||||
self notify("end_respawn");
|
||||
}
|
||||
|
||||
self beginClassChoice();
|
||||
}
|
||||
|
||||
|
||||
menuAxis()
|
||||
{
|
||||
self closeMenus();
|
||||
|
||||
if(self.pers["team"] != "axis")
|
||||
{
|
||||
if( level.teamBased && !maps\mp\gametypes\_teams::getJoinTeamPermissions( "axis" ) )
|
||||
{
|
||||
self openpopupMenu(game["menu_team"]);
|
||||
return;
|
||||
}
|
||||
|
||||
// allow respawn when switching teams during grace period.
|
||||
if ( level.inGracePeriod && !self.hasDoneCombat )
|
||||
self.hasSpawned = false;
|
||||
|
||||
if(self.sessionstate == "playing")
|
||||
{
|
||||
self.switching_teams = true;
|
||||
self.joining_team = "axis";
|
||||
self.leaving_team = self.pers["team"];
|
||||
self suicide();
|
||||
}
|
||||
|
||||
self addToTeam( "axis" );
|
||||
self.pers["class"] = undefined;
|
||||
self.class = undefined;
|
||||
|
||||
self notify("end_respawn");
|
||||
}
|
||||
|
||||
self beginClassChoice();
|
||||
}
|
||||
|
||||
|
||||
menuSpectator()
|
||||
{
|
||||
self closeMenus();
|
||||
|
||||
if( isDefined( self.pers["team"] ) && self.pers["team"] == "spectator" )
|
||||
return;
|
||||
|
||||
if( isAlive( self ) )
|
||||
{
|
||||
assert( isDefined( self.pers["team"] ) );
|
||||
self.switching_teams = true;
|
||||
self.joining_team = "spectator";
|
||||
self.leaving_team = self.pers["team"];
|
||||
self suicide();
|
||||
}
|
||||
|
||||
self addToTeam( "spectator" );
|
||||
self.pers["class"] = undefined;
|
||||
self.class = undefined;
|
||||
|
||||
self thread maps\mp\gametypes\_playerlogic::spawnSpectator();
|
||||
}
|
||||
|
||||
menuClass( response )
|
||||
{
|
||||
self closeMenus();
|
||||
|
||||
// clear new status of unlocked classes
|
||||
if ( response == "demolitions_mp,0" && self getPlayerData( "featureNew", "demolitions" ) )
|
||||
{
|
||||
self setPlayerData( "featureNew", "demolitions", false );
|
||||
}
|
||||
if ( response == "sniper_mp,0" && self getPlayerData( "featureNew", "sniper" ) )
|
||||
{
|
||||
self setPlayerData( "featureNew", "sniper", false );
|
||||
}
|
||||
|
||||
// this should probably be an assert
|
||||
if(!isDefined(self.pers["team"]) || (self.pers["team"] != "allies" && self.pers["team"] != "axis"))
|
||||
return;
|
||||
|
||||
class = self maps\mp\gametypes\_class::getClassChoice( response );
|
||||
primary = self maps\mp\gametypes\_class::getWeaponChoice( response );
|
||||
|
||||
if ( class == "restricted" )
|
||||
{
|
||||
self beginClassChoice();
|
||||
return;
|
||||
}
|
||||
|
||||
if( (isDefined( self.pers["class"] ) && self.pers["class"] == class) &&
|
||||
(isDefined( self.pers["primary"] ) && self.pers["primary"] == primary) )
|
||||
return;
|
||||
|
||||
if ( self.sessionstate == "playing" )
|
||||
{
|
||||
self.pers["class"] = class;
|
||||
self.class = class;
|
||||
self.pers["primary"] = primary;
|
||||
|
||||
if ( game["state"] == "postgame" )
|
||||
return;
|
||||
|
||||
if ( level.inGracePeriod && !self.hasDoneCombat ) // used weapons check?
|
||||
{
|
||||
self maps\mp\gametypes\_class::setClass( self.pers["class"] );
|
||||
self.tag_stowed_back = undefined;
|
||||
self.tag_stowed_hip = undefined;
|
||||
self maps\mp\gametypes\_class::giveLoadout( self.pers["team"], self.pers["class"] );
|
||||
}
|
||||
else
|
||||
{
|
||||
self iPrintLnBold( game["strings"]["change_class"] );
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
self.pers["class"] = class;
|
||||
self.class = class;
|
||||
self.pers["primary"] = primary;
|
||||
|
||||
if ( game["state"] == "postgame" )
|
||||
return;
|
||||
|
||||
if ( game["state"] == "playing" && !isInKillcam() )
|
||||
self thread maps\mp\gametypes\_playerlogic::spawnClient();
|
||||
}
|
||||
|
||||
self thread maps\mp\gametypes\_spectating::setSpectatePermissions();
|
||||
}
|
||||
|
||||
|
||||
|
||||
addToTeam( team, firstConnect )
|
||||
{
|
||||
// UTS update playerCount remove from team
|
||||
if ( isDefined( self.team ) )
|
||||
self maps\mp\gametypes\_playerlogic::removeFromTeamCount();
|
||||
|
||||
self.pers["team"] = team;
|
||||
// this is the only place self.team should ever be set
|
||||
self.team = team;
|
||||
|
||||
// session team is readonly in ranked matches on console
|
||||
if ( !matchMakingGame() || isDefined( self.pers["isBot"] ) )
|
||||
{
|
||||
if ( level.teamBased )
|
||||
{
|
||||
self.sessionteam = team;
|
||||
}
|
||||
else
|
||||
{
|
||||
if ( team == "spectator" )
|
||||
self.sessionteam = "spectator";
|
||||
else
|
||||
self.sessionteam = "none";
|
||||
}
|
||||
}
|
||||
|
||||
// UTS update playerCount add to team
|
||||
if ( game["state"] != "postgame" )
|
||||
self maps\mp\gametypes\_playerlogic::addToTeamCount();
|
||||
|
||||
self updateObjectiveText();
|
||||
|
||||
// give "joined_team" and "joined_spectators" handlers a chance to start
|
||||
// these are generally triggered from the "connected" notify, which can happen on the same
|
||||
// frame as these notifies
|
||||
if ( isDefined( firstConnect ) && firstConnect )
|
||||
waittillframeend;
|
||||
|
||||
self updateMainMenu();
|
||||
|
||||
if ( team == "spectator" )
|
||||
{
|
||||
self notify( "joined_spectators" );
|
||||
level notify( "joined_team" );
|
||||
}
|
||||
else
|
||||
{
|
||||
self notify( "joined_team" );
|
||||
level notify( "joined_team" );
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,505 @@
|
||||
#include common_scripts\utility;
|
||||
#include maps\mp\_utility;
|
||||
#include maps\mp\gametypes\_hud_util;
|
||||
|
||||
init()
|
||||
{
|
||||
|
||||
game["music"]["spawn_allies"] = maps\mp\gametypes\_teams::getTeamVoicePrefix( "allies" ) + "spawn_music";
|
||||
game["music"]["defeat_allies"] = maps\mp\gametypes\_teams::getTeamVoicePrefix( "allies" ) + "defeat_music";
|
||||
game["music"]["victory_allies"] = maps\mp\gametypes\_teams::getTeamVoicePrefix( "allies" ) + "victory_music";
|
||||
game["music"]["winning_allies"] = maps\mp\gametypes\_teams::getTeamVoicePrefix( "allies" ) + "winning_music";
|
||||
game["music"]["losing_allies"] = maps\mp\gametypes\_teams::getTeamVoicePrefix( "allies" ) + "losing_music";
|
||||
game["voice"]["allies"] = maps\mp\gametypes\_teams::getTeamVoicePrefix( "allies" ) + "1mc_";
|
||||
|
||||
game["music"]["spawn_axis"] = maps\mp\gametypes\_teams::getTeamVoicePrefix( "axis" ) + "spawn_music";
|
||||
game["music"]["defeat_axis"] = maps\mp\gametypes\_teams::getTeamVoicePrefix( "axis" ) + "defeat_music";
|
||||
game["music"]["victory_axis"] = maps\mp\gametypes\_teams::getTeamVoicePrefix( "axis" ) + "victory_music";
|
||||
game["music"]["winning_axis"] = maps\mp\gametypes\_teams::getTeamVoicePrefix( "axis" ) + "winning_music";
|
||||
game["music"]["losing_axis"] = maps\mp\gametypes\_teams::getTeamVoicePrefix( "axis" ) + "losing_music";
|
||||
game["voice"]["axis"] = maps\mp\gametypes\_teams::getTeamVoicePrefix( "axis" ) + "1mc_";
|
||||
|
||||
game["music"]["defeat"] = "mp_defeat";
|
||||
game["music"]["victory_spectator"] = "mp_defeat";
|
||||
game["music"]["winning_time"] = "mp_time_running_out_winning";
|
||||
game["music"]["losing_time"] = "mp_time_running_out_losing";
|
||||
game["music"]["winning_score"] = "mp_time_running_out_winning";
|
||||
game["music"]["losing_score"] = "mp_time_running_out_losing";
|
||||
game["music"]["victory_tie"] = "mp_defeat";
|
||||
|
||||
game["music"]["suspense"] = [];
|
||||
game["music"]["suspense"][game["music"]["suspense"].size] = "mp_suspense_01";
|
||||
game["music"]["suspense"][game["music"]["suspense"].size] = "mp_suspense_02";
|
||||
game["music"]["suspense"][game["music"]["suspense"].size] = "mp_suspense_03";
|
||||
game["music"]["suspense"][game["music"]["suspense"].size] = "mp_suspense_04";
|
||||
game["music"]["suspense"][game["music"]["suspense"].size] = "mp_suspense_05";
|
||||
game["music"]["suspense"][game["music"]["suspense"].size] = "mp_suspense_06";
|
||||
|
||||
game["dialog"]["mission_success"] = "mission_success";
|
||||
game["dialog"]["mission_failure"] = "mission_fail";
|
||||
game["dialog"]["mission_draw"] = "draw";
|
||||
|
||||
game["dialog"]["round_success"] = "encourage_win";
|
||||
game["dialog"]["round_failure"] = "encourage_lost";
|
||||
game["dialog"]["round_draw"] = "draw";
|
||||
|
||||
// status
|
||||
game["dialog"]["timesup"] = "timesup";
|
||||
game["dialog"]["winning_time"] = "winning";
|
||||
game["dialog"]["losing_time"] = "losing";
|
||||
game["dialog"]["winning_score"] = "winning_fight";
|
||||
game["dialog"]["losing_score"] = "losing_fight";
|
||||
game["dialog"]["lead_lost"] = "lead_lost";
|
||||
game["dialog"]["lead_tied"] = "tied";
|
||||
game["dialog"]["lead_taken"] = "lead_taken";
|
||||
game["dialog"]["last_alive"] = "lastalive";
|
||||
|
||||
game["dialog"]["boost"] = "boost";
|
||||
|
||||
if ( !isDefined( game["dialog"]["offense_obj"] ) )
|
||||
game["dialog"]["offense_obj"] = "boost";
|
||||
if ( !isDefined( game["dialog"]["defense_obj"] ) )
|
||||
game["dialog"]["defense_obj"] = "boost";
|
||||
|
||||
game["dialog"]["hardcore"] = "hardcore";
|
||||
game["dialog"]["highspeed"] = "highspeed";
|
||||
game["dialog"]["tactical"] = "tactical";
|
||||
|
||||
game["dialog"]["challenge"] = "challengecomplete";
|
||||
game["dialog"]["promotion"] = "promotion";
|
||||
|
||||
game["dialog"]["bomb_taken"] = "acheive_bomb";
|
||||
game["dialog"]["bomb_lost"] = "bomb_taken";
|
||||
game["dialog"]["bomb_defused"] = "bomb_defused";
|
||||
game["dialog"]["bomb_planted"] = "bomb_planted";
|
||||
|
||||
game["dialog"]["obj_taken"] = "securedobj";
|
||||
game["dialog"]["obj_lost"] = "lostobj";
|
||||
|
||||
game["dialog"]["obj_defend"] = "obj_defend";
|
||||
game["dialog"]["obj_destroy"] = "obj_destroy";
|
||||
game["dialog"]["obj_capture"] = "capture_obj";
|
||||
game["dialog"]["objs_capture"] = "capture_objs";
|
||||
|
||||
game["dialog"]["hq_located"] = "hq_located";
|
||||
game["dialog"]["hq_enemy_captured"] = "hq_captured";
|
||||
game["dialog"]["hq_enemy_destroyed"] = "hq_destroyed";
|
||||
game["dialog"]["hq_secured"] = "hq_secured";
|
||||
game["dialog"]["hq_offline"] = "hq_offline";
|
||||
game["dialog"]["hq_online"] = "hq_online";
|
||||
|
||||
game["dialog"]["move_to_new"] = "new_positions";
|
||||
|
||||
game["dialog"]["push_forward"] = "pushforward";
|
||||
|
||||
game["dialog"]["attack"] = "attack";
|
||||
game["dialog"]["defend"] = "defend";
|
||||
game["dialog"]["offense"] = "offense";
|
||||
game["dialog"]["defense"] = "defense";
|
||||
|
||||
game["dialog"]["halftime"] = "halftime";
|
||||
game["dialog"]["overtime"] = "overtime";
|
||||
game["dialog"]["side_switch"] = "switching";
|
||||
|
||||
game["dialog"]["flag_taken"] = "ourflag";
|
||||
game["dialog"]["flag_dropped"] = "ourflag_drop";
|
||||
game["dialog"]["flag_returned"] = "ourflag_return";
|
||||
game["dialog"]["flag_captured"] = "ourflag_capt";
|
||||
game["dialog"]["flag_getback"] = "getback_ourflag";
|
||||
game["dialog"]["enemy_flag_bringhome"] = "enemyflag_tobase";
|
||||
game["dialog"]["enemy_flag_taken"] = "enemyflag";
|
||||
game["dialog"]["enemy_flag_dropped"] = "enemyflag_drop";
|
||||
game["dialog"]["enemy_flag_returned"] = "enemyflag_return";
|
||||
game["dialog"]["enemy_flag_captured"] = "enemyflag_capt";
|
||||
|
||||
game["dialog"]["capturing_a"] = "capturing_a";
|
||||
game["dialog"]["capturing_b"] = "capturing_b";
|
||||
game["dialog"]["capturing_c"] = "capturing_c";
|
||||
game["dialog"]["captured_a"] = "capture_a";
|
||||
game["dialog"]["captured_b"] = "capture_c";
|
||||
game["dialog"]["captured_c"] = "capture_b";
|
||||
|
||||
game["dialog"]["securing_a"] = "securing_a";
|
||||
game["dialog"]["securing_b"] = "securing_b";
|
||||
game["dialog"]["securing_c"] = "securing_c";
|
||||
game["dialog"]["secured_a"] = "secure_a";
|
||||
game["dialog"]["secured_b"] = "secure_b";
|
||||
game["dialog"]["secured_c"] = "secure_c";
|
||||
|
||||
game["dialog"]["losing_a"] = "losing_a";
|
||||
game["dialog"]["losing_b"] = "losing_b";
|
||||
game["dialog"]["losing_c"] = "losing_c";
|
||||
game["dialog"]["lost_a"] = "lost_a";
|
||||
game["dialog"]["lost_b"] = "lost_b";
|
||||
game["dialog"]["lost_c"] = "lost_c";
|
||||
|
||||
game["dialog"]["enemy_taking_a"] = "enemy_take_a";
|
||||
game["dialog"]["enemy_taking_b"] = "enemy_take_b";
|
||||
game["dialog"]["enemy_taking_c"] = "enemy_take_c";
|
||||
game["dialog"]["enemy_has_a"] = "enemy_has_a";
|
||||
game["dialog"]["enemy_has_b"] = "enemy_has_b";
|
||||
game["dialog"]["enemy_has_c"] = "enemy_has_c";
|
||||
|
||||
game["dialog"]["lost_all"] = "take_positions";
|
||||
game["dialog"]["secure_all"] = "positions_lock";
|
||||
|
||||
game["dialog"]["destroy_sentry"] = "dest_sentrygun";
|
||||
game["music"]["nuke_music"] = "nuke_music";
|
||||
|
||||
game["dialog"]["sentry_gone"] = "sentry_gone";
|
||||
game["dialog"]["sentry_destroyed"] = "sentry_gone";
|
||||
game["dialog"]["ti_gone"] = "ti_cancelled";
|
||||
game["dialog"]["ti_destroyed"] = "ti_blocked";
|
||||
|
||||
level thread onPlayerConnect();
|
||||
level thread onLastAlive();
|
||||
level thread musicController();
|
||||
level thread onGameEnded();
|
||||
level thread onRoundSwitch();
|
||||
}
|
||||
|
||||
|
||||
onPlayerConnect()
|
||||
{
|
||||
for(;;)
|
||||
{
|
||||
level waittill ( "connected", player );
|
||||
|
||||
player thread onPlayerSpawned();
|
||||
player thread finalKillcamMusic();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
onPlayerSpawned()
|
||||
{
|
||||
self endon ( "disconnect" );
|
||||
|
||||
self waittill( "spawned_player" );
|
||||
|
||||
if ( !level.splitscreen || level.splitscreen && !isDefined( level.playedStartingMusic ) )
|
||||
{
|
||||
self playLocalSound( game["music"]["spawn_" + self.team] );
|
||||
|
||||
|
||||
if ( level.splitscreen )
|
||||
level.playedStartingMusic = true;
|
||||
}
|
||||
|
||||
if ( isDefined( game["dialog"]["gametype"] ) && (!level.splitscreen || self == level.players[0]) )
|
||||
self leaderDialogOnPlayer( "gametype" );
|
||||
|
||||
gameFlagWait( "prematch_done" );
|
||||
|
||||
if ( self.team == game["attackers"] )
|
||||
self leaderDialogOnPlayer( "offense_obj", "introboost" );
|
||||
else
|
||||
self leaderDialogOnPlayer( "defense_obj", "introboost" );
|
||||
}
|
||||
|
||||
|
||||
onLastAlive()
|
||||
{
|
||||
level endon ( "game_ended" );
|
||||
|
||||
level waittill ( "last_alive", player );
|
||||
|
||||
if ( !isAlive( player ) )
|
||||
return;
|
||||
|
||||
player leaderDialogOnPlayer( "last_alive" );
|
||||
}
|
||||
|
||||
|
||||
onRoundSwitch()
|
||||
{
|
||||
level waittill ( "round_switch", switchType );
|
||||
|
||||
switch( switchType )
|
||||
{
|
||||
case "halftime":
|
||||
foreach ( player in level.players )
|
||||
player leaderDialogOnPlayer( "halftime" );
|
||||
break;
|
||||
case "overtime":
|
||||
foreach ( player in level.players )
|
||||
player leaderDialogOnPlayer( "overtime" );
|
||||
break;
|
||||
default:
|
||||
foreach ( player in level.players )
|
||||
player leaderDialogOnPlayer( "side_switch" );
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
onGameEnded()
|
||||
{
|
||||
level thread roundWinnerDialog();
|
||||
level thread gameWinnerDialog();
|
||||
|
||||
level waittill ( "game_win", winner );
|
||||
|
||||
if ( isDefined( level.nukeDetonated ) )
|
||||
{
|
||||
if ( !level.splitScreen )
|
||||
playSoundOnPlayers( game["music"]["nuke_music"] );
|
||||
else
|
||||
level.players[0] playLocalSound( game["music"]["nuke_music"] );
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
if ( level.teamBased )
|
||||
{
|
||||
if ( level.splitscreen )
|
||||
{
|
||||
if ( winner == "allies" )
|
||||
playSoundOnPlayers( game["music"]["victory_allies"], "allies" );
|
||||
else if ( winner == "axis" )
|
||||
playSoundOnPlayers( game["music"]["victory_axis"], "axis" );
|
||||
else
|
||||
playSoundOnPlayers( game["music"]["nuke_music"] );
|
||||
}
|
||||
else
|
||||
{
|
||||
if ( winner == "allies" )
|
||||
{
|
||||
playSoundOnPlayers( game["music"]["victory_allies"], "allies" );
|
||||
playSoundOnPlayers( game["music"]["defeat_axis"], "axis" );
|
||||
}
|
||||
else if ( winner == "axis" )
|
||||
{
|
||||
playSoundOnPlayers( game["music"]["victory_axis"], "axis" );
|
||||
playSoundOnPlayers( game["music"]["defeat_allies"], "allies" );
|
||||
}
|
||||
else
|
||||
{
|
||||
playSoundOnPlayers( game["music"]["nuke_music"] );
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
foreach ( player in level.players )
|
||||
{
|
||||
if ( player.pers["team"] != "allies" && player.pers["team"] != "axis" )
|
||||
player playLocalSound( game["music"]["nuke_music"] );
|
||||
else if ( isDefined( winner ) && player == winner )
|
||||
player playLocalSound( game["music"]["victory_" + player.pers["team"] ] );
|
||||
else if ( !level.splitScreen )
|
||||
player playLocalSound( game["music"]["defeat_" + player.pers["team"] ] );
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
roundWinnerDialog()
|
||||
{
|
||||
level waittill ( "round_win", winner );
|
||||
|
||||
delay = level.roundEndDelay / 4;
|
||||
if ( delay > 0 )
|
||||
wait ( delay );
|
||||
|
||||
if ( !isDefined( winner ) || isPlayer( winner ) || isDefined( level.nukeDetonated ) )
|
||||
return;
|
||||
|
||||
if ( winner == "allies" )
|
||||
{
|
||||
leaderDialog( "round_success", "allies" );
|
||||
leaderDialog( "round_failure", "axis" );
|
||||
}
|
||||
else if ( winner == "axis" )
|
||||
{
|
||||
leaderDialog( "round_success", "axis" );
|
||||
leaderDialog( "round_failure", "allies" );
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
gameWinnerDialog()
|
||||
{
|
||||
level waittill ( "game_win", winner );
|
||||
|
||||
delay = level.postRoundTime / 2;
|
||||
if ( delay > 0 )
|
||||
wait ( delay );
|
||||
|
||||
if ( !isDefined( winner ) || isPlayer( winner ) || isDefined( level.nukeDetonated ) )
|
||||
return;
|
||||
|
||||
if ( winner == "allies" )
|
||||
{
|
||||
leaderDialog( "mission_success", "allies" );
|
||||
leaderDialog( "mission_failure", "axis" );
|
||||
}
|
||||
else if ( winner == "axis" )
|
||||
{
|
||||
leaderDialog( "mission_success", "axis" );
|
||||
leaderDialog( "mission_failure", "allies" );
|
||||
}
|
||||
else
|
||||
{
|
||||
leaderDialog( "mission_draw" );
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
musicController()
|
||||
{
|
||||
level endon ( "game_ended" );
|
||||
|
||||
if ( !level.hardcoreMode )
|
||||
thread suspenseMusic();
|
||||
|
||||
level waittill ( "match_ending_soon", reason );
|
||||
assert( isDefined( reason ) );
|
||||
|
||||
if ( getWatchedDvar( "roundlimit" ) == 1 || game["roundsPlayed"] == (getWatchedDvar( "roundlimit" ) - 1) )
|
||||
{
|
||||
if ( !level.splitScreen )
|
||||
{
|
||||
if ( reason == "time" )
|
||||
{
|
||||
if ( level.teamBased )
|
||||
{
|
||||
if ( game["teamScores"]["allies"] > game["teamScores"]["axis"] )
|
||||
{
|
||||
if ( !level.hardcoreMode )
|
||||
{
|
||||
playSoundOnPlayers( game["music"]["winning_allies"], "allies" );
|
||||
playSoundOnPlayers( game["music"]["losing_axis"], "axis" );
|
||||
}
|
||||
|
||||
leaderDialog( "winning_time", "allies" );
|
||||
leaderDialog( "losing_time", "axis" );
|
||||
}
|
||||
else if ( game["teamScores"]["axis"] > game["teamScores"]["allies"] )
|
||||
{
|
||||
if ( !level.hardcoreMode )
|
||||
{
|
||||
playSoundOnPlayers( game["music"]["winning_axis"], "axis" );
|
||||
playSoundOnPlayers( game["music"]["losing_allies"], "allies" );
|
||||
}
|
||||
|
||||
leaderDialog( "winning_time", "axis" );
|
||||
leaderDialog( "losing_time", "allies" );
|
||||
}
|
||||
else if ( game["teamScores"]["axis"] == game["teamScores"]["allies"] )
|
||||
{
|
||||
if ( !level.hardcoreMode )
|
||||
{
|
||||
playSoundOnPlayers( game["music"]["losing_axis"], "axis" );
|
||||
playSoundOnPlayers( game["music"]["losing_allies"], "allies" );
|
||||
}
|
||||
|
||||
leaderDialog( "lead_tied", "axis" );
|
||||
leaderDialog( "lead_tied", "allies" );
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if ( !level.hardcoreMode )
|
||||
playSoundOnPlayers( game["music"]["losing_time"] );
|
||||
|
||||
leaderDialog( "timesup" );
|
||||
}
|
||||
}
|
||||
else if ( reason == "score" )
|
||||
{
|
||||
if ( level.teamBased )
|
||||
{
|
||||
if ( game["teamScores"]["allies"] > game["teamScores"]["axis"] )
|
||||
{
|
||||
if ( !level.hardcoreMode )
|
||||
{
|
||||
playSoundOnPlayers( game["music"]["winning_allies"], "allies" );
|
||||
playSoundOnPlayers( game["music"]["losing_axis"], "axis" );
|
||||
}
|
||||
|
||||
leaderDialog( "winning_score", "allies" );
|
||||
leaderDialog( "losing_score", "axis" );
|
||||
}
|
||||
else if ( game["teamScores"]["axis"] > game["teamScores"]["allies"] )
|
||||
{
|
||||
if ( !level.hardcoreMode )
|
||||
{
|
||||
playSoundOnPlayers( game["music"]["winning_axis"], "axis" );
|
||||
playSoundOnPlayers( game["music"]["losing_allies"], "allies" );
|
||||
}
|
||||
|
||||
leaderDialog( "winning_score", "axis" );
|
||||
leaderDialog( "losing_score", "allies" );
|
||||
}
|
||||
else if ( game["teamScores"]["axis"] == game["teamScores"]["allies"] )
|
||||
{
|
||||
if ( !level.hardcoreMode )
|
||||
{
|
||||
playSoundOnPlayers( game["music"]["losing_axis"], "axis" );
|
||||
playSoundOnPlayers( game["music"]["losing_allies"], "allies" );
|
||||
}
|
||||
|
||||
leaderDialog( "lead_tied", "axis" );
|
||||
leaderDialog( "lead_tied", "allies" );
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
winningPlayer = maps\mp\gametypes\_gamescore::getHighestScoringPlayer();
|
||||
losingPlayers = maps\mp\gametypes\_gamescore::getLosingPlayers();
|
||||
excludeList[0] = winningPlayer;
|
||||
|
||||
if ( !level.hardcoreMode )
|
||||
{
|
||||
winningPlayer playLocalSound( game["music"]["winning_" + winningPlayer.pers["team"] ] );
|
||||
|
||||
foreach ( otherPlayer in level.players )
|
||||
{
|
||||
if ( otherPlayer == winningPlayer )
|
||||
continue;
|
||||
|
||||
otherPlayer playLocalSound( game["music"]["losing_" + otherPlayer.pers["team"] ] );
|
||||
}
|
||||
}
|
||||
|
||||
winningPlayer leaderDialogOnPlayer( "winning_score" );
|
||||
leaderDialogOnPlayers( "losing_score", losingPlayers );
|
||||
}
|
||||
}
|
||||
|
||||
level waittill ( "match_ending_very_soon" );
|
||||
leaderDialog( "timesup" );
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if ( !level.hardcoreMode )
|
||||
playSoundOnPlayers( game["music"]["losing_allies"] );
|
||||
|
||||
leaderDialog( "timesup" );
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
suspenseMusic()
|
||||
{
|
||||
level endon ( "game_ended" );
|
||||
level endon ( "match_ending_soon" );
|
||||
|
||||
numTracks = game["music"]["suspense"].size;
|
||||
for ( ;; )
|
||||
{
|
||||
wait ( randomFloatRange( 60, 120 ) );
|
||||
|
||||
playSoundOnPlayers( game["music"]["suspense"][randomInt(numTracks)] );
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
finalKillcamMusic()
|
||||
{
|
||||
self waittill ( "showing_final_killcam" );
|
||||
|
||||
// self playLocalSound( game["music"]["winning"] );
|
||||
}
|
||||
File diff suppressed because it is too large.
Load diff
@@ -0,0 +1,270 @@
|
||||
init()
|
||||
{
|
||||
game["menu_quickcommands"] = "quickcommands";
|
||||
game["menu_quickstatements"] = "quickstatements";
|
||||
game["menu_quickresponses"] = "quickresponses";
|
||||
|
||||
precacheMenu(game["menu_quickcommands"]);
|
||||
precacheMenu(game["menu_quickstatements"]);
|
||||
precacheMenu(game["menu_quickresponses"]);
|
||||
precacheHeadIcon("talkingicon");
|
||||
|
||||
precacheString( &"QUICKMESSAGE_FOLLOW_ME" );
|
||||
precacheString( &"QUICKMESSAGE_MOVE_IN" );
|
||||
precacheString( &"QUICKMESSAGE_FALL_BACK" );
|
||||
precacheString( &"QUICKMESSAGE_SUPPRESSING_FIRE" );
|
||||
precacheString( &"QUICKMESSAGE_ATTACK_LEFT_FLANK" );
|
||||
precacheString( &"QUICKMESSAGE_ATTACK_RIGHT_FLANK" );
|
||||
precacheString( &"QUICKMESSAGE_HOLD_THIS_POSITION" );
|
||||
precacheString( &"QUICKMESSAGE_REGROUP" );
|
||||
precacheString( &"QUICKMESSAGE_ENEMY_SPOTTED" );
|
||||
precacheString( &"QUICKMESSAGE_ENEMIES_SPOTTED" );
|
||||
precacheString( &"QUICKMESSAGE_IM_IN_POSITION" );
|
||||
precacheString( &"QUICKMESSAGE_AREA_SECURE" );
|
||||
precacheString( &"QUICKMESSAGE_GRENADE" );
|
||||
precacheString( &"QUICKMESSAGE_SNIPER" );
|
||||
precacheString( &"QUICKMESSAGE_NEED_REINFORCEMENTS" );
|
||||
precacheString( &"QUICKMESSAGE_HOLD_YOUR_FIRE" );
|
||||
precacheString( &"QUICKMESSAGE_YES_SIR" );
|
||||
precacheString( &"QUICKMESSAGE_NO_SIR" );
|
||||
precacheString( &"QUICKMESSAGE_IM_ON_MY_WAY" );
|
||||
precacheString( &"QUICKMESSAGE_SORRY" );
|
||||
precacheString( &"QUICKMESSAGE_GREAT_SHOT" );
|
||||
precacheString( &"QUICKMESSAGE_TOOK_LONG_ENOUGH" );
|
||||
precacheString( &"QUICKMESSAGE_ARE_YOU_CRAZY" );
|
||||
precacheString( &"QUICKMESSAGE_WATCH_SIX" );
|
||||
precacheString( &"QUICKMESSAGE_COME_ON" );
|
||||
}
|
||||
|
||||
quickcommands(response)
|
||||
{
|
||||
self endon ( "disconnect" );
|
||||
|
||||
if(!isdefined(self.pers["team"]) || self.pers["team"] == "spectator" || isdefined(self.spamdelay))
|
||||
return;
|
||||
|
||||
self.spamdelay = true;
|
||||
|
||||
switch(response)
|
||||
{
|
||||
case "1":
|
||||
soundalias = "mp_cmd_followme";
|
||||
saytext = &"QUICKMESSAGE_FOLLOW_ME";
|
||||
//saytext = "Follow Me!";
|
||||
break;
|
||||
|
||||
case "2":
|
||||
soundalias = "mp_cmd_movein";
|
||||
saytext = &"QUICKMESSAGE_MOVE_IN";
|
||||
//saytext = "Move in!";
|
||||
break;
|
||||
|
||||
case "3":
|
||||
soundalias = "mp_cmd_fallback";
|
||||
saytext = &"QUICKMESSAGE_FALL_BACK";
|
||||
//saytext = "Fall back!";
|
||||
break;
|
||||
|
||||
case "4":
|
||||
soundalias = "mp_cmd_suppressfire";
|
||||
saytext = &"QUICKMESSAGE_SUPPRESSING_FIRE";
|
||||
//saytext = "Suppressing fire!";
|
||||
break;
|
||||
|
||||
case "5":
|
||||
soundalias = "mp_cmd_attackleftflank";
|
||||
saytext = &"QUICKMESSAGE_ATTACK_LEFT_FLANK";
|
||||
//saytext = "Attack left flank!";
|
||||
break;
|
||||
|
||||
case "6":
|
||||
soundalias = "mp_cmd_attackrightflank";
|
||||
saytext = &"QUICKMESSAGE_ATTACK_RIGHT_FLANK";
|
||||
//saytext = "Attack right flank!";
|
||||
break;
|
||||
|
||||
case "7":
|
||||
soundalias = "mp_cmd_holdposition";
|
||||
saytext = &"QUICKMESSAGE_HOLD_THIS_POSITION";
|
||||
//saytext = "Hold this position!";
|
||||
break;
|
||||
|
||||
default:
|
||||
assert(response == "8");
|
||||
soundalias = "mp_cmd_regroup";
|
||||
saytext = &"QUICKMESSAGE_REGROUP";
|
||||
//saytext = "Regroup!";
|
||||
break;
|
||||
}
|
||||
|
||||
self saveHeadIcon();
|
||||
self doQuickMessage(soundalias, saytext);
|
||||
|
||||
wait 2;
|
||||
self.spamdelay = undefined;
|
||||
self restoreHeadIcon();
|
||||
}
|
||||
|
||||
quickstatements(response)
|
||||
{
|
||||
if(!isdefined(self.pers["team"]) || self.pers["team"] == "spectator" || isdefined(self.spamdelay))
|
||||
return;
|
||||
|
||||
self.spamdelay = true;
|
||||
|
||||
switch(response)
|
||||
{
|
||||
case "1":
|
||||
soundalias = "mp_stm_grenade";
|
||||
saytext = &"QUICKMESSAGE_ENEMY_SPOTTED";
|
||||
//saytext = "Enemy spotted!";
|
||||
break;
|
||||
|
||||
case "2":
|
||||
soundalias = "mp_stm_enemyspotted";
|
||||
saytext = &"QUICKMESSAGE_ENEMIES_SPOTTED";
|
||||
//saytext = "Enemy down!";
|
||||
break;
|
||||
|
||||
case "3":
|
||||
soundalias = "mp_stm_iminposition";
|
||||
saytext = &"QUICKMESSAGE_IM_IN_POSITION";
|
||||
//saytext = "I'm in position.";
|
||||
break;
|
||||
|
||||
case "4":
|
||||
soundalias = "mp_stm_areasecure";
|
||||
saytext = &"QUICKMESSAGE_AREA_SECURE";
|
||||
//saytext = "Area secure!";
|
||||
break;
|
||||
|
||||
case "5":
|
||||
soundalias = "mp_stm_holdyourfire";
|
||||
saytext = &"QUICKMESSAGE_WATCH_SIX";
|
||||
//saytext = "Hold your fire!";
|
||||
break;
|
||||
|
||||
case "6":
|
||||
soundalias = "mp_stm_sniper";
|
||||
saytext = &"QUICKMESSAGE_SNIPER";
|
||||
//saytext = "Sniper!";
|
||||
break;
|
||||
|
||||
default:
|
||||
assert(response == "7");
|
||||
soundalias = "mp_stm_needreinforcements";
|
||||
saytext = &"QUICKMESSAGE_NEED_REINFORCEMENTS";
|
||||
//saytext = "Need reinforcements!";
|
||||
break;
|
||||
}
|
||||
|
||||
self saveHeadIcon();
|
||||
self doQuickMessage(soundalias, saytext);
|
||||
|
||||
wait 2;
|
||||
self.spamdelay = undefined;
|
||||
self restoreHeadIcon();
|
||||
}
|
||||
|
||||
quickresponses(response)
|
||||
{
|
||||
if(!isdefined(self.pers["team"]) || self.pers["team"] == "spectator" || isdefined(self.spamdelay))
|
||||
return;
|
||||
|
||||
self.spamdelay = true;
|
||||
|
||||
switch(response)
|
||||
{
|
||||
case "1":
|
||||
soundalias = "mp_rsp_yessir";
|
||||
saytext = &"QUICKMESSAGE_YES_SIR";
|
||||
//saytext = "Yes Sir!";
|
||||
break;
|
||||
|
||||
case "2":
|
||||
soundalias = "mp_rsp_nosir";
|
||||
saytext = &"QUICKMESSAGE_NO_SIR";
|
||||
//saytext = "No Sir!";
|
||||
break;
|
||||
|
||||
case "3":
|
||||
soundalias = "mp_rsp_onmyway";
|
||||
saytext = &"QUICKMESSAGE_IM_ON_MY_WAY";
|
||||
//saytext = "On my way.";
|
||||
break;
|
||||
|
||||
case "4":
|
||||
soundalias = "mp_rsp_sorry";
|
||||
saytext = &"QUICKMESSAGE_SORRY";
|
||||
//saytext = "Sorry.";
|
||||
break;
|
||||
|
||||
case "5":
|
||||
soundalias = "mp_rsp_greatshot";
|
||||
saytext = &"QUICKMESSAGE_GREAT_SHOT";
|
||||
//saytext = "Great shot!";
|
||||
break;
|
||||
|
||||
default:
|
||||
assert(response == "6");
|
||||
soundalias = "mp_rsp_areyoucrazy";
|
||||
saytext = &"QUICKMESSAGE_COME_ON";
|
||||
//saytext = "Come on!";
|
||||
break;
|
||||
}
|
||||
|
||||
self saveHeadIcon();
|
||||
self doQuickMessage(soundalias, saytext);
|
||||
|
||||
wait 2;
|
||||
self.spamdelay = undefined;
|
||||
self restoreHeadIcon();
|
||||
}
|
||||
|
||||
doQuickMessage( soundalias, saytext )
|
||||
{
|
||||
if(self.sessionstate != "playing")
|
||||
return;
|
||||
|
||||
prefix = maps\mp\gametypes\_teams::getTeamVoicePrefix( self.team );
|
||||
|
||||
if(isdefined(level.QuickMessageToAll) && level.QuickMessageToAll)
|
||||
{
|
||||
self.headiconteam = "none";
|
||||
self.headicon = "talkingicon";
|
||||
|
||||
self playSound( prefix+soundalias );
|
||||
self sayAll(saytext);
|
||||
}
|
||||
else
|
||||
{
|
||||
if(self.sessionteam == "allies")
|
||||
self.headiconteam = "allies";
|
||||
else if(self.sessionteam == "axis")
|
||||
self.headiconteam = "axis";
|
||||
|
||||
self.headicon = "talkingicon";
|
||||
|
||||
self playSound( prefix+soundalias );
|
||||
self sayTeam( saytext );
|
||||
self pingPlayer();
|
||||
}
|
||||
}
|
||||
|
||||
saveHeadIcon()
|
||||
{
|
||||
if(isdefined(self.headicon))
|
||||
self.oldheadicon = self.headicon;
|
||||
|
||||
if(isdefined(self.headiconteam))
|
||||
self.oldheadiconteam = self.headiconteam;
|
||||
}
|
||||
|
||||
restoreHeadIcon()
|
||||
{
|
||||
if(isdefined(self.oldheadicon))
|
||||
self.headicon = self.oldheadicon;
|
||||
|
||||
if(isdefined(self.oldheadiconteam))
|
||||
self.headiconteam = self.oldheadiconteam;
|
||||
}
|
||||
@@ -0,0 +1,773 @@
|
||||
#include common_scripts\utility;
|
||||
#include maps\mp\_utility;
|
||||
#include maps\mp\gametypes\_hud_util;
|
||||
/*
|
||||
One Flag CTF
|
||||
*/
|
||||
|
||||
/*QUAKED mp_ctf_spawn_axis (0.75 0.0 0.5) (-16 -16 0) (16 16 72)
|
||||
Axis players spawn away from enemies and near their team at one of these positions.*/
|
||||
|
||||
/*QUAKED mp_ctf_spawn_allies (0.0 0.75 0.5) (-16 -16 0) (16 16 72)
|
||||
Allied players spawn away from enemies and near their team at one of these positions.*/
|
||||
|
||||
/*QUAKED mp_ctf_spawn_axis_start (1.0 0.0 0.5) (-16 -16 0) (16 16 72)
|
||||
Axis players spawn away from enemies and near their team at one of these positions at the start of a round.*/
|
||||
|
||||
/*QUAKED mp_ctf_spawn_allies_start (0.0 1.0 0.5) (-16 -16 0) (16 16 72)
|
||||
Allied players spawn away from enemies and near their team at one of these positions at the start of a round.*/
|
||||
|
||||
main()
|
||||
{
|
||||
maps\mp\gametypes\_globallogic::init();
|
||||
maps\mp\gametypes\_callbacksetup::SetupCallbacks();
|
||||
maps\mp\gametypes\_globallogic::SetupCallbacks();
|
||||
|
||||
registerTimeLimitDvar( level.gameType, 3, 0, 1440 );
|
||||
registerScoreLimitDvar( level.gameType, 1, 0, 10000 );
|
||||
registerRoundLimitDvar( level.gameType, 0, 0, 30 );
|
||||
registerWinLimitDvar( level.gameType, 4, 0, 10 );
|
||||
registerRoundSwitchDvar( level.gameType, 3, 0, 30 );
|
||||
registerNumLivesDvar( level.gameType, 0, 0, 10 );
|
||||
registerHalfTimeDvar( level.gameType, 1, 0, 1 );
|
||||
|
||||
setOverTimeLimitDvar( 4 );
|
||||
|
||||
level.teamBased = true;
|
||||
level.onPrecacheGameType = ::onPrecacheGameType;
|
||||
level.onStartGameType = ::onStartGameType;
|
||||
level.getSpawnPoint = ::getSpawnPoint;
|
||||
level.onPlayerKilled = ::onPlayerKilled;
|
||||
level.initGametypeAwards = ::initGametypeAwards;
|
||||
level.onTimeLimit = ::onTimeLimit;
|
||||
level.onSpawnPlayer = ::onSpawnPlayer;
|
||||
|
||||
level.flagReturnTime = getIntProperty( "scr_ctf_returntime", 30 );
|
||||
|
||||
game["dialog"]["gametype"] = "captureflag";
|
||||
|
||||
if ( getDvarInt( "g_hardcore" ) )
|
||||
game["dialog"]["gametype"] = "hc_" + game["dialog"]["gametype"];
|
||||
else if ( getDvarInt( "camera_thirdPerson" ) )
|
||||
game["dialog"]["gametype"] = "thirdp_" + game["dialog"]["gametype"];
|
||||
else if ( getDvarInt( "scr_diehard" ) )
|
||||
game["dialog"]["gametype"] = "dh_" + game["dialog"]["gametype"];
|
||||
else if (getDvarInt( "scr_" + level.gameType + "_promode" ) )
|
||||
game["dialog"]["gametype"] = game["dialog"]["gametype"] + "_pro";
|
||||
|
||||
game["dialog"]["offense_obj"] = "capture_obj";
|
||||
game["dialog"]["defense_obj"] = "capture_obj";
|
||||
}
|
||||
|
||||
onPrecacheGameType()
|
||||
{
|
||||
precacheString(&"MP_FLAG_TAKEN_BY");
|
||||
precacheString(&"MP_ENEMY_FLAG_TAKEN_BY");
|
||||
precacheString(&"MP_FLAG_CAPTURED_BY");
|
||||
precacheString(&"MP_ENEMY_FLAG_CAPTURED_BY");
|
||||
precacheString(&"MP_FLAG_RETURNED");
|
||||
precacheString(&"MP_ENEMY_FLAG_RETURNED");
|
||||
precacheString(&"MP_YOUR_FLAG_RETURNING_IN");
|
||||
precacheString(&"MP_ENEMY_FLAG_RETURNING_IN");
|
||||
precacheString(&"MP_ENEMY_FLAG_DROPPED_BY");
|
||||
precacheString(&"MP_DOM_NEUTRAL_FLAG_CAPTURED");
|
||||
precacheString(&"MP_GRABBING_FLAG");
|
||||
precacheString(&"MP_RETURNING_FLAG");
|
||||
}
|
||||
|
||||
|
||||
onSpawnPlayer()
|
||||
{
|
||||
if( ( inOvertime() ) && !isDefined( self.otSpawned ) )
|
||||
self thread printOTHint();
|
||||
}
|
||||
|
||||
|
||||
printOTHint()
|
||||
{
|
||||
self endon ( "disconnect" );
|
||||
// give the "Overtime!" message time to show
|
||||
wait ( 0.25 );
|
||||
|
||||
self.otSpawned = true;
|
||||
hintMessage = getObjectiveHintText( self.team );
|
||||
self thread maps\mp\gametypes\_hud_message::hintMessage( hintMessage );
|
||||
}
|
||||
|
||||
|
||||
onStartGameType()
|
||||
{
|
||||
if ( !isdefined( game["switchedsides"] ) )
|
||||
game["switchedsides"] = false;
|
||||
|
||||
if ( !isdefined( game["original_defenders"] ) )
|
||||
game["original_defenders"] = game["defenders"];
|
||||
|
||||
if ( game["switchedsides"] )
|
||||
{
|
||||
oldAttackers = game["attackers"];
|
||||
oldDefenders = game["defenders"];
|
||||
game["attackers"] = oldDefenders;
|
||||
game["defenders"] = oldAttackers;
|
||||
}
|
||||
|
||||
setClientNameMode("auto_change");
|
||||
|
||||
if ( level.splitscreen )
|
||||
{
|
||||
if ( inOvertime() )
|
||||
{
|
||||
setObjectiveScoreText( game["attackers"], &"OBJECTIVES_GRAB_FLAG" );
|
||||
setObjectiveScoreText( game["defenders"], &"OBJECTIVES_GRAB_FLAG" );
|
||||
}
|
||||
else
|
||||
{
|
||||
setObjectiveScoreText( game["attackers"], &"OBJECTIVES_ONE_FLAG_ATTACKER" );
|
||||
setObjectiveScoreText( game["defenders"], &"OBJECTIVES_ONE_FLAG_DEFENDER" );
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if ( inOvertime() )
|
||||
{
|
||||
setObjectiveScoreText( game["attackers"], &"OBJECTIVES_GRAB_FLAG_SCORE" );
|
||||
setObjectiveScoreText( game["defenders"], &"OBJECTIVES_GRAB_FLAG_SCORE" );
|
||||
}
|
||||
else
|
||||
{
|
||||
setObjectiveScoreText( game["attackers"], &"OBJECTIVES_ONE_FLAG_ATTACKER_SCORE" );
|
||||
setObjectiveScoreText( game["defenders"], &"OBJECTIVES_ONE_FLAG_DEFENDER_SCORE" );
|
||||
}
|
||||
}
|
||||
|
||||
if ( inOvertime() )
|
||||
{
|
||||
setObjectiveText( game["attackers"], &"OBJECTIVES_OVERTIME_CTF" );
|
||||
setObjectiveText( game["defenders"], &"OBJECTIVES_OVERTIME_CTF" );
|
||||
setObjectiveHintText( game["attackers"], &"OBJECTIVES_GRAB_FLAG_HINT" );
|
||||
setObjectiveHintText( game["defenders"], &"OBJECTIVES_GRAB_FLAG_HINT" );
|
||||
}
|
||||
else
|
||||
{
|
||||
setObjectiveText( game["attackers"], &"OBJECTIVES_CTF" );
|
||||
setObjectiveText( game["defenders"], &"OBJECTIVES_CTF" );
|
||||
setObjectiveHintText( game["attackers"], &"OBJECTIVES_ONE_FLAG_ATTACKER_HINT" );
|
||||
setObjectiveHintText( game["defenders"], &"OBJECTIVES_ONE_FLAG_DEFENDER_HINT" );
|
||||
}
|
||||
|
||||
level.spawnMins = ( 0, 0, 0 );
|
||||
level.spawnMaxs = ( 0, 0, 0 );
|
||||
maps\mp\gametypes\_spawnlogic::placeSpawnPoints( "mp_ctf_spawn_allies_start" );
|
||||
maps\mp\gametypes\_spawnlogic::placeSpawnPoints( "mp_ctf_spawn_axis_start" );
|
||||
maps\mp\gametypes\_spawnlogic::addSpawnPoints( "allies", "mp_ctf_spawn_allies" );
|
||||
maps\mp\gametypes\_spawnlogic::addSpawnPoints( "axis", "mp_ctf_spawn_axis" );
|
||||
|
||||
level.mapCenter = maps\mp\gametypes\_spawnlogic::findBoxCenter( level.spawnMins, level.spawnMaxs );
|
||||
setMapCenter( level.mapCenter );
|
||||
|
||||
thread maps\mp\gametypes\_dev::init();
|
||||
|
||||
maps\mp\gametypes\_rank::registerScoreInfo( "kill", 50 );
|
||||
maps\mp\gametypes\_rank::registerScoreInfo( "headshot", 50 );
|
||||
maps\mp\gametypes\_rank::registerScoreInfo( "assist", 20 );
|
||||
|
||||
maps\mp\gametypes\_rank::registerScoreInfo( "pickup", 50 );
|
||||
maps\mp\gametypes\_rank::registerScoreInfo( "return", 50 );
|
||||
maps\mp\gametypes\_rank::registerScoreInfo( "capture", 250 );
|
||||
|
||||
maps\mp\gametypes\_rank::registerScoreInfo( "kill_carrier", 50 );
|
||||
|
||||
maps\mp\gametypes\_rank::registerScoreInfo( "defend", 100 );
|
||||
maps\mp\gametypes\_rank::registerScoreInfo( "defend_assist", 100 );
|
||||
|
||||
maps\mp\gametypes\_rank::registerScoreInfo( "assault", 200 );
|
||||
maps\mp\gametypes\_rank::registerScoreInfo( "assault_assist", 40 );
|
||||
|
||||
allowed[0] = "ctf";
|
||||
maps\mp\gametypes\_gameobjects::main(allowed);
|
||||
|
||||
thread ctf();
|
||||
}
|
||||
|
||||
|
||||
getSpawnPoint()
|
||||
{
|
||||
if ( self.team == "axis" )
|
||||
spawnTeam = game["attackers"];
|
||||
else
|
||||
spawnTeam = game["defenders"];
|
||||
|
||||
// if ( game["switchedsides"] )
|
||||
// spawnTeam = getOtherTeam( spawnteam );
|
||||
|
||||
if ( level.inGracePeriod )
|
||||
{
|
||||
if ( getDvar( "mapname" ) == "mp_shipment_long" )
|
||||
{
|
||||
spawnPoints = getentarray("mp_cha_spawn_" + spawnteam + "_start", "classname");
|
||||
spawnPoint = maps\mp\gametypes\_spawnlogic::getSpawnpoint_Random( spawnPoints );
|
||||
}
|
||||
else
|
||||
{
|
||||
spawnPoints = getentarray("mp_ctf_spawn_" + spawnteam + "_start", "classname");
|
||||
spawnPoint = maps\mp\gametypes\_spawnlogic::getSpawnpoint_Random( spawnPoints );
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if ( getDvar( "mapname" ) == "mp_shipment_long" )
|
||||
{
|
||||
spawnPoints = maps\mp\gametypes\_spawnlogic::getSpawnpointArray( "mp_cha_spawn_" + spawnteam );
|
||||
spawnPoint = maps\mp\gametypes\_spawnlogic::getSpawnpoint_Random( spawnPoints );
|
||||
}
|
||||
else
|
||||
{
|
||||
spawnPoints = maps\mp\gametypes\_spawnlogic::getTeamSpawnPoints( spawnteam );
|
||||
spawnPoint = maps\mp\gametypes\_spawnlogic::getSpawnpoint_NearTeam( spawnPoints );
|
||||
}
|
||||
}
|
||||
|
||||
return spawnPoint;
|
||||
}
|
||||
|
||||
|
||||
ctf()
|
||||
{
|
||||
level.flagModel["allies"] = maps\mp\gametypes\_teams::getTeamFlagModel( "allies" );
|
||||
level.icon2D["allies"] = maps\mp\gametypes\_teams::getTeamFlagIcon( "allies" );
|
||||
level.carryFlag["allies"] = maps\mp\gametypes\_teams::getTeamFlagCarryModel( "allies" );
|
||||
|
||||
precacheModel( level.flagModel["allies"] );
|
||||
precacheModel( level.carryFlag["allies"] );
|
||||
|
||||
level.flagModel["axis"] = maps\mp\gametypes\_teams::getTeamFlagModel( "axis" );
|
||||
level.icon2D["axis"] = maps\mp\gametypes\_teams::getTeamFlagIcon( "axis" );
|
||||
level.carryFlag["axis"] = maps\mp\gametypes\_teams::getTeamFlagCarryModel( "axis" );
|
||||
|
||||
precacheModel( level.flagModel["axis"] );
|
||||
precacheModel( level.carryFlag["axis"] );
|
||||
|
||||
level.iconEscort3D = "waypoint_escort";
|
||||
level.iconEscort2D = "waypoint_escort";
|
||||
precacheShader( level.iconEscort3D );
|
||||
precacheShader( level.iconEscort2D );
|
||||
//level.iconEscort2D = level.iconEscort3D; // flags with words on compass
|
||||
|
||||
level.iconKill3D = "waypoint_kill";
|
||||
level.iconKill2D = "waypoint_kill";
|
||||
precacheShader( level.iconKill3D );
|
||||
precacheShader( level.iconKill2D );
|
||||
//level.iconKill2D = level.iconKill3D; // flags with words on compass
|
||||
|
||||
level.iconCaptureFlag3D = "waypoint_capture_flag";
|
||||
level.iconCaptureFlag2D = "waypoint_capture_flag";
|
||||
precacheShader( level.iconCaptureFlag3D );
|
||||
precacheShader( level.iconCaptureFlag2D );
|
||||
//level.iconCaptureFlag2D = level.iconCaptureFlag3D; // flags with words on compass
|
||||
|
||||
level.iconDefendFlag3D = "waypoint_defend_flag";
|
||||
level.iconDefendFlag2D = "waypoint_defend_flag";
|
||||
precacheShader( level.iconDefendFlag3D );
|
||||
precacheShader( level.iconDefendFlag2D );
|
||||
//level.iconDefendFlag2D = level.iconDefendFlag3D; // flags with words on compass
|
||||
|
||||
level.iconReturnFlag3D = "waypoint_return_flag";
|
||||
level.iconReturnFlag2D = "waypoint_return_flag";
|
||||
precacheShader( level.iconReturnFlag3D );
|
||||
precacheShader( level.iconReturnFlag2D );
|
||||
//level.iconReturnFlag2D = level.iconReturnFlag3D; // flags with words on compass
|
||||
|
||||
level.iconWaitForFlag3D = "waypoint_waitfor_flag";
|
||||
level.iconWaitForFlag2D = "waypoint_waitfor_flag";
|
||||
precacheShader( level.iconWaitForFlag3D );
|
||||
precacheShader( level.iconWaitForFlag2D );
|
||||
//level.iconWaitForFlag2D = level.iconWaitForFlag3D; // flags with words on compass
|
||||
|
||||
precacheShader( level.icon2D["axis"] );
|
||||
precacheShader( level.icon2D["allies"] );
|
||||
|
||||
precacheShader( "waypoint_flag_friendly" );
|
||||
precacheShader( "waypoint_flag_enemy" );
|
||||
|
||||
precacheString( &"OBJECTIVES_FLAG_HOME" );
|
||||
precacheString( &"OBJECTIVES_FLAG_NAME" );
|
||||
precacheString( &"OBJECTIVES_FLAG_AWAY" );
|
||||
|
||||
level.teamFlags[game["defenders"]] = createTeamFlag( game["defenders"], "allies" );
|
||||
level.teamFlags[game["attackers"]] = createTeamFlag( game["attackers"], level.otherTeam["allies"] );
|
||||
|
||||
level.capZones[game["defenders"]] = createCapZone( game["defenders"], "allies" );
|
||||
level.capZones[game["attackers"]] = createCapZone( game["attackers"], level.otherTeam["allies"] );
|
||||
|
||||
if ( level.splitScreen )
|
||||
hudElemAlpha = 0;
|
||||
else
|
||||
hudElemAlpha = 0.85;
|
||||
|
||||
level.friendlyFlagStatusIcon["allies"] = createServerIcon( "waypoint_flag_friendly", 32, 32, "allies" );
|
||||
level.friendlyFlagStatusIcon["allies"] setPoint( "TOP LEFT", "TOP LEFT", 132, 0 );
|
||||
level.friendlyFlagStatusIcon["allies"].alpha = hudElemAlpha;
|
||||
level.friendlyFlagStatusIcon["allies"].hideWhenInMenu = true;
|
||||
|
||||
level.friendlyFlagStatusText["allies"] = createServerFontString( "small", 1.6, "allies" );
|
||||
level.friendlyFlagStatusText["allies"] setParent( level.friendlyFlagStatusIcon["allies"] );
|
||||
level.friendlyFlagStatusText["allies"] setPoint( "LEFT", "RIGHT", 4 );
|
||||
level.friendlyFlagStatusText["allies"] setText( &"OBJECTIVES_FLAG_HOME" );
|
||||
level.friendlyFlagStatusText["allies"].alpha = hudElemAlpha;
|
||||
level.friendlyFlagStatusText["allies"].color = (1,1,1);
|
||||
level.friendlyFlagStatusText["allies"].glowAlpha = 1;
|
||||
level.friendlyFlagStatusText["allies"].hideWhenInMenu = true;
|
||||
|
||||
level.enemyFlagStatusIcon["allies"] = createServerIcon( "waypoint_flag_enemy", 24, 24, "allies" );
|
||||
level.enemyFlagStatusIcon["allies"] setPoint( "TOP LEFT", "TOP LEFT", 132, 26 );
|
||||
level.enemyFlagStatusIcon["allies"].alpha = hudElemAlpha;
|
||||
level.enemyFlagStatusIcon["allies"].hideWhenInMenu = true;
|
||||
|
||||
level.enemyFlagStatusText["allies"] = createServerFontString( "small", 1.6, "allies" );
|
||||
level.enemyFlagStatusText["allies"] setParent( level.enemyFlagStatusIcon["allies"] );
|
||||
level.enemyFlagStatusText["allies"] setPoint( "LEFT", "RIGHT", 4 );
|
||||
level.enemyFlagStatusText["allies"] setText( &"OBJECTIVES_FLAG_HOME" );
|
||||
level.enemyFlagStatusText["allies"].alpha = hudElemAlpha;
|
||||
level.enemyFlagStatusText["allies"].color = (1,1,1);
|
||||
level.enemyFlagStatusText["allies"].glowAlpha = 1;
|
||||
level.enemyFlagStatusText["allies"].hideWhenInMenu = true;
|
||||
|
||||
|
||||
level.friendlyFlagStatusIcon["axis"] = createServerIcon( "waypoint_flag_friendly", 32, 32, "axis" );
|
||||
level.friendlyFlagStatusIcon["axis"] setPoint( "TOP LEFT", "TOP LEFT", 132, 0 );
|
||||
level.friendlyFlagStatusIcon["axis"].alpha = hudElemAlpha;
|
||||
level.friendlyFlagStatusIcon["axis"].hideWhenInMenu = true;
|
||||
|
||||
level.friendlyFlagStatusText["axis"] = createServerFontString( "small", 1.6, "axis" );
|
||||
level.friendlyFlagStatusText["axis"] setParent( level.friendlyFlagStatusIcon["axis"] );
|
||||
level.friendlyFlagStatusText["axis"] setPoint( "LEFT", "RIGHT", 4 );
|
||||
level.friendlyFlagStatusText["axis"] setText( &"OBJECTIVES_FLAG_HOME" );
|
||||
level.friendlyFlagStatusText["axis"].alpha = hudElemAlpha;
|
||||
level.friendlyFlagStatusText["axis"].color = (1,1,1);
|
||||
level.friendlyFlagStatusText["axis"].glowAlpha = 1;
|
||||
level.friendlyFlagStatusText["axis"].hideWhenInMenu = true;
|
||||
|
||||
level.enemyFlagStatusIcon["axis"] = createServerIcon( "waypoint_flag_enemy", 24, 24, "axis" );
|
||||
level.enemyFlagStatusIcon["axis"] setPoint( "TOP LEFT", "TOP LEFT", 132, 26 );
|
||||
level.enemyFlagStatusIcon["axis"].alpha = hudElemAlpha;
|
||||
level.enemyFlagStatusIcon["axis"].hideWhenInMenu = true;
|
||||
|
||||
level.enemyFlagStatusText["axis"] = createServerFontString( "small", 1.6, "axis" );
|
||||
level.enemyFlagStatusText["axis"] setParent( level.enemyFlagStatusIcon["axis"] );
|
||||
level.enemyFlagStatusText["axis"] setPoint( "LEFT", "RIGHT", 4 );
|
||||
level.enemyFlagStatusText["axis"] setText( &"OBJECTIVES_FLAG_HOME" );
|
||||
level.enemyFlagStatusText["axis"].alpha = hudElemAlpha;
|
||||
level.enemyFlagStatusText["axis"].color = (1,1,1);
|
||||
level.enemyFlagStatusText["axis"].glowAlpha = 1;
|
||||
level.enemyFlagStatusText["axis"].hideWhenInMenu = true;
|
||||
}
|
||||
|
||||
//sets overtime and associated variables
|
||||
onTimeLimit()
|
||||
{
|
||||
if ( !inOvertime() && game["teamScores"]["allies"] == game["teamScores"]["axis"] && game["switchedsides"] )
|
||||
{
|
||||
thread maps\mp\gametypes\_gamelogic::endGame( "overtime", game["strings"]["time_limit_reached"] );
|
||||
}
|
||||
else if( game["teamScores"]["axis"] > game["teamScores"]["allies"] )
|
||||
{
|
||||
thread maps\mp\gametypes\_gamelogic::endGame( "axis", game["strings"]["time_limit_reached"] );
|
||||
}
|
||||
else if( game["teamScores"]["axis"] < game["teamScores"]["allies"] )
|
||||
{
|
||||
thread maps\mp\gametypes\_gamelogic::endGame( "allies", game["strings"]["time_limit_reached"] );
|
||||
}
|
||||
else if ( inOvertime() )
|
||||
{
|
||||
thread maps\mp\gametypes\_gamelogic::endGame( "tie", game["strings"]["time_limit_reached"] );
|
||||
}
|
||||
}
|
||||
|
||||
spawnFxDelay( fxid, pos, forward, right, delay )
|
||||
{
|
||||
wait delay;
|
||||
effect = spawnFx( fxid, pos, forward, right );
|
||||
triggerFx( effect );
|
||||
}
|
||||
|
||||
createTeamFlag( team, entityTeam )
|
||||
{
|
||||
trigger = getEnt( "ctf_zone_" + entityTeam, "targetname" );
|
||||
if ( !isDefined( trigger ) )
|
||||
{
|
||||
error( "No ctf_zone_" + entityTeam + " trigger found in map." );
|
||||
return;
|
||||
}
|
||||
visuals[0] = getEnt( "ctf_flag_" + entityTeam, "targetname" );
|
||||
if ( !isDefined( visuals[0] ) )
|
||||
{
|
||||
error( "No ctf_flag_" + entityTeam + " script_model found in map." );
|
||||
return;
|
||||
}
|
||||
|
||||
cloneTrigger = spawn( "trigger_radius", trigger.origin, 0, 96, trigger.height );
|
||||
trigger = cloneTrigger;
|
||||
|
||||
visuals[0] setModel( level.flagModel[team] );
|
||||
|
||||
teamFlag = maps\mp\gametypes\_gameobjects::createCarryObject( team, trigger, visuals, (0,0,85) );
|
||||
teamFlag maps\mp\gametypes\_gameobjects::setTeamUseTime( "friendly", 0.5 );
|
||||
teamFlag maps\mp\gametypes\_gameobjects::setTeamUseTime( "enemy", 0.5 );
|
||||
teamFlag maps\mp\gametypes\_gameobjects::setTeamUseText( "enemy", &"MP_GRABBING_FLAG" );
|
||||
teamFlag maps\mp\gametypes\_gameobjects::setTeamUseText( "friendly", &"MP_RETURNING_FLAG" );
|
||||
teamFlag maps\mp\gametypes\_gameobjects::allowCarry( "enemy" );
|
||||
|
||||
teamFlag maps\mp\gametypes\_gameobjects::setVisibleTeam( "none" );
|
||||
teamFlag maps\mp\gametypes\_gameobjects::set2DIcon( "friendly", level.iconKill2D );
|
||||
teamFlag maps\mp\gametypes\_gameobjects::set3DIcon( "friendly", level.iconKill3D );
|
||||
teamFlag maps\mp\gametypes\_gameobjects::set2DIcon( "enemy", level.iconEscort2D );
|
||||
teamFlag maps\mp\gametypes\_gameobjects::set3DIcon( "enemy", level.iconEscort3D );
|
||||
|
||||
teamFlag maps\mp\gametypes\_gameobjects::setCarryIcon( level.icon2D[team] );
|
||||
teamFlag.objIDPingFriendly = true;
|
||||
teamFlag.allowWeapons = true;
|
||||
teamFlag.onPickup = ::onPickup;
|
||||
teamFlag.onPickupFailed = ::onPickup;
|
||||
teamFlag.onDrop = ::onDrop;
|
||||
teamFlag.onReset = ::onReset;
|
||||
|
||||
teamFlag.oldRadius = trigger.radius;
|
||||
|
||||
traceStart = trigger.origin + (0,0,32);
|
||||
traceEnd = trigger.origin + (0,0,-32);
|
||||
trace = bulletTrace( traceStart, traceEnd, false, undefined );
|
||||
|
||||
fx = maps\mp\gametypes\_teams::getTeamFlagFX( team );
|
||||
fxid = loadfx( fx );
|
||||
|
||||
upangles = vectorToAngles( trace["normal"] );
|
||||
forward = anglesToForward( upangles );
|
||||
right = anglesToRight( upangles );
|
||||
|
||||
thread spawnFxDelay( fxid, trace["position"], forward, right, 0.5 );
|
||||
|
||||
return teamFlag;
|
||||
}
|
||||
|
||||
createCapZone( team, entityTeam )
|
||||
{
|
||||
trigger = getEnt( "ctf_zone_" + entityTeam, "targetname" );
|
||||
if ( !isDefined( trigger ) )
|
||||
{
|
||||
error("No ctf_zone_" + entityTeam + " trigger found in map.");
|
||||
return;
|
||||
}
|
||||
|
||||
visuals = [];
|
||||
capZone = maps\mp\gametypes\_gameobjects::createUseObject( team, trigger, visuals, (0,0,85) );
|
||||
capZone maps\mp\gametypes\_gameobjects::allowUse( "friendly" );
|
||||
|
||||
capZone maps\mp\gametypes\_gameobjects::setVisibleTeam( "any" );
|
||||
capZone maps\mp\gametypes\_gameobjects::set2DIcon( "friendly", level.iconDefendFlag2D );
|
||||
capZone maps\mp\gametypes\_gameobjects::set3DIcon( "friendly", level.iconDefendFlag3D );
|
||||
capZone maps\mp\gametypes\_gameobjects::set2DIcon( "enemy", level.iconCaptureFlag2D );
|
||||
capZone maps\mp\gametypes\_gameobjects::set3DIcon( "enemy", level.iconCaptureFlag3D );
|
||||
|
||||
capZone maps\mp\gametypes\_gameobjects::setUseTime( 0 );
|
||||
capZone maps\mp\gametypes\_gameobjects::setKeyObject( level.teamFlags[ getOtherTeam( team ) ] );
|
||||
|
||||
capZone.onUse = ::onUse;
|
||||
capZone.onCantUse = ::onCantUse;
|
||||
|
||||
traceStart = trigger.origin + (0,0,32);
|
||||
traceEnd = trigger.origin + (0,0,-32);
|
||||
trace = bulletTrace( traceStart, traceEnd, false, undefined );
|
||||
|
||||
fx = maps\mp\gametypes\_teams::getTeamFlagFX( team );
|
||||
fxid = loadfx( fx );
|
||||
|
||||
upangles = vectorToAngles( trace["normal"] );
|
||||
forward = anglesToForward( upangles );
|
||||
right = anglesToRight( upangles );
|
||||
|
||||
thread spawnFxDelay( fxid, trace["position"], forward, right, 0.5 );
|
||||
|
||||
return capZone;
|
||||
}
|
||||
|
||||
|
||||
onBeginUse( player )
|
||||
{
|
||||
team = player.pers["team"];
|
||||
|
||||
if ( team == self maps\mp\gametypes\_gameobjects::getOwnerTeam() )
|
||||
self.trigger.radius = 1024;
|
||||
else
|
||||
self.trigger.radius = self.oldRadius;
|
||||
}
|
||||
|
||||
|
||||
onEndUse( player, team, success )
|
||||
{
|
||||
self.trigger.radius = self.oldRadius;
|
||||
}
|
||||
|
||||
|
||||
onPickup( player )
|
||||
{
|
||||
self notify ( "picked_up" );
|
||||
|
||||
team = player.pers["team"];
|
||||
|
||||
if ( team == "allies" )
|
||||
otherTeam = "axis";
|
||||
else
|
||||
otherTeam = "allies";
|
||||
|
||||
if ( team == self maps\mp\gametypes\_gameobjects::getOwnerTeam() )
|
||||
{
|
||||
player thread maps\mp\gametypes\_hud_message::SplashNotify( "flagreturn", maps\mp\gametypes\_rank::getScoreInfoValue( "return" ) );
|
||||
player thread [[level.onXPEvent]]( "return" );
|
||||
self thread returnFlag();
|
||||
player incPlayerStat( "flagsreturned", 1 );
|
||||
player thread maps\mp\_matchdata::logGameEvent( "return", player.origin );
|
||||
|
||||
printAndSoundOnEveryone( team, getOtherTeam( team ), &"MP_FLAG_RETURNED", &"MP_ENEMY_FLAG_RETURNED", "mp_obj_returned", "mp_obj_returned", "" );
|
||||
leaderDialog( "enemy_flag_returned", otherteam, "status" );
|
||||
leaderDialog( "flag_returned", team, "status" );
|
||||
|
||||
level.friendlyFlagStatusText[team] setText( &"OBJECTIVES_FLAG_HOME" );
|
||||
level.friendlyFlagStatusText[team].glowColor = (1,1,1);
|
||||
level.friendlyFlagStatusText[team].glowAlpha = 0;
|
||||
level.enemyFlagStatusText[otherTeam] setText( &"OBJECTIVES_FLAG_HOME" );
|
||||
level.enemyFlagStatusText[otherTeam].glowColor = (1,1,1);
|
||||
level.enemyFlagStatusText[otherTeam].glowAlpha = 0;
|
||||
}
|
||||
else
|
||||
{
|
||||
if ( inOvertime() )
|
||||
{
|
||||
if ( isDefined( level.flagCaptured ) )
|
||||
{
|
||||
// denied splash!
|
||||
return;
|
||||
}
|
||||
|
||||
level thread teamPlayerCardSplash( "callout_grabbedtheflag", player );
|
||||
|
||||
level.teamFlags[team] maps\mp\gametypes\_gameobjects::allowUse( "none" );
|
||||
level.teamFlags[otherTeam] maps\mp\gametypes\_gameobjects::allowUse( "none" );
|
||||
level.capZones[team] maps\mp\gametypes\_gameobjects::setVisibleTeam( "none" );
|
||||
level.capZones[otherTeam] maps\mp\gametypes\_gameobjects::setVisibleTeam( "none" );
|
||||
|
||||
level.flagCaptured = true;
|
||||
|
||||
//wait ( 1.5 );
|
||||
|
||||
maps\mp\gametypes\_gamescore::giveTeamScoreForObjective( team, 1 );
|
||||
thread maps\mp\gametypes\_gamelogic::endGame( "winner", game["strings"]["grabbed_flag"] );
|
||||
}
|
||||
|
||||
player attachFlag();
|
||||
|
||||
level.friendlyFlagStatusText[otherTeam] setPlayerNameString( player );
|
||||
level.friendlyFlagStatusText[otherTeam].glowColor = (0.75,0.25,0.25);
|
||||
level.friendlyFlagStatusText[otherTeam].glowAlpha = 1;
|
||||
|
||||
level.enemyFlagStatusText[team] setPlayerNameString( player );
|
||||
level.enemyFlagStatusText[team].glowColor = (0.25,0.75,0.25);
|
||||
level.enemyFlagStatusText[team].glowAlpha = 1;
|
||||
|
||||
self maps\mp\gametypes\_gameobjects::setVisibleTeam( "any" );
|
||||
self maps\mp\gametypes\_gameobjects::set2DIcon( "friendly", level.iconKill2D );
|
||||
self maps\mp\gametypes\_gameobjects::set3DIcon( "friendly", level.iconKill3D );
|
||||
self maps\mp\gametypes\_gameobjects::set2DIcon( "enemy", level.iconEscort2D );
|
||||
self maps\mp\gametypes\_gameobjects::set3DIcon( "enemy", level.iconEscort3D );
|
||||
|
||||
level.capZones[otherTeam] maps\mp\gametypes\_gameobjects::allowUse( "none" );
|
||||
level.capZones[otherTeam] maps\mp\gametypes\_gameobjects::setVisibleTeam( "none" );
|
||||
//level.capZones[otherTeam] maps\mp\gametypes\_gameobjects::set3DIcon( "friendly", level.iconKill3D );
|
||||
//level.capZones[otherTeam] maps\mp\gametypes\_gameobjects::set2DIcon( "friendly", level.iconKill3D );
|
||||
|
||||
if ( !level.teamFlags[ team ] maps\mp\gametypes\_gameobjects::isHome() )
|
||||
{
|
||||
level.capZones[ team ].trigger maps\mp\_entityheadIcons::setHeadIcon( player, level.iconWaitForFlag3D, (0,0,85) );
|
||||
|
||||
if ( isDefined( level.teamFlags[ team ].carrier ) )
|
||||
level.capZones[ otherTeam ].trigger maps\mp\_entityheadIcons::setHeadIcon( level.teamFlags[ team ].carrier, level.iconWaitForFlag3D, (0,0,85) );
|
||||
}
|
||||
|
||||
printAndSoundOnEveryone( team, otherteam, &"MP_ENEMY_FLAG_TAKEN_BY", &"MP_FLAG_TAKEN_BY", "mp_obj_taken", "mp_enemy_obj_taken", player );
|
||||
|
||||
leaderDialog( "enemy_flag_taken", team, "status" );
|
||||
leaderDialog( "flag_taken", otherteam, "status" );
|
||||
|
||||
thread teamPlayerCardSplash( "callout_flagpickup", player );
|
||||
player thread maps\mp\gametypes\_hud_message::SplashNotify( "flagpickup", maps\mp\gametypes\_rank::getScoreInfoValue( "pickup" ) );
|
||||
maps\mp\gametypes\_gamescore::givePlayerScore( "pickup", player );
|
||||
player thread [[level.onXPEvent]]( "pickup" );
|
||||
player incPlayerStat( "flagscarried", 1 );
|
||||
player thread maps\mp\_matchdata::logGameEvent( "pickup", player.origin );
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
returnFlag()
|
||||
{
|
||||
self maps\mp\gametypes\_gameobjects::returnHome();
|
||||
}
|
||||
|
||||
|
||||
onDrop( player )
|
||||
{
|
||||
team = self maps\mp\gametypes\_gameobjects::getOwnerTeam();
|
||||
otherTeam = level.otherTeam[team];
|
||||
|
||||
self maps\mp\gametypes\_gameobjects::allowCarry( "any" );
|
||||
self maps\mp\gametypes\_gameobjects::setVisibleTeam( "any" );
|
||||
self maps\mp\gametypes\_gameobjects::set2DIcon( "friendly", level.iconReturnFlag2D );
|
||||
self maps\mp\gametypes\_gameobjects::set3DIcon( "friendly", level.iconReturnFlag3D );
|
||||
self maps\mp\gametypes\_gameobjects::set2DIcon( "enemy", level.iconCaptureFlag2D );
|
||||
self maps\mp\gametypes\_gameobjects::set3DIcon( "enemy", level.iconCaptureFlag3D );
|
||||
|
||||
level.friendlyFlagStatusText[team] setText( &"OBJECTIVES_FLAG_AWAY" );
|
||||
level.friendlyFlagStatusText[team].glowColor = (1,1,1);
|
||||
level.friendlyFlagStatusText[team].glowAlpha = 0;
|
||||
level.enemyFlagStatusText[otherTeam] setText( &"OBJECTIVES_FLAG_AWAY" );
|
||||
level.enemyFlagStatusText[otherTeam].glowColor = (1,1,1);
|
||||
level.enemyFlagStatusText[otherTeam].glowAlpha = 0;
|
||||
|
||||
level.capZones[otherTeam].trigger maps\mp\_entityheadIcons::setHeadIcon( "none", "", (0,0,0) );
|
||||
|
||||
if ( isDefined( player ) )
|
||||
{
|
||||
if ( isDefined( player.carryFlag ) )
|
||||
player detachFlag();
|
||||
|
||||
printAndSoundOnEveryone( otherTeam, "none", &"MP_ENEMY_FLAG_DROPPED_BY", "", "mp_war_objective_lost", "", player );
|
||||
}
|
||||
else
|
||||
{
|
||||
playSoundOnPlayers( "mp_war_objective_lost", otherTeam );
|
||||
}
|
||||
|
||||
leaderDialog( "enemy_flag_dropped", otherTeam, "status" );
|
||||
leaderDialog( "flag_dropped", team, "status" );
|
||||
|
||||
self thread returnAfterTime();
|
||||
}
|
||||
|
||||
returnAfterTime()
|
||||
{
|
||||
self endon ( "picked_up" );
|
||||
|
||||
wait ( level.flagReturnTime );
|
||||
|
||||
self maps\mp\gametypes\_gameobjects::returnHome();
|
||||
}
|
||||
|
||||
|
||||
onReset()
|
||||
{
|
||||
team = self maps\mp\gametypes\_gameobjects::getOwnerTeam();
|
||||
otherTeam = level.otherTeam[team];
|
||||
|
||||
self maps\mp\gametypes\_gameobjects::allowCarry( "enemy" );
|
||||
self maps\mp\gametypes\_gameobjects::setVisibleTeam( "none" );
|
||||
self maps\mp\gametypes\_gameobjects::set2DIcon( "friendly", level.iconKill2D );
|
||||
self maps\mp\gametypes\_gameobjects::set3DIcon( "friendly", level.iconKill3D );
|
||||
self maps\mp\gametypes\_gameobjects::set2DIcon( "enemy", level.iconEscort2D );
|
||||
self maps\mp\gametypes\_gameobjects::set3DIcon( "enemy", level.iconEscort3D );
|
||||
|
||||
level.friendlyFlagStatusText[team] setText( &"OBJECTIVES_FLAG_HOME" );
|
||||
level.friendlyFlagStatusText[team].glowColor = (1,1,1);
|
||||
level.friendlyFlagStatusText[team].glowAlpha = 0;
|
||||
|
||||
level.enemyFlagStatusText[otherTeam] setText( &"OBJECTIVES_FLAG_HOME" );
|
||||
level.enemyFlagStatusText[otherTeam].glowColor = (1,1,1);
|
||||
level.enemyFlagStatusText[otherTeam].glowAlpha = 0;
|
||||
|
||||
level.capZones[team] maps\mp\gametypes\_gameobjects::allowUse( "friendly" );
|
||||
level.capZones[team] maps\mp\gametypes\_gameobjects::setVisibleTeam( "any" );
|
||||
level.capZones[team] maps\mp\gametypes\_gameobjects::set2DIcon( "friendly", level.iconDefendFlag2D );
|
||||
level.capZones[team] maps\mp\gametypes\_gameobjects::set3DIcon( "friendly", level.iconDefendFlag3D );
|
||||
level.capZones[team] maps\mp\gametypes\_gameobjects::set2DIcon( "enemy", level.iconCaptureFlag2D );
|
||||
level.capZones[team] maps\mp\gametypes\_gameobjects::set3DIcon( "enemy", level.iconCaptureFlag3D );
|
||||
|
||||
level.capZones[team].trigger maps\mp\_entityheadIcons::setHeadIcon( "none", "", (0,0,0) );
|
||||
}
|
||||
|
||||
|
||||
onUse( player )
|
||||
{
|
||||
team = player.pers["team"];
|
||||
if ( team == "allies" )
|
||||
otherTeam = "axis";
|
||||
else
|
||||
otherTeam = "allies";
|
||||
|
||||
leaderDialog( "enemy_flag_captured", team, "status" );
|
||||
leaderDialog( "flag_captured", otherteam, "status" );
|
||||
|
||||
thread teamPlayerCardSplash( "callout_flagcapture", player );
|
||||
maps\mp\gametypes\_gamescore::giveTeamScoreForObjective( team, 1 );
|
||||
player thread maps\mp\gametypes\_hud_message::SplashNotify( "flag_capture", maps\mp\gametypes\_rank::getScoreInfoValue( "capture" ) );
|
||||
maps\mp\gametypes\_gamescore::givePlayerScore( "capture", player );
|
||||
player thread [[level.onXPEvent]]( "capture" );
|
||||
player incPlayerStat( "flagscaptured", 1 );
|
||||
player notify( "objective", "captured" );
|
||||
player thread maps\mp\_matchdata::logGameEvent( "capture", player.origin );
|
||||
|
||||
printAndSoundOnEveryone( team, otherteam, &"MP_ENEMY_FLAG_CAPTURED_BY", &"MP_FLAG_CAPTURED_BY", "mp_obj_captured", "mp_enemy_obj_captured", player );
|
||||
|
||||
if ( isDefined( player.carryFlag ) )
|
||||
player detachFlag();
|
||||
|
||||
level.teamFlags[otherTeam] returnFlag();
|
||||
}
|
||||
|
||||
|
||||
onCantUse( player )
|
||||
{
|
||||
// player iPrintLnBold( &"MP_CANT_PLANT_WITHOUT_BOMB" );
|
||||
}
|
||||
|
||||
|
||||
onPlayerKilled( eInflictor, attacker, iDamage, sMeansOfDeath, sWeapon, vDir, sHitLoc, psOffsetTime, deathAnimDuration, killId )
|
||||
{
|
||||
if ( isDefined( attacker ) && isPlayer( attacker ) && attacker.pers["team"] != self.pers["team"] )
|
||||
{
|
||||
if ( isDefined( attacker.carryFlag ) )
|
||||
attacker incPlayerStat( "killsasflagcarrier", 1 );
|
||||
|
||||
if ( isDefined( self.carryFlag ) )
|
||||
{
|
||||
attacker thread [[level.onXPEvent]]( "kill_carrier" );
|
||||
maps\mp\gametypes\_gamescore::givePlayerScore( "kill_carrier", attacker );
|
||||
attacker incPlayerStat( "flagcarrierkills", 1 );
|
||||
|
||||
thread maps\mp\_matchdata::logKillEvent( killId, "carrying" );
|
||||
|
||||
self detachFlag();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
attachFlag()
|
||||
{
|
||||
otherTeam = level.otherTeam[self.pers["team"]];
|
||||
|
||||
self attach( level.carryFlag[otherTeam], "J_spine4", true );
|
||||
self.carryFlag = level.carryFlag[otherTeam];
|
||||
}
|
||||
|
||||
detachFlag()
|
||||
{
|
||||
self detach( self.carryFlag, "J_spine4" );
|
||||
self.carryFlag = undefined;
|
||||
}
|
||||
|
||||
initGametypeAwards()
|
||||
{
|
||||
maps\mp\_awards::initStatAward( "flagscaptured", 0, maps\mp\_awards::highestWins );
|
||||
maps\mp\_awards::initStatAward( "flagsreturned", 0, maps\mp\_awards::highestWins );
|
||||
maps\mp\_awards::initStatAward( "flagcarrierkills", 0, maps\mp\_awards::highestWins );
|
||||
maps\mp\_awards::initStatAward( "flagscarried", 0, maps\mp\_awards::highestWins );
|
||||
maps\mp\_awards::initStatAward( "killsasflagcarrier", 0, maps\mp\_awards::highestWins );
|
||||
}
|
||||
@@ -0,0 +1,909 @@
|
||||
#include common_scripts\utility;
|
||||
#include maps\mp\_utility;
|
||||
#include maps\mp\gametypes\_hud_util;
|
||||
|
||||
/*
|
||||
Action SAB/SD = DD
|
||||
Attackers objective: Bomb both of 2 positions
|
||||
Defenders objective: Defend these 2 positions / Defuse planted bombs
|
||||
Round ends: When one team defends for duration of match, both sites are destroyed.
|
||||
Map ends: When one team reaches the score limit, or time limit or round limit is reached
|
||||
Respawning: Players respawn indefinetly and immediately
|
||||
|
||||
Level requirements
|
||||
------------------
|
||||
Allied Spawnpoints:
|
||||
classname mp_sd_spawn_attacker
|
||||
Allied players spawn from these. Place at least 16 of these relatively close together.
|
||||
|
||||
Axis Spawnpoints:
|
||||
classname mp_sd_spawn_defender
|
||||
Axis players spawn from these. Place at least 16 of these relatively close together.
|
||||
|
||||
Spectator Spawnpoints:
|
||||
classname mp_global_intermission
|
||||
Spectators spawn from these and intermission is viewed from these positions.
|
||||
Atleast one is required, any more and they are randomly chosen between.
|
||||
|
||||
Bombzones:
|
||||
classname trigger_multiple
|
||||
targetname bombzone
|
||||
script_gameobjectname bombzone
|
||||
script_bombmode_original <if defined this bombzone will be used in the original bomb mode>
|
||||
script_bombmode_single <if defined this bombzone will be used in the single bomb mode>
|
||||
script_bombmode_dual <if defined this bombzone will be used in the dual bomb mode>
|
||||
script_team Set to allies or axis. This is used to set which team a bombzone is used by in dual bomb mode.
|
||||
script_label Set to A or B. This sets the letter shown on the compass in original mode.
|
||||
This is a volume of space in which the bomb can planted. Must contain an origin brush.
|
||||
|
||||
Bomb:
|
||||
classname trigger_lookat
|
||||
targetname bombtrigger
|
||||
script_gameobjectname bombzone
|
||||
This should be a 16x16 unit trigger with an origin brush placed so that it's center lies on the bottom plane of the trigger.
|
||||
Must be in the level somewhere. This is the trigger that is used when defusing a bomb.
|
||||
It gets moved to the position of the planted bomb model.
|
||||
|
||||
Level script requirements
|
||||
-------------------------
|
||||
Team Definitions:
|
||||
game["attackers"] = "allies";
|
||||
game["defenders"] = "axis";
|
||||
This sets which team is attacking and which team is defending. Attackers plant the bombs. Defenders protect the targets.
|
||||
|
||||
Exploder Effects:
|
||||
Setting script_noteworthy on a bombzone trigger to an exploder group can be used to trigger additional effects.
|
||||
|
||||
multiple bombs
|
||||
multiple targets
|
||||
spawning
|
||||
round handling when both sites are destroyed
|
||||
|
||||
*/
|
||||
|
||||
/*QUAKED mp_dd_spawn_attacker_a (0.75 0.0 0.5) (-16 -16 0) (16 16 72)
|
||||
Axis players spawn near bomb a.*/
|
||||
|
||||
/*QUAKED mp_dd_spawn_attacker_b (0.75 0.0 0.5) (-16 -16 0) (16 16 72)
|
||||
Axis players spawn near bomb b.*/
|
||||
|
||||
/*QUAKED mp_dd_spawn_attacker (0.75 0.0 0.5) (-16 -16 0) (16 16 72)
|
||||
Axis players spawn away from enemies and near their team at one of these positions.*/
|
||||
|
||||
/*QUAKED mp_dd_spawn_defender (0.0 0.75 0.5) (-16 -16 0) (16 16 72)
|
||||
Allied players spawn away from enemies and near their team at one of these positions.*/
|
||||
|
||||
/*QUAKED mp_dd_spawn_defender_a (0.0 0.75 0.5) (-16 -16 0) (16 16 72)
|
||||
Allied players spawn near bomb site a.*/
|
||||
|
||||
/*QUAKED mp_dd_spawn_defender_b (0.0 0.75 0.5) (-16 -16 0) (16 16 72)
|
||||
Allied players spawn near bomb site b.*/
|
||||
|
||||
/*QUAKED mp_dd_spawn_attacker_start (0.0 1.0 0.0) (-16 -16 0) (16 16 72)
|
||||
Attacking players spawn randomly at one of these positions at the beginning of a round.*/
|
||||
|
||||
/*QUAKED mp_dd_spawn_defender_start (1.0 0.0 0.0) (-16 -16 0) (16 16 72)
|
||||
Defending players spawn randomly at one of these positions at the beginning of a round.*/
|
||||
|
||||
main()
|
||||
{
|
||||
if(getdvar("mapname") == "mp_background")
|
||||
return;
|
||||
|
||||
maps\mp\gametypes\_globallogic::init();
|
||||
maps\mp\gametypes\_callbacksetup::SetupCallbacks();
|
||||
maps\mp\gametypes\_globallogic::SetupCallbacks();
|
||||
|
||||
registerRoundSwitchDvar( level.gameType, 1, 0, 9 );
|
||||
registerTimeLimitDvar( level.gameType, 3, 0, 1440 );
|
||||
registerScoreLimitDvar( level.gameType, 0, 0, 500 );
|
||||
registerRoundLimitDvar( level.gameType, 3, 0, 12 );
|
||||
registerWinLimitDvar( level.gameType, 2, 0, 12 );
|
||||
registerNumLivesDvar( level.gameType, 0, 0, 10 );
|
||||
registerHalfTimeDvar( level.gameType, 0, 0, 1 );
|
||||
|
||||
level.objectiveBased = true;
|
||||
level.teamBased = true;
|
||||
level.onPrecacheGameType = ::onPrecacheGameType;
|
||||
level.onStartGameType = ::onStartGameType;
|
||||
level.getSpawnPoint = ::getSpawnPoint;
|
||||
level.onSpawnPlayer = ::onSpawnPlayer;
|
||||
level.onDeadEvent = ::onDeadEvent;
|
||||
level.onTimeLimit = ::onTimeLimit;
|
||||
level.onNormalDeath = ::onNormalDeath;
|
||||
level.initGametypeAwards = ::initGametypeAwards;
|
||||
level.dd = true;
|
||||
level.bombsPlanted = 0;
|
||||
level.ddBombModel = []
|
||||
|
||||
setBombTimerDvar();
|
||||
|
||||
makeDvarServerInfo( "ui_bombtimer_a", -1 );
|
||||
makeDvarServerInfo( "ui_bombtimer_b", -1 );
|
||||
|
||||
game["dialog"]["gametype"] = "demolition";
|
||||
|
||||
if ( getDvarInt( "g_hardcore" ) )
|
||||
game["dialog"]["gametype"] = "hc_" + game["dialog"]["gametype"];
|
||||
else if ( getDvarInt( "camera_thirdPerson" ) )
|
||||
game["dialog"]["gametype"] = "thirdp_" + game["dialog"]["gametype"];
|
||||
else if ( getDvarInt( "scr_diehard" ) )
|
||||
game["dialog"]["gametype"] = "dh_" + game["dialog"]["gametype"];
|
||||
else if (getDvarInt( "scr_" + level.gameType + "_promode" ) )
|
||||
game["dialog"]["gametype"] = game["dialog"]["gametype"] + "_pro";
|
||||
|
||||
game["dialog"]["offense_obj"] = "obj_destroy";
|
||||
game["dialog"]["defense_obj"] = "obj_defend";
|
||||
}
|
||||
|
||||
|
||||
onPrecacheGameType()
|
||||
{
|
||||
game["bomb_dropped_sound"] = "mp_war_objective_lost";
|
||||
game["bomb_recovered_sound"] = "mp_war_objective_taken";
|
||||
|
||||
precacheShader("waypoint_bomb");
|
||||
precacheShader("hud_suitcase_bomb");
|
||||
precacheShader("waypoint_target");
|
||||
precacheShader("waypoint_target_a");
|
||||
precacheShader("waypoint_target_b");
|
||||
precacheShader("waypoint_defend");
|
||||
precacheShader("waypoint_defend_a");
|
||||
precacheShader("waypoint_defend_b");
|
||||
precacheShader("waypoint_defuse_a");
|
||||
precacheShader("waypoint_defuse_b");
|
||||
precacheShader("waypoint_target");
|
||||
precacheShader("waypoint_target_a");
|
||||
precacheShader("waypoint_target_b");
|
||||
precacheShader("waypoint_defend");
|
||||
precacheShader("waypoint_defend_a");
|
||||
precacheShader("waypoint_defend_b");
|
||||
precacheShader("waypoint_defuse");
|
||||
precacheShader("waypoint_defuse_a");
|
||||
precacheShader("waypoint_defuse_b");
|
||||
|
||||
precacheString( &"MP_EXPLOSIVES_RECOVERED_BY" );
|
||||
precacheString( &"MP_EXPLOSIVES_DROPPED_BY" );
|
||||
precacheString( &"MP_EXPLOSIVES_PLANTED_BY" );
|
||||
precacheString( &"MP_EXPLOSIVES_DEFUSED_BY" );
|
||||
precacheString( &"PLATFORM_HOLD_TO_PLANT_EXPLOSIVES" );
|
||||
precacheString( &"PLATFORM_HOLD_TO_DEFUSE_EXPLOSIVES" );
|
||||
precacheString( &"MP_CANT_PLANT_WITHOUT_BOMB" );
|
||||
precacheString( &"MP_PLANTING_EXPLOSIVE" );
|
||||
precacheString( &"MP_DEFUSING_EXPLOSIVE" );
|
||||
precacheString( &"MP_BOMB_A_TIMER" );
|
||||
precacheString( &"MP_BOMB_B_TIMER" );
|
||||
precacheString( &"MP_BOMBSITE_IN_USE" );
|
||||
}
|
||||
|
||||
onStartGameType()
|
||||
{
|
||||
if ( !isDefined( game["switchedsides"] ) )
|
||||
game["switchedsides"] = false;
|
||||
|
||||
if ( game["switchedsides"] )
|
||||
{
|
||||
oldAttackers = game["attackers"];
|
||||
oldDefenders = game["defenders"];
|
||||
game["attackers"] = oldDefenders;
|
||||
game["defenders"] = oldAttackers;
|
||||
}
|
||||
|
||||
level.useStartSpawns = true;
|
||||
|
||||
setClientNameMode( "manual_change" );
|
||||
|
||||
game["strings"]["target_destroyed"] = &"MP_TARGET_DESTROYED";
|
||||
game["strings"]["bomb_defused"] = &"MP_BOMB_DEFUSED";
|
||||
|
||||
precacheString( game["strings"]["target_destroyed"] );
|
||||
precacheString( game["strings"]["bomb_defused"] );
|
||||
|
||||
level._effect["bombexplosion"] = loadfx("explosions/tanker_explosion");
|
||||
|
||||
setObjectiveText( game["attackers"], &"OBJECTIVES_DD_ATTACKER" );
|
||||
setObjectiveText( game["defenders"], &"OBJECTIVES_DD_DEFENDER" );
|
||||
|
||||
if ( level.splitscreen )
|
||||
{
|
||||
setObjectiveScoreText( game["attackers"], &"OBJECTIVES_DD_ATTACKER" );
|
||||
setObjectiveScoreText( game["defenders"], &"OBJECTIVES_DD_DEFENDER" );
|
||||
}
|
||||
else
|
||||
{
|
||||
setObjectiveScoreText( game["attackers"], &"OBJECTIVES_DD_ATTACKER_SCORE" );
|
||||
setObjectiveScoreText( game["defenders"], &"OBJECTIVES_DD_DEFENDER_SCORE" );
|
||||
}
|
||||
setObjectiveHintText( game["attackers"], &"OBJECTIVES_DD_ATTACKER_HINT" );
|
||||
setObjectiveHintText( game["defenders"], &"OBJECTIVES_DD_DEFENDER_HINT" );
|
||||
|
||||
level.spawnMins = ( 0, 0, 0 );
|
||||
level.spawnMaxs = ( 0, 0, 0 );
|
||||
|
||||
|
||||
if ( getDvar( "mapname" ) == "mp_shipment_long" )
|
||||
maps\mp\gametypes\_spawnlogic::addSpawnPoints( game["defenders"], "mp_cha_spawn_axis" );
|
||||
else
|
||||
maps\mp\gametypes\_spawnlogic::addSpawnPoints( game["defenders"], "mp_dd_spawn_defender" );
|
||||
|
||||
maps\mp\gametypes\_spawnlogic::addSpawnPoints( game["defenders"], "mp_dd_spawn_defender_a", true );
|
||||
maps\mp\gametypes\_spawnlogic::addSpawnPoints( game["defenders"], "mp_dd_spawn_defender_b", true );
|
||||
|
||||
if ( getDvar( "mapname" ) == "mp_shipment_long" )
|
||||
maps\mp\gametypes\_spawnlogic::placeSpawnPoints( "mp_cha_spawn_axis_start" );
|
||||
else
|
||||
maps\mp\gametypes\_spawnlogic::placeSpawnPoints( "mp_dd_spawn_defender_start" );
|
||||
|
||||
if ( getDvar( "mapname" ) == "mp_shipment_long" )
|
||||
maps\mp\gametypes\_spawnlogic::addSpawnPoints( game["attackers"], "mp_cha_spawn_allies" );
|
||||
else
|
||||
maps\mp\gametypes\_spawnlogic::addSpawnPoints( game["attackers"], "mp_dd_spawn_attacker" );
|
||||
|
||||
maps\mp\gametypes\_spawnlogic::addSpawnPoints( game["attackers"], "mp_dd_spawn_attacker_a", true );
|
||||
maps\mp\gametypes\_spawnlogic::addSpawnPoints( game["attackers"], "mp_dd_spawn_attacker_b", true );
|
||||
|
||||
if ( getDvar( "mapname" ) == "mp_shipment_long" )
|
||||
maps\mp\gametypes\_spawnlogic::placeSpawnPoints( "mp_cha_spawn_allies_start" );
|
||||
else
|
||||
maps\mp\gametypes\_spawnlogic::placeSpawnPoints( "mp_dd_spawn_attacker_start" );
|
||||
|
||||
if ( getDvar( "mapname" ) == "mp_shipment_long" )
|
||||
level.spawn_attackers = maps\mp\gametypes\_spawnlogic::getSpawnpointArray( "mp_cha_spawn_axis" );
|
||||
else
|
||||
level.spawn_attackers = maps\mp\gametypes\_spawnlogic::getSpawnpointArray( "mp_dd_spawn_defender" );
|
||||
|
||||
level.spawn_defenders_a = maps\mp\gametypes\_spawnlogic::getSpawnpointArray( "mp_dd_spawn_defender_a" );
|
||||
level.spawn_defenders_a = array_combine( level.spawn_defenders, level.spawn_defenders_a );
|
||||
level.spawn_defenders_b = maps\mp\gametypes\_spawnlogic::getSpawnpointArray( "mp_dd_spawn_defender_b" );
|
||||
level.spawn_defenders_b = array_combine( level.spawn_defenders, level.spawn_defenders_b );
|
||||
|
||||
if ( getDvar( "mapname" ) == "mp_shipment_long" )
|
||||
level.spawn_attackers = maps\mp\gametypes\_spawnlogic::getSpawnpointArray( "mp_cha_spawn_allies" );
|
||||
else
|
||||
level.spawn_attackers = maps\mp\gametypes\_spawnlogic::getSpawnpointArray( "mp_dd_spawn_attacker" );
|
||||
|
||||
level.spawn_attackers_a = maps\mp\gametypes\_spawnlogic::getSpawnpointArray( "mp_dd_spawn_attacker_a" );
|
||||
level.spawn_attackers_a = array_combine( level.spawn_attackers, level.spawn_attackers_a );
|
||||
level.spawn_attackers_b = maps\mp\gametypes\_spawnlogic::getSpawnpointArray( "mp_dd_spawn_attacker_b" );
|
||||
level.spawn_attackers_b = array_combine( level.spawn_attackers, level.spawn_attackers_b );
|
||||
|
||||
if ( getDvar( "mapname" ) == "mp_shipment_long" )
|
||||
{
|
||||
level.spawn_defenders_start = maps\mp\gametypes\_spawnlogic::getSpawnpointArray( "mp_cha_spawn_axis_start" );
|
||||
level.spawn_attackers_start = maps\mp\gametypes\_spawnlogic::getSpawnpointArray( "mp_cha_spawn_allies_start" );
|
||||
}
|
||||
else
|
||||
{
|
||||
level.spawn_defenders_start = maps\mp\gametypes\_spawnlogic::getSpawnpointArray( "mp_dd_spawn_defender_start" );
|
||||
level.spawn_attackers_start = maps\mp\gametypes\_spawnlogic::getSpawnpointArray( "mp_dd_spawn_attacker_start" );
|
||||
}
|
||||
|
||||
level.mapCenter = maps\mp\gametypes\_spawnlogic::findBoxCenter( level.spawnMins, level.spawnMaxs );
|
||||
level.aPlanted = false;
|
||||
level.bPlanted = false;
|
||||
|
||||
setMapCenter( level.mapCenter );
|
||||
|
||||
maps\mp\gametypes\_rank::registerScoreInfo( "win", 2 );
|
||||
maps\mp\gametypes\_rank::registerScoreInfo( "loss", 1 );
|
||||
maps\mp\gametypes\_rank::registerScoreInfo( "tie", 1.5 );
|
||||
|
||||
maps\mp\gametypes\_rank::registerScoreInfo( "kill", 50 );
|
||||
maps\mp\gametypes\_rank::registerScoreInfo( "headshot", 50 );
|
||||
maps\mp\gametypes\_rank::registerScoreInfo( "assist", 20 );
|
||||
maps\mp\gametypes\_rank::registerScoreInfo( "plant", 100 );
|
||||
maps\mp\gametypes\_rank::registerScoreInfo( "defuse", 100 );
|
||||
|
||||
thread updateGametypeDvars();
|
||||
thread waitToProcess();
|
||||
|
||||
winlimit = getWatchedDvar("winlimit");
|
||||
|
||||
allowed[0] = "dd";
|
||||
bombZones = getEntArray( "dd_bombzone", "targetname" );
|
||||
if ( bombZones.size )
|
||||
allowed[1] = "dd_bombzone";
|
||||
else
|
||||
allowed[1] = "bombzone";
|
||||
allowed[2] = "blocker";
|
||||
maps\mp\gametypes\_gameobjects::main(allowed);
|
||||
|
||||
thread bombs();
|
||||
}
|
||||
|
||||
waitToProcess()
|
||||
{
|
||||
level endon( "game_end" );
|
||||
|
||||
for ( ;; )
|
||||
{
|
||||
if ( level.inGracePeriod == 0 )
|
||||
break;
|
||||
|
||||
wait ( 0.05 );
|
||||
}
|
||||
|
||||
level.useStartSpawns = false;
|
||||
|
||||
}
|
||||
|
||||
getSpawnPoint()
|
||||
{
|
||||
spawnteam = self.pers["team"];
|
||||
|
||||
if ( level.useStartSpawns )
|
||||
{
|
||||
if ( spawnteam == game["attackers"] )
|
||||
spawnpoint = maps\mp\gametypes\_spawnlogic::getSpawnpoint_Random(level.spawn_attackers_start);
|
||||
else
|
||||
spawnpoint = maps\mp\gametypes\_spawnlogic::getSpawnpoint_Random(level.spawn_defenders_start);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (spawnteam == game["attackers"] )
|
||||
{
|
||||
if ( (!level.aPlanted && !level.bPlanted) )
|
||||
spawnPoints = maps\mp\gametypes\_spawnlogic::getTeamSpawnPoints( spawnteam );
|
||||
else if ( level.aPlanted && !level.bPlanted )
|
||||
spawnPoints = level.spawn_attackers_a;
|
||||
else if ( level.bPlanted && !level.aPlanted )
|
||||
spawnPoints = level.spawn_attackers_b;
|
||||
else
|
||||
spawnPoints = maps\mp\gametypes\_spawnlogic::getTeamSpawnPoints( spawnteam );
|
||||
|
||||
spawnpoint = maps\mp\gametypes\_spawnlogic::getSpawnpoint_NearTeam( spawnPoints );
|
||||
}
|
||||
else
|
||||
{
|
||||
if ( (!level.aPlanted && !level.bPlanted) )
|
||||
spawnPoints = maps\mp\gametypes\_spawnlogic::getTeamSpawnPoints( spawnteam );
|
||||
else if ( level.aPlanted && !level.bPlanted )
|
||||
spawnPoints = level.spawn_defenders_a;
|
||||
else if ( level.bPlanted && !level.aPlanted )
|
||||
spawnPoints = level.spawn_defenders_b;
|
||||
else
|
||||
spawnPoints = maps\mp\gametypes\_spawnlogic::getTeamSpawnPoints( spawnteam );
|
||||
|
||||
spawnpoint = maps\mp\gametypes\_spawnlogic::getSpawnpoint_NearTeam( spawnPoints );
|
||||
}
|
||||
}
|
||||
|
||||
assert( isDefined(spawnpoint) );
|
||||
|
||||
return spawnpoint;
|
||||
}
|
||||
|
||||
onSpawnPlayer()
|
||||
{
|
||||
|
||||
if ( self.pers["team"] == game["attackers"] )
|
||||
{
|
||||
self.isPlanting = false;
|
||||
self.isDefusing = false;
|
||||
self.isBombCarrier = true;
|
||||
|
||||
if ( level.splitscreen )
|
||||
{
|
||||
self.carryIcon = createIcon( "hud_suitcase_bomb", 33, 33 );
|
||||
self.carryIcon setPoint( "BOTTOM RIGHT", "BOTTOM RIGHT", 0, -78 );
|
||||
self.carryIcon.alpha = 0.75;
|
||||
}
|
||||
else
|
||||
{
|
||||
self.carryIcon = createIcon( "hud_suitcase_bomb", 50, 50 );
|
||||
self.carryIcon setPoint( "BOTTOM RIGHT", "BOTTOM RIGHT", -90, -65 );
|
||||
self.carryIcon.alpha = 0.75;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
self.isPlanting = false;
|
||||
self.isDefusing = false;
|
||||
self.isBombCarrier = false;
|
||||
|
||||
if ( isDefined( self.carryIcon ) )
|
||||
{
|
||||
self.carryIcon Destroy();
|
||||
}
|
||||
}
|
||||
|
||||
level notify ( "spawned_player" );
|
||||
}
|
||||
|
||||
|
||||
dd_endGame( winningTeam, endReasonText )
|
||||
{
|
||||
thread maps\mp\gametypes\_gamelogic::endGame( winningTeam, endReasonText );
|
||||
}
|
||||
|
||||
|
||||
onDeadEvent( team )
|
||||
{
|
||||
if ( level.bombExploded || level.bombDefused )
|
||||
return;
|
||||
|
||||
if ( team == "all" )
|
||||
{
|
||||
if ( level.bombPlanted )
|
||||
dd_endGame( game["attackers"], game["strings"][game["defenders"]+"_eliminated"] );
|
||||
else
|
||||
dd_endGame( game["defenders"], game["strings"][game["attackers"]+"_eliminated"] );
|
||||
}
|
||||
else if ( team == game["attackers"] )
|
||||
{
|
||||
if ( level.bombPlanted )
|
||||
return;
|
||||
|
||||
level thread dd_endGame( game["defenders"], game["strings"][game["attackers"]+"_eliminated"] );
|
||||
}
|
||||
else if ( team == game["defenders"] )
|
||||
{
|
||||
level thread dd_endGame( game["attackers"], game["strings"][game["defenders"]+"_eliminated"] );
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
onNormalDeath( victim, attacker, lifeId )
|
||||
{
|
||||
score = maps\mp\gametypes\_rank::getScoreInfoValue( "kill" );
|
||||
assert( isDefined( score ) );
|
||||
|
||||
team = victim.team;
|
||||
|
||||
if ( game["state"] == "postgame" && (victim.team == game["defenders"] || !level.bombPlanted) )
|
||||
attacker.finalKill = true;
|
||||
|
||||
if ( victim.isPlanting )
|
||||
{
|
||||
thread maps\mp\_matchdata::logKillEvent( lifeId, "planting" );
|
||||
}
|
||||
else if ( victim.isDefusing )
|
||||
{
|
||||
thread maps\mp\_matchdata::logKillEvent( lifeId, "defusing" );
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
onTimeLimit()
|
||||
{
|
||||
dd_endGame( game["defenders"], game["strings"]["time_limit_reached"] );
|
||||
}
|
||||
|
||||
|
||||
updateGametypeDvars()
|
||||
{
|
||||
level.plantTime = dvarFloatValue( "planttime", 5, 0, 20 );
|
||||
level.defuseTime = dvarFloatValue( "defusetime", 5, 0, 20 );
|
||||
level.bombTimer = dvarIntValue( "bombtimer", 45, 1, 300 );
|
||||
level.ddTimeToAdd = dvarFloatValue( "addtime", 2, 0, 5 );; //how much time is added to the match when a target is destroyed
|
||||
}
|
||||
|
||||
|
||||
bombs()
|
||||
{
|
||||
level.bombPlanted = false;
|
||||
level.bombDefused = false;
|
||||
level.bombExploded = 0;
|
||||
|
||||
level.bombZones = [];
|
||||
|
||||
bombZones = getEntArray( "dd_bombzone", "targetname" );
|
||||
if ( !bombZones.size )
|
||||
bombZones = getEntArray( "bombzone", "targetname" );
|
||||
|
||||
for ( index = 0; index < bombZones.size; index++ )
|
||||
{
|
||||
trigger = bombZones[index];
|
||||
visuals = getEntArray( bombZones[index].target, "targetname" );
|
||||
|
||||
bombZone = maps\mp\gametypes\_gameobjects::createUseObject( game["defenders"], trigger, visuals, (0,0,64) );
|
||||
bombZone maps\mp\gametypes\_gameobjects::allowUse( "enemy" );
|
||||
bombZone maps\mp\gametypes\_gameobjects::setUseTime( level.plantTime );
|
||||
bombZone maps\mp\gametypes\_gameobjects::setUseText( &"MP_PLANTING_EXPLOSIVE" );
|
||||
bombZone maps\mp\gametypes\_gameobjects::setUseHintText( &"PLATFORM_HOLD_TO_PLANT_EXPLOSIVES" );
|
||||
bombZone maps\mp\gametypes\_gameobjects::setKeyObject( level.ddBomb );
|
||||
|
||||
label = bombZone maps\mp\gametypes\_gameobjects::getLabel();
|
||||
bombZone.label = label;
|
||||
bombZone.index = index;
|
||||
bombZone maps\mp\gametypes\_gameobjects::set2DIcon( "friendly", "waypoint_defend" + label );
|
||||
bombZone maps\mp\gametypes\_gameobjects::set3DIcon( "friendly", "waypoint_defend" + label );
|
||||
bombZone maps\mp\gametypes\_gameobjects::set2DIcon( "enemy", "waypoint_target" + label );
|
||||
bombZone maps\mp\gametypes\_gameobjects::set3DIcon( "enemy", "waypoint_target" + label );
|
||||
bombZone maps\mp\gametypes\_gameobjects::setVisibleTeam( "any" );
|
||||
bombZone.onBeginUse = ::onBeginUse;
|
||||
bombZone.onEndUse = ::onEndUse;
|
||||
bombZone.onUse = ::onUseObject;
|
||||
bombZone.onCantUse = ::onCantUse;
|
||||
bombZone.useWeapon = "briefcase_bomb_mp";
|
||||
bombZone.visuals[0].killCamEnt = spawn( "script_model", bombZone.visuals[0].origin + (0,0,128) );
|
||||
|
||||
for ( i = 0; i < visuals.size; i++ )
|
||||
{
|
||||
if ( isDefined( visuals[i].script_exploder ) )
|
||||
{
|
||||
bombZone.exploderIndex = visuals[i].script_exploder;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
level.bombZones[level.bombZones.size] = bombZone;
|
||||
|
||||
bombZone.bombDefuseTrig = getent( visuals[0].target, "targetname" );
|
||||
assert( isdefined( bombZone.bombDefuseTrig ) );
|
||||
bombZone.bombDefuseTrig.origin += (0,0,-10000);
|
||||
bombZone.bombDefuseTrig.label = label;
|
||||
}
|
||||
|
||||
for ( index = 0; index < level.bombZones.size; index++ )
|
||||
{
|
||||
array = [];
|
||||
for ( otherindex = 0; otherindex < level.bombZones.size; otherindex++ )
|
||||
{
|
||||
if ( otherindex != index )
|
||||
array[ array.size ] = level.bombZones[otherindex];
|
||||
}
|
||||
level.bombZones[index].otherBombZones = array;
|
||||
}
|
||||
}
|
||||
|
||||
onUseObject( player )
|
||||
{
|
||||
team = player.pers["team"];
|
||||
otherTeam = level.otherTeam[team];
|
||||
|
||||
if ( !self maps\mp\gametypes\_gameobjects::isFriendlyTeam( player.pers["team"] ) )
|
||||
{
|
||||
player notify ( "bomb_planted" );
|
||||
player playSound( "mp_bomb_plant" );
|
||||
|
||||
thread teamPlayerCardSplash( "callout_bombplanted", player );
|
||||
//iPrintLn( &"MP_EXPLOSIVES_PLANTED_BY", player );
|
||||
leaderDialog( "bomb_planted" );
|
||||
|
||||
player thread maps\mp\gametypes\_hud_message::SplashNotify( "plant", maps\mp\gametypes\_rank::getScoreInfoValue( "plant" ) );
|
||||
player thread maps\mp\gametypes\_rank::giveRankXP( "plant" );
|
||||
maps\mp\gametypes\_gamescore::givePlayerScore( "plant", player );
|
||||
player incPlayerStat( "bombsplanted", 1 );
|
||||
player thread maps\mp\_matchdata::logGameEvent( "plant", player.origin );
|
||||
player.bombPlantedTime = getTime();
|
||||
|
||||
level thread bombPlanted( self, player );
|
||||
|
||||
level.bombOwner = player;
|
||||
self.useWeapon = "briefcase_bomb_defuse_mp";
|
||||
self setUpForDefusing();
|
||||
}
|
||||
else // defused the bomb
|
||||
{
|
||||
self thread bombHandler( player, "defused" );
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
resetBombZone()
|
||||
{
|
||||
self maps\mp\gametypes\_gameobjects::allowUse( "enemy" );
|
||||
self maps\mp\gametypes\_gameobjects::setUseTime( level.plantTime );
|
||||
self maps\mp\gametypes\_gameobjects::setUseText( &"MP_PLANTING_EXPLOSIVE" );
|
||||
self maps\mp\gametypes\_gameobjects::setUseHintText( &"PLATFORM_HOLD_TO_PLANT_EXPLOSIVES" );
|
||||
self maps\mp\gametypes\_gameobjects::setKeyObject( level.ddBomb );
|
||||
self maps\mp\gametypes\_gameobjects::set2DIcon( "friendly", "waypoint_defend" + self.label );
|
||||
self maps\mp\gametypes\_gameobjects::set3DIcon( "friendly", "waypoint_defend" + self.label );
|
||||
self maps\mp\gametypes\_gameobjects::set2DIcon( "enemy", "waypoint_target" + self.label );
|
||||
self maps\mp\gametypes\_gameobjects::set3DIcon( "enemy", "waypoint_target" + self.label );
|
||||
self maps\mp\gametypes\_gameobjects::setVisibleTeam( "any" );
|
||||
self.useWeapon = "briefcase_bomb_mp";
|
||||
}
|
||||
|
||||
setUpForDefusing()
|
||||
{
|
||||
self maps\mp\gametypes\_gameobjects::allowUse( "friendly" );
|
||||
self maps\mp\gametypes\_gameobjects::setUseTime( level.defuseTime );
|
||||
self maps\mp\gametypes\_gameobjects::setUseText( &"MP_DEFUSING_EXPLOSIVE" );
|
||||
self maps\mp\gametypes\_gameobjects::setUseHintText( &"PLATFORM_HOLD_TO_DEFUSE_EXPLOSIVES" );
|
||||
self maps\mp\gametypes\_gameobjects::setKeyObject( undefined );
|
||||
self maps\mp\gametypes\_gameobjects::set2DIcon( "friendly", "waypoint_defuse" + self.label );
|
||||
self maps\mp\gametypes\_gameobjects::set3DIcon( "friendly", "waypoint_defuse" + self.label );
|
||||
self maps\mp\gametypes\_gameobjects::set2DIcon( "enemy", "waypoint_defend" + self.label );
|
||||
self maps\mp\gametypes\_gameobjects::set3DIcon( "enemy", "waypoint_defend" + self.label );
|
||||
self maps\mp\gametypes\_gameobjects::setVisibleTeam( "any" );
|
||||
}
|
||||
|
||||
onBeginUse( player )
|
||||
{
|
||||
if ( self maps\mp\gametypes\_gameobjects::isFriendlyTeam( player.pers["team"] ) )
|
||||
{
|
||||
player playSound( "mp_bomb_defuse" );
|
||||
player.isDefusing = true;
|
||||
|
||||
bestDistance = 9000000;
|
||||
closestBomb = undefined;
|
||||
|
||||
if ( isDefined( level.ddBombModel ) )
|
||||
{
|
||||
foreach ( bomb in level.ddBombModel )
|
||||
{
|
||||
if ( !isDefined( bomb ) )
|
||||
continue;
|
||||
|
||||
dist = distanceSquared( player.origin, bomb.origin );
|
||||
|
||||
if ( dist < bestDistance )
|
||||
{
|
||||
bestDistance = dist;
|
||||
closestBomb = bomb;
|
||||
}
|
||||
}
|
||||
|
||||
assert( isDefined(closestBomb) );
|
||||
player.defusing = closestBomb;
|
||||
closestBomb hide();
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
player.isPlanting = true;
|
||||
}
|
||||
}
|
||||
|
||||
onEndUse( team, player, result )
|
||||
{
|
||||
if ( !isDefined( player ) )
|
||||
return;
|
||||
|
||||
if ( isAlive( player ) )
|
||||
{
|
||||
player.isDefusing = false;
|
||||
player.isPlanting = false;
|
||||
}
|
||||
|
||||
if ( self maps\mp\gametypes\_gameobjects::isFriendlyTeam( player.pers["team"] ) )
|
||||
{
|
||||
if ( isDefined( player.defusing ) && !result )
|
||||
{
|
||||
player.defusing show();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
onCantUse( player )
|
||||
{
|
||||
player iPrintLnBold( &"MP_BOMBSITE_IN_USE" );
|
||||
}
|
||||
|
||||
onReset()
|
||||
{
|
||||
}
|
||||
|
||||
bombPlanted( destroyedObj, player )
|
||||
{
|
||||
destroyedObj endon( "defused" );
|
||||
|
||||
level.bombsPlanted += 1;
|
||||
self setBombTimerDvar();
|
||||
maps\mp\gametypes\_gamelogic::pauseTimer();
|
||||
level.timePauseStart = getTime();
|
||||
level.timeLimitOverride = true;
|
||||
|
||||
level.bombPlanted = true;
|
||||
level.destroyedObject = destroyedObj;
|
||||
|
||||
if ( level.destroyedObject.label == "_a" )
|
||||
level.aPlanted = true;
|
||||
else
|
||||
level.bPlanted = true;
|
||||
|
||||
level.destroyedObject.bombPlanted = true;
|
||||
|
||||
destroyedObj.visuals[0] thread playDemolitionTickingSound(destroyedObj);
|
||||
level.tickingObject = destroyedObj.visuals[0];
|
||||
|
||||
self dropBombModel( player, destroyedObj.label );
|
||||
destroyedObj.bombDefused = false;
|
||||
destroyedObj maps\mp\gametypes\_gameobjects::allowUse( "none" );
|
||||
destroyedObj maps\mp\gametypes\_gameobjects::setVisibleTeam( "none" );
|
||||
destroyedObj setUpForDefusing();
|
||||
|
||||
destroyedObj BombTimerWait(destroyedObj); //waits for bomb to explode!
|
||||
|
||||
destroyedObj thread bombHandler( player ,"explode" );
|
||||
|
||||
}
|
||||
|
||||
bombHandler( player, destType )
|
||||
{
|
||||
self.visuals[0] notify( "stopTicking" );
|
||||
level.bombsPlanted -= 1;
|
||||
|
||||
if ( self.label == "_a" )
|
||||
level.aPlanted = false;
|
||||
else
|
||||
level.bPlanted = false;
|
||||
|
||||
self.bombPlanted = 0;
|
||||
|
||||
self restartTimer();
|
||||
self setBombTimerDvar();
|
||||
|
||||
setDvar( "ui_bombtimer" + self.label, -1 );
|
||||
//self maps\mp\gametypes\_gameobjects::updateTimer( 0, false );
|
||||
|
||||
if ( level.gameEnded )
|
||||
return;
|
||||
|
||||
if ( destType == "explode" )
|
||||
{
|
||||
level.bombExploded += 1;
|
||||
|
||||
explosionOrigin = self.curorigin;
|
||||
level.ddBombModel[ self.label ] Delete();
|
||||
|
||||
if ( isdefined( player ) )
|
||||
{
|
||||
self.visuals[0] radiusDamage( explosionOrigin, 512, 200, 20, player );
|
||||
player incPlayerStat( "targetsdestroyed", 1 );
|
||||
}
|
||||
else
|
||||
{
|
||||
self.visuals[0] radiusDamage( explosionOrigin, 512, 200, 20 );
|
||||
}
|
||||
|
||||
rot = randomfloat(360);
|
||||
explosionEffect = spawnFx( level._effect["bombexplosion"], explosionOrigin + (0,0,50), (0,0,1), (cos(rot),sin(rot),0) );
|
||||
triggerFx( explosionEffect );
|
||||
|
||||
PlayRumbleOnPosition( "grenade_rumble", explosionOrigin );
|
||||
earthquake( 0.75, 2.0, explosionOrigin, 2000 );
|
||||
|
||||
thread playSoundinSpace( "exp_suitcase_bomb_main", explosionOrigin );
|
||||
|
||||
sabBomb = getEnt( "sab_bomb", "targetname" );
|
||||
sabBomb Delete();
|
||||
|
||||
if ( isDefined( self.exploderIndex ) )
|
||||
exploder( self.exploderIndex );
|
||||
|
||||
self maps\mp\gametypes\_gameobjects::disableObject();
|
||||
|
||||
if ( level.bombExploded < 2 )
|
||||
{
|
||||
foreach ( splashPlayer in level.players )
|
||||
splashPlayer thread maps\mp\gametypes\_hud_message::SplashNotify( "time_added" );
|
||||
}
|
||||
|
||||
wait 2;
|
||||
|
||||
if ( level.bombExploded > 1 )
|
||||
dd_endGame( game["attackers"], game["strings"]["target_destroyed"] );
|
||||
else
|
||||
level thread teamPlayerCardSplash( "callout_time_added", player );
|
||||
}
|
||||
else //defused
|
||||
{
|
||||
player notify ( "bomb_defused" );
|
||||
self notify( "defused" );
|
||||
|
||||
// if ( !level.hardcoreMode )
|
||||
// iPrintLn( &"MP_EXPLOSIVES_DEFUSED_BY", player );
|
||||
|
||||
leaderDialog( "bomb_defused" );
|
||||
|
||||
level thread teamPlayerCardSplash( "callout_bombdefused", player );
|
||||
|
||||
level thread bombDefused( self );
|
||||
self resetBombzone();
|
||||
|
||||
if ( isDefined( level.bombOwner ) && ( level.bombOwner.bombPlantedTime + 4000 + (level.defuseTime*1000) ) > getTime() && isReallyAlive( level.bombOwner ) )
|
||||
player thread maps\mp\gametypes\_hud_message::SplashNotify( "ninja_defuse", ( maps\mp\gametypes\_rank::getScoreInfoValue( "defuse" ) ) );
|
||||
else
|
||||
player thread maps\mp\gametypes\_hud_message::SplashNotify( "defuse", maps\mp\gametypes\_rank::getScoreInfoValue( "defuse" ) );
|
||||
|
||||
player thread maps\mp\gametypes\_rank::giveRankXP( "defuse" );
|
||||
maps\mp\gametypes\_gamescore::givePlayerScore( "defuse", player );
|
||||
player incPlayerStat( "bombsdefused", 1 );
|
||||
player thread maps\mp\_matchdata::logGameEvent( "defuse", player.origIn );
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
playDemolitionTickingSound( site )
|
||||
{
|
||||
self endon("death");
|
||||
self endon("stopTicking");
|
||||
level endon("game_ended");
|
||||
|
||||
while(1)
|
||||
{
|
||||
self playSound( "ui_mp_suitcasebomb_timer" );
|
||||
|
||||
if ( !isDefined( site.waitTime ) || site.waitTime > 10 )
|
||||
wait 1.0;
|
||||
else if ( isDefined( site.waitTime ) && site.waitTime > 5 )
|
||||
wait 0.5;
|
||||
else
|
||||
wait 0.25;
|
||||
maps\mp\gametypes\_hostmigration::waitTillHostMigrationDone();
|
||||
}
|
||||
}
|
||||
|
||||
setBombTimerDvar()
|
||||
{
|
||||
println( "BOMBS PLANTED: " + level.bombsPlanted );
|
||||
|
||||
if ( level.bombsPlanted == 1 )
|
||||
setDvar( "ui_bomb_timer", 2 );
|
||||
else if ( level.bombsPlanted == 2 )
|
||||
setDvar( "ui_bomb_timer", 3 );
|
||||
else
|
||||
setDvar( "ui_bomb_timer", 0 );
|
||||
}
|
||||
|
||||
|
||||
dropBombModel( player, site )
|
||||
{
|
||||
trace = bulletTrace( player.origin + (0,0,20), player.origin - (0,0,2000), false, player );
|
||||
|
||||
tempAngle = randomfloat( 360 );
|
||||
forward = (cos( tempAngle ), sin( tempAngle ), 0);
|
||||
forward = vectornormalize( forward - common_scripts\utility::vector_multiply( trace["normal"], vectordot( forward, trace["normal"] ) ) );
|
||||
dropAngles = vectortoangles( forward );
|
||||
|
||||
level.ddBombModel[ site ] = spawn( "script_model", trace["position"] );
|
||||
level.ddBombModel[ site ].angles = dropAngles;
|
||||
level.ddBombModel[ site ] setModel( "prop_suitcase_bomb" );
|
||||
}
|
||||
|
||||
|
||||
restartTimer()
|
||||
{
|
||||
if ( level.bombsPlanted <= 0 )
|
||||
{
|
||||
maps\mp\gametypes\_gamelogic::resumeTimer();
|
||||
level.timePaused = ( getTime() - level.timePauseStart ) ;
|
||||
level.timeLimitOverride = false;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
BombTimerWait(siteLoc)
|
||||
{
|
||||
level endon("game_ended");
|
||||
level endon("bomb_defused" + siteLoc.label );
|
||||
|
||||
siteLoc.waitTime = level.bombTimer;
|
||||
|
||||
while ( siteLoc.waitTime >= 0 )
|
||||
{
|
||||
siteLoc.waitTime--;
|
||||
setDvar( "ui_bombtimer" + siteLoc.label, siteLoc.waitTime );
|
||||
|
||||
//self maps\mp\gametypes\_gameobjects::updateTimer( waitTime, true );
|
||||
|
||||
if ( siteLoc.waitTime >= 0 )
|
||||
wait( 1 );
|
||||
|
||||
maps\mp\gametypes\_hostmigration::waitTillHostMigrationDone();
|
||||
}
|
||||
}
|
||||
|
||||
bombDefused( siteDefused )
|
||||
{
|
||||
level.tickingObject maps\mp\gametypes\_gamelogic::stopTickingSound();
|
||||
siteDefused.bombDefused = true;
|
||||
self setBombTimerDvar();
|
||||
|
||||
setDvar( "ui_bombtimer" + siteDefused.label, -1 );
|
||||
|
||||
level notify("bomb_defused" + siteDefused.label);
|
||||
}
|
||||
|
||||
initGametypeAwards()
|
||||
{
|
||||
maps\mp\_awards::initStatAward( "targetsdestroyed", 0, maps\mp\_awards::highestWins );
|
||||
maps\mp\_awards::initStatAward( "bombsplanted", 0, maps\mp\_awards::highestWins );
|
||||
maps\mp\_awards::initStatAward( "bombsdefused", 0, maps\mp\_awards::highestWins );
|
||||
maps\mp\_awards::initStatAward( "bombcarrierkills", 0, maps\mp\_awards::highestWins );
|
||||
maps\mp\_awards::initStatAward( "bombscarried", 0, maps\mp\_awards::highestWins );
|
||||
maps\mp\_awards::initStatAward( "killsasbombcarrier", 0, maps\mp\_awards::highestWins );
|
||||
}
|
||||
@@ -0,0 +1,100 @@
|
||||
#include maps\mp\_utility;
|
||||
#include maps\mp\gametypes\_hud_util;
|
||||
/*
|
||||
Deathmatch
|
||||
Objective: Score points by eliminating other players
|
||||
Map ends: When one player reaches the score limit, or time limit is reached
|
||||
Respawning: No wait / Away from other players
|
||||
|
||||
Level requirements
|
||||
------------------
|
||||
Spawnpoints:
|
||||
classname mp_dm_spawn
|
||||
All players spawn from these. The spawnpoint chosen is dependent on the current locations of enemies at the time of spawn.
|
||||
Players generally spawn away from enemies.
|
||||
|
||||
Spectator Spawnpoints:
|
||||
classname mp_global_intermission
|
||||
Spectators spawn from these and intermission is viewed from these positions.
|
||||
Atleast one is required, any more and they are randomly chosen between.
|
||||
*/
|
||||
|
||||
/*QUAKED mp_dm_spawn (1.0 0.5 0.0) (-16 -16 0) (16 16 72)
|
||||
Players spawn away from enemies at one of these positions.*/
|
||||
|
||||
main()
|
||||
{
|
||||
maps\mp\gametypes\_globallogic::init();
|
||||
maps\mp\gametypes\_callbacksetup::SetupCallbacks();
|
||||
maps\mp\gametypes\_globallogic::SetupCallbacks();
|
||||
|
||||
registerTimeLimitDvar( level.gameType, 10, 0, 1440 );
|
||||
registerScoreLimitDvar( level.gameType, 1000, 0, 5000 );
|
||||
registerWinLimitDvar( level.gameType, 1, 0, 5000 );
|
||||
registerRoundLimitDvar( level.gameType, 1, 0, 10 );
|
||||
registerNumLivesDvar( level.gameType, 0, 0, 10 );
|
||||
registerHalfTimeDvar( level.gameType, 0, 0, 1 );
|
||||
|
||||
level.onStartGameType = ::onStartGameType;
|
||||
level.getSpawnPoint = ::getSpawnPoint;
|
||||
|
||||
game["dialog"]["gametype"] = "freeforall";
|
||||
|
||||
if ( getDvarInt( "g_hardcore" ) )
|
||||
game["dialog"]["gametype"] = "hc_" + game["dialog"]["gametype"];
|
||||
else if ( getDvarInt( "camera_thirdPerson" ) )
|
||||
game["dialog"]["gametype"] = "thirdp_" + game["dialog"]["gametype"];
|
||||
else if ( getDvarInt( "scr_diehard" ) )
|
||||
game["dialog"]["gametype"] = "dh_" + game["dialog"]["gametype"];
|
||||
else if (getDvarInt( "scr_" + level.gameType + "_promode" ) )
|
||||
game["dialog"]["gametype"] = game["dialog"]["gametype"] + "_pro";
|
||||
}
|
||||
|
||||
|
||||
onStartGameType()
|
||||
{
|
||||
setClientNameMode("auto_change");
|
||||
|
||||
setObjectiveText( "allies", &"OBJECTIVES_DM" );
|
||||
setObjectiveText( "axis", &"OBJECTIVES_DM" );
|
||||
|
||||
if ( level.splitscreen )
|
||||
{
|
||||
setObjectiveScoreText( "allies", &"OBJECTIVES_DM" );
|
||||
setObjectiveScoreText( "axis", &"OBJECTIVES_DM" );
|
||||
}
|
||||
else
|
||||
{
|
||||
setObjectiveScoreText( "allies", &"OBJECTIVES_DM_SCORE" );
|
||||
setObjectiveScoreText( "axis", &"OBJECTIVES_DM_SCORE" );
|
||||
}
|
||||
setObjectiveHintText( "allies", &"OBJECTIVES_DM_HINT" );
|
||||
setObjectiveHintText( "axis", &"OBJECTIVES_DM_HINT" );
|
||||
|
||||
level.spawnMins = ( 0, 0, 0 );
|
||||
level.spawnMaxs = ( 0, 0, 0 );
|
||||
maps\mp\gametypes\_spawnlogic::addSpawnPoints( "allies", "mp_dm_spawn" );
|
||||
maps\mp\gametypes\_spawnlogic::addSpawnPoints( "axis", "mp_dm_spawn" );
|
||||
level.mapCenter = maps\mp\gametypes\_spawnlogic::findBoxCenter( level.spawnMins, level.spawnMaxs );
|
||||
setMapCenter( level.mapCenter );
|
||||
|
||||
allowed[0] = "dm";
|
||||
maps\mp\gametypes\_gameobjects::main(allowed);
|
||||
|
||||
maps\mp\gametypes\_rank::registerScoreInfo( "kill", 50 );
|
||||
maps\mp\gametypes\_rank::registerScoreInfo( "headshot", 50 );
|
||||
maps\mp\gametypes\_rank::registerScoreInfo( "assist", 10 );
|
||||
maps\mp\gametypes\_rank::registerScoreInfo( "suicide", 0 );
|
||||
maps\mp\gametypes\_rank::registerScoreInfo( "teamkill", 0 );
|
||||
|
||||
level.QuickMessageToAll = true;
|
||||
}
|
||||
|
||||
|
||||
getSpawnPoint()
|
||||
{
|
||||
spawnPoints = maps\mp\gametypes\_spawnlogic::getTeamSpawnPoints( self.pers["team"] );
|
||||
spawnPoint = maps\mp\gametypes\_spawnlogic::getSpawnpoint_DM( spawnPoints );
|
||||
|
||||
return spawnPoint;
|
||||
}
|
||||
@@ -0,0 +1,976 @@
|
||||
#include common_scripts\utility;
|
||||
#include maps\mp\_utility;
|
||||
#include maps\mp\gametypes\_hud_util;
|
||||
/*
|
||||
Domination
|
||||
Objective: Capture all the flags by touching them
|
||||
Map ends: When one team captures all the flags, or time limit is reached
|
||||
Respawning: No wait / Near teammates
|
||||
|
||||
Level requirements
|
||||
------------------
|
||||
Spawnpoints:
|
||||
classname mp_tdm_spawn
|
||||
All players spawn from these. The spawnpoint chosen is dependent on the current locations of owned flags, teammates and
|
||||
enemies at the time of spawn. Players generally spawn behind their teammates relative to the direction of enemies.
|
||||
Optionally, give a spawnpoint a script_linkto to specify which flag it "belongs" to (see Flag Descriptors).
|
||||
|
||||
Spectator Spawnpoints:
|
||||
classname mp_global_intermission
|
||||
Spectators spawn from these and intermission is viewed from these positions.
|
||||
Atleast one is required, any more and they are randomly chosen between.
|
||||
|
||||
Flags:
|
||||
classname trigger_radius
|
||||
targetname flag_primary or flag_secondary
|
||||
Flags that need to be captured to win. Primary flags take time to capture; secondary flags are instant.
|
||||
|
||||
Flag Descriptors:
|
||||
classname script_origin
|
||||
targetname flag_descriptor
|
||||
Place one flag descriptor close to each flag. Use the script_linkname and script_linkto properties to say which flags
|
||||
it can be considered "adjacent" to in the level. For instance, if players have a primary path from flag1 to flag2, and
|
||||
from flag2 to flag3, flag2 would have a flag_descriptor with these properties:
|
||||
script_linkname flag2
|
||||
script_linkto flag1 flag3
|
||||
|
||||
Set scr_domdebug to 1 to see flag connections and what spawnpoints are considered connected to each flag.
|
||||
*/
|
||||
|
||||
/*QUAKED mp_dom_spawn (0.5 0.5 1.0) (-16 -16 0) (16 16 72)
|
||||
Players spawn near their flags at one of these positions.*/
|
||||
|
||||
/*QUAKED mp_dom_spawn_axis_start (1.0 0.0 1.0) (-16 -16 0) (16 16 72)
|
||||
Axis players spawn away from enemies and near their team at one of these positions at the start of a round.*/
|
||||
|
||||
/*QUAKED mp_dom_spawn_allies_start (0.0 1.0 1.0) (-16 -16 0) (16 16 72)
|
||||
Allied players spawn away from enemies and near their team at one of these positions at the start of a round.*/
|
||||
|
||||
main()
|
||||
{
|
||||
if(getdvar("mapname") == "mp_background")
|
||||
return;
|
||||
|
||||
maps\mp\gametypes\_globallogic::init();
|
||||
maps\mp\gametypes\_callbacksetup::SetupCallbacks();
|
||||
maps\mp\gametypes\_globallogic::SetupCallbacks();
|
||||
|
||||
registerTimeLimitDvar( level.gameType, 30, 0, 1440 );
|
||||
registerScoreLimitDvar( level.gameType, 300, 0, 1000 );
|
||||
registerRoundLimitDvar( level.gameType, 1, 0, 10 );
|
||||
registerWinLimitDvar( level.gameType, 1, 0, 10 );
|
||||
registerNumLivesDvar( level.gameType, 0, 0, 10 );
|
||||
registerHalfTimeDvar( level.gameType, 0, 0, 1 );
|
||||
|
||||
level.teamBased = true;
|
||||
level.onStartGameType = ::onStartGameType;
|
||||
level.getSpawnPoint = ::getSpawnPoint;
|
||||
level.onPlayerKilled = ::onPlayerKilled;
|
||||
level.onPrecacheGameType = ::onPrecacheGameType;
|
||||
level.initGametypeAwards = ::initGametypeAwards;
|
||||
level.onSpawnPlayer = ::onSpawnPlayer;
|
||||
|
||||
game["dialog"]["gametype"] = "domination";
|
||||
|
||||
if ( getDvarInt( "g_hardcore" ) )
|
||||
game["dialog"]["gametype"] = "hc_" + game["dialog"]["gametype"];
|
||||
else if ( getDvarInt( "camera_thirdPerson" ) )
|
||||
game["dialog"]["gametype"] = "thirdp_" + game["dialog"]["gametype"];
|
||||
else if ( getDvarInt( "scr_diehard" ) )
|
||||
game["dialog"]["gametype"] = "dh_" + game["dialog"]["gametype"];
|
||||
else if (getDvarInt( "scr_" + level.gameType + "_promode" ) )
|
||||
game["dialog"]["gametype"] = game["dialog"]["gametype"] + "_pro";
|
||||
|
||||
game["dialog"]["offense_obj"] = "capture_objs";
|
||||
game["dialog"]["defense_obj"] = "capture_objs";
|
||||
}
|
||||
|
||||
|
||||
onPrecacheGameType()
|
||||
{
|
||||
precacheShader( "waypoint_captureneutral" );
|
||||
precacheShader( "waypoint_capture" );
|
||||
precacheShader( "waypoint_defend" );
|
||||
precacheShader( "waypoint_captureneutral_a" );
|
||||
precacheShader( "waypoint_capture_a" );
|
||||
precacheShader( "waypoint_defend_a" );
|
||||
precacheShader( "waypoint_captureneutral_b" );
|
||||
precacheShader( "waypoint_capture_b" );
|
||||
precacheShader( "waypoint_defend_b" );
|
||||
precacheShader( "waypoint_captureneutral_c" );
|
||||
precacheShader( "waypoint_capture_c" );
|
||||
precacheShader( "waypoint_defend_c" );
|
||||
|
||||
precacheShader( "waypoint_captureneutral" );
|
||||
precacheShader( "waypoint_capture" );
|
||||
precacheShader( "waypoint_defend" );
|
||||
precacheShader( "waypoint_captureneutral_a" );
|
||||
precacheShader( "waypoint_capture_a" );
|
||||
precacheShader( "waypoint_defend_a" );
|
||||
precacheShader( "waypoint_captureneutral_b" );
|
||||
precacheShader( "waypoint_capture_b" );
|
||||
precacheShader( "waypoint_defend_b" );
|
||||
precacheShader( "waypoint_captureneutral_c" );
|
||||
precacheShader( "waypoint_capture_c" );
|
||||
precacheShader( "waypoint_defend_c" );
|
||||
}
|
||||
|
||||
|
||||
onStartGameType()
|
||||
{
|
||||
setObjectiveText( "allies", &"OBJECTIVES_DOM" );
|
||||
setObjectiveText( "axis", &"OBJECTIVES_DOM" );
|
||||
|
||||
if ( level.splitscreen )
|
||||
{
|
||||
setObjectiveScoreText( "allies", &"OBJECTIVES_DOM" );
|
||||
setObjectiveScoreText( "axis", &"OBJECTIVES_DOM" );
|
||||
}
|
||||
else
|
||||
{
|
||||
setObjectiveScoreText( "allies", &"OBJECTIVES_DOM_SCORE" );
|
||||
setObjectiveScoreText( "axis", &"OBJECTIVES_DOM_SCORE" );
|
||||
}
|
||||
setObjectiveHintText( "allies", &"OBJECTIVES_DOM_HINT" );
|
||||
setObjectiveHintText( "axis", &"OBJECTIVES_DOM_HINT" );
|
||||
|
||||
setClientNameMode("auto_change");
|
||||
|
||||
level.spawnMins = ( 0, 0, 0 );
|
||||
level.spawnMaxs = ( 0, 0, 0 );
|
||||
maps\mp\gametypes\_spawnlogic::placeSpawnPoints( "mp_dom_spawn_allies_start" );
|
||||
maps\mp\gametypes\_spawnlogic::placeSpawnPoints( "mp_dom_spawn_axis_start" );
|
||||
maps\mp\gametypes\_spawnlogic::addSpawnPoints( "allies", "mp_dom_spawn" );
|
||||
maps\mp\gametypes\_spawnlogic::addSpawnPoints( "axis", "mp_dom_spawn" );
|
||||
|
||||
level.mapCenter = maps\mp\gametypes\_spawnlogic::findBoxCenter( level.spawnMins, level.spawnMaxs );
|
||||
setMapCenter( level.mapCenter );
|
||||
|
||||
level.spawn_all = maps\mp\gametypes\_spawnlogic::getSpawnpointArray( "mp_dom_spawn" );
|
||||
if ( getDvar( "mapname" ) == "mp_shipment_long" )
|
||||
{
|
||||
level.spawn_axis_start = maps\mp\gametypes\_spawnlogic::getSpawnpointArray( "mp_cha_spawn_axis_start" );
|
||||
level.spawn_allies_start = maps\mp\gametypes\_spawnlogic::getSpawnpointArray( "mp_cha_spawn_allies_start" );
|
||||
}
|
||||
else
|
||||
{
|
||||
level.spawn_axis_start = maps\mp\gametypes\_spawnlogic::getSpawnpointArray( "mp_dom_spawn_axis_start" );
|
||||
level.spawn_allies_start = maps\mp\gametypes\_spawnlogic::getSpawnpointArray( "mp_dom_spawn_allies_start" );
|
||||
}
|
||||
|
||||
level.startPos["allies"] = level.spawn_allies_start[0].origin;
|
||||
level.startPos["axis"] = level.spawn_axis_start[0].origin;
|
||||
|
||||
level.flagBaseFXid[ "allies" ] = loadfx( maps\mp\gametypes\_teams::getTeamFlagFX( "allies" ) );
|
||||
level.flagBaseFXid[ "axis" ] = loadfx( maps\mp\gametypes\_teams::getTeamFlagFX( "axis" ) );
|
||||
|
||||
allowed[0] = "dom";
|
||||
// allowed[1] = "hardpoint";
|
||||
maps\mp\gametypes\_gameobjects::main(allowed);
|
||||
|
||||
maps\mp\gametypes\_rank::registerScoreInfo( "kill", 50 );
|
||||
maps\mp\gametypes\_rank::registerScoreInfo( "headshot", 50 );
|
||||
maps\mp\gametypes\_rank::registerScoreInfo( "assist", 10 );
|
||||
|
||||
maps\mp\gametypes\_rank::registerScoreInfo( "capture", 150 );
|
||||
|
||||
maps\mp\gametypes\_rank::registerScoreInfo( "defend", 50 );
|
||||
maps\mp\gametypes\_rank::registerScoreInfo( "defend_assist", 10 );
|
||||
|
||||
maps\mp\gametypes\_rank::registerScoreInfo( "assault", 50 );
|
||||
maps\mp\gametypes\_rank::registerScoreInfo( "assault_assist", 10 );
|
||||
|
||||
thread domFlags();
|
||||
thread updateDomScores();
|
||||
}
|
||||
|
||||
|
||||
getSpawnPoint()
|
||||
{
|
||||
spawnpoint = undefined;
|
||||
|
||||
if ( !level.useStartSpawns )
|
||||
{
|
||||
flagsOwned = 0;
|
||||
enemyFlagsOwned = 0;
|
||||
myTeam = self.pers["team"];
|
||||
enemyTeam = getOtherTeam( myTeam );
|
||||
for ( i = 0; i < level.flags.size; i++ )
|
||||
{
|
||||
team = level.flags[i] getFlagTeam();
|
||||
if ( team == myTeam )
|
||||
flagsOwned++;
|
||||
else if ( team == enemyTeam )
|
||||
enemyFlagsOwned++;
|
||||
}
|
||||
|
||||
if ( flagsOwned == level.flags.size )
|
||||
{
|
||||
// own all flags! pretend we don't own the last one we got, so enemies can spawn there
|
||||
enemyBestSpawnFlag = level.bestSpawnFlag[ getOtherTeam( self.pers["team"] ) ];
|
||||
|
||||
spawnpoint = maps\mp\gametypes\_spawnlogic::getSpawnpoint_NearTeam( level.spawn_all, getSpawnsBoundingFlag( enemyBestSpawnFlag ) );
|
||||
}
|
||||
else if ( flagsOwned > 0 )
|
||||
{
|
||||
// spawn near any flag we own that's nearish something we can capture
|
||||
spawnpoint = maps\mp\gametypes\_spawnlogic::getSpawnpoint_NearTeam( level.spawn_all, getBoundaryFlagSpawns( myTeam ) );
|
||||
}
|
||||
else
|
||||
{
|
||||
// own no flags!
|
||||
bestFlag = undefined;
|
||||
if ( enemyFlagsOwned > 0 && enemyFlagsOwned < level.flags.size )
|
||||
{
|
||||
// there should be an unowned one to use
|
||||
bestFlag = getUnownedFlagNearestStart( myTeam );
|
||||
}
|
||||
if ( !isdefined( bestFlag ) )
|
||||
{
|
||||
// pretend we still own the last one we lost
|
||||
bestFlag = level.bestSpawnFlag[ self.pers["team"] ];
|
||||
}
|
||||
level.bestSpawnFlag[ self.pers["team"] ] = bestFlag;
|
||||
|
||||
spawnpoint = maps\mp\gametypes\_spawnlogic::getSpawnpoint_NearTeam( level.spawn_all, bestFlag.nearbyspawns );
|
||||
}
|
||||
}
|
||||
|
||||
if ( !isdefined( spawnpoint ) )
|
||||
{
|
||||
if (self.pers["team"] == "axis")
|
||||
spawnpoint = maps\mp\gametypes\_spawnlogic::getSpawnpoint_Random(level.spawn_axis_start);
|
||||
else
|
||||
spawnpoint = maps\mp\gametypes\_spawnlogic::getSpawnpoint_Random(level.spawn_allies_start);
|
||||
}
|
||||
|
||||
//spawnpoint = maps\mp\gametypes\_spawnlogic::getSpawnpoint_NearTeam( level.spawn_all );
|
||||
|
||||
assert( isDefined(spawnpoint) );
|
||||
|
||||
return spawnpoint;
|
||||
}
|
||||
|
||||
|
||||
domFlags()
|
||||
{
|
||||
level.lastStatus["allies"] = 0;
|
||||
level.lastStatus["axis"] = 0;
|
||||
|
||||
game["flagmodels"] = [];
|
||||
game["flagmodels"]["neutral"] = "prop_flag_neutral";
|
||||
|
||||
game["flagmodels"]["allies"] = maps\mp\gametypes\_teams::getTeamFlagModel( "allies" );
|
||||
game["flagmodels"]["axis"] = maps\mp\gametypes\_teams::getTeamFlagModel( "axis" );
|
||||
|
||||
precacheModel( game["flagmodels"]["neutral"] );
|
||||
precacheModel( game["flagmodels"]["allies"] );
|
||||
precacheModel( game["flagmodels"]["axis"] );
|
||||
|
||||
precacheString( &"MP_SECURING_POSITION" );
|
||||
|
||||
primaryFlags = getEntArray( "flag_primary", "targetname" );
|
||||
secondaryFlags = getEntArray( "flag_secondary", "targetname" );
|
||||
|
||||
if ( (primaryFlags.size + secondaryFlags.size) < 2 )
|
||||
{
|
||||
printLn( "^1Not enough domination flags found in level!" );
|
||||
maps\mp\gametypes\_callbacksetup::AbortLevel();
|
||||
return;
|
||||
}
|
||||
|
||||
level.flags = [];
|
||||
for ( index = 0; index < primaryFlags.size; index++ )
|
||||
level.flags[level.flags.size] = primaryFlags[index];
|
||||
|
||||
for ( index = 0; index < secondaryFlags.size; index++ )
|
||||
level.flags[level.flags.size] = secondaryFlags[index];
|
||||
|
||||
level.domFlags = [];
|
||||
for ( index = 0; index < level.flags.size; index++ )
|
||||
{
|
||||
trigger = level.flags[index];
|
||||
if ( isDefined( trigger.target ) )
|
||||
{
|
||||
visuals[0] = getEnt( trigger.target, "targetname" );
|
||||
}
|
||||
else
|
||||
{
|
||||
visuals[0] = spawn( "script_model", trigger.origin );
|
||||
visuals[0].angles = trigger.angles;
|
||||
}
|
||||
|
||||
visuals[0] setModel( game["flagmodels"]["neutral"] );
|
||||
|
||||
domFlag = maps\mp\gametypes\_gameobjects::createUseObject( "neutral", trigger, visuals, (0,0,100) );
|
||||
domFlag maps\mp\gametypes\_gameobjects::allowUse( "enemy" );
|
||||
domFlag maps\mp\gametypes\_gameobjects::setUseTime( 10.0 );
|
||||
domFlag maps\mp\gametypes\_gameobjects::setUseText( &"MP_SECURING_POSITION" );
|
||||
label = domFlag maps\mp\gametypes\_gameobjects::getLabel();
|
||||
domFlag.label = label;
|
||||
domFlag maps\mp\gametypes\_gameobjects::set2DIcon( "friendly", "waypoint_defend" + label );
|
||||
domFlag maps\mp\gametypes\_gameobjects::set3DIcon( "friendly", "waypoint_defend" + label );
|
||||
domFlag maps\mp\gametypes\_gameobjects::set2DIcon( "enemy", "waypoint_captureneutral" + label );
|
||||
domFlag maps\mp\gametypes\_gameobjects::set3DIcon( "enemy", "waypoint_captureneutral" + label );
|
||||
domFlag maps\mp\gametypes\_gameobjects::setVisibleTeam( "any" );
|
||||
domFlag.onUse = ::onUse;
|
||||
domFlag.onBeginUse = ::onBeginUse;
|
||||
domFlag.onUseUpdate = ::onUseUpdate;
|
||||
domFlag.onEndUse = ::onEndUse;
|
||||
|
||||
|
||||
traceStart = visuals[0].origin + (0,0,32);
|
||||
traceEnd = visuals[0].origin + (0,0,-32);
|
||||
trace = bulletTrace( traceStart, traceEnd, false, undefined );
|
||||
|
||||
upangles = vectorToAngles( trace["normal"] );
|
||||
domFlag.baseeffectforward = anglesToForward( upangles );
|
||||
domFlag.baseeffectright = anglesToRight( upangles );
|
||||
|
||||
domFlag.baseeffectpos = trace["position"];
|
||||
|
||||
// legacy spawn code support
|
||||
level.flags[index].useObj = domFlag;
|
||||
level.flags[index].adjflags = [];
|
||||
level.flags[index].nearbyspawns = [];
|
||||
|
||||
domFlag.levelFlag = level.flags[index];
|
||||
|
||||
level.domFlags[level.domFlags.size] = domFlag;
|
||||
}
|
||||
|
||||
// level.bestSpawnFlag is used as a last resort when the enemy holds all flags.
|
||||
level.bestSpawnFlag = [];
|
||||
level.bestSpawnFlag[ "allies" ] = getUnownedFlagNearestStart( "allies", undefined );
|
||||
level.bestSpawnFlag[ "axis" ] = getUnownedFlagNearestStart( "axis", level.bestSpawnFlag[ "allies" ] );
|
||||
|
||||
flagSetup();
|
||||
|
||||
/#
|
||||
thread domDebug();
|
||||
#/
|
||||
}
|
||||
|
||||
getUnownedFlagNearestStart( team, excludeFlag )
|
||||
{
|
||||
best = undefined;
|
||||
bestdistsq = undefined;
|
||||
for ( i = 0; i < level.flags.size; i++ )
|
||||
{
|
||||
flag = level.flags[i];
|
||||
|
||||
if ( flag getFlagTeam() != "neutral" )
|
||||
continue;
|
||||
|
||||
distsq = distanceSquared( flag.origin, level.startPos[team] );
|
||||
if ( (!isDefined( excludeFlag ) || flag != excludeFlag) && (!isdefined( best ) || distsq < bestdistsq) )
|
||||
{
|
||||
bestdistsq = distsq;
|
||||
best = flag;
|
||||
}
|
||||
}
|
||||
return best;
|
||||
}
|
||||
|
||||
/#
|
||||
domDebug()
|
||||
{
|
||||
while(1)
|
||||
{
|
||||
if (getdvar("scr_domdebug") != "1") {
|
||||
wait 2;
|
||||
continue;
|
||||
}
|
||||
|
||||
while(1)
|
||||
{
|
||||
if (getdvar("scr_domdebug") != "1")
|
||||
break;
|
||||
// show flag connections and each flag's spawnpoints
|
||||
for (i = 0; i < level.flags.size; i++) {
|
||||
for (j = 0; j < level.flags[i].adjflags.size; j++) {
|
||||
line(level.flags[i].origin, level.flags[i].adjflags[j].origin, (1,1,1));
|
||||
}
|
||||
|
||||
for (j = 0; j < level.flags[i].nearbyspawns.size; j++) {
|
||||
line(level.flags[i].origin, level.flags[i].nearbyspawns[j].origin, (.2,.2,.6));
|
||||
}
|
||||
|
||||
if ( level.flags[i] == level.bestSpawnFlag["allies"] )
|
||||
print3d( level.flags[i].origin, "allies best spawn flag" );
|
||||
if ( level.flags[i] == level.bestSpawnFlag["axis"] )
|
||||
print3d( level.flags[i].origin, "axis best spawn flag" );
|
||||
}
|
||||
wait .05;
|
||||
}
|
||||
}
|
||||
}
|
||||
#/
|
||||
|
||||
onBeginUse( player )
|
||||
{
|
||||
ownerTeam = self maps\mp\gametypes\_gameobjects::getOwnerTeam();
|
||||
self.didStatusNotify = false;
|
||||
|
||||
if ( ownerTeam == "neutral" )
|
||||
{
|
||||
statusDialog( "securing"+self.label, player.pers["team"] );
|
||||
self.objPoints[player.pers["team"]] thread maps\mp\gametypes\_objpoints::startFlashing();
|
||||
return;
|
||||
}
|
||||
|
||||
if ( ownerTeam == "allies" )
|
||||
otherTeam = "axis";
|
||||
else
|
||||
otherTeam = "allies";
|
||||
|
||||
self.objPoints["allies"] thread maps\mp\gametypes\_objpoints::startFlashing();
|
||||
self.objPoints["axis"] thread maps\mp\gametypes\_objpoints::startFlashing();
|
||||
}
|
||||
|
||||
|
||||
onUseUpdate( team, progress, change )
|
||||
{
|
||||
if ( progress > 0.05 && change && !self.didStatusNotify )
|
||||
{
|
||||
ownerTeam = self maps\mp\gametypes\_gameobjects::getOwnerTeam();
|
||||
if ( ownerTeam == "neutral" )
|
||||
{
|
||||
statusDialog( "securing"+self.label, team );
|
||||
}
|
||||
else
|
||||
{
|
||||
statusDialog( "losing"+self.label, ownerTeam );
|
||||
statusDialog( "securing"+self.label, team );
|
||||
}
|
||||
|
||||
self.didStatusNotify = true;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
statusDialog( dialog, team, forceDialog )
|
||||
{
|
||||
time = getTime();
|
||||
|
||||
if ( getTime() < level.lastStatus[team] + 5000 && (!isDefined( forceDialog ) || !forceDialog) )
|
||||
return;
|
||||
|
||||
thread delayedLeaderDialog( dialog, team );
|
||||
level.lastStatus[team] = getTime();
|
||||
}
|
||||
|
||||
|
||||
onEndUse( team, player, success )
|
||||
{
|
||||
self.objPoints["allies"] thread maps\mp\gametypes\_objpoints::stopFlashing();
|
||||
self.objPoints["axis"] thread maps\mp\gametypes\_objpoints::stopFlashing();
|
||||
}
|
||||
|
||||
|
||||
resetFlagBaseEffect()
|
||||
{
|
||||
if ( isdefined( self.baseeffect ) )
|
||||
self.baseeffect delete();
|
||||
|
||||
team = self maps\mp\gametypes\_gameobjects::getOwnerTeam();
|
||||
|
||||
if ( team != "axis" && team != "allies" )
|
||||
return;
|
||||
|
||||
fxid = level.flagBaseFXid[ team ];
|
||||
|
||||
self.baseeffect = spawnFx( fxid, self.baseeffectpos, self.baseeffectforward, self.baseeffectright );
|
||||
triggerFx( self.baseeffect );
|
||||
}
|
||||
|
||||
onUse( player )
|
||||
{
|
||||
team = player.pers["team"];
|
||||
oldTeam = self maps\mp\gametypes\_gameobjects::getOwnerTeam();
|
||||
label = self maps\mp\gametypes\_gameobjects::getLabel();
|
||||
|
||||
//player logString( "flag captured: " + self.label );
|
||||
|
||||
self.captureTime = getTime();
|
||||
|
||||
self maps\mp\gametypes\_gameobjects::setOwnerTeam( team );
|
||||
self maps\mp\gametypes\_gameobjects::set2DIcon( "enemy", "waypoint_capture" + label );
|
||||
self maps\mp\gametypes\_gameobjects::set3DIcon( "enemy", "waypoint_capture" + label );
|
||||
self.visuals[0] setModel( game["flagmodels"][team] );
|
||||
|
||||
self resetFlagBaseEffect();
|
||||
|
||||
level.useStartSpawns = false;
|
||||
|
||||
assert( team != "neutral" );
|
||||
|
||||
if ( oldTeam == "neutral" )
|
||||
{
|
||||
otherTeam = getOtherTeam( team );
|
||||
thread printAndSoundOnEveryone( team, otherTeam, undefined, undefined, "mp_war_objective_taken", undefined, player );
|
||||
|
||||
statusDialog( "secured"+self.label, team, true );
|
||||
statusDialog( "enemy_has"+self.label, otherTeam, true );
|
||||
}
|
||||
else
|
||||
{
|
||||
thread printAndSoundOnEveryone( team, oldTeam, undefined, undefined, "mp_war_objective_taken", "mp_war_objective_lost", player );
|
||||
|
||||
// thread delayedLeaderDialogBothTeams( "obj_lost", oldTeam, "obj_taken", team );
|
||||
|
||||
if ( getTeamFlagCount( team ) == level.flags.size )
|
||||
{
|
||||
statusDialog( "secure_all", team );
|
||||
statusDialog( "lost_all", oldTeam );
|
||||
}
|
||||
else
|
||||
{
|
||||
statusDialog( "secured"+self.label, team, true );
|
||||
statusDialog( "lost"+self.label, oldTeam, true );
|
||||
}
|
||||
|
||||
level.bestSpawnFlag[ oldTeam ] = self.levelFlag;
|
||||
}
|
||||
|
||||
player notify( "objective", "captured" );
|
||||
self thread giveFlagCaptureXP( self.touchList[team] );
|
||||
}
|
||||
|
||||
giveFlagCaptureXP( touchList )
|
||||
{
|
||||
level endon ( "game_ended" );
|
||||
|
||||
players = getArrayKeys( touchList );
|
||||
for ( index = 0; index < players.size; index++ )
|
||||
{
|
||||
player = touchList[players[index]].player;
|
||||
player thread maps\mp\gametypes\_hud_message::SplashNotify( "capture", maps\mp\gametypes\_rank::getScoreInfoValue( "capture" ) );
|
||||
player thread updateCPM();
|
||||
player thread maps\mp\gametypes\_rank::giveRankXP( "capture", maps\mp\gametypes\_rank::getScoreInfoValue( "capture" ) * player getCapXPScale() );
|
||||
printLn( maps\mp\gametypes\_rank::getScoreInfoValue( "capture" ) * player getCapXPScale() );
|
||||
maps\mp\gametypes\_gamescore::givePlayerScore( "capture", player );
|
||||
player incPlayerStat( "pointscaptured", 1 );
|
||||
}
|
||||
|
||||
player = self maps\mp\gametypes\_gameobjects::getEarliestClaimPlayer();
|
||||
|
||||
level thread teamPlayerCardSplash( "callout_securedposition" + self.label, player );
|
||||
|
||||
player thread maps\mp\_matchdata::logGameEvent( "capture", player.origin );
|
||||
}
|
||||
|
||||
delayedLeaderDialog( sound, team )
|
||||
{
|
||||
level endon ( "game_ended" );
|
||||
wait .1;
|
||||
WaitTillSlowProcessAllowed();
|
||||
|
||||
leaderDialog( sound, team );
|
||||
}
|
||||
delayedLeaderDialogBothTeams( sound1, team1, sound2, team2 )
|
||||
{
|
||||
level endon ( "game_ended" );
|
||||
wait .1;
|
||||
WaitTillSlowProcessAllowed();
|
||||
|
||||
leaderDialogBothTeams( sound1, team1, sound2, team2 );
|
||||
}
|
||||
|
||||
|
||||
updateDomScores()
|
||||
{
|
||||
level endon ( "game_ended" );
|
||||
|
||||
while ( !level.gameEnded )
|
||||
{
|
||||
domFlags = getOwnedDomFlags();
|
||||
|
||||
if ( domFlags.size )
|
||||
{
|
||||
for ( i = 1; i < domFlags.size; i++ )
|
||||
{
|
||||
domFlag = domFlags[i];
|
||||
flagScore = getTime() - domFlag.captureTime;
|
||||
for ( j = i - 1; j >= 0 && flagScore > (getTime() - domFlags[j].captureTime); j-- )
|
||||
domFlags[j + 1] = domFlags[j];
|
||||
domFlags[j + 1] = domFlag;
|
||||
}
|
||||
|
||||
foreach( domFlag in domFlags )
|
||||
{
|
||||
team = domFlag maps\mp\gametypes\_gameobjects::getOwnerTeam();
|
||||
assert( team == "allies" || team == "axis" );
|
||||
maps\mp\gametypes\_gamescore::giveTeamScoreForObjective( team, 1 );
|
||||
}
|
||||
}
|
||||
|
||||
// end the game if people aren't playing
|
||||
if ( (((getTimePassed() / 1000) > 120 && domFlags.size < 2) || ((getTimePassed() / 1000) > 300 && domFlags.size < 3)) && matchMakingGame() )
|
||||
{
|
||||
thread maps\mp\gametypes\_gamelogic::endGame( "none", game["strings"]["time_limit_reached"] );
|
||||
return;
|
||||
}
|
||||
|
||||
wait ( 5.0 );
|
||||
maps\mp\gametypes\_hostmigration::waitTillHostMigrationDone();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
onPlayerKilled( eInflictor, attacker, iDamage, sMeansOfDeath, sWeapon, vDir, sHitLoc, psOffsetTime, deathAnimDuration, killId )
|
||||
{
|
||||
if ( !isPlayer( attacker ) || (!self.touchTriggers.size && !attacker.touchTriggers.size) || attacker.pers["team"] == self.pers["team"] )
|
||||
return;
|
||||
|
||||
awardedAssault = false;
|
||||
awardedDefend = false;
|
||||
|
||||
foreach ( trigger in self.touchTriggers )
|
||||
{
|
||||
// TODO: way to check for dom specific triggers
|
||||
if ( !isDefined( trigger.useObj ) )
|
||||
continue;
|
||||
|
||||
ownerTeam = trigger.useObj.ownerTeam;
|
||||
team = self.pers["team"];
|
||||
|
||||
if ( ownerTeam == "neutral" )
|
||||
continue;
|
||||
|
||||
if ( team == ownerTeam )
|
||||
{
|
||||
awardedAssault = true;
|
||||
attacker thread maps\mp\gametypes\_hud_message::SplashNotify( "assault", maps\mp\gametypes\_rank::getScoreInfoValue( "assault" ) );
|
||||
attacker thread maps\mp\gametypes\_rank::giveRankXP( "assault" );
|
||||
maps\mp\gametypes\_gamescore::givePlayerScore( "assault", attacker );
|
||||
|
||||
thread maps\mp\_matchdata::logKillEvent( killId, "defending" );
|
||||
}
|
||||
else
|
||||
{
|
||||
awardedDefend = true;
|
||||
attacker thread maps\mp\gametypes\_hud_message::SplashNotify( "defend", maps\mp\gametypes\_rank::getScoreInfoValue( "defend" ) );
|
||||
attacker thread maps\mp\gametypes\_rank::giveRankXP( "defend" );
|
||||
maps\mp\gametypes\_gamescore::givePlayerScore( "defend", attacker );
|
||||
|
||||
thread maps\mp\_matchdata::logKillEvent( killId, "assaulting" );
|
||||
}
|
||||
}
|
||||
|
||||
foreach ( trigger in attacker.touchTriggers )
|
||||
{
|
||||
// TODO: way to check for dom specific triggers
|
||||
if ( !isDefined( trigger.useObj ) )
|
||||
continue;
|
||||
|
||||
ownerTeam = trigger.useObj.ownerTeam;
|
||||
team = attacker.pers["team"];
|
||||
|
||||
if ( ownerTeam == "neutral" )
|
||||
continue;
|
||||
|
||||
if ( team == ownerTeam )
|
||||
{
|
||||
if ( !awardedDefend )
|
||||
attacker thread maps\mp\gametypes\_hud_message::SplashNotify( "defend", maps\mp\gametypes\_rank::getScoreInfoValue( "defend" ) );
|
||||
attacker thread maps\mp\gametypes\_rank::giveRankXP( "defend" );
|
||||
maps\mp\gametypes\_gamescore::givePlayerScore( "defend", attacker );
|
||||
|
||||
thread maps\mp\_matchdata::logKillEvent( killId, "assaulting" );
|
||||
}
|
||||
else
|
||||
{
|
||||
if ( !awardedAssault )
|
||||
attacker thread maps\mp\gametypes\_hud_message::SplashNotify( "assault", maps\mp\gametypes\_rank::getScoreInfoValue( "assault" ) );
|
||||
attacker thread maps\mp\gametypes\_rank::giveRankXP( "assault" );
|
||||
maps\mp\gametypes\_gamescore::givePlayerScore( "assault", attacker );
|
||||
|
||||
thread maps\mp\_matchdata::logKillEvent( killId, "defending" );
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
getOwnedDomFlags()
|
||||
{
|
||||
domFlags = [];
|
||||
foreach ( domFlag in level.domFlags )
|
||||
{
|
||||
if ( domFlag maps\mp\gametypes\_gameobjects::getOwnerTeam() != "neutral" && isDefined( domFlag.captureTime ) )
|
||||
domFlags[domFlags.size] = domFlag;
|
||||
}
|
||||
|
||||
return domFlags;
|
||||
}
|
||||
|
||||
|
||||
getTeamFlagCount( team )
|
||||
{
|
||||
score = 0;
|
||||
for (i = 0; i < level.flags.size; i++)
|
||||
{
|
||||
if ( level.domFlags[i] maps\mp\gametypes\_gameobjects::getOwnerTeam() == team )
|
||||
score++;
|
||||
}
|
||||
return score;
|
||||
}
|
||||
|
||||
getFlagTeam()
|
||||
{
|
||||
return self.useObj maps\mp\gametypes\_gameobjects::getOwnerTeam();
|
||||
}
|
||||
|
||||
getBoundaryFlags()
|
||||
{
|
||||
// get all flags which are adjacent to flags that aren't owned by the same team
|
||||
bflags = [];
|
||||
for (i = 0; i < level.flags.size; i++)
|
||||
{
|
||||
for (j = 0; j < level.flags[i].adjflags.size; j++)
|
||||
{
|
||||
if (level.flags[i].useObj maps\mp\gametypes\_gameobjects::getOwnerTeam() != level.flags[i].adjflags[j].useObj maps\mp\gametypes\_gameobjects::getOwnerTeam() )
|
||||
{
|
||||
bflags[bflags.size] = level.flags[i];
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return bflags;
|
||||
}
|
||||
|
||||
getBoundaryFlagSpawns(team)
|
||||
{
|
||||
spawns = [];
|
||||
|
||||
bflags = getBoundaryFlags();
|
||||
for (i = 0; i < bflags.size; i++)
|
||||
{
|
||||
if (isdefined(team) && bflags[i] getFlagTeam() != team)
|
||||
continue;
|
||||
|
||||
for (j = 0; j < bflags[i].nearbyspawns.size; j++)
|
||||
spawns[spawns.size] = bflags[i].nearbyspawns[j];
|
||||
}
|
||||
|
||||
return spawns;
|
||||
}
|
||||
|
||||
getSpawnsBoundingFlag( avoidflag )
|
||||
{
|
||||
spawns = [];
|
||||
|
||||
for (i = 0; i < level.flags.size; i++)
|
||||
{
|
||||
flag = level.flags[i];
|
||||
if ( flag == avoidflag )
|
||||
continue;
|
||||
|
||||
isbounding = false;
|
||||
for (j = 0; j < flag.adjflags.size; j++)
|
||||
{
|
||||
if ( flag.adjflags[j] == avoidflag )
|
||||
{
|
||||
isbounding = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if ( !isbounding )
|
||||
continue;
|
||||
|
||||
for (j = 0; j < flag.nearbyspawns.size; j++)
|
||||
spawns[spawns.size] = flag.nearbyspawns[j];
|
||||
}
|
||||
|
||||
return spawns;
|
||||
}
|
||||
|
||||
// gets an array of all spawnpoints which are near flags that are
|
||||
// owned by the given team, or that are adjacent to flags owned by the given team.
|
||||
getOwnedAndBoundingFlagSpawns(team)
|
||||
{
|
||||
spawns = [];
|
||||
|
||||
for (i = 0; i < level.flags.size; i++)
|
||||
{
|
||||
if ( level.flags[i] getFlagTeam() == team )
|
||||
{
|
||||
// add spawns near this flag
|
||||
for (s = 0; s < level.flags[i].nearbyspawns.size; s++)
|
||||
spawns[spawns.size] = level.flags[i].nearbyspawns[s];
|
||||
}
|
||||
else
|
||||
{
|
||||
for (j = 0; j < level.flags[i].adjflags.size; j++)
|
||||
{
|
||||
if ( level.flags[i].adjflags[j] getFlagTeam() == team )
|
||||
{
|
||||
// add spawns near this flag
|
||||
for (s = 0; s < level.flags[i].nearbyspawns.size; s++)
|
||||
spawns[spawns.size] = level.flags[i].nearbyspawns[s];
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return spawns;
|
||||
}
|
||||
|
||||
// gets an array of all spawnpoints which are near flags that are
|
||||
// owned by the given team
|
||||
getOwnedFlagSpawns(team)
|
||||
{
|
||||
spawns = [];
|
||||
|
||||
for (i = 0; i < level.flags.size; i++)
|
||||
{
|
||||
if ( level.flags[i] getFlagTeam() == team )
|
||||
{
|
||||
// add spawns near this flag
|
||||
for (s = 0; s < level.flags[i].nearbyspawns.size; s++)
|
||||
spawns[spawns.size] = level.flags[i].nearbyspawns[s];
|
||||
}
|
||||
}
|
||||
|
||||
return spawns;
|
||||
}
|
||||
|
||||
flagSetup()
|
||||
{
|
||||
maperrors = [];
|
||||
descriptorsByLinkname = [];
|
||||
|
||||
// (find each flag_descriptor object)
|
||||
descriptors = getentarray("flag_descriptor", "targetname");
|
||||
|
||||
flags = level.flags;
|
||||
|
||||
for (i = 0; i < level.domFlags.size; i++)
|
||||
{
|
||||
closestdist = undefined;
|
||||
closestdesc = undefined;
|
||||
for (j = 0; j < descriptors.size; j++)
|
||||
{
|
||||
dist = distance(flags[i].origin, descriptors[j].origin);
|
||||
if (!isdefined(closestdist) || dist < closestdist) {
|
||||
closestdist = dist;
|
||||
closestdesc = descriptors[j];
|
||||
}
|
||||
}
|
||||
|
||||
if (!isdefined(closestdesc)) {
|
||||
maperrors[maperrors.size] = "there is no flag_descriptor in the map! see explanation in dom.gsc";
|
||||
break;
|
||||
}
|
||||
if (isdefined(closestdesc.flag)) {
|
||||
maperrors[maperrors.size] = "flag_descriptor with script_linkname \"" + closestdesc.script_linkname + "\" is nearby more than one flag; is there a unique descriptor near each flag?";
|
||||
continue;
|
||||
}
|
||||
flags[i].descriptor = closestdesc;
|
||||
closestdesc.flag = flags[i];
|
||||
descriptorsByLinkname[closestdesc.script_linkname] = closestdesc;
|
||||
}
|
||||
|
||||
if (maperrors.size == 0)
|
||||
{
|
||||
// find adjacent flags
|
||||
for (i = 0; i < flags.size; i++)
|
||||
{
|
||||
if (isdefined(flags[i].descriptor.script_linkto))
|
||||
adjdescs = strtok(flags[i].descriptor.script_linkto, " ");
|
||||
else
|
||||
adjdescs = [];
|
||||
for (j = 0; j < adjdescs.size; j++)
|
||||
{
|
||||
otherdesc = descriptorsByLinkname[adjdescs[j]];
|
||||
if (!isdefined(otherdesc) || otherdesc.targetname != "flag_descriptor") {
|
||||
maperrors[maperrors.size] = "flag_descriptor with script_linkname \"" + flags[i].descriptor.script_linkname + "\" linked to \"" + adjdescs[j] + "\" which does not exist as a script_linkname of any other entity with a targetname of flag_descriptor (or, if it does, that flag_descriptor has not been assigned to a flag)";
|
||||
continue;
|
||||
}
|
||||
adjflag = otherdesc.flag;
|
||||
if (adjflag == flags[i]) {
|
||||
maperrors[maperrors.size] = "flag_descriptor with script_linkname \"" + flags[i].descriptor.script_linkname + "\" linked to itself";
|
||||
continue;
|
||||
}
|
||||
flags[i].adjflags[flags[i].adjflags.size] = adjflag;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// assign each spawnpoint to nearest flag
|
||||
spawnpoints = maps\mp\gametypes\_spawnlogic::getSpawnpointArray( "mp_dom_spawn" );
|
||||
for (i = 0; i < spawnpoints.size; i++)
|
||||
{
|
||||
if (isdefined(spawnpoints[i].script_linkto)) {
|
||||
desc = descriptorsByLinkname[spawnpoints[i].script_linkto];
|
||||
if (!isdefined(desc) || desc.targetname != "flag_descriptor") {
|
||||
maperrors[maperrors.size] = "Spawnpoint at " + spawnpoints[i].origin + "\" linked to \"" + spawnpoints[i].script_linkto + "\" which does not exist as a script_linkname of any entity with a targetname of flag_descriptor (or, if it does, that flag_descriptor has not been assigned to a flag)";
|
||||
continue;
|
||||
}
|
||||
nearestflag = desc.flag;
|
||||
}
|
||||
else {
|
||||
nearestflag = undefined;
|
||||
nearestdist = undefined;
|
||||
for (j = 0; j < flags.size; j++)
|
||||
{
|
||||
dist = distancesquared(flags[j].origin, spawnpoints[i].origin);
|
||||
if (!isdefined(nearestflag) || dist < nearestdist)
|
||||
{
|
||||
nearestflag = flags[j];
|
||||
nearestdist = dist;
|
||||
}
|
||||
}
|
||||
}
|
||||
nearestflag.nearbyspawns[nearestflag.nearbyspawns.size] = spawnpoints[i];
|
||||
}
|
||||
|
||||
if (maperrors.size > 0)
|
||||
{
|
||||
println("^1------------ Map Errors ------------");
|
||||
for(i = 0; i < maperrors.size; i++)
|
||||
println(maperrors[i]);
|
||||
println("^1------------------------------------");
|
||||
|
||||
error("Map errors. See above");
|
||||
maps\mp\gametypes\_callbacksetup::AbortLevel();
|
||||
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
initGametypeAwards()
|
||||
{
|
||||
maps\mp\_awards::initStatAward( "pointscaptured", 0, maps\mp\_awards::highestWins );
|
||||
}
|
||||
|
||||
onSpawnPlayer()
|
||||
{
|
||||
}
|
||||
|
||||
updateCPM()
|
||||
{
|
||||
if ( !isDefined( self.CPM ) )
|
||||
{
|
||||
self.numCaps = 0;
|
||||
self.CPM = 0;
|
||||
}
|
||||
|
||||
self.numCaps++;
|
||||
|
||||
if ( getMinutesPassed() < 1 )
|
||||
return;
|
||||
|
||||
self.CPM = self.numCaps / getMinutesPassed();
|
||||
}
|
||||
|
||||
getCapXPScale()
|
||||
{
|
||||
if ( self.CPM < 4 )
|
||||
return 1;
|
||||
else
|
||||
return 0.25;
|
||||
}
|
||||
@@ -0,0 +1,507 @@
|
||||
#include common_scripts\utility;
|
||||
#include maps\mp\_utility;
|
||||
#include maps\mp\gametypes\_hud_util;
|
||||
/*
|
||||
Global Thermal Nuclear War
|
||||
*/
|
||||
|
||||
/*QUAKED mp_ctf_spawn_axis (0.75 0.0 0.5) (-16 -16 0) (16 16 72)
|
||||
Axis players spawn away from enemies and near their team at one of these positions.*/
|
||||
|
||||
/*QUAKED mp_ctf_spawn_allies (0.0 0.75 0.5) (-16 -16 0) (16 16 72)
|
||||
Allied players spawn away from enemies and near their team at one of these positions.*/
|
||||
|
||||
/*QUAKED mp_ctf_spawn_axis_start (1.0 0.0 0.5) (-16 -16 0) (16 16 72)
|
||||
Axis players spawn away from enemies and near their team at one of these positions at the start of a round.*/
|
||||
|
||||
/*QUAKED mp_ctf_spawn_allies_start (0.0 1.0 0.5) (-16 -16 0) (16 16 72)
|
||||
Allied players spawn away from enemies and near their team at one of these positions at the start of a round.*/
|
||||
|
||||
main()
|
||||
{
|
||||
maps\mp\gametypes\_globallogic::init();
|
||||
maps\mp\gametypes\_callbacksetup::SetupCallbacks();
|
||||
maps\mp\gametypes\_globallogic::SetupCallbacks();
|
||||
|
||||
registerTimeLimitDvar( level.gameType, 3, 0, 1440 );
|
||||
registerScoreLimitDvar( level.gameType, 101, 0, 10000 );
|
||||
registerRoundLimitDvar( level.gameType, 1, 0, 30 );
|
||||
registerWinLimitDvar( level.gameType, 1, 0, 10 );
|
||||
registerRoundSwitchDvar( level.gameType, 0, 0, 30 );
|
||||
registerNumLivesDvar( level.gameType, 0, 0, 10 );
|
||||
registerHalfTimeDvar( level.gameType, 0, 0, 1 );
|
||||
|
||||
level.teamBased = true;
|
||||
level.onPrecacheGameType = ::onPrecacheGameType;
|
||||
level.onStartGameType = ::onStartGameType;
|
||||
level.getSpawnPoint = ::getSpawnPoint;
|
||||
level.onDeadEvent = ::onDeadEvent;
|
||||
level.initGametypeAwards = ::initGametypeAwards;
|
||||
level.onTimeLimit = ::onTimeLimit;
|
||||
level.onNormalDeath = ::onNormalDeath;
|
||||
level.gtnw = true;
|
||||
|
||||
game["dialog"]["gametype"] = "gtw";
|
||||
|
||||
if ( getDvarInt( "g_hardcore" ) )
|
||||
game["dialog"]["gametype"] = "hc_" + game["dialog"]["gametype"];
|
||||
else if ( getDvarInt( "camera_thirdPerson" ) )
|
||||
game["dialog"]["gametype"] = "thirdp_" + game["dialog"]["gametype"];
|
||||
else if ( getDvarInt( "scr_diehard" ) )
|
||||
game["dialog"]["gametype"] = "dh_" + game["dialog"]["gametype"];
|
||||
else if (getDvarInt( "scr_" + level.gameType + "_promode" ) )
|
||||
game["dialog"]["gametype"] = game["dialog"]["gametype"] + "_pro";
|
||||
|
||||
game["dialog"]["offense_obj"] = "obj_destroy";
|
||||
game["dialog"]["defense_obj"] = "obj_defend";
|
||||
level thread onPlayerConnect();
|
||||
}
|
||||
|
||||
gtnw_endGame( winningTeam, endReasonText )
|
||||
{
|
||||
thread maps\mp\gametypes\_gamelogic::endGame( winningTeam, endReasonText );
|
||||
}
|
||||
|
||||
|
||||
onPlayerConnect()
|
||||
{
|
||||
for(;;)
|
||||
{
|
||||
level waittill( "connected", player );
|
||||
|
||||
useBar = player createPrimaryProgressBar();
|
||||
useBarText = player createPrimaryProgressBarText();
|
||||
useBarText setText( &"MP_CAPTURING_NUKE" );
|
||||
|
||||
useBar.useTime = 100;
|
||||
player.useBar = useBar;
|
||||
player.useBar hideElem();
|
||||
player.useBarText = useBarText;
|
||||
player.useBarText hideElem();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
onStartGameType()
|
||||
{
|
||||
if ( !isdefined( game["switchedsides"] ) )
|
||||
game["switchedsides"] = false;
|
||||
|
||||
if ( !isdefined( game["original_defenders"] ) )
|
||||
game["original_defenders"] = game["defenders"];
|
||||
|
||||
if ( game["switchedsides"] )
|
||||
{
|
||||
oldAttackers = game["attackers"];
|
||||
oldDefenders = game["defenders"];
|
||||
game["attackers"] = oldDefenders;
|
||||
game["defenders"] = oldAttackers;
|
||||
}
|
||||
|
||||
setClientNameMode("auto_change");
|
||||
|
||||
|
||||
if ( level.splitscreen )
|
||||
{
|
||||
setObjectiveScoreText( game["attackers"], &"OBJECTIVES_GTNW" );
|
||||
setObjectiveScoreText( game["defenders"], &"OBJECTIVES_GTNW" );
|
||||
}
|
||||
else
|
||||
{
|
||||
setObjectiveScoreText( game["attackers"], &"OBJECTIVES_GTNW_SCORE" );
|
||||
setObjectiveScoreText( game["defenders"], &"OBJECTIVES_GTNW_SCORE" );
|
||||
}
|
||||
|
||||
setObjectiveText( game["attackers"], &"OBJECTIVES_GTNW" );
|
||||
setObjectiveText( game["defenders"], &"OBJECTIVES_GTNW" );
|
||||
|
||||
setObjectiveHintText( game["attackers"], &"OBJECTIVES_GTNW_HINT" );
|
||||
setObjectiveHintText( game["defenders"], &"OBJECTIVES_GTNW_HINT" );
|
||||
|
||||
level.spawnMins = ( 0, 0, 0 );
|
||||
level.spawnMaxs = ( 0, 0, 0 );
|
||||
maps\mp\gametypes\_spawnlogic::placeSpawnPoints( "mp_ctf_spawn_allies_start" );
|
||||
maps\mp\gametypes\_spawnlogic::placeSpawnPoints( "mp_ctf_spawn_axis_start" );
|
||||
maps\mp\gametypes\_spawnlogic::addSpawnPoints( "allies", "mp_ctf_spawn_allies" );
|
||||
maps\mp\gametypes\_spawnlogic::addSpawnPoints( "axis", "mp_ctf_spawn_axis" );
|
||||
|
||||
level.mapCenter = maps\mp\gametypes\_spawnlogic::findBoxCenter( level.spawnMins, level.spawnMaxs );
|
||||
setMapCenter( level.mapCenter );
|
||||
|
||||
thread maps\mp\gametypes\_dev::init();
|
||||
|
||||
maps\mp\gametypes\_rank::registerScoreInfo( "kill", 50 );
|
||||
maps\mp\gametypes\_rank::registerScoreInfo( "headshot", 100 );
|
||||
maps\mp\gametypes\_rank::registerScoreInfo( "assist", 20 );
|
||||
maps\mp\gametypes\_rank::registerScoreInfo( "capture", 500 );
|
||||
|
||||
allowed[0] = "airdrop_pallet";
|
||||
allowed[1] = "gtnw";
|
||||
allowed[2] = "gtnw_zone";
|
||||
maps\mp\gametypes\_gameobjects::main(allowed);
|
||||
|
||||
thread setupNukeSite();
|
||||
|
||||
}
|
||||
|
||||
onPrecacheGameType()
|
||||
{
|
||||
precacheShader("waypoint_defend");
|
||||
precacheShader("waypoint_target");
|
||||
precacheShader("waypoint_capture");
|
||||
|
||||
precacheString( &"MP_CAPTURING_NUKE" );
|
||||
return;
|
||||
}
|
||||
|
||||
setupNukeSite()
|
||||
{
|
||||
level.lastStatus["allies"] = 0;
|
||||
level.lastStatus["axis"] = 0;
|
||||
|
||||
nukeZone = getEnt( "gtnw_zone", "targetname" );
|
||||
assertEx( isDefined( nukeZone ), "GTNW Zone prefab doesn't exist in this map" );
|
||||
visuals = [];
|
||||
|
||||
nukeSite = maps\mp\gametypes\_gameobjects::createUseObject( "neutral", nukeZone, visuals, (0,0,100) );
|
||||
|
||||
nukeSite maps\mp\gametypes\_gameobjects::set2DIcon( "friendly", "waypoint_defend");
|
||||
nukeSite maps\mp\gametypes\_gameobjects::set3DIcon( "friendly", "waypoint_defend" );
|
||||
|
||||
nukeSite maps\mp\gametypes\_gameobjects::set2DIcon( "enemy", "waypoint_captureneutral" );
|
||||
nukeSite maps\mp\gametypes\_gameobjects::set3DIcon( "enemy", "waypoint_captureneutral" );
|
||||
|
||||
nukeSite maps\mp\gametypes\_gameobjects::allowUse( "enemy" );
|
||||
nukeSite.noUseBar = true;
|
||||
nukeSite maps\mp\gametypes\_gameobjects::setVisibleTeam( "any" );
|
||||
|
||||
nukeSite.onBeginUse = ::onBeginUse;
|
||||
nukeSite.onEndUse = ::onEndUse;
|
||||
|
||||
level.nukeSite = nukeSite;
|
||||
nukeSite thread scoreCounter();
|
||||
}
|
||||
|
||||
|
||||
getSpawnPoint()
|
||||
{
|
||||
if ( self.team == "axis" )
|
||||
spawnTeam = game["attackers"];
|
||||
else
|
||||
spawnTeam = game["defenders"];
|
||||
|
||||
if ( level.inGracePeriod )
|
||||
{
|
||||
if ( getDvar( "mapname" ) == "mp_shipment_long" )
|
||||
{
|
||||
spawnPoints = getentarray("mp_cha_spawn_" + spawnteam + "_start", "classname");
|
||||
spawnPoint = maps\mp\gametypes\_spawnlogic::getSpawnpoint_Random( spawnPoints );
|
||||
}
|
||||
else
|
||||
{
|
||||
spawnPoints = getentarray("mp_ctf_spawn_" + spawnteam + "_start", "classname");
|
||||
spawnPoint = maps\mp\gametypes\_spawnlogic::getSpawnpoint_Random( spawnPoints );
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if ( getDvar( "mapname" ) == "mp_shipment_long" )
|
||||
{
|
||||
spawnPoints = maps\mp\gametypes\_spawnlogic::getSpawnpointArray( "mp_cha_spawn_" + spawnteam );
|
||||
spawnPoint = maps\mp\gametypes\_spawnlogic::getSpawnpoint_Random( spawnPoints );
|
||||
}
|
||||
else
|
||||
{
|
||||
spawnPoints = maps\mp\gametypes\_spawnlogic::getTeamSpawnPoints( spawnteam );
|
||||
spawnPoint = maps\mp\gametypes\_spawnlogic::getSpawnpoint_NearTeam( spawnPoints );
|
||||
}
|
||||
}
|
||||
|
||||
return spawnPoint;
|
||||
}
|
||||
|
||||
|
||||
spawnFxDelay( fxid, pos, forward, right, delay )
|
||||
{
|
||||
wait delay;
|
||||
effect = spawnFx( fxid, pos, forward, right );
|
||||
triggerFx( effect );
|
||||
}
|
||||
|
||||
|
||||
onDeadEvent( team )
|
||||
{
|
||||
if ( ( isDefined( level.nukeIncoming ) && level.nukeIncoming ) || ( isDefined( level.nukeDetonated ) && level.nukeDetonated ) )
|
||||
return;
|
||||
|
||||
if ( team == game["attackers"] )
|
||||
{
|
||||
maps\mp\gametypes\_gamescore::giveTeamScoreForObjective( team, 1 );
|
||||
level thread gtnw_endGame( game["defenders"], game["strings"][game["attackers"]+"_eliminated"] );
|
||||
}
|
||||
else if ( team == game["defenders"] )
|
||||
{
|
||||
maps\mp\gametypes\_gamescore::giveTeamScoreForObjective( team, 1 );
|
||||
level thread gtnw_endGame( game["attackers"], game["strings"][game["defenders"]+"_eliminated"] );
|
||||
}
|
||||
}
|
||||
|
||||
initGametypeAwards()
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
onTimeLimit()
|
||||
{
|
||||
if ( game["teamScores"]["allies"] == game["teamScores"]["axis"] )
|
||||
{
|
||||
level thread overtimeThread();
|
||||
}
|
||||
else if( game["teamScores"]["axis"] > game["teamScores"]["allies"] )
|
||||
{
|
||||
thread maps\mp\gametypes\_gamelogic::endGame( "axis", game["strings"]["time_limit_reached"] );
|
||||
}
|
||||
else if( game["teamScores"]["axis"] < game["teamScores"]["allies"] )
|
||||
{
|
||||
thread maps\mp\gametypes\_gamelogic::endGame( "allies", game["strings"]["time_limit_reached"] );
|
||||
}
|
||||
}
|
||||
|
||||
overtimeThread( time )
|
||||
{
|
||||
level endon( "game_ended" );
|
||||
|
||||
level.inOvertime = true;
|
||||
level thread disableSpawning( 5 );
|
||||
|
||||
level.endGameTime = 120;
|
||||
|
||||
time = level.endGameTime;
|
||||
|
||||
foreach ( player in level.players )
|
||||
player thread maps\mp\gametypes\_hud_message::SplashNotify( "gtnw_overtime" );
|
||||
|
||||
maps\mp\gametypes\_gamelogic::pauseTimer();
|
||||
level.timeLimitOverride = true;
|
||||
setGameEndTime( int( getTime() + ( level.endGameTime * 1000 ) ) );
|
||||
|
||||
maps\mp\gametypes\_hostmigration::waitLongDurationWithGameEndTimeUpdate( time );
|
||||
|
||||
if ( game["teamScores"]["axis"] > game["teamScores"]["allies"] )
|
||||
{
|
||||
thread maps\mp\gametypes\_gamelogic::endGame( "axis", game["strings"]["time_limit_reached"] );
|
||||
}
|
||||
else if ( game["teamScores"]["axis"] < game["teamScores"]["allies"] )
|
||||
{
|
||||
thread maps\mp\gametypes\_gamelogic::endGame( "allies", game["strings"]["time_limit_reached"] );
|
||||
}
|
||||
else
|
||||
{
|
||||
thread maps\mp\gametypes\_gamelogic::endGame( "tie", game["strings"]["time_limit_reached"] );
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
disableSpawning( waitTime )
|
||||
{
|
||||
level endon( "game_ended" );
|
||||
|
||||
wait ( 5 );
|
||||
level.disableSpawning = true;
|
||||
}
|
||||
|
||||
|
||||
onBeginUse( player )
|
||||
{
|
||||
player.useBar showElem();
|
||||
player.useBarText showElem();
|
||||
return;
|
||||
}
|
||||
|
||||
onEndUse( team, player, success )
|
||||
{
|
||||
player.useBar hideElem();
|
||||
player.useBarText hideElem();
|
||||
return;
|
||||
}
|
||||
|
||||
scoreCounter()
|
||||
{
|
||||
level endon( "game_ended" );
|
||||
self endon( "stop_counting" );
|
||||
|
||||
for ( ;; )
|
||||
{
|
||||
|
||||
if ( !self.touchList["axis"].size && !self.touchlist["allies"].size )
|
||||
{
|
||||
setDvar( "ui_danger_team", "none" );
|
||||
|
||||
self maps\mp\gametypes\_gameobjects::set2DIcon( "enemy", "waypoint_captureneutral" );
|
||||
self maps\mp\gametypes\_gameobjects::set3DIcon( "enemy", "waypoint_captureneutral" );
|
||||
|
||||
self maps\mp\gametypes\_gameobjects::setOwnerTeam( "none" );
|
||||
self updateHudElems();
|
||||
wait 1;
|
||||
continue;
|
||||
}
|
||||
|
||||
self maps\mp\gametypes\_gameobjects::set2DIcon( "friendly", "waypoint_defend");
|
||||
self maps\mp\gametypes\_gameobjects::set3DIcon( "friendly", "waypoint_defend" );
|
||||
self maps\mp\gametypes\_gameobjects::set2DIcon( "enemy", "waypoint_capture" );
|
||||
self maps\mp\gametypes\_gameobjects::set3DIcon( "enemy", "waypoint_capture" );
|
||||
|
||||
if ( self.touchList["axis"].size > self.touchList["allies"].size )
|
||||
{
|
||||
if ( maps\mp\gametypes\_gamescore::_getTeamScore( "axis" ) < 100 )
|
||||
maps\mp\gametypes\_gamescore::giveTeamScoreForObjective( "axis", 1 );
|
||||
|
||||
self thread setUseBarScore( "axis" );
|
||||
setDvar( "ui_danger_team", "allies" );
|
||||
self maps\mp\gametypes\_gameobjects::setOwnerTeam( "axis" );
|
||||
|
||||
if ( maps\mp\gametypes\_gamescore::_getTeamScore( "axis" ) >= 100 )
|
||||
{
|
||||
self maps\mp\gametypes\_gameobjects::allowUse( "none" );
|
||||
activateNuke( "axis" );
|
||||
self notify( "stop_counting" );
|
||||
}
|
||||
}
|
||||
else if ( self.touchList["axis"].size < self.touchList["allies"].size )
|
||||
{
|
||||
if ( maps\mp\gametypes\_gamescore::_getTeamScore( "allies" ) < 100 )
|
||||
maps\mp\gametypes\_gamescore::giveTeamScoreForObjective( "allies", 1 );
|
||||
|
||||
self thread setUseBarScore( "allies" );
|
||||
setDvar( "ui_danger_team", "axis" );
|
||||
self maps\mp\gametypes\_gameobjects::setOwnerTeam( "allies" );
|
||||
|
||||
if ( maps\mp\gametypes\_gamescore::_getTeamScore( "allies" ) >= 100 )
|
||||
{
|
||||
self maps\mp\gametypes\_gameobjects::allowUse( "none" );
|
||||
activateNuke( "allies" );
|
||||
self notify( "stop_counting" );
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
self maps\mp\gametypes\_gameobjects::set2DIcon( "enemy", "waypoint_captureneutral" );
|
||||
self maps\mp\gametypes\_gameobjects::set3DIcon( "enemy", "waypoint_captureneutral" );
|
||||
|
||||
self maps\mp\gametypes\_gameobjects::setOwnerTeam( "none" );
|
||||
setDvar( "ui_danger_team", "contested" );
|
||||
}
|
||||
updateHudElems();
|
||||
|
||||
wait( 1 );
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
activateNuke( team )
|
||||
{
|
||||
self giveFlagCaptureXP( self.touchList[team] );
|
||||
self maps\mp\gametypes\_gameobjects::setVisibleTeam( "none" );
|
||||
self maps\mp\gametypes\_gameobjects::allowUse( "none" );
|
||||
|
||||
|
||||
bestTime = 99999999;
|
||||
nukeOwner = undefined;
|
||||
|
||||
foreach( player in level.players )
|
||||
{
|
||||
if ( !isDefined( player ) )
|
||||
continue;
|
||||
|
||||
player.useBar hideElem();
|
||||
player.useBarText hideElem();
|
||||
|
||||
if ( player.team != team )
|
||||
continue;
|
||||
|
||||
if ( !isDefined( self.touchlist[team][player.guid] ) )
|
||||
continue;
|
||||
|
||||
timeStarted = self.touchlist[team][player.guid].startTime;
|
||||
|
||||
if ( timeStarted < bestTime )
|
||||
{
|
||||
nukeOwner = player;
|
||||
bestTime = timeStarted;
|
||||
}
|
||||
}
|
||||
assert( isDefined( nukeOwner ) );
|
||||
|
||||
nukeOwner maps\mp\killstreaks\_nuke::tryUseNuke( 1 );
|
||||
}
|
||||
|
||||
|
||||
giveFlagCaptureXP( touchList )
|
||||
{
|
||||
level endon ( "game_ended" );
|
||||
wait .05;
|
||||
WaitTillSlowProcessAllowed();
|
||||
|
||||
players = getArrayKeys( touchList );
|
||||
for ( index = 0; index < players.size; index++ )
|
||||
{
|
||||
player = touchList[players[index]].player;
|
||||
player thread maps\mp\gametypes\_hud_message::SplashNotify( "captured_nuke", maps\mp\gametypes\_rank::getScoreInfoValue( "capture" ) );
|
||||
player thread [[level.onXPEvent]]( "capture" );
|
||||
maps\mp\gametypes\_gamescore::givePlayerScore( "capture", player );
|
||||
}
|
||||
}
|
||||
|
||||
setUseBarScore( team )
|
||||
{
|
||||
teamScore = getTeamScore( team );
|
||||
|
||||
foreach( player in level.players )
|
||||
{
|
||||
if ( !isDefined( player ) )
|
||||
continue;
|
||||
|
||||
if ( player.team != team )
|
||||
continue;
|
||||
|
||||
if ( !isDefined( self.touchlist[team][player.guid] ) )
|
||||
continue;
|
||||
|
||||
//player thread maps\mp\gametypes\_rank::giveRankXP( "challenge",50 );
|
||||
|
||||
player.useBar updateBar( teamScore/100, 0 );
|
||||
}
|
||||
}
|
||||
|
||||
updateHudElems()
|
||||
{
|
||||
foreach( player in level.players )
|
||||
{
|
||||
if ( !isDefined( player ) )
|
||||
continue;
|
||||
|
||||
if ( !isDefined( self.touchlist["axis"][player.guid] ) && !isDefined( self.touchlist["allies"][player.guid] ) )
|
||||
{
|
||||
player.useBar hideElem();
|
||||
player.useBarText hideElem();
|
||||
}
|
||||
|
||||
if ( isDefined( self.touchlist["axis"][player.guid] ) || isDefined( self.touchlist["allies"][player.guid] ) )
|
||||
{
|
||||
player.useBar showElem();
|
||||
player.useBarText showElem();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
onNormalDeath( victim, attacker, lifeId )
|
||||
{
|
||||
if ( !isDefined( level.inOvertime ) || !level.inOvertime )
|
||||
return;
|
||||
|
||||
team = victim.team;
|
||||
|
||||
if ( game["state"] == "postgame" )
|
||||
attacker.finalKill = true;
|
||||
}
|
||||
@@ -0,0 +1,577 @@
|
||||
#include common_scripts\utility;
|
||||
#include maps\mp\_utility;
|
||||
#include maps\mp\gametypes\_hud_util;
|
||||
/*
|
||||
One Flag CTF
|
||||
*/
|
||||
|
||||
/*QUAKED mp_ctf_spawn_axis (0.75 0.0 0.5) (-16 -16 0) (16 16 72)
|
||||
Axis players spawn away from enemies and near their team at one of these positions.*/
|
||||
|
||||
/*QUAKED mp_ctf_spawn_allies (0.0 0.75 0.5) (-16 -16 0) (16 16 72)
|
||||
Allied players spawn away from enemies and near their team at one of these positions.*/
|
||||
|
||||
/*QUAKED mp_ctf_spawn_axis_start (1.0 0.0 0.5) (-16 -16 0) (16 16 72)
|
||||
Axis players spawn away from enemies and near their team at one of these positions at the start of a round.*/
|
||||
|
||||
/*QUAKED mp_ctf_spawn_allies_start (0.0 1.0 0.5) (-16 -16 0) (16 16 72)
|
||||
Allied players spawn away from enemies and near their team at one of these positions at the start of a round.*/
|
||||
|
||||
main()
|
||||
{
|
||||
maps\mp\gametypes\_globallogic::init();
|
||||
maps\mp\gametypes\_callbacksetup::SetupCallbacks();
|
||||
maps\mp\gametypes\_globallogic::SetupCallbacks();
|
||||
|
||||
registerTimeLimitDvar( level.gameType, 3, 0, 1440 );
|
||||
registerScoreLimitDvar( level.gameType, 1, 0, 10000 );
|
||||
registerRoundLimitDvar( level.gameType, 0, 0, 30 );
|
||||
registerWinLimitDvar( level.gameType, 4, 0, 10 );
|
||||
registerRoundSwitchDvar( level.gameType, 3, 0, 30 );
|
||||
registerNumLivesDvar( level.gameType, 0, 0, 10 );
|
||||
registerHalfTimeDvar( level.gameType, 0, 0, 1 );
|
||||
|
||||
level.objectiveBased = true;
|
||||
level.teamBased = true;
|
||||
level.onPrecacheGameType = ::onPrecacheGameType;
|
||||
level.onStartGameType = ::onStartGameType;
|
||||
level.getSpawnPoint = ::getSpawnPoint;
|
||||
level.onSpawnPlayer = ::onSpawnPlayer;
|
||||
level.onPlayerKilled = ::onPlayerKilled;
|
||||
level.onTimeLimit = ::onTimeLimit;
|
||||
level.initGametypeAwards = ::initGametypeAwards;
|
||||
|
||||
game["dialog"]["gametype"] = "captureflag";
|
||||
|
||||
if ( getDvarInt( "g_hardcore" ) )
|
||||
game["dialog"]["gametype"] = "hc_" + game["dialog"]["gametype"];
|
||||
else if ( getDvarInt( "camera_thirdPerson" ) )
|
||||
game["dialog"]["gametype"] = "thirdp_" + game["dialog"]["gametype"];
|
||||
else if ( getDvarInt( "scr_diehard" ) )
|
||||
game["dialog"]["gametype"] = "dh_" + game["dialog"]["gametype"];
|
||||
else if (getDvarInt( "scr_" + level.gameType + "_promode" ) )
|
||||
game["dialog"]["gametype"] = game["dialog"]["gametype"] + "_pro";
|
||||
|
||||
game["dialog"]["offense_obj"] = "capture_obj";
|
||||
game["dialog"]["defense_obj"] = "capture_obj";
|
||||
|
||||
if ( getdvar("scr_oneflag_returntime") == "" )
|
||||
setdvar("scr_oneflag_returntime", "15");
|
||||
level.flagReturnTime = getdvarint( "scr_oneflag_returntime" );
|
||||
}
|
||||
|
||||
onPrecacheGameType()
|
||||
{
|
||||
precacheString(&"MP_FLAG_TAKEN_BY");
|
||||
precacheString(&"MP_ENEMY_FLAG_TAKEN_BY");
|
||||
precacheString(&"MP_FLAG_CAPTURED_BY");
|
||||
precacheString(&"MP_ENEMY_FLAG_CAPTURED_BY");
|
||||
//precacheString(&"MP_FLAG_RETURNED_BY");
|
||||
precacheString(&"MP_FLAG_RETURNED");
|
||||
precacheString(&"MP_ENEMY_FLAG_RETURNED");
|
||||
precacheString(&"MP_YOUR_FLAG_RETURNING_IN");
|
||||
precacheString(&"MP_ENEMY_FLAG_RETURNING_IN");
|
||||
precacheString(&"MP_ENEMY_FLAG_DROPPED_BY");
|
||||
precacheString( &"MP_DOM_NEUTRAL_FLAG_CAPTURED" );
|
||||
}
|
||||
|
||||
|
||||
onStartGameType()
|
||||
{
|
||||
if ( !isdefined( game["switchedsides"] ) )
|
||||
game["switchedsides"] = false;
|
||||
|
||||
if ( !isdefined( game["original_defenders"] ) )
|
||||
game["original_defenders"] = game["defenders"];
|
||||
|
||||
if ( game["switchedsides"] )
|
||||
{
|
||||
oldAttackers = game["attackers"];
|
||||
oldDefenders = game["defenders"];
|
||||
game["attackers"] = oldDefenders;
|
||||
game["defenders"] = oldAttackers;
|
||||
}
|
||||
|
||||
|
||||
setClientNameMode("auto_change");
|
||||
|
||||
setObjectiveText( game["attackers"], &"OBJECTIVES_CTF" );
|
||||
setObjectiveText( game["defenders"], &"OBJECTIVES_CTF" );
|
||||
|
||||
if ( level.splitscreen )
|
||||
{
|
||||
setObjectiveScoreText( game["attackers"], &"OBJECTIVES_ONE_FLAG_ATTACKER" );
|
||||
setObjectiveScoreText( game["defenders"], &"OBJECTIVES_ONE_FLAG_DEFENDER" );
|
||||
}
|
||||
else
|
||||
{
|
||||
setObjectiveScoreText( game["attackers"], &"OBJECTIVES_ONE_FLAG_ATTACKER_SCORE" );
|
||||
setObjectiveScoreText( game["defenders"], &"OBJECTIVES_ONE_FLAG_DEFENDER_SCORE" );
|
||||
}
|
||||
setObjectiveHintText( game["attackers"], &"OBJECTIVES_ONE_FLAG_ATTACKER_HINT" );
|
||||
setObjectiveHintText( game["defenders"], &"OBJECTIVES_ONE_FLAG_DEFENDER_HINT" );
|
||||
|
||||
|
||||
level.spawnMins = ( 0, 0, 0 );
|
||||
level.spawnMaxs = ( 0, 0, 0 );
|
||||
maps\mp\gametypes\_spawnlogic::placeSpawnPoints( "mp_ctf_spawn_allies_start" );
|
||||
maps\mp\gametypes\_spawnlogic::placeSpawnPoints( "mp_ctf_spawn_axis_start" );
|
||||
maps\mp\gametypes\_spawnlogic::addSpawnPoints( "allies", "mp_ctf_spawn_allies" );
|
||||
maps\mp\gametypes\_spawnlogic::addSpawnPoints( "axis", "mp_ctf_spawn_axis" );
|
||||
|
||||
level.mapCenter = maps\mp\gametypes\_spawnlogic::findBoxCenter( level.spawnMins, level.spawnMaxs );
|
||||
setMapCenter( level.mapCenter );
|
||||
|
||||
thread maps\mp\gametypes\_dev::init();
|
||||
|
||||
allowed[0] = "ctf";
|
||||
maps\mp\gametypes\_gameobjects::main(allowed);
|
||||
|
||||
maps\mp\gametypes\_rank::registerScoreInfo( "kill", 100 );
|
||||
maps\mp\gametypes\_rank::registerScoreInfo( "headshot", 100 );
|
||||
maps\mp\gametypes\_rank::registerScoreInfo( "assist", 20 );
|
||||
|
||||
maps\mp\gametypes\_rank::registerScoreInfo( "pickup", 100 );
|
||||
maps\mp\gametypes\_rank::registerScoreInfo( "return", 50 );
|
||||
maps\mp\gametypes\_rank::registerScoreInfo( "capture", 500 );
|
||||
|
||||
maps\mp\gametypes\_rank::registerScoreInfo( "kill_carrier", 100 );
|
||||
|
||||
maps\mp\gametypes\_rank::registerScoreInfo( "defend", 100 );
|
||||
maps\mp\gametypes\_rank::registerScoreInfo( "defend_assist", 100 );
|
||||
|
||||
maps\mp\gametypes\_rank::registerScoreInfo( "assault", 200 );
|
||||
maps\mp\gametypes\_rank::registerScoreInfo( "assault_assist", 40 );
|
||||
|
||||
thread oneflag_ctf();
|
||||
}
|
||||
|
||||
|
||||
getSpawnPoint()
|
||||
{
|
||||
spawnteam = self.pers["team"];
|
||||
if ( game["switchedsides"] )
|
||||
spawnteam = getOtherTeam( spawnteam );
|
||||
|
||||
if ( level.inGracePeriod )
|
||||
{
|
||||
if ( getDvar( "mapname" ) == "mp_shipment_long" )
|
||||
{
|
||||
spawnPoints = getentarray("mp_cha_spawn_" + spawnteam + "_start", "classname");
|
||||
spawnPoint = maps\mp\gametypes\_spawnlogic::getSpawnpoint_Random( spawnPoints );
|
||||
}
|
||||
else
|
||||
{
|
||||
spawnPoints = getentarray("mp_ctf_spawn_" + spawnteam + "_start", "classname");
|
||||
spawnPoint = maps\mp\gametypes\_spawnlogic::getSpawnpoint_Random( spawnPoints );
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if ( getDvar( "mapname" ) == "mp_shipment_long" )
|
||||
{
|
||||
spawnPoints = maps\mp\gametypes\_spawnlogic::getSpawnpointArray( "mp_cha_spawn_" + spawnteam );
|
||||
spawnPoint = maps\mp\gametypes\_spawnlogic::getSpawnpoint_Random( spawnPoints );
|
||||
}
|
||||
else
|
||||
{
|
||||
spawnPoints = maps\mp\gametypes\_spawnlogic::getTeamSpawnPoints( spawnteam );
|
||||
spawnPoint = maps\mp\gametypes\_spawnlogic::getSpawnpoint_NearTeam( spawnPoints );
|
||||
}
|
||||
}
|
||||
|
||||
return spawnPoint;
|
||||
}
|
||||
|
||||
|
||||
onSpawnPlayer()
|
||||
{
|
||||
self.usingObj = undefined;
|
||||
}
|
||||
|
||||
|
||||
oneflag_ctf()
|
||||
{
|
||||
|
||||
level.flagModel["allies"] = maps\mp\gametypes\_teams::getTeamFlagModel( "allies" );
|
||||
level.icon2D["allies"] = maps\mp\gametypes\_teams::getTeamFlagIcon( "allies" );
|
||||
level.carryFlag["allies"] = maps\mp\gametypes\_teams::getTeamFlagCarryModel( "allies" );
|
||||
|
||||
precacheModel( level.flagModel["allies"] );
|
||||
precacheModel( level.carryFlag["allies"] );
|
||||
|
||||
level.flagModel["axis"] = maps\mp\gametypes\_teams::getTeamFlagModel( "axis" );
|
||||
level.icon2D["axis"] = maps\mp\gametypes\_teams::getTeamFlagIcon( "axis" );
|
||||
level.carryFlag["axis"] = maps\mp\gametypes\_teams::getTeamFlagCarryModel( "axis" );
|
||||
|
||||
precacheModel( level.flagModel["axis"] );
|
||||
precacheModel( level.carryFlag["axis"] );
|
||||
|
||||
level.iconCapture3D = "waypoint_capture_flag";
|
||||
level.iconTarget3D = "waypoint_captureneutral";
|
||||
level.iconDefend3D = "waypoint_defend_flag";
|
||||
level.iconCapture2D = "waypoint_capture_flag";
|
||||
level.iconTarget2D = "waypoint_captureneutral";
|
||||
level.iconDefend2D = "waypoint_defend_flag";
|
||||
|
||||
precacheShader( level.icon2D["axis"] );
|
||||
precacheShader( level.icon2D["allies"] );
|
||||
|
||||
precacheShader( level.iconCapture3D );
|
||||
precacheShader( level.iconDefend3D );
|
||||
|
||||
precacheShader( level.iconCapture2D );
|
||||
precacheShader( level.iconDefend2D );
|
||||
|
||||
precacheShader( level.iconTarget3D );
|
||||
precacheShader( level.iconTarget2D );
|
||||
|
||||
precacheShader( "waypoint_kill" );
|
||||
|
||||
level.teamFlags[game["defenders"]] = createTeamFlag( game["defenders"] );
|
||||
level.capZones[game["attackers"]] = createCapZone( game["attackers"] );
|
||||
level.flagCaptured = false;
|
||||
}
|
||||
|
||||
|
||||
spawnFxDelay( fxid, pos, forward, right, delay )
|
||||
{
|
||||
wait delay;
|
||||
effect = spawnFx( fxid, pos, forward, right );
|
||||
triggerFx( effect );
|
||||
}
|
||||
|
||||
createTeamFlag( team )
|
||||
{
|
||||
entityTeam = game["original_defenders"];
|
||||
|
||||
trigger = getEnt( "ctf_trig_" + entityTeam, "targetname" );
|
||||
if ( !isDefined( trigger ) )
|
||||
{
|
||||
error( "No ctf_trig_" + entityTeam + " trigger found in map." );
|
||||
return;
|
||||
}
|
||||
visuals[0] = getEnt( "ctf_flag_" + entityTeam, "targetname" );
|
||||
if ( !isDefined( visuals[0] ) )
|
||||
{
|
||||
error( "No ctf_flag_" + entityTeam + " script_model found in map." );
|
||||
return;
|
||||
}
|
||||
|
||||
cloneTrigger = spawn( "trigger_radius", trigger.origin, 0, 96, trigger.height );
|
||||
trigger delete();
|
||||
trigger = cloneTrigger;
|
||||
|
||||
visuals[0] setModel( level.flagModel[team] );
|
||||
|
||||
teamFlag = maps\mp\gametypes\_gameobjects::createCarryObject( team, trigger, visuals, (0,0,85) );
|
||||
teamFlag maps\mp\gametypes\_gameobjects::setTeamUseTime( "friendly", 15.0 );
|
||||
teamFlag maps\mp\gametypes\_gameobjects::setTeamUseTime( "enemy", 0 );
|
||||
teamFlag maps\mp\gametypes\_gameobjects::setTeamUseText( "enemy", &"MP_CAPTURING_FLAG" );
|
||||
teamFlag maps\mp\gametypes\_gameobjects::setTeamUseText( "friendly", &"MP_RETURNING_FLAG" );
|
||||
|
||||
teamFlag maps\mp\gametypes\_gameobjects::allowCarry( "enemy" );
|
||||
teamFlag maps\mp\gametypes\_gameobjects::setVisibleTeam( "any" );
|
||||
teamFlag maps\mp\gametypes\_gameobjects::set2DIcon( "friendly", level.iconDefend2D );
|
||||
teamFlag maps\mp\gametypes\_gameobjects::set3DIcon( "friendly", level.iconDefend3D );
|
||||
teamFlag maps\mp\gametypes\_gameobjects::set2DIcon( "enemy", level.iconCapture2D );
|
||||
teamFlag maps\mp\gametypes\_gameobjects::set3DIcon( "enemy", level.iconCapture3D );
|
||||
teamFlag maps\mp\gametypes\_gameobjects::setCarryIcon( level.icon2D[team] );
|
||||
teamFlag.allowWeapons = true;
|
||||
teamFlag.onPickup = ::onPickup;
|
||||
teamFlag.onPickupFailed = ::onPickup;
|
||||
teamFlag.onDrop = ::onDrop;
|
||||
teamFlag.onReset = ::onReset;
|
||||
//teamFlag.onBeginUse = ::onBeginUse;
|
||||
//teamFlag.onEndUse = ::onEndUse;
|
||||
|
||||
teamFlag.oldRadius = trigger.radius;
|
||||
|
||||
traceStart = trigger.origin + (0,0,32);
|
||||
traceEnd = trigger.origin + (0,0,-32);
|
||||
trace = bulletTrace( traceStart, traceEnd, false, undefined );
|
||||
|
||||
fx = maps\mp\gametypes\_teams::getTeamFlagFX( team );
|
||||
fxid = loadfx( fx );
|
||||
|
||||
upangles = vectorToAngles( trace["normal"] );
|
||||
forward = anglesToForward( upangles );
|
||||
right = anglesToRight( upangles );
|
||||
|
||||
thread spawnFxDelay( fxid, trace["position"], forward, right, 0.5 );
|
||||
|
||||
return teamFlag;
|
||||
}
|
||||
|
||||
createCapZone( team )
|
||||
{
|
||||
entityTeam = level.otherTeam[game["original_defenders"]];
|
||||
|
||||
trigger = getEnt( "ctf_zone_" + entityTeam, "targetname" );
|
||||
if ( !isDefined( trigger ) )
|
||||
{
|
||||
error("No ctf_zone_" + entityTeam + " trigger found in map.");
|
||||
return;
|
||||
}
|
||||
|
||||
visuals[0] = getEnt( "ctf_flag_" + entityTeam, "targetname" );
|
||||
if ( !isDefined( visuals[0] ) )
|
||||
{
|
||||
error( "No ctf_flag_" + entityTeam + " script_model found in map." );
|
||||
return;
|
||||
}
|
||||
|
||||
visuals[0] hide();
|
||||
|
||||
visuals = [];
|
||||
capZone = maps\mp\gametypes\_gameobjects::createUseObject( team, trigger, visuals, (0,0,85) );
|
||||
capZone maps\mp\gametypes\_gameobjects::allowUse( "friendly" );
|
||||
capZone maps\mp\gametypes\_gameobjects::setVisibleTeam( "none" );
|
||||
capZone maps\mp\gametypes\_gameobjects::set2DIcon( "friendly", level.iconTarget2D );
|
||||
capZone maps\mp\gametypes\_gameobjects::set3DIcon( "friendly", level.iconTarget3D );
|
||||
|
||||
capZone maps\mp\gametypes\_gameobjects::setUseTime( 0 );
|
||||
capZone maps\mp\gametypes\_gameobjects::setKeyObject( level.teamFlags[ getOtherTeam( team ) ] );
|
||||
|
||||
capZone.onUse = ::onUse;
|
||||
capZone.onCantUse = ::onCantUse;
|
||||
|
||||
traceStart = trigger.origin + (0,0,32);
|
||||
traceEnd = trigger.origin + (0,0,-32);
|
||||
trace = bulletTrace( traceStart, traceEnd, false, undefined );
|
||||
|
||||
fx = maps\mp\gametypes\_teams::getTeamFlagFX( team );
|
||||
fxid = loadfx( fx );
|
||||
|
||||
upangles = vectorToAngles( trace["normal"] );
|
||||
forward = anglesToForward( upangles );
|
||||
right = anglesToRight( upangles );
|
||||
|
||||
thread spawnFxDelay( fxid, trace["position"], forward, right, 0.5 );
|
||||
|
||||
return capZone;
|
||||
}
|
||||
|
||||
|
||||
onBeginUse( player )
|
||||
{
|
||||
team = player.pers["team"];
|
||||
|
||||
if ( team == self maps\mp\gametypes\_gameobjects::getOwnerTeam() )
|
||||
self.trigger.radius = 1024;
|
||||
else
|
||||
self.trigger.radius = self.oldRadius;
|
||||
}
|
||||
|
||||
|
||||
onEndUse( player, team, success )
|
||||
{
|
||||
self.trigger.radius = self.oldRadius;
|
||||
}
|
||||
|
||||
|
||||
onPickup( player )
|
||||
{
|
||||
team = player.pers["team"];
|
||||
|
||||
if ( team == "allies" )
|
||||
otherTeam = "axis";
|
||||
else
|
||||
otherTeam = "allies";
|
||||
|
||||
|
||||
if ( team == self maps\mp\gametypes\_gameobjects::getOwnerTeam() )
|
||||
{
|
||||
player thread maps\mp\gametypes\_hud_message::SplashNotify( "flagreturn", maps\mp\gametypes\_rank::getScoreInfoValue( "pickup" ) );
|
||||
player thread [[level.onXPEvent]]( "pickup" );
|
||||
self thread returnFlag();
|
||||
player incPlayerStat( "flagsreturned", 1 );
|
||||
player thread maps\mp\_matchdata::logGameEvent( "return", player.origin );
|
||||
}
|
||||
else
|
||||
{
|
||||
player attachFlag();
|
||||
|
||||
level.capZones[team] maps\mp\gametypes\_gameobjects::setVisibleTeam( "any" );
|
||||
|
||||
//self maps\mp\gametypes\_gameobjects::setVisibleTeam( "enemy" );
|
||||
self maps\mp\gametypes\_gameobjects::set3DIcon( "enemy", "waypoint_defend" );
|
||||
self maps\mp\gametypes\_gameobjects::set3DIcon( "friendly", "waypoint_kill" );
|
||||
self maps\mp\gametypes\_gameobjects::set2DIcon( "friendly", level.iconTarget2D );
|
||||
|
||||
printAndSoundOnEveryone( team, otherteam, &"MP_ENEMY_FLAG_TAKEN_BY", &"MP_FLAG_TAKEN_BY", "mp_obj_taken", "mp_enemy_obj_taken", player );
|
||||
|
||||
leaderDialog( "enemy_flag_taken", team, "status" );
|
||||
leaderDialog( "flag_taken", otherteam, "status" );
|
||||
|
||||
player thread maps\mp\gametypes\_hud_message::SplashNotify( "flagpickup", maps\mp\gametypes\_rank::getScoreInfoValue( "pickup" ) );
|
||||
maps\mp\gametypes\_gamescore::givePlayerScore( "pickup", player );
|
||||
player thread [[level.onXPEvent]]( "pickup" );
|
||||
player incPlayerStat( "flagscarried", 1 );
|
||||
player thread maps\mp\_matchdata::logGameEvent( "pickup", player.origin );
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
returnFlag()
|
||||
{
|
||||
team = self maps\mp\gametypes\_gameobjects::getOwnerTeam();
|
||||
otherTeam = level.otherTeam[team];
|
||||
|
||||
self maps\mp\gametypes\_gameobjects::returnHome();
|
||||
self maps\mp\gametypes\_gameobjects::setVisibleTeam( "any" );
|
||||
self maps\mp\gametypes\_gameobjects::allowCarry( "enemy" );
|
||||
|
||||
level.capZones[otherTeam] maps\mp\gametypes\_gameobjects::setVisibleTeam( "none" );
|
||||
|
||||
printAndSoundOnEveryone( team, getOtherTeam( team ), &"MP_FLAG_RETURNED", &"MP_ENEMY_FLAG_RETURNED", "mp_obj_returned", "mp_obj_returned", "" );
|
||||
leaderDialog( "enemy_flag_returned", otherteam, "status" );
|
||||
leaderDialog( "flag_returned", team, "status" );
|
||||
}
|
||||
|
||||
|
||||
onDrop( player )
|
||||
{
|
||||
team = self maps\mp\gametypes\_gameobjects::getOwnerTeam();
|
||||
otherTeam = level.otherTeam[team];
|
||||
|
||||
self maps\mp\gametypes\_gameobjects::set3DIcon( "friendly", level.iconDefend3D );
|
||||
self maps\mp\gametypes\_gameobjects::set2DIcon( "friendly", level.iconDefend2D );
|
||||
self maps\mp\gametypes\_gameobjects::set3DIcon( "enemy", level.iconCapture3D );
|
||||
self maps\mp\gametypes\_gameobjects::setVisibleTeam( "any" );
|
||||
self maps\mp\gametypes\_gameobjects::allowCarry( "any" );
|
||||
|
||||
level.capZones[otherTeam] maps\mp\gametypes\_gameobjects::setVisibleTeam( "none" );
|
||||
|
||||
if ( isDefined( player ) )
|
||||
{
|
||||
if ( isDefined( player.carryFlag ) )
|
||||
player detachFlag();
|
||||
|
||||
printAndSoundOnEveryone( otherTeam, "none", &"MP_ENEMY_FLAG_DROPPED_BY", "", "mp_war_objective_lost", "", player );
|
||||
}
|
||||
else
|
||||
{
|
||||
playSoundOnPlayers( "mp_war_objective_lost", otherTeam );
|
||||
}
|
||||
|
||||
leaderDialog( "enemy_flag_dropped", otherTeam, "status" );
|
||||
leaderDialog( "flag_dropped", team, "status" );
|
||||
}
|
||||
|
||||
|
||||
onReset()
|
||||
{
|
||||
self notify ( "flag_reset" );
|
||||
|
||||
team = self maps\mp\gametypes\_gameobjects::getOwnerTeam();
|
||||
otherTeam = level.otherTeam[team];
|
||||
|
||||
self maps\mp\gametypes\_gameobjects::setVisibleTeam( "any" );
|
||||
self maps\mp\gametypes\_gameobjects::set3DIcon( "friendly", level.iconDefend3D );
|
||||
self maps\mp\gametypes\_gameobjects::set2DIcon( "friendly", level.iconDefend2D );
|
||||
self maps\mp\gametypes\_gameobjects::set3DIcon( "enemy", level.iconCapture3D );
|
||||
|
||||
level.capZones[otherTeam] maps\mp\gametypes\_gameobjects::setVisibleTeam( "none" );
|
||||
}
|
||||
|
||||
|
||||
onUse( player )
|
||||
{
|
||||
team = player.pers["team"];
|
||||
if ( team == "allies" )
|
||||
otherTeam = "axis";
|
||||
else
|
||||
otherTeam = "allies";
|
||||
|
||||
leaderDialog( "enemy_flag_captured", team, "status" );
|
||||
leaderDialog( "flag_captured", otherteam, "status" );
|
||||
|
||||
maps\mp\gametypes\_gamescore::givePlayerScore( "capture", player );
|
||||
player thread [[level.onXPEvent]]( "capture" );
|
||||
player incPlayerStat( "flagscaptured", 1 );
|
||||
player notify( "objective", "captured" );
|
||||
player thread maps\mp\_matchdata::logGameEvent( "capture", player.origin );
|
||||
|
||||
// round win here, no reset necessary
|
||||
|
||||
printAndSoundOnEveryone( team, otherteam, &"MP_ENEMY_FLAG_CAPTURED_BY", &"MP_FLAG_CAPTURED_BY", "mp_obj_captured", "mp_enemy_obj_captured", player );
|
||||
|
||||
thread flagCaptured( team, &"MP_DOM_NEUTRAL_FLAG_CAPTURED" );
|
||||
|
||||
level.teamFlags[otherTeam] maps\mp\gametypes\_gameobjects::allowCarry( "none" );
|
||||
level.teamFlags[otherTeam] maps\mp\gametypes\_gameobjects::setVisibleTeam( "none" );
|
||||
level.teamFlags[otherTeam] maps\mp\gametypes\_gameobjects::disableObject();
|
||||
level.capZones[team] maps\mp\gametypes\_gameobjects::allowUse( "none" );
|
||||
|
||||
if ( isDefined( player.carryFlag ) )
|
||||
player detachFlag();
|
||||
}
|
||||
|
||||
|
||||
flagCaptured( winningTeam, endReasonText )
|
||||
{
|
||||
maps\mp\gametypes\_gamelogic::endGame( winningTeam, endReasonText );
|
||||
level.flagCaptured = true;
|
||||
}
|
||||
|
||||
|
||||
onTimeLimit()
|
||||
{
|
||||
if ( level.flagCaptured )
|
||||
return;
|
||||
|
||||
// TODO: change to "Flag Defended" or some such
|
||||
maps\mp\gametypes\_gamelogic::endGame( game["defenders"], game["strings"]["time_limit_reached"] );
|
||||
}
|
||||
|
||||
|
||||
onCantUse( player )
|
||||
{
|
||||
// player iPrintLnBold( &"MP_CANT_PLANT_WITHOUT_BOMB" );
|
||||
}
|
||||
|
||||
|
||||
onPlayerKilled( eInflictor, attacker, iDamage, sMeansOfDeath, sWeapon, vDir, sHitLoc, psOffsetTime, deathAnimDuration, killId )
|
||||
{
|
||||
if ( isDefined( attacker ) && isPlayer( attacker ) && attacker.pers["team"] != self.pers["team"] )
|
||||
{
|
||||
if ( isDefined( attacker.carryFlag ) )
|
||||
attacker incPlayerStat( "killsasflagcarrier", 1 );
|
||||
|
||||
if ( isDefined( self.carryFlag ) )
|
||||
{
|
||||
attacker thread [[level.onXPEvent]]( "kill_carrier" );
|
||||
maps\mp\gametypes\_gamescore::givePlayerScore( "kill_carrier", attacker );
|
||||
attacker incPlayerStat( "flagcarrierkills", 1 );
|
||||
|
||||
thread maps\mp\_matchdata::logKillEvent( killId, "carrying" );
|
||||
|
||||
self detachFlag();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
attachFlag()
|
||||
{
|
||||
otherTeam = level.otherTeam[self.pers["team"]];
|
||||
|
||||
self attach( level.carryFlag[otherTeam], "J_spine4", true );
|
||||
self.carryFlag = level.carryFlag[otherTeam];
|
||||
}
|
||||
|
||||
detachFlag()
|
||||
{
|
||||
self detach( self.carryFlag, "J_spine4" );
|
||||
self.carryFlag = undefined;
|
||||
}
|
||||
|
||||
initGametypeAwards()
|
||||
{
|
||||
maps\mp\_awards::initStatAward( "flagscaptured", 0, maps\mp\_awards::highestWins );
|
||||
maps\mp\_awards::initStatAward( "flagsreturned", 0, maps\mp\_awards::highestWins );
|
||||
maps\mp\_awards::initStatAward( "flagcarrierkills", 0, maps\mp\_awards::highestWins );
|
||||
maps\mp\_awards::initStatAward( "flagscarried", 0, maps\mp\_awards::highestWins );
|
||||
maps\mp\_awards::initStatAward( "killsasflagcarrier", 0, maps\mp\_awards::highestWins );
|
||||
}
|
||||
@@ -0,0 +1,926 @@
|
||||
#include common_scripts\utility;
|
||||
#include maps\mp\_utility;
|
||||
#include maps\mp\gametypes\_hud_util;
|
||||
/*
|
||||
Sabotage
|
||||
|
||||
// ...etc...
|
||||
*/
|
||||
|
||||
/*QUAKED mp_sab_spawn_axis (0.75 0.0 0.5) (-16 -16 0) (16 16 72)
|
||||
Axis players spawn away from enemies and near their team at one of these positions.*/
|
||||
|
||||
/*QUAKED mp_sab_spawn_axis_planted (0.75 0.0 0.5) (-16 -16 0) (16 16 72)
|
||||
Axis players spawn away from enemies and near their team at one of these positions.*/
|
||||
|
||||
/*QUAKED mp_sab_spawn_allies (0.0 0.75 0.5) (-16 -16 0) (16 16 72)
|
||||
Allied players spawn away from enemies and near their team at one of these positions.*/
|
||||
|
||||
/*QUAKED mp_sab_spawn_allies_planted (0.0 0.75 0.5) (-16 -16 0) (16 16 72)
|
||||
Allied players spawn away from enemies and near their team at one of these positions.*/
|
||||
|
||||
/*QUAKED mp_sab_spawn_axis_start (1.0 0.0 0.5) (-16 -16 0) (16 16 72)
|
||||
Axis players spawn away from enemies and near their team at one of these positions at the start of a round.*/
|
||||
|
||||
/*QUAKED mp_sab_spawn_allies_start (0.0 1.0 0.5) (-16 -16 0) (16 16 72)
|
||||
Allied players spawn away from enemies and near their team at one of these positions at the start of a round.*/
|
||||
|
||||
main()
|
||||
{
|
||||
if ( getdvar("mapname") == "mp_background" )
|
||||
return;
|
||||
|
||||
maps\mp\gametypes\_globallogic::init();
|
||||
maps\mp\gametypes\_callbacksetup::SetupCallbacks();
|
||||
maps\mp\gametypes\_globallogic::SetupCallbacks();
|
||||
|
||||
//level.objectiveBased = true;
|
||||
level.teamBased = true;
|
||||
|
||||
registerRoundSwitchDvar( level.gameType, 0, 0, 9 );
|
||||
registerTimeLimitDvar( level.gameType, 10, 0, 1440 );
|
||||
registerScoreLimitDvar( level.gameType, 0, 0, 500 );
|
||||
registerRoundLimitDvar( level.gameType, 1, 0, 10 );
|
||||
registerWinLimitDvar( level.gameType, 1, 0, 10 );
|
||||
registerNumLivesDvar( level.gameType, 0, 0, 10 );
|
||||
registerHalfTimeDvar( level.gameType, 0, 0, 1 );
|
||||
|
||||
setOverTimeLimitDvar( 2 );
|
||||
|
||||
level.onPrecacheGameType = ::onPrecacheGameType;
|
||||
level.onStartGameType = ::onStartGameType;
|
||||
level.getSpawnPoint = ::getSpawnPoint;
|
||||
level.onSpawnPlayer = ::onSpawnPlayer;
|
||||
level.onOneLeftEvent = ::onOneLeftEvent;
|
||||
level.onTimeLimit = ::onTimeLimit;
|
||||
level.onNormalDeath = ::onNormalDeath;
|
||||
level.initGametypeAwards = ::initGametypeAwards;
|
||||
|
||||
game["dialog"]["gametype"] = "sabotage";
|
||||
|
||||
if ( getDvarInt( "g_hardcore" ) )
|
||||
game["dialog"]["gametype"] = "hc_" + game["dialog"]["gametype"];
|
||||
else if ( getDvarInt( "camera_thirdPerson" ) )
|
||||
game["dialog"]["gametype"] = "thirdp_" + game["dialog"]["gametype"];
|
||||
else if ( getDvarInt( "scr_diehard" ) )
|
||||
game["dialog"]["gametype"] = "dh_" + game["dialog"]["gametype"];
|
||||
else if (getDvarInt( "scr_" + level.gameType + "_promode" ) )
|
||||
game["dialog"]["gametype"] = game["dialog"]["gametype"] + "_pro";
|
||||
|
||||
game["dialog"]["offense_obj"] = "capture_obj";
|
||||
game["dialog"]["defense_obj"] = "capture_obj";
|
||||
|
||||
badtrig = getent( "sab_bomb_defuse_allies", "targetname" );
|
||||
if ( isdefined( badtrig ) )
|
||||
badtrig delete();
|
||||
|
||||
badtrig = getent( "sab_bomb_defuse_axis", "targetname" );
|
||||
if ( isdefined( badtrig ) )
|
||||
badtrig delete();
|
||||
}
|
||||
|
||||
onPrecacheGameType()
|
||||
{
|
||||
game["bomb_dropped_sound"] = "mp_war_objective_lost";
|
||||
game["bomb_recovered_sound"] = "mp_war_objective_taken";
|
||||
|
||||
precacheShader("waypoint_bomb");
|
||||
precacheShader("waypoint_kill");
|
||||
precacheShader("waypoint_bomb_enemy");
|
||||
precacheShader("waypoint_defend");
|
||||
precacheShader("waypoint_defuse");
|
||||
precacheShader("waypoint_target");
|
||||
precacheShader("waypoint_escort");
|
||||
precacheShader("waypoint_bomb");
|
||||
precacheShader("waypoint_defend");
|
||||
precacheShader("waypoint_defuse");
|
||||
precacheShader("waypoint_target");
|
||||
precacheShader("hud_suitcase_bomb");
|
||||
|
||||
precacheString(&"MP_EXPLOSIVES_RECOVERED_BY");
|
||||
precacheString(&"MP_EXPLOSIVES_DROPPED_BY");
|
||||
precacheString(&"MP_EXPLOSIVES_PLANTED_BY");
|
||||
precacheString(&"MP_EXPLOSIVES_DEFUSED_BY");
|
||||
precacheString(&"MP_YOU_HAVE_RECOVERED_THE_BOMB");
|
||||
precacheString(&"PLATFORM_HOLD_TO_PLANT_EXPLOSIVES");
|
||||
precacheString(&"PLATFORM_HOLD_TO_DEFUSE_EXPLOSIVES");
|
||||
precacheString(&"MP_PLANTING_EXPLOSIVE");
|
||||
precacheString(&"MP_DEFUSING_EXPLOSIVE");
|
||||
precacheString(&"MP_TARGET_DESTROYED");
|
||||
precacheString(&"MP_NO_RESPAWN");
|
||||
precacheString(&"MP_TIE_BREAKER");
|
||||
precacheString(&"MP_NO_RESPAWN");
|
||||
precacheString(&"MP_SUDDEN_DEATH");
|
||||
}
|
||||
|
||||
|
||||
onStartGameType()
|
||||
{
|
||||
if ( !isdefined( game["switchedsides"] ) )
|
||||
game["switchedsides"] = false;
|
||||
|
||||
setClientNameMode("auto_change");
|
||||
|
||||
game["strings"]["target_destroyed"] = &"MP_TARGET_DESTROYED";
|
||||
game["strings"]["target_defended"] = &"MP_TARGET_DEDEFEND";
|
||||
|
||||
setObjectiveText( "allies", &"OBJECTIVES_SAB" );
|
||||
setObjectiveText( "axis", &"OBJECTIVES_SAB" );
|
||||
|
||||
if ( level.splitscreen )
|
||||
{
|
||||
setObjectiveScoreText( "allies", &"OBJECTIVES_SAB" );
|
||||
setObjectiveScoreText( "axis", &"OBJECTIVES_SAB" );
|
||||
}
|
||||
else
|
||||
{
|
||||
setObjectiveScoreText( "allies", &"OBJECTIVES_SAB_SCORE" );
|
||||
setObjectiveScoreText( "axis", &"OBJECTIVES_SAB_SCORE" );
|
||||
}
|
||||
setObjectiveHintText( "allies", &"OBJECTIVES_SAB_HINT" );
|
||||
setObjectiveHintText( "axis", &"OBJECTIVES_SAB_HINT" );
|
||||
|
||||
level.spawnMins = ( 0, 0, 0 );
|
||||
level.spawnMaxs = ( 0, 0, 0 );
|
||||
maps\mp\gametypes\_spawnlogic::placeSpawnPoints( "mp_sab_spawn_allies_start" );
|
||||
maps\mp\gametypes\_spawnlogic::placeSpawnPoints( "mp_sab_spawn_axis_start" );
|
||||
maps\mp\gametypes\_spawnlogic::addSpawnPoints( "allies", "mp_sab_spawn_allies" );
|
||||
maps\mp\gametypes\_spawnlogic::addSpawnPoints( "axis", "mp_sab_spawn_axis" );
|
||||
maps\mp\gametypes\_spawnlogic::addSpawnPoints("allies", "mp_sab_spawn_allies_planted", true );
|
||||
maps\mp\gametypes\_spawnlogic::addSpawnPoints("axis", "mp_sab_spawn_axis_planted", true );
|
||||
|
||||
level.mapCenter = maps\mp\gametypes\_spawnlogic::findBoxCenter( level.spawnMins, level.spawnMaxs );
|
||||
setMapCenter( level.mapCenter );
|
||||
|
||||
if ( getDvar( "mapname" ) == "mp_shipment_long" )
|
||||
{
|
||||
level.spawn_axis = maps\mp\gametypes\_spawnlogic::getSpawnpointArray( "mp_cha_spawn_axis" );
|
||||
level.spawn_axis_planted = maps\mp\gametypes\_spawnlogic::getSpawnpointArray( "mp_cha_spawn_axis_start" );
|
||||
level.spawn_axis_planted = array_combine( level.spawn_axis_planted, level.spawn_axis );
|
||||
|
||||
level.spawn_allies = maps\mp\gametypes\_spawnlogic::getSpawnpointArray( "mp_cha_spawn_allies" );
|
||||
level.spawn_allies_planted = maps\mp\gametypes\_spawnlogic::getSpawnpointArray( "mp_cha_spawn_allies_start" );
|
||||
level.spawn_allies_planted = array_combine( level.spawn_allies_planted, level.spawn_allies );
|
||||
|
||||
level.spawn_axis_start = maps\mp\gametypes\_spawnlogic::getSpawnpointArray( "mp_cha_spawn_axis_start" );
|
||||
level.spawn_allies_start = maps\mp\gametypes\_spawnlogic::getSpawnpointArray( "mp_cha_spawn_allies_start" );
|
||||
}
|
||||
else
|
||||
{
|
||||
level.spawn_axis = maps\mp\gametypes\_spawnlogic::getSpawnpointArray( "mp_sab_spawn_axis" );
|
||||
level.spawn_axis_planted = maps\mp\gametypes\_spawnlogic::getSpawnpointArray( "mp_sab_spawn_axis_planted" );
|
||||
level.spawn_axis_planted = array_combine( level.spawn_axis_planted, level.spawn_axis );
|
||||
|
||||
level.spawn_allies = maps\mp\gametypes\_spawnlogic::getSpawnpointArray( "mp_sab_spawn_allies" );
|
||||
level.spawn_allies_planted = maps\mp\gametypes\_spawnlogic::getSpawnpointArray( "mp_sab_spawn_allies_planted" );
|
||||
level.spawn_allies_planted = array_combine( level.spawn_allies_planted, level.spawn_allies );
|
||||
|
||||
level.spawn_axis_start = maps\mp\gametypes\_spawnlogic::getSpawnpointArray( "mp_sab_spawn_axis_start" );
|
||||
level.spawn_allies_start = maps\mp\gametypes\_spawnlogic::getSpawnpointArray( "mp_sab_spawn_allies_start" );
|
||||
}
|
||||
|
||||
maps\mp\gametypes\_rank::registerScoreInfo( "plant", 200 );
|
||||
maps\mp\gametypes\_rank::registerScoreInfo( "destroy", 1000 );
|
||||
maps\mp\gametypes\_rank::registerScoreInfo( "defuse", 150 );
|
||||
|
||||
allowed[0] = "sab";
|
||||
maps\mp\gametypes\_gameobjects::main(allowed);
|
||||
|
||||
thread updateGametypeDvars();
|
||||
|
||||
thread sabotage();
|
||||
}
|
||||
|
||||
|
||||
getSpawnPoint()
|
||||
{
|
||||
spawnteam = self.pers["team"];
|
||||
if ( game["switchedsides"] )
|
||||
spawnteam = getOtherTeam( spawnteam );
|
||||
|
||||
if ( level.useStartSpawns )
|
||||
{
|
||||
if (spawnteam == "axis")
|
||||
spawnpoint = maps\mp\gametypes\_spawnlogic::getSpawnpoint_Random(level.spawn_axis_start);
|
||||
else
|
||||
spawnpoint = maps\mp\gametypes\_spawnlogic::getSpawnpoint_Random(level.spawn_allies_start);
|
||||
}
|
||||
else
|
||||
{
|
||||
if ( isDefined( level.bombplanted ) && level.bombplanted && ( isDefined( level.bombOwner ) && spawnTeam == level.bombOwner.team ) )
|
||||
{
|
||||
if (spawnteam == "axis")
|
||||
spawnpoint = maps\mp\gametypes\_spawnlogic::getSpawnpoint_NearTeam( level.spawn_axis_planted );
|
||||
else
|
||||
spawnpoint = maps\mp\gametypes\_spawnlogic::getSpawnpoint_NearTeam( level.spawn_allies_planted );
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
if (spawnteam == "axis")
|
||||
spawnpoint = maps\mp\gametypes\_spawnlogic::getSpawnpoint_NearTeam(level.spawn_axis);
|
||||
else
|
||||
spawnpoint = maps\mp\gametypes\_spawnlogic::getSpawnpoint_NearTeam(level.spawn_allies);
|
||||
}
|
||||
}
|
||||
|
||||
assert( isDefined(spawnpoint) );
|
||||
|
||||
return spawnpoint;
|
||||
}
|
||||
|
||||
|
||||
onSpawnPlayer()
|
||||
{
|
||||
self.isPlanting = false;
|
||||
self.isDefusing = false;
|
||||
self.isBombCarrier = false;
|
||||
|
||||
if( ( inOvertime() ) && !isDefined( self.otSpawned ) )
|
||||
self thread printOTHint();
|
||||
}
|
||||
|
||||
|
||||
printOTHint()
|
||||
{
|
||||
self endon ( "disconnect" );
|
||||
|
||||
// give the "Overtime!" message time to show
|
||||
wait ( 0.25 );
|
||||
|
||||
self thread maps\mp\gametypes\_hud_message::SplashNotify( "sudden_death" );
|
||||
self.otSpawned = true;
|
||||
|
||||
}
|
||||
|
||||
updateGametypeDvars()
|
||||
{
|
||||
level.plantTime = dvarFloatValue( "planttime", 5, 0, 20 );
|
||||
level.defuseTime = dvarFloatValue( "defusetime", 5, 0, 20 );
|
||||
level.bombTimer = dvarFloatValue( "bombtimer", 45, 1, 300 );
|
||||
level.hotPotato = dvarIntValue( "hotpotato", 1, 0, 1 );
|
||||
level.scoreMode = getWatchedDvar( "scorelimit" );
|
||||
}
|
||||
|
||||
|
||||
sabotage()
|
||||
{
|
||||
level.bombPlanted = false;
|
||||
level.bombExploded = false;
|
||||
|
||||
level._effect["bombexplosion"] = loadfx("explosions/tanker_explosion");
|
||||
|
||||
trigger = getEnt( "sab_bomb_pickup_trig", "targetname" );
|
||||
if ( !isDefined( trigger ) )
|
||||
{
|
||||
error( "No sab_bomb_pickup_trig trigger found in map." );
|
||||
return;
|
||||
}
|
||||
|
||||
visuals[0] = getEnt( "sab_bomb", "targetname" );
|
||||
if ( !isDefined( visuals[0] ) )
|
||||
{
|
||||
error( "No sab_bomb script_model found in map." );
|
||||
return;
|
||||
}
|
||||
|
||||
precacheModel( "prop_suitcase_bomb" );
|
||||
visuals[0] setModel( "prop_suitcase_bomb" );
|
||||
level.sabBomb = maps\mp\gametypes\_gameobjects::createCarryObject( "neutral", trigger, visuals, (0,0,32) );
|
||||
level.sabBomb maps\mp\gametypes\_gameobjects::allowCarry( "any" );
|
||||
level.sabBomb maps\mp\gametypes\_gameobjects::set2DIcon( "enemy", "waypoint_bomb" );
|
||||
level.sabBomb maps\mp\gametypes\_gameobjects::set3DIcon( "enemy", "waypoint_bomb" );
|
||||
level.sabBomb maps\mp\gametypes\_gameobjects::set2DIcon( "friendly", "waypoint_bomb" );
|
||||
level.sabBomb maps\mp\gametypes\_gameobjects::set3DIcon( "friendly", "waypoint_bomb" );
|
||||
level.sabBomb maps\mp\gametypes\_gameobjects::setCarryIcon( "hud_suitcase_bomb" );
|
||||
level.sabBomb maps\mp\gametypes\_gameobjects::setVisibleTeam( "any" );
|
||||
level.sabBomb.objIDPingEnemy = true;
|
||||
level.sabBomb.onPickup = ::onPickup;
|
||||
level.sabBomb.onDrop = ::onDrop;
|
||||
level.sabBomb.allowWeapons = true;
|
||||
level.sabBomb.objPoints["allies"].archived = true;
|
||||
level.sabBomb.objPoints["axis"].archived = true;
|
||||
level.sabBomb.autoResetTime = 60.0;
|
||||
|
||||
if ( !isDefined( getEnt( "sab_bomb_axis", "targetname" ) ) )
|
||||
{
|
||||
error("No sab_bomb_axis trigger found in map.");
|
||||
return;
|
||||
}
|
||||
if ( !isDefined( getEnt( "sab_bomb_allies", "targetname" ) ) )
|
||||
{
|
||||
error("No sab_bomb_allies trigger found in map.");
|
||||
return;
|
||||
}
|
||||
|
||||
if ( game["switchedsides"] )
|
||||
{
|
||||
level.bombZones["allies"] = createBombZone( "allies", getEnt( "sab_bomb_axis", "targetname" ) );
|
||||
level.bombZones["axis"] = createBombZone( "axis", getEnt( "sab_bomb_allies", "targetname" ) );
|
||||
}
|
||||
else
|
||||
{
|
||||
level.bombZones["allies"] = createBombZone( "allies", getEnt( "sab_bomb_allies", "targetname" ) );
|
||||
level.bombZones["axis"] = createBombZone( "axis", getEnt( "sab_bomb_axis", "targetname" ) );
|
||||
}
|
||||
|
||||
if ( level.scoreMode )
|
||||
level thread scoreThread();
|
||||
|
||||
if ( inOvertime() )
|
||||
level thread overtimeThread();
|
||||
}
|
||||
|
||||
|
||||
getClosestSite()
|
||||
{
|
||||
if ( distance2d( self.origin, level.bombZones["allies"].trigger.origin ) < distance2d( self.origin, level.bombZones["axis"].trigger.origin ) )
|
||||
return ( "allies" );
|
||||
else
|
||||
return ( "axis" );
|
||||
}
|
||||
|
||||
distanceToSite( team )
|
||||
{
|
||||
return ( distance2d( self.origin, level.bombZones[team].trigger.origin ) );
|
||||
}
|
||||
|
||||
scoreThread()
|
||||
{
|
||||
level.bombDistance = distance2d( getEnt( "sab_bomb_axis", "targetname" ) getOrigin(), getEnt( "sab_bomb_allies", "targetname" ) getOrigin() );
|
||||
|
||||
threatDistance = (level.bombDistance/2) - 384;
|
||||
|
||||
bombEnt = level.sabBomb.trigger;
|
||||
|
||||
// failsafe for bad bomb placement
|
||||
if ( threatDistance > bombEnt distanceToSite( "allies" ) || threatDistance > bombEnt distanceToSite( "axis" ) )
|
||||
threatDistance = bombEnt distanceToSite( bombEnt getClosestSite() ) - 128;
|
||||
|
||||
dangerTeam = "";
|
||||
|
||||
for ( ;; )
|
||||
{
|
||||
if ( isDefined( level.sabBomb.carrier ) )
|
||||
bombEnt = level.sabBomb.carrier;
|
||||
else
|
||||
bombEnt = level.sabBomb.trigger;
|
||||
|
||||
lastDangerTeam = dangerTeam;
|
||||
dangerTeam = "none";
|
||||
|
||||
if ( bombEnt distanceToSite( "allies" ) < threatDistance )
|
||||
dangerTeam = level.bombZones["allies"] maps\mp\gametypes\_gameobjects::getOwnerTeam();
|
||||
else if ( bombEnt distanceToSite( "axis" ) < threatDistance )
|
||||
dangerTeam = level.bombZones["axis"] maps\mp\gametypes\_gameobjects::getOwnerTeam();
|
||||
else if ( bombEnt distanceToSite( "allies" ) > level.bombDistance && bombEnt getClosestSite() != "allies" )
|
||||
dangerTeam = level.bombZones["axis"] maps\mp\gametypes\_gameobjects::getOwnerTeam();
|
||||
else if ( bombEnt distanceToSite( "axis" ) > level.bombDistance && bombEnt getClosestSite() != "axis" )
|
||||
dangerTeam = level.bombZones["allies"] maps\mp\gametypes\_gameobjects::getOwnerTeam();
|
||||
|
||||
if ( dangerTeam != "none" )
|
||||
{
|
||||
if ( !level.bombPlanted || !getWatchedDvar( "scorelimit" ) || (level.bombPlanted && (maps\mp\gametypes\_gamescore::_getTeamScore( level.otherTeam[dangerTeam] ) < getWatchedDvar( "scorelimit" ) - 1)) )
|
||||
{
|
||||
maps\mp\gametypes\_gamescore::_setTeamScore( level.otherTeam[dangerTeam], maps\mp\gametypes\_gamescore::_getTeamScore( level.otherTeam[dangerTeam] ) + 1 );
|
||||
maps\mp\gametypes\_gamescore::updateTeamScore( level.otherTeam[dangerTeam] );
|
||||
}
|
||||
}
|
||||
|
||||
if ( dangerTeam != lastDangerTeam && !level.bombExploded )
|
||||
{
|
||||
setDvar( "ui_danger_team", dangerTeam );
|
||||
}
|
||||
|
||||
wait ( 2.5 );
|
||||
}
|
||||
}
|
||||
|
||||
createBombZone( team, trigger )
|
||||
{
|
||||
visuals = getEntArray( trigger.target, "targetname" );
|
||||
|
||||
bombZone = maps\mp\gametypes\_gameobjects::createUseObject( team, trigger, visuals, (0,0,64) );
|
||||
bombZone resetBombsite();
|
||||
bombZone.onUse = ::onUse;
|
||||
bombZone.onBeginUse = ::onBeginUse;
|
||||
bombZone.onEndUse = ::onEndUse;
|
||||
bombZone.onCantUse = ::onCantUse;
|
||||
bombZone.useWeapon = "briefcase_bomb_mp";
|
||||
|
||||
for ( i = 0; i < visuals.size; i++ )
|
||||
{
|
||||
if ( isDefined( visuals[i].script_exploder ) )
|
||||
{
|
||||
bombZone.exploderIndex = visuals[i].script_exploder;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
return bombZone;
|
||||
}
|
||||
|
||||
|
||||
onBeginUse( player )
|
||||
{
|
||||
// planted the bomb
|
||||
if ( !self maps\mp\gametypes\_gameobjects::isFriendlyTeam( player.pers["team"] ) )
|
||||
player.isPlanting = true;
|
||||
else
|
||||
player.isDefusing = true;
|
||||
}
|
||||
|
||||
onEndUse( team, player, result )
|
||||
{
|
||||
if ( !isAlive( player ) )
|
||||
return;
|
||||
|
||||
player.isPlanting = false;
|
||||
player.isDefusing = false;
|
||||
}
|
||||
|
||||
|
||||
onPickup( player )
|
||||
{
|
||||
level notify ( "bomb_picked_up" );
|
||||
|
||||
self.autoResetTime = 60.0;
|
||||
|
||||
level.useStartSpawns = false;
|
||||
|
||||
team = player.pers["team"];
|
||||
|
||||
if ( team == "allies" )
|
||||
otherTeam = "axis";
|
||||
else
|
||||
otherTeam = "allies";
|
||||
|
||||
player playLocalSound( "mp_suitcase_pickup" );
|
||||
|
||||
player leaderDialogOnPlayer( "obj_destroy", "bomb" );
|
||||
excludeList[0] = player;
|
||||
leaderDialog( "bomb_taken", team, "bomb", excludeList );
|
||||
|
||||
if ( !level.splitscreen )
|
||||
{
|
||||
leaderDialog( "bomb_lost", otherTeam, "bomb" );
|
||||
leaderDialog( "obj_defend", otherTeam, "bomb" );
|
||||
}
|
||||
player.isBombCarrier = true;
|
||||
|
||||
// recovered the bomb before abandonment timer elapsed
|
||||
if ( team == self maps\mp\gametypes\_gameobjects::getOwnerTeam() )
|
||||
{
|
||||
//printOnTeamArg( &"MP_EXPLOSIVES_RECOVERED_BY", team, player );
|
||||
playSoundOnPlayers( game["bomb_recovered_sound"], team );
|
||||
}
|
||||
else
|
||||
{
|
||||
//printOnTeamArg( &"MP_EXPLOSIVES_RECOVERED_BY", team, player );
|
||||
playSoundOnPlayers( game["bomb_recovered_sound"] );
|
||||
}
|
||||
|
||||
self maps\mp\gametypes\_gameobjects::setOwnerTeam( team );
|
||||
self maps\mp\gametypes\_gameobjects::setVisibleTeam( "any" );
|
||||
self maps\mp\gametypes\_gameobjects::set2DIcon( "enemy", "waypoint_target" );
|
||||
self maps\mp\gametypes\_gameobjects::set3DIcon( "enemy", "waypoint_kill" );
|
||||
self maps\mp\gametypes\_gameobjects::set2DIcon( "friendly", "waypoint_escort" );
|
||||
self maps\mp\gametypes\_gameobjects::set3DIcon( "friendly", "waypoint_escort" );
|
||||
|
||||
level.bombZones[team] maps\mp\gametypes\_gameobjects::setVisibleTeam( "none" );
|
||||
level.bombZones[otherTeam] maps\mp\gametypes\_gameobjects::setVisibleTeam( "any" );
|
||||
|
||||
player incPlayerStat( "bombscarried", 1 );
|
||||
player thread maps\mp\_matchdata::logGameEvent( "pickup", player.origin );
|
||||
}
|
||||
|
||||
|
||||
onDrop( player )
|
||||
{
|
||||
if ( level.bombPlanted )
|
||||
{
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
if ( isDefined( player ) )
|
||||
printOnTeamArg( &"MP_EXPLOSIVES_DROPPED_BY", self maps\mp\gametypes\_gameobjects::getOwnerTeam(), player );
|
||||
|
||||
playSoundOnPlayers( game["bomb_dropped_sound"], self maps\mp\gametypes\_gameobjects::getOwnerTeam() );
|
||||
|
||||
thread abandonmentThink( 0.0 );
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
abandonmentThink( delay )
|
||||
{
|
||||
level endon ( "bomb_picked_up" );
|
||||
|
||||
wait ( delay );
|
||||
|
||||
if ( isDefined( self.carrier ) )
|
||||
return;
|
||||
|
||||
if ( self maps\mp\gametypes\_gameobjects::getOwnerTeam() == "allies" )
|
||||
otherTeam = "axis";
|
||||
else
|
||||
otherTeam = "allies";
|
||||
|
||||
// printOnTeamArg( &"MP_EXPLOSIVES_DROPPED_BY", otherTeam, &"MP_THE_ENEMY" );
|
||||
playSoundOnPlayers( game["bomb_dropped_sound"], otherTeam );
|
||||
|
||||
self maps\mp\gametypes\_gameobjects::setOwnerTeam( "neutral" );
|
||||
self maps\mp\gametypes\_gameobjects::setVisibleTeam( "any" );
|
||||
self maps\mp\gametypes\_gameobjects::set2DIcon( "enemy", "waypoint_bomb" );
|
||||
self maps\mp\gametypes\_gameobjects::set3DIcon( "enemy", "waypoint_bomb" );
|
||||
self maps\mp\gametypes\_gameobjects::set2DIcon( "friendly", "waypoint_bomb" );
|
||||
self maps\mp\gametypes\_gameobjects::set3DIcon( "friendly", "waypoint_bomb" );
|
||||
|
||||
level.bombZones["allies"] maps\mp\gametypes\_gameobjects::setVisibleTeam( "none" );
|
||||
level.bombZones["axis"] maps\mp\gametypes\_gameobjects::setVisibleTeam( "none" );
|
||||
}
|
||||
|
||||
|
||||
onUse( player )
|
||||
{
|
||||
team = player.pers["team"];
|
||||
otherTeam = level.otherTeam[team];
|
||||
// planted the bomb
|
||||
if ( !self maps\mp\gametypes\_gameobjects::isFriendlyTeam( player.pers["team"] ) )
|
||||
{
|
||||
player notify ( "bomb_planted" );
|
||||
|
||||
player playSound( "mp_bomb_plant" );
|
||||
|
||||
level thread teamPlayerCardSplash( "callout_bombplanted", player );
|
||||
|
||||
leaderDialog( "bomb_planted" );
|
||||
|
||||
player thread maps\mp\gametypes\_hud_message::SplashNotify( "plant", maps\mp\gametypes\_rank::getScoreInfoValue( "plant" ) );
|
||||
player thread maps\mp\gametypes\_rank::giveRankXP( "plant" );
|
||||
maps\mp\gametypes\_gamescore::givePlayerScore( "plant", player );
|
||||
player incPlayerStat( "bombsplanted", 1 );
|
||||
player thread maps\mp\_matchdata::logGameEvent( "plant", player.origin );
|
||||
player.bombPlantedTime = getTime();
|
||||
|
||||
//if ( !inOvertime() )
|
||||
level thread bombPlanted( self, player.pers["team"] );
|
||||
|
||||
level.bombOwner = player;
|
||||
|
||||
level.sabBomb.autoResetTime = undefined;
|
||||
level.sabBomb maps\mp\gametypes\_gameobjects::allowCarry( "none" );
|
||||
level.sabBomb maps\mp\gametypes\_gameobjects::setVisibleTeam( "none" );
|
||||
level.sabBomb maps\mp\gametypes\_gameobjects::setDropped();
|
||||
self.useWeapon = "briefcase_bomb_defuse_mp";
|
||||
|
||||
self setUpForDefusing();
|
||||
}
|
||||
else // defused the bomb
|
||||
{
|
||||
player notify ( "bomb_defused" );
|
||||
|
||||
leaderDialog( "bomb_defused" );
|
||||
|
||||
level thread teamPlayerCardSplash( "callout_bombdefused", player );
|
||||
|
||||
if ( isDefined( level.bombOwner ) && ( level.bombOwner.bombPlantedTime + 3000 + (level.defuseTime*1000) ) > getTime() && isReallyAlive( level.bombOwner ) )
|
||||
player thread maps\mp\gametypes\_hud_message::SplashNotify( "ninja_defuse", ( maps\mp\gametypes\_rank::getScoreInfoValue( "defuse" ) ) );
|
||||
else
|
||||
player thread maps\mp\gametypes\_hud_message::SplashNotify( "defuse", maps\mp\gametypes\_rank::getScoreInfoValue( "defuse" ) );
|
||||
|
||||
player thread maps\mp\gametypes\_rank::giveRankXP( "defuse" );
|
||||
maps\mp\gametypes\_gamescore::givePlayerScore( "defuse", player );
|
||||
player incPlayerStat( "bombsdefused", 1 );
|
||||
player thread maps\mp\_matchdata::logGameEvent( "defuse", player.origin );
|
||||
|
||||
if ( inOvertime() )
|
||||
{
|
||||
thread maps\mp\gametypes\_gamelogic::endGame( team, game["strings"]["target_destroyed"] );
|
||||
return;
|
||||
}
|
||||
|
||||
level thread bombDefused( self );
|
||||
|
||||
self resetBombsite();
|
||||
|
||||
level.sabBomb maps\mp\gametypes\_gameobjects::allowCarry( "any" );
|
||||
level.sabBomb maps\mp\gametypes\_gameobjects::setPickedUp( player );
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
onCantUse( player )
|
||||
{
|
||||
player iPrintLnBold( &"MP_CANT_PLANT_WITHOUT_BOMB" );
|
||||
}
|
||||
|
||||
|
||||
bombPlanted( destroyedObj, team )
|
||||
{
|
||||
level endon ( "overtime" );
|
||||
|
||||
maps\mp\gametypes\_gamelogic::pauseTimer();
|
||||
level.bombPlanted = true;
|
||||
level.timeLimitOverride = true;
|
||||
level.scoreLimitOverride = true;
|
||||
setDvar( "ui_bomb_timer", 1 );
|
||||
|
||||
// communicate timer information to menus
|
||||
setGameEndTime( int( getTime() + (level.bombTimer * 1000) ) );
|
||||
|
||||
destroyedObj.visuals[0] thread maps\mp\gametypes\_gamelogic::playTickingSound();
|
||||
|
||||
starttime = gettime();
|
||||
bombTimerWait();
|
||||
|
||||
setDvar( "ui_bomb_timer", 0 );
|
||||
destroyedObj.visuals[0] maps\mp\gametypes\_gamelogic::stopTickingSound();
|
||||
|
||||
if ( !level.bombPlanted )
|
||||
{
|
||||
if ( level.hotPotato )
|
||||
{
|
||||
timePassed = (gettime() - starttime) / 1000;
|
||||
level.bombTimer -= timePassed;
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
explosionOrigin = level.sabBomb.visuals[0].origin;
|
||||
level.bombExploded = true;
|
||||
setDvar( "ui_danger_team", "BombExploded" );
|
||||
|
||||
if ( isdefined( level.bombowner ) )
|
||||
{
|
||||
destroyedObj.visuals[0] radiusDamage( explosionOrigin, 512, 200, 20, level.bombowner );
|
||||
level.bombowner incPlayerStat( "targetsdestroyed", 1 );
|
||||
}
|
||||
else
|
||||
destroyedObj.visuals[0] radiusDamage( explosionOrigin, 512, 200, 20 );
|
||||
|
||||
rot = randomfloat(360);
|
||||
explosionEffect = spawnFx( level._effect["bombexplosion"], explosionOrigin + (0,0,50), (0,0,1), (cos(rot),sin(rot),0) );
|
||||
triggerFx( explosionEffect );
|
||||
|
||||
PlayRumbleOnPosition( "grenade_rumble", explosionOrigin );
|
||||
earthquake( 0.75, 2.0, explosionOrigin, 2000 );
|
||||
|
||||
thread playSoundinSpace( "exp_suitcase_bomb_main", explosionOrigin );
|
||||
|
||||
sabBomb = getEnt( "sab_bomb", "targetname" );
|
||||
sabBomb Delete();
|
||||
|
||||
if ( isDefined( destroyedObj.exploderIndex ) )
|
||||
exploder( destroyedObj.exploderIndex );
|
||||
|
||||
level.sabBomb maps\mp\gametypes\_gameobjects::setVisibleTeam( "none" );
|
||||
level.bombZones["allies"] maps\mp\gametypes\_gameobjects::setVisibleTeam( "none" );
|
||||
level.bombZones["axis"] maps\mp\gametypes\_gameobjects::setVisibleTeam( "none" );
|
||||
|
||||
setGameEndTime( 0 );
|
||||
|
||||
level.scoreLimitOverride = true;
|
||||
|
||||
if ( level.scoreMode )
|
||||
maps\mp\gametypes\_gamescore::_setTeamScore( team, int( max( getWatchedDvar( "scorelimit" ), maps\mp\gametypes\_gamescore::_getTeamScore( level.otherTeam[team] ) + 1 ) ) );
|
||||
else
|
||||
maps\mp\gametypes\_gamescore::_setTeamScore( team, 1 );
|
||||
maps\mp\gametypes\_gamescore::updateTeamScore( team );
|
||||
|
||||
if ( isDefined( level.bombOwner ) )
|
||||
{
|
||||
level.bombOwner thread maps\mp\gametypes\_rank::giveRankXP( "destroy" );
|
||||
maps\mp\gametypes\_gamescore::givePlayerScore( "destroy", level.bombOwner );
|
||||
level thread teamPlayerCardSplash( "callout_destroyed_objective", level.bombOwner );
|
||||
}
|
||||
|
||||
wait 3;
|
||||
|
||||
thread maps\mp\gametypes\_gamelogic::endGame( team, game["strings"]["target_destroyed"] );
|
||||
}
|
||||
|
||||
|
||||
bombTimerWait()
|
||||
{
|
||||
level endon("bomb_defused");
|
||||
level endon("overtime_ended");
|
||||
|
||||
maps\mp\gametypes\_hostmigration::waitLongDurationWithGameEndTimeUpdate( level.bombTimer );
|
||||
}
|
||||
|
||||
|
||||
giveLastOnTeamWarning()
|
||||
{
|
||||
self endon("death");
|
||||
self endon("disconnect");
|
||||
level endon( "game_ended" );
|
||||
|
||||
self waitTillRecoveredHealth( 3 );
|
||||
|
||||
otherTeam = getOtherTeam( self.pers["team"] );
|
||||
level thread teamPlayerCardSplash( "callout_lastteammemberalive", self, self.pers["team"] );
|
||||
level thread teamPlayerCardSplash( "callout_lastenemyalive", self, otherTeam );
|
||||
level notify ( "last_alive", self );
|
||||
//self maps\mp\gametypes\_missions::lastManSD();
|
||||
}
|
||||
|
||||
|
||||
onTimeLimit()
|
||||
{
|
||||
if ( level.bombExploded )
|
||||
return;
|
||||
|
||||
if( game["teamScores"]["axis"] > game["teamScores"]["allies"] )
|
||||
{
|
||||
thread maps\mp\gametypes\_gamelogic::endGame( "axis", game["strings"]["time_limit_reached"] );
|
||||
}
|
||||
else if( game["teamScores"]["axis"] < game["teamScores"]["allies"] )
|
||||
{
|
||||
thread maps\mp\gametypes\_gamelogic::endGame( "allies", game["strings"]["time_limit_reached"] );
|
||||
}
|
||||
else if( game["teamScores"]["axis"] == game["teamScores"]["allies"] )
|
||||
{
|
||||
if ( inOvertime() )
|
||||
thread maps\mp\gametypes\_gamelogic::endGame( "tie", game["strings"]["time_limit_reached"] );
|
||||
else
|
||||
thread maps\mp\gametypes\_gamelogic::endGame( "overtime", game["strings"]["time_limit_reached"] );
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
overtimeThread( time )
|
||||
{
|
||||
level endon( "game_ended" );
|
||||
|
||||
level.inOvertime = true;
|
||||
|
||||
wait ( 5.0 );
|
||||
level.disableSpawning = true;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
overtimeThread()
|
||||
{
|
||||
level.inOvertime = getTime();
|
||||
level notify ( "overtime" );
|
||||
|
||||
thread bombDistanceThread();
|
||||
|
||||
foreach ( player in level.players )
|
||||
player thread maps\mp\gametypes\_hud_message::SplashNotify( "sab_overtime" );
|
||||
|
||||
maps\mp\gametypes\_gamelogic::pauseTimer();
|
||||
level.bombPlanted = true;
|
||||
level.timeLimitOverride = true;
|
||||
setDvar( "ui_bomb_timer", 1 );
|
||||
|
||||
// communicate timer information to menus
|
||||
setGameEndTime( int( getTime() + (level.bombTimer * 1000) ) );
|
||||
|
||||
maps\mp\gametypes\_hostmigration::waitLongDurationWithGameEndTimeUpdate( level.bombTimer );
|
||||
|
||||
setDvar( "ui_bomb_timer", 0 );
|
||||
|
||||
if ( isDefined( level.sabBomb.carrier ) )
|
||||
{
|
||||
explosionEnt = level.sabBomb.carrier;
|
||||
}
|
||||
else
|
||||
{
|
||||
explosionEnt = level.sabBomb.visuals[0];
|
||||
}
|
||||
|
||||
level.bombExploded = true;
|
||||
|
||||
if ( isdefined( level.bombowner ) )
|
||||
explosionEnt radiusDamage( explosionEnt.origin, 512, 200, 20, level.bombowner );
|
||||
else
|
||||
explosionEnt radiusDamage( explosionEnt.origin, 512, 200, 20 );
|
||||
|
||||
rot = randomfloat(360);
|
||||
explosionEffect = spawnFx( level._effect["bombexplosion"], explosionEnt.origin + (0,0,50), (0,0,1), (cos(rot),sin(rot),0) );
|
||||
triggerFx( explosionEffect );
|
||||
|
||||
thread playSoundinSpace( "exp_suitcase_bomb_main", explosionEnt.origin );
|
||||
|
||||
setGameEndTime( 0 );
|
||||
|
||||
team = getOtherTeam( level.dangerTeam );
|
||||
|
||||
wait 3;
|
||||
|
||||
//maps\mp\gametypes\_gamescore::giveTeamScoreForObjective( team, 1 );
|
||||
maps\mp\gametypes\_gamelogic::endGame( team, game["strings"]["target_destroyed"] );
|
||||
}
|
||||
*/
|
||||
|
||||
bombDistanceThread()
|
||||
{
|
||||
level endon ( "game_ended" );
|
||||
|
||||
if ( cointoss() )
|
||||
level.dangerTeam = "allies";
|
||||
else
|
||||
level.dangerTeam = "axis";
|
||||
|
||||
for ( ;; )
|
||||
{
|
||||
if ( isDefined( level.sabBomb.carrier ) )
|
||||
bombEnt = level.sabBomb.carrier;
|
||||
else
|
||||
bombEnt = level.sabBomb.visuals[0];
|
||||
|
||||
if ( distance( bombEnt.origin, level.bombZones[getOtherTeam(level.dangerTeam)].visuals[0].origin ) < distance( bombEnt.origin, level.bombZones[level.dangerTeam].visuals[0].origin ) )
|
||||
level.dangerTeam = getOtherTeam( level.dangerTeam );
|
||||
|
||||
wait ( 0.05 );
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
resetBombsite()
|
||||
{
|
||||
self maps\mp\gametypes\_gameobjects::allowUse( "enemy" );
|
||||
self maps\mp\gametypes\_gameobjects::setUseTime( level.plantTime );
|
||||
self maps\mp\gametypes\_gameobjects::setUseText( &"MP_PLANTING_EXPLOSIVE" );
|
||||
self maps\mp\gametypes\_gameobjects::setUseHintText( &"PLATFORM_HOLD_TO_PLANT_EXPLOSIVES" );
|
||||
self maps\mp\gametypes\_gameobjects::setKeyObject( level.sabBomb );
|
||||
self maps\mp\gametypes\_gameobjects::set2DIcon( "friendly", "waypoint_defend" );
|
||||
self maps\mp\gametypes\_gameobjects::set3DIcon( "friendly", "waypoint_defend" );
|
||||
self maps\mp\gametypes\_gameobjects::set2DIcon( "enemy", "waypoint_target" );
|
||||
self maps\mp\gametypes\_gameobjects::set3DIcon( "enemy", "waypoint_target" );
|
||||
self maps\mp\gametypes\_gameobjects::setVisibleTeam( "none" );
|
||||
self.useWeapon = "briefcase_bomb_mp";
|
||||
}
|
||||
|
||||
|
||||
setUpForDefusing()
|
||||
{
|
||||
self maps\mp\gametypes\_gameobjects::allowUse( "friendly" );
|
||||
self maps\mp\gametypes\_gameobjects::setUseTime( level.defuseTime );
|
||||
self maps\mp\gametypes\_gameobjects::setUseText( &"MP_DEFUSING_EXPLOSIVE" );
|
||||
self maps\mp\gametypes\_gameobjects::setUseHintText( &"PLATFORM_HOLD_TO_DEFUSE_EXPLOSIVES" );
|
||||
self maps\mp\gametypes\_gameobjects::setKeyObject( undefined );
|
||||
self maps\mp\gametypes\_gameobjects::set2DIcon( "friendly", "waypoint_defuse" );
|
||||
self maps\mp\gametypes\_gameobjects::set3DIcon( "friendly", "waypoint_defuse" );
|
||||
self maps\mp\gametypes\_gameobjects::set2DIcon( "enemy", "waypoint_defend" );
|
||||
self maps\mp\gametypes\_gameobjects::set3DIcon( "enemy", "waypoint_defend" );
|
||||
self maps\mp\gametypes\_gameobjects::setVisibleTeam( "any" );
|
||||
}
|
||||
|
||||
|
||||
bombDefused( object )
|
||||
{
|
||||
setDvar( "ui_bomb_timer", 0 );
|
||||
maps\mp\gametypes\_gamelogic::resumeTimer();
|
||||
level.bombPlanted = false;
|
||||
level.timeLimitOverride = false;
|
||||
level.scoreLimitOverride = false;
|
||||
|
||||
level notify("bomb_defused");
|
||||
}
|
||||
|
||||
|
||||
onOneLeftEvent( team )
|
||||
{
|
||||
if ( level.bombExploded )
|
||||
return;
|
||||
|
||||
lastPlayer = getLastLivingPlayer( team );
|
||||
|
||||
lastPlayer thread giveLastOnTeamWarning();
|
||||
}
|
||||
|
||||
|
||||
onNormalDeath( victim, attacker, lifeId, lifeId )
|
||||
{
|
||||
if ( victim.isPlanting )
|
||||
{
|
||||
thread maps\mp\_matchdata::logKillEvent( lifeId, "planting" );
|
||||
}
|
||||
else if ( victim.isBombCarrier )
|
||||
{
|
||||
attacker incPlayerStat( "bombcarrierkills", 1 );
|
||||
thread maps\mp\_matchdata::logKillEvent( lifeId, "carrying" );
|
||||
}
|
||||
else if ( victim.isDefusing )
|
||||
{
|
||||
thread maps\mp\_matchdata::logKillEvent( lifeId, "defusing" );
|
||||
}
|
||||
|
||||
if ( attacker.isBombCarrier )
|
||||
attacker incPlayerStat( "killsasbombcarrier", 1 );
|
||||
}
|
||||
|
||||
initGametypeAwards()
|
||||
{
|
||||
maps\mp\_awards::initStatAward( "targetsdestroyed", 0, maps\mp\_awards::highestWins );
|
||||
maps\mp\_awards::initStatAward( "bombsplanted", 0, maps\mp\_awards::highestWins );
|
||||
maps\mp\_awards::initStatAward( "bombsdefused", 0, maps\mp\_awards::highestWins );
|
||||
maps\mp\_awards::initStatAward( "bombcarrierkills", 0, maps\mp\_awards::highestWins );
|
||||
maps\mp\_awards::initStatAward( "bombscarried", 0, maps\mp\_awards::highestWins );
|
||||
maps\mp\_awards::initStatAward( "killsasbombcarrier", 0, maps\mp\_awards::highestWins );
|
||||
}
|
||||
@@ -0,0 +1,807 @@
|
||||
#include common_scripts\utility;
|
||||
#include maps\mp\_utility;
|
||||
#include maps\mp\gametypes\_hud_util;
|
||||
// Rallypoints should be destroyed on leaving your team/getting killed
|
||||
// Compass icons need to be looked at
|
||||
// Doesn't seem to be setting angle on spawn so that you are facing your rallypoint
|
||||
|
||||
/*
|
||||
Search and Destroy
|
||||
Attackers objective: Bomb one of 2 positions
|
||||
Defenders objective: Defend these 2 positions / Defuse planted bombs
|
||||
Round ends: When one team is eliminated, bomb explodes, bomb is defused, or roundlength time is reached
|
||||
Map ends: When one team reaches the score limit, or time limit or round limit is reached
|
||||
Respawning: Players remain dead for the round and will respawn at the beginning of the next round
|
||||
|
||||
Level requirements
|
||||
------------------
|
||||
Allied Spawnpoints:
|
||||
classname mp_sd_spawn_attacker
|
||||
Allied players spawn from these. Place at least 16 of these relatively close together.
|
||||
|
||||
Axis Spawnpoints:
|
||||
classname mp_sd_spawn_defender
|
||||
Axis players spawn from these. Place at least 16 of these relatively close together.
|
||||
|
||||
Spectator Spawnpoints:
|
||||
classname mp_global_intermission
|
||||
Spectators spawn from these and intermission is viewed from these positions.
|
||||
Atleast one is required, any more and they are randomly chosen between.
|
||||
|
||||
Bombzones:
|
||||
classname trigger_multiple
|
||||
targetname bombzone
|
||||
script_gameobjectname bombzone
|
||||
script_bombmode_original <if defined this bombzone will be used in the original bomb mode>
|
||||
script_bombmode_single <if defined this bombzone will be used in the single bomb mode>
|
||||
script_bombmode_dual <if defined this bombzone will be used in the dual bomb mode>
|
||||
script_team Set to allies or axis. This is used to set which team a bombzone is used by in dual bomb mode.
|
||||
script_label Set to A or B. This sets the letter shown on the compass in original mode.
|
||||
This is a volume of space in which the bomb can planted. Must contain an origin brush.
|
||||
|
||||
Bomb:
|
||||
classname trigger_lookat
|
||||
targetname bombtrigger
|
||||
script_gameobjectname bombzone
|
||||
This should be a 16x16 unit trigger with an origin brush placed so that it's center lies on the bottom plane of the trigger.
|
||||
Must be in the level somewhere. This is the trigger that is used when defusing a bomb.
|
||||
It gets moved to the position of the planted bomb model.
|
||||
|
||||
Level script requirements
|
||||
-------------------------
|
||||
Team Definitions:
|
||||
game["attackers"] = "allies";
|
||||
game["defenders"] = "axis";
|
||||
This sets which team is attacking and which team is defending. Attackers plant the bombs. Defenders protect the targets.
|
||||
|
||||
Exploder Effects:
|
||||
Setting script_noteworthy on a bombzone trigger to an exploder group can be used to trigger additional effects.
|
||||
*/
|
||||
|
||||
/*QUAKED mp_sd_spawn_attacker (0.0 1.0 0.0) (-16 -16 0) (16 16 72)
|
||||
Attacking players spawn randomly at one of these positions at the beginning of a round.*/
|
||||
|
||||
/*QUAKED mp_sd_spawn_defender (1.0 0.0 0.0) (-16 -16 0) (16 16 72)
|
||||
Defending players spawn randomly at one of these positions at the beginning of a round.*/
|
||||
|
||||
main()
|
||||
{
|
||||
if(getdvar("mapname") == "mp_background")
|
||||
return;
|
||||
|
||||
maps\mp\gametypes\_globallogic::init();
|
||||
maps\mp\gametypes\_callbacksetup::SetupCallbacks();
|
||||
maps\mp\gametypes\_globallogic::SetupCallbacks();
|
||||
|
||||
registerRoundSwitchDvar( level.gameType, 3, 0, 9 );
|
||||
registerTimeLimitDvar( level.gameType, 2.5, 0, 1440 );
|
||||
registerScoreLimitDvar( level.gameType, 1, 0, 500 );
|
||||
registerRoundLimitDvar( level.gameType, 0, 0, 12 );
|
||||
registerWinLimitDvar( level.gameType, 4, 0, 12 );
|
||||
registerNumLivesDvar( level.gameType, 1, 0, 10 );
|
||||
registerHalfTimeDvar( level.gameType, 0, 0, 1 );
|
||||
|
||||
level.objectiveBased = true;
|
||||
level.teamBased = true;
|
||||
level.onPrecacheGameType = ::onPrecacheGameType;
|
||||
level.onStartGameType = ::onStartGameType;
|
||||
level.getSpawnPoint = ::getSpawnPoint;
|
||||
level.onSpawnPlayer = ::onSpawnPlayer;
|
||||
level.onPlayerKilled = ::onPlayerKilled;
|
||||
level.onDeadEvent = ::onDeadEvent;
|
||||
level.onOneLeftEvent = ::onOneLeftEvent;
|
||||
level.onTimeLimit = ::onTimeLimit;
|
||||
level.onNormalDeath = ::onNormalDeath;
|
||||
level.initGametypeAwards = ::initGametypeAwards;
|
||||
|
||||
game["dialog"]["gametype"] = "searchdestroy";
|
||||
|
||||
if ( getDvarInt( "g_hardcore" ) )
|
||||
game["dialog"]["gametype"] = "hc_" + game["dialog"]["gametype"];
|
||||
else if ( getDvarInt( "camera_thirdPerson" ) )
|
||||
game["dialog"]["gametype"] = "thirdp_" + game["dialog"]["gametype"];
|
||||
else if ( getDvarInt( "scr_diehard" ) )
|
||||
game["dialog"]["gametype"] = "dh_" + game["dialog"]["gametype"];
|
||||
else if (getDvarInt( "scr_" + level.gameType + "_promode" ) )
|
||||
game["dialog"]["gametype"] = game["dialog"]["gametype"] + "_pro";
|
||||
|
||||
game["dialog"]["offense_obj"] = "obj_destroy";
|
||||
game["dialog"]["defense_obj"] = "obj_defend";
|
||||
}
|
||||
|
||||
|
||||
onPrecacheGameType()
|
||||
{
|
||||
game["bomb_dropped_sound"] = "mp_war_objective_lost";
|
||||
game["bomb_recovered_sound"] = "mp_war_objective_taken";
|
||||
|
||||
precacheShader("waypoint_bomb");
|
||||
precacheShader("hud_suitcase_bomb");
|
||||
precacheShader("waypoint_target");
|
||||
precacheShader("waypoint_target_a");
|
||||
precacheShader("waypoint_target_b");
|
||||
precacheShader("waypoint_defend");
|
||||
precacheShader("waypoint_defend_a");
|
||||
precacheShader("waypoint_defend_b");
|
||||
precacheShader("waypoint_defuse");
|
||||
precacheShader("waypoint_defuse_a");
|
||||
precacheShader("waypoint_defuse_b");
|
||||
precacheShader("waypoint_escort");
|
||||
/*
|
||||
precacheShader("waypoint_target");
|
||||
precacheShader("waypoint_target_a");
|
||||
precacheShader("waypoint_target_b");
|
||||
precacheShader("waypoint_defend");
|
||||
precacheShader("waypoint_defend_a");
|
||||
precacheShader("waypoint_defend_b");
|
||||
precacheShader("waypoint_defuse");
|
||||
precacheShader("waypoint_defuse_a");
|
||||
precacheShader("waypoint_defuse_b");
|
||||
*/
|
||||
precacheString( &"MP_EXPLOSIVES_RECOVERED_BY" );
|
||||
precacheString( &"MP_EXPLOSIVES_DROPPED_BY" );
|
||||
precacheString( &"MP_EXPLOSIVES_PLANTED_BY" );
|
||||
precacheString( &"MP_EXPLOSIVES_DEFUSED_BY" );
|
||||
precacheString( &"PLATFORM_HOLD_TO_PLANT_EXPLOSIVES" );
|
||||
precacheString( &"PLATFORM_HOLD_TO_DEFUSE_EXPLOSIVES" );
|
||||
precacheString( &"MP_CANT_PLANT_WITHOUT_BOMB" );
|
||||
precacheString( &"MP_PLANTING_EXPLOSIVE" );
|
||||
precacheString( &"MP_DEFUSING_EXPLOSIVE" );
|
||||
}
|
||||
|
||||
|
||||
onStartGameType()
|
||||
{
|
||||
if ( !isDefined( game["switchedsides"] ) )
|
||||
game["switchedsides"] = false;
|
||||
|
||||
if ( game["switchedsides"] )
|
||||
{
|
||||
oldAttackers = game["attackers"];
|
||||
oldDefenders = game["defenders"];
|
||||
game["attackers"] = oldDefenders;
|
||||
game["defenders"] = oldAttackers;
|
||||
}
|
||||
|
||||
setClientNameMode( "manual_change" );
|
||||
|
||||
game["strings"]["target_destroyed"] = &"MP_TARGET_DESTROYED";
|
||||
game["strings"]["bomb_defused"] = &"MP_BOMB_DEFUSED";
|
||||
|
||||
precacheString( game["strings"]["target_destroyed"] );
|
||||
precacheString( game["strings"]["bomb_defused"] );
|
||||
|
||||
level._effect["bombexplosion"] = loadfx("explosions/tanker_explosion");
|
||||
|
||||
setObjectiveText( game["attackers"], &"OBJECTIVES_SD_ATTACKER" );
|
||||
setObjectiveText( game["defenders"], &"OBJECTIVES_SD_DEFENDER" );
|
||||
|
||||
if ( level.splitscreen )
|
||||
{
|
||||
setObjectiveScoreText( game["attackers"], &"OBJECTIVES_SD_ATTACKER" );
|
||||
setObjectiveScoreText( game["defenders"], &"OBJECTIVES_SD_DEFENDER" );
|
||||
}
|
||||
else
|
||||
{
|
||||
setObjectiveScoreText( game["attackers"], &"OBJECTIVES_SD_ATTACKER_SCORE" );
|
||||
setObjectiveScoreText( game["defenders"], &"OBJECTIVES_SD_DEFENDER_SCORE" );
|
||||
}
|
||||
setObjectiveHintText( game["attackers"], &"OBJECTIVES_SD_ATTACKER_HINT" );
|
||||
setObjectiveHintText( game["defenders"], &"OBJECTIVES_SD_DEFENDER_HINT" );
|
||||
|
||||
level.spawnMins = ( 0, 0, 0 );
|
||||
level.spawnMaxs = ( 0, 0, 0 );
|
||||
maps\mp\gametypes\_spawnlogic::placeSpawnPoints( "mp_sd_spawn_attacker" );
|
||||
maps\mp\gametypes\_spawnlogic::placeSpawnPoints( "mp_sd_spawn_defender" );
|
||||
|
||||
level.mapCenter = maps\mp\gametypes\_spawnlogic::findBoxCenter( level.spawnMins, level.spawnMaxs );
|
||||
setMapCenter( level.mapCenter );
|
||||
|
||||
allowed[0] = "sd";
|
||||
allowed[1] = "bombzone";
|
||||
allowed[2] = "blocker";
|
||||
maps\mp\gametypes\_gameobjects::main(allowed);
|
||||
|
||||
maps\mp\gametypes\_rank::registerScoreInfo( "win", 2 );
|
||||
maps\mp\gametypes\_rank::registerScoreInfo( "loss", 1 );
|
||||
maps\mp\gametypes\_rank::registerScoreInfo( "tie", 1.5 );
|
||||
|
||||
maps\mp\gametypes\_rank::registerScoreInfo( "kill", 50 );
|
||||
maps\mp\gametypes\_rank::registerScoreInfo( "headshot", 50 );
|
||||
maps\mp\gametypes\_rank::registerScoreInfo( "assist", 20 );
|
||||
maps\mp\gametypes\_rank::registerScoreInfo( "plant", 100 );
|
||||
maps\mp\gametypes\_rank::registerScoreInfo( "defuse", 100 );
|
||||
|
||||
thread updateGametypeDvars();
|
||||
|
||||
thread bombs();
|
||||
}
|
||||
|
||||
|
||||
getSpawnPoint()
|
||||
{
|
||||
if ( getDvar( "mapname" ) == "mp_shipment_long" )
|
||||
{
|
||||
if(self.pers["team"] == game["attackers"])
|
||||
spawnPointName = "mp_cha_spawn_allies_start";
|
||||
else
|
||||
spawnPointName = "mp_cha_spawn_axis_start";
|
||||
}
|
||||
else
|
||||
{
|
||||
if(self.pers["team"] == game["attackers"])
|
||||
spawnPointName = "mp_sd_spawn_attacker";
|
||||
else
|
||||
spawnPointName = "mp_sd_spawn_defender";
|
||||
}
|
||||
|
||||
spawnPoints = maps\mp\gametypes\_spawnlogic::getSpawnpointArray( spawnPointName );
|
||||
assert( spawnPoints.size );
|
||||
spawnpoint = maps\mp\gametypes\_spawnlogic::getSpawnpoint_Random( spawnPoints );
|
||||
|
||||
return spawnpoint;
|
||||
}
|
||||
|
||||
onSpawnPlayer()
|
||||
{
|
||||
self.isPlanting = false;
|
||||
self.isDefusing = false;
|
||||
self.isBombCarrier = false;
|
||||
|
||||
if ( level.multiBomb && !isDefined( self.carryIcon ) && self.pers["team"] == game["attackers"] && !level.bombPlanted )
|
||||
{
|
||||
if ( level.splitscreen )
|
||||
{
|
||||
self.carryIcon = createIcon( "hud_suitcase_bomb", 33, 33 );
|
||||
self.carryIcon setPoint( "BOTTOM RIGHT", "BOTTOM RIGHT", 0, -78 );
|
||||
self.carryIcon.alpha = 0.75;
|
||||
}
|
||||
else
|
||||
{
|
||||
self.carryIcon = createIcon( "hud_suitcase_bomb", 50, 50 );
|
||||
self.carryIcon setPoint( "BOTTOM RIGHT", "BOTTOM RIGHT", -90, -65 );
|
||||
self.carryIcon.alpha = 0.75;
|
||||
}
|
||||
}
|
||||
|
||||
level notify ( "spawned_player" );
|
||||
}
|
||||
|
||||
|
||||
onPlayerKilled(eInflictor, attacker, iDamage, sMeansOfDeath, sWeapon, vDir, sHitLoc, psOffsetTime, deathAnimDuration, killId)
|
||||
{
|
||||
thread checkAllowSpectating();
|
||||
}
|
||||
|
||||
|
||||
checkAllowSpectating()
|
||||
{
|
||||
wait ( 0.05 );
|
||||
|
||||
update = false;
|
||||
if ( !level.aliveCount[ game["attackers"] ] )
|
||||
{
|
||||
level.spectateOverride[game["attackers"]].allowEnemySpectate = 1;
|
||||
update = true;
|
||||
}
|
||||
if ( !level.aliveCount[ game["defenders"] ] )
|
||||
{
|
||||
level.spectateOverride[game["defenders"]].allowEnemySpectate = 1;
|
||||
update = true;
|
||||
}
|
||||
if ( update )
|
||||
maps\mp\gametypes\_spectating::updateSpectateSettings();
|
||||
}
|
||||
|
||||
|
||||
sd_endGame( winningTeam, endReasonText )
|
||||
{
|
||||
thread maps\mp\gametypes\_gamelogic::endGame( winningTeam, endReasonText );
|
||||
}
|
||||
|
||||
|
||||
onDeadEvent( team )
|
||||
{
|
||||
if ( level.bombExploded || level.bombDefused )
|
||||
return;
|
||||
|
||||
if ( team == "all" )
|
||||
{
|
||||
if ( level.bombPlanted )
|
||||
sd_endGame( game["attackers"], game["strings"][game["defenders"]+"_eliminated"] );
|
||||
else
|
||||
sd_endGame( game["defenders"], game["strings"][game["attackers"]+"_eliminated"] );
|
||||
}
|
||||
else if ( team == game["attackers"] )
|
||||
{
|
||||
if ( level.bombPlanted )
|
||||
return;
|
||||
|
||||
level thread sd_endGame( game["defenders"], game["strings"][game["attackers"]+"_eliminated"] );
|
||||
}
|
||||
else if ( team == game["defenders"] )
|
||||
{
|
||||
level thread sd_endGame( game["attackers"], game["strings"][game["defenders"]+"_eliminated"] );
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
onOneLeftEvent( team )
|
||||
{
|
||||
if ( level.bombExploded || level.bombDefused )
|
||||
return;
|
||||
|
||||
lastPlayer = getLastLivingPlayer( team );
|
||||
|
||||
lastPlayer thread giveLastOnTeamWarning();
|
||||
}
|
||||
|
||||
|
||||
onNormalDeath( victim, attacker, lifeId )
|
||||
{
|
||||
score = maps\mp\gametypes\_rank::getScoreInfoValue( "kill" );
|
||||
assert( isDefined( score ) );
|
||||
|
||||
team = victim.team;
|
||||
|
||||
if ( game["state"] == "postgame" && (victim.team == game["defenders"] || !level.bombPlanted) )
|
||||
attacker.finalKill = true;
|
||||
|
||||
if ( victim.isPlanting )
|
||||
{
|
||||
thread maps\mp\_matchdata::logKillEvent( lifeId, "planting" );
|
||||
}
|
||||
else if ( victim.isBombCarrier )
|
||||
{
|
||||
attacker incPlayerStat( "bombcarrierkills", 1 );
|
||||
thread maps\mp\_matchdata::logKillEvent( lifeId, "carrying" );
|
||||
}
|
||||
else if ( victim.isDefusing )
|
||||
{
|
||||
thread maps\mp\_matchdata::logKillEvent( lifeId, "defusing" );
|
||||
}
|
||||
|
||||
if ( attacker.isBombCarrier )
|
||||
attacker incPlayerStat( "killsasbombcarrier", 1 );
|
||||
}
|
||||
|
||||
|
||||
giveLastOnTeamWarning()
|
||||
{
|
||||
self endon("death");
|
||||
self endon("disconnect");
|
||||
level endon( "game_ended" );
|
||||
|
||||
self waitTillRecoveredHealth( 3 );
|
||||
|
||||
otherTeam = getOtherTeam( self.pers["team"] );
|
||||
level thread teamPlayerCardSplash( "callout_lastteammemberalive", self, self.pers["team"] );
|
||||
level thread teamPlayerCardSplash( "callout_lastenemyalive", self, otherTeam );
|
||||
level notify ( "last_alive", self );
|
||||
self maps\mp\gametypes\_missions::lastManSD();
|
||||
}
|
||||
|
||||
|
||||
onTimeLimit()
|
||||
{
|
||||
sd_endGame( game["defenders"], game["strings"]["time_limit_reached"] );
|
||||
}
|
||||
|
||||
|
||||
updateGametypeDvars()
|
||||
{
|
||||
level.plantTime = dvarFloatValue( "planttime", 5, 0, 20 );
|
||||
level.defuseTime = dvarFloatValue( "defusetime", 5, 0, 20 );
|
||||
level.bombTimer = dvarFloatValue( "bombtimer", 45, 1, 300 );
|
||||
level.multiBomb = dvarIntValue( "multibomb", 0, 0, 1 );
|
||||
}
|
||||
|
||||
|
||||
bombs()
|
||||
{
|
||||
level.bombPlanted = false;
|
||||
level.bombDefused = false;
|
||||
level.bombExploded = false;
|
||||
|
||||
trigger = getEnt( "sd_bomb_pickup_trig", "targetname" );
|
||||
if ( !isDefined( trigger ) )
|
||||
{
|
||||
error("No sd_bomb_pickup_trig trigger found in map.");
|
||||
return;
|
||||
}
|
||||
|
||||
visuals[0] = getEnt( "sd_bomb", "targetname" );
|
||||
if ( !isDefined( visuals[0] ) )
|
||||
{
|
||||
error("No sd_bomb script_model found in map.");
|
||||
return;
|
||||
}
|
||||
|
||||
precacheModel( "prop_suitcase_bomb" );
|
||||
visuals[0] setModel( "prop_suitcase_bomb" );
|
||||
|
||||
if ( !level.multiBomb )
|
||||
{
|
||||
level.sdBomb = maps\mp\gametypes\_gameobjects::createCarryObject( game["attackers"], trigger, visuals, (0,0,32) );
|
||||
level.sdBomb maps\mp\gametypes\_gameobjects::allowCarry( "friendly" );
|
||||
level.sdBomb maps\mp\gametypes\_gameobjects::set2DIcon( "friendly", "waypoint_bomb" );
|
||||
level.sdBomb maps\mp\gametypes\_gameobjects::set3DIcon( "friendly", "waypoint_bomb" );
|
||||
level.sdBomb maps\mp\gametypes\_gameobjects::setVisibleTeam( "friendly" );
|
||||
level.sdBomb maps\mp\gametypes\_gameobjects::setCarryIcon( "hud_suitcase_bomb" );
|
||||
level.sdBomb.allowWeapons = true;
|
||||
level.sdBomb.onPickup = ::onPickup;
|
||||
level.sdBomb.onDrop = ::onDrop;
|
||||
}
|
||||
else
|
||||
{
|
||||
trigger delete();
|
||||
visuals[0] delete();
|
||||
}
|
||||
|
||||
|
||||
level.bombZones = [];
|
||||
|
||||
bombZones = getEntArray( "bombzone", "targetname" );
|
||||
|
||||
for ( index = 0; index < bombZones.size; index++ )
|
||||
{
|
||||
trigger = bombZones[index];
|
||||
visuals = getEntArray( bombZones[index].target, "targetname" );
|
||||
|
||||
bombZone = maps\mp\gametypes\_gameobjects::createUseObject( game["defenders"], trigger, visuals, (0,0,64) );
|
||||
bombZone maps\mp\gametypes\_gameobjects::allowUse( "enemy" );
|
||||
bombZone maps\mp\gametypes\_gameobjects::setUseTime( level.plantTime );
|
||||
bombZone maps\mp\gametypes\_gameobjects::setUseText( &"MP_PLANTING_EXPLOSIVE" );
|
||||
bombZone maps\mp\gametypes\_gameobjects::setUseHintText( &"PLATFORM_HOLD_TO_PLANT_EXPLOSIVES" );
|
||||
if ( !level.multiBomb )
|
||||
bombZone maps\mp\gametypes\_gameobjects::setKeyObject( level.sdBomb );
|
||||
label = bombZone maps\mp\gametypes\_gameobjects::getLabel();
|
||||
bombZone.label = label;
|
||||
bombZone maps\mp\gametypes\_gameobjects::set2DIcon( "friendly", "waypoint_defend" + label );
|
||||
bombZone maps\mp\gametypes\_gameobjects::set3DIcon( "friendly", "waypoint_defend" + label );
|
||||
bombZone maps\mp\gametypes\_gameobjects::set2DIcon( "enemy", "waypoint_target" + label );
|
||||
bombZone maps\mp\gametypes\_gameobjects::set3DIcon( "enemy", "waypoint_target" + label );
|
||||
bombZone maps\mp\gametypes\_gameobjects::setVisibleTeam( "any" );
|
||||
bombZone.onBeginUse = ::onBeginUse;
|
||||
bombZone.onEndUse = ::onEndUse;
|
||||
bombZone.onUse = ::onUsePlantObject;
|
||||
bombZone.onCantUse = ::onCantUse;
|
||||
bombZone.useWeapon = "briefcase_bomb_mp";
|
||||
|
||||
for ( i = 0; i < visuals.size; i++ )
|
||||
{
|
||||
if ( isDefined( visuals[i].script_exploder ) )
|
||||
{
|
||||
bombZone.exploderIndex = visuals[i].script_exploder;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
level.bombZones[level.bombZones.size] = bombZone;
|
||||
|
||||
bombZone.bombDefuseTrig = getent( visuals[0].target, "targetname" );
|
||||
assert( isdefined( bombZone.bombDefuseTrig ) );
|
||||
bombZone.bombDefuseTrig.origin += (0,0,-10000);
|
||||
bombZone.bombDefuseTrig.label = label;
|
||||
}
|
||||
|
||||
for ( index = 0; index < level.bombZones.size; index++ )
|
||||
{
|
||||
array = [];
|
||||
for ( otherindex = 0; otherindex < level.bombZones.size; otherindex++ )
|
||||
{
|
||||
if ( otherindex != index )
|
||||
array[ array.size ] = level.bombZones[otherindex];
|
||||
}
|
||||
level.bombZones[index].otherBombZones = array;
|
||||
}
|
||||
}
|
||||
|
||||
onBeginUse( player )
|
||||
{
|
||||
if ( self maps\mp\gametypes\_gameobjects::isFriendlyTeam( player.pers["team"] ) )
|
||||
{
|
||||
player playSound( "mp_bomb_defuse" );
|
||||
player.isDefusing = true;
|
||||
|
||||
if ( isDefined( level.sdBombModel ) )
|
||||
level.sdBombModel hide();
|
||||
}
|
||||
else
|
||||
{
|
||||
player.isPlanting = true;
|
||||
|
||||
if ( level.multibomb )
|
||||
{
|
||||
for ( i = 0; i < self.otherBombZones.size; i++ )
|
||||
{
|
||||
//self.otherBombZones[i] maps\mp\gametypes\_gameobjects::disableObject();
|
||||
self.otherBombZones[i] maps\mp\gametypes\_gameobjects::allowUse( "none" );
|
||||
self.otherBombZones[i] maps\mp\gametypes\_gameobjects::setVisibleTeam( "friendly" );
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
onEndUse( team, player, result )
|
||||
{
|
||||
if ( !isDefined( player ) )
|
||||
return;
|
||||
|
||||
if ( isAlive( player ) )
|
||||
{
|
||||
player.isDefusing = false;
|
||||
player.isPlanting = false;
|
||||
}
|
||||
|
||||
if ( self maps\mp\gametypes\_gameobjects::isFriendlyTeam( player.pers["team"] ) )
|
||||
{
|
||||
if ( isDefined( level.sdBombModel ) && !result )
|
||||
{
|
||||
level.sdBombModel show();
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if ( level.multibomb && !result )
|
||||
{
|
||||
for ( i = 0; i < self.otherBombZones.size; i++ )
|
||||
{
|
||||
//self.otherBombZones[i] maps\mp\gametypes\_gameobjects::enableObject();
|
||||
self.otherBombZones[i] maps\mp\gametypes\_gameobjects::allowUse( "enemy" );
|
||||
self.otherBombZones[i] maps\mp\gametypes\_gameobjects::setVisibleTeam( "any" );
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
onCantUse( player )
|
||||
{
|
||||
player iPrintLnBold( &"MP_CANT_PLANT_WITHOUT_BOMB" );
|
||||
}
|
||||
|
||||
onUsePlantObject( player )
|
||||
{
|
||||
// planted the bomb
|
||||
if ( !self maps\mp\gametypes\_gameobjects::isFriendlyTeam( player.pers["team"] ) )
|
||||
{
|
||||
level thread bombPlanted( self, player );
|
||||
//player logString( "bomb planted: " + self.label );
|
||||
|
||||
// disable all bomb zones except this one
|
||||
for ( index = 0; index < level.bombZones.size; index++ )
|
||||
{
|
||||
if ( level.bombZones[index] == self )
|
||||
continue;
|
||||
|
||||
level.bombZones[index] maps\mp\gametypes\_gameobjects::disableObject();
|
||||
}
|
||||
|
||||
player playSound( "mp_bomb_plant" );
|
||||
player notify ( "bomb_planted" );
|
||||
|
||||
//if ( !level.hardcoreMode )
|
||||
// iPrintLn( &"MP_EXPLOSIVES_PLANTED_BY", player );
|
||||
|
||||
leaderDialog( "bomb_planted" );
|
||||
|
||||
level thread teamPlayerCardSplash( "callout_bombplanted", player );
|
||||
|
||||
level.bombOwner = player;
|
||||
player thread maps\mp\gametypes\_hud_message::SplashNotify( "plant", maps\mp\gametypes\_rank::getScoreInfoValue( "plant" ) );
|
||||
player thread maps\mp\gametypes\_rank::giveRankXP( "plant" );
|
||||
player.bombPlantedTime = getTime();
|
||||
maps\mp\gametypes\_gamescore::givePlayerScore( "plant", player );
|
||||
player incPlayerStat( "bombsplanted", 1 );
|
||||
player thread maps\mp\_matchdata::logGameEvent( "plant", player.origin );
|
||||
}
|
||||
}
|
||||
|
||||
onUseDefuseObject( player )
|
||||
{
|
||||
player notify ( "bomb_defused" );
|
||||
//player logString( "bomb defused: " + self.label );
|
||||
level thread bombDefused();
|
||||
|
||||
// disable this bomb zone
|
||||
self maps\mp\gametypes\_gameobjects::disableObject();
|
||||
|
||||
//if ( !level.hardcoreMode )
|
||||
// iPrintLn( &"MP_EXPLOSIVES_DEFUSED_BY", player );
|
||||
leaderDialog( "bomb_defused" );
|
||||
|
||||
level thread teamPlayerCardSplash( "callout_bombdefused", player );
|
||||
|
||||
if ( isDefined( level.bombOwner ) && ( level.bombOwner.bombPlantedTime + 3000 + (level.defuseTime*1000) ) > getTime() && isReallyAlive( level.bombOwner ) )
|
||||
player thread maps\mp\gametypes\_hud_message::SplashNotify( "ninja_defuse", ( maps\mp\gametypes\_rank::getScoreInfoValue( "defuse" ) ) );
|
||||
else
|
||||
player thread maps\mp\gametypes\_hud_message::SplashNotify( "defuse", maps\mp\gametypes\_rank::getScoreInfoValue( "defuse" ) );
|
||||
|
||||
player thread maps\mp\gametypes\_rank::giveRankXP( "defuse" );
|
||||
maps\mp\gametypes\_gamescore::givePlayerScore( "defuse", player );
|
||||
player incPlayerStat( "bombsdefused", 1 );
|
||||
player thread maps\mp\_matchdata::logGameEvent( "defuse", player.origin );
|
||||
}
|
||||
|
||||
|
||||
onDrop( player )
|
||||
{
|
||||
self maps\mp\gametypes\_gameobjects::set2DIcon( "friendly", "waypoint_bomb" );
|
||||
self maps\mp\gametypes\_gameobjects::set3DIcon( "friendly", "waypoint_bomb" );
|
||||
|
||||
maps\mp\_utility::playSoundOnPlayers( game["bomb_dropped_sound"], game["attackers"] );
|
||||
}
|
||||
|
||||
|
||||
onPickup( player )
|
||||
{
|
||||
player.isBombCarrier = true;
|
||||
player incPlayerStat( "bombscarried", 1 );
|
||||
player thread maps\mp\_matchdata::logGameEvent( "pickup", player.origin );
|
||||
|
||||
self maps\mp\gametypes\_gameobjects::set2DIcon( "friendly", "waypoint_escort" );
|
||||
self maps\mp\gametypes\_gameobjects::set3DIcon( "friendly", "waypoint_escort" );
|
||||
|
||||
if ( !level.bombDefused )
|
||||
{
|
||||
teamPlayerCardSplash( "callout_bombtaken", player, player.team );
|
||||
leaderDialog( "bomb_taken", player.pers["team"] );
|
||||
}
|
||||
maps\mp\_utility::playSoundOnPlayers( game["bomb_recovered_sound"], game["attackers"] );
|
||||
}
|
||||
|
||||
|
||||
onReset()
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
bombPlanted( destroyedObj, player )
|
||||
{
|
||||
maps\mp\gametypes\_gamelogic::pauseTimer();
|
||||
level.bombPlanted = true;
|
||||
|
||||
destroyedObj.visuals[0] thread maps\mp\gametypes\_gamelogic::playTickingSound();
|
||||
level.tickingObject = destroyedObj.visuals[0];
|
||||
|
||||
level.timeLimitOverride = true;
|
||||
setGameEndTime( int( gettime() + (level.bombTimer * 1000) ) );
|
||||
setDvar( "ui_bomb_timer", 1 );
|
||||
|
||||
if ( !level.multiBomb )
|
||||
{
|
||||
level.sdBomb maps\mp\gametypes\_gameobjects::allowCarry( "none" );
|
||||
level.sdBomb maps\mp\gametypes\_gameobjects::setVisibleTeam( "none" );
|
||||
level.sdBomb maps\mp\gametypes\_gameobjects::setDropped();
|
||||
level.sdBombModel = level.sdBomb.visuals[0];
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
for ( index = 0; index < level.players.size; index++ )
|
||||
{
|
||||
if ( isDefined( level.players[index].carryIcon ) )
|
||||
level.players[index].carryIcon destroyElem();
|
||||
}
|
||||
|
||||
trace = bulletTrace( player.origin + (0,0,20), player.origin - (0,0,2000), false, player );
|
||||
|
||||
tempAngle = randomfloat( 360 );
|
||||
forward = (cos( tempAngle ), sin( tempAngle ), 0);
|
||||
forward = vectornormalize( forward - common_scripts\utility::vector_multiply( trace["normal"], vectordot( forward, trace["normal"] ) ) );
|
||||
dropAngles = vectortoangles( forward );
|
||||
|
||||
level.sdBombModel = spawn( "script_model", trace["position"] );
|
||||
level.sdBombModel.angles = dropAngles;
|
||||
level.sdBombModel setModel( "prop_suitcase_bomb" );
|
||||
}
|
||||
destroyedObj maps\mp\gametypes\_gameobjects::allowUse( "none" );
|
||||
destroyedObj maps\mp\gametypes\_gameobjects::setVisibleTeam( "none" );
|
||||
/*
|
||||
destroyedObj maps\mp\gametypes\_gameobjects::set2DIcon( "friendly", undefined );
|
||||
destroyedObj maps\mp\gametypes\_gameobjects::set2DIcon( "enemy", undefined );
|
||||
destroyedObj maps\mp\gametypes\_gameobjects::set3DIcon( "friendly", undefined );
|
||||
destroyedObj maps\mp\gametypes\_gameobjects::set3DIcon( "enemy", undefined );
|
||||
*/
|
||||
label = destroyedObj maps\mp\gametypes\_gameobjects::getLabel();
|
||||
|
||||
// create a new object to defuse with.
|
||||
trigger = destroyedObj.bombDefuseTrig;
|
||||
trigger.origin = level.sdBombModel.origin;
|
||||
visuals = [];
|
||||
defuseObject = maps\mp\gametypes\_gameobjects::createUseObject( game["defenders"], trigger, visuals, (0,0,32) );
|
||||
defuseObject maps\mp\gametypes\_gameobjects::allowUse( "friendly" );
|
||||
defuseObject maps\mp\gametypes\_gameobjects::setUseTime( level.defuseTime );
|
||||
defuseObject maps\mp\gametypes\_gameobjects::setUseText( &"MP_DEFUSING_EXPLOSIVE" );
|
||||
defuseObject maps\mp\gametypes\_gameobjects::setUseHintText( &"PLATFORM_HOLD_TO_DEFUSE_EXPLOSIVES" );
|
||||
defuseObject maps\mp\gametypes\_gameobjects::setVisibleTeam( "any" );
|
||||
defuseObject maps\mp\gametypes\_gameobjects::set2DIcon( "friendly", "waypoint_defuse" + label );
|
||||
defuseObject maps\mp\gametypes\_gameobjects::set2DIcon( "enemy", "waypoint_defend" + label );
|
||||
defuseObject maps\mp\gametypes\_gameobjects::set3DIcon( "friendly", "waypoint_defuse" + label );
|
||||
defuseObject maps\mp\gametypes\_gameobjects::set3DIcon( "enemy", "waypoint_defend" + label );
|
||||
defuseObject.label = label;
|
||||
defuseObject.onBeginUse = ::onBeginUse;
|
||||
defuseObject.onEndUse = ::onEndUse;
|
||||
defuseObject.onUse = ::onUseDefuseObject;
|
||||
defuseObject.useWeapon = "briefcase_bomb_defuse_mp";
|
||||
|
||||
BombTimerWait();
|
||||
setDvar( "ui_bomb_timer", 0 );
|
||||
|
||||
destroyedObj.visuals[0] maps\mp\gametypes\_gamelogic::stopTickingSound();
|
||||
|
||||
if ( level.gameEnded || level.bombDefused )
|
||||
return;
|
||||
|
||||
level.bombExploded = true;
|
||||
|
||||
explosionOrigin = level.sdBombModel.origin;
|
||||
level.sdBombModel hide();
|
||||
|
||||
if ( isdefined( player ) )
|
||||
{
|
||||
destroyedObj.visuals[0] radiusDamage( explosionOrigin, 512, 200, 20, player );
|
||||
player incPlayerStat( "targetsdestroyed", 1 );
|
||||
}
|
||||
else
|
||||
destroyedObj.visuals[0] radiusDamage( explosionOrigin, 512, 200, 20 );
|
||||
|
||||
rot = randomfloat(360);
|
||||
explosionEffect = spawnFx( level._effect["bombexplosion"], explosionOrigin + (0,0,50), (0,0,1), (cos(rot),sin(rot),0) );
|
||||
triggerFx( explosionEffect );
|
||||
|
||||
PlayRumbleOnPosition( "grenade_rumble", explosionOrigin );
|
||||
earthquake( 0.75, 2.0, explosionOrigin, 2000 );
|
||||
|
||||
thread playSoundinSpace( "exp_suitcase_bomb_main", explosionOrigin );
|
||||
|
||||
sabBomb = getEnt( "sab_bomb", "targetname" );
|
||||
sabBomb Delete();
|
||||
|
||||
if ( isDefined( destroyedObj.exploderIndex ) )
|
||||
exploder( destroyedObj.exploderIndex );
|
||||
|
||||
for ( index = 0; index < level.bombZones.size; index++ )
|
||||
level.bombZones[index] maps\mp\gametypes\_gameobjects::disableObject();
|
||||
defuseObject maps\mp\gametypes\_gameobjects::disableObject();
|
||||
|
||||
setGameEndTime( 0 );
|
||||
|
||||
wait 3;
|
||||
|
||||
sd_endGame( game["attackers"], game["strings"]["target_destroyed"] );
|
||||
}
|
||||
|
||||
BombTimerWait()
|
||||
{
|
||||
level endon( "game_ended" );
|
||||
level endon( "bomb_defused" );
|
||||
|
||||
maps\mp\gametypes\_hostmigration::waitLongDurationWithGameEndTimeUpdate( level.bombTimer );
|
||||
}
|
||||
|
||||
|
||||
bombDefused()
|
||||
{
|
||||
level.tickingObject maps\mp\gametypes\_gamelogic::stopTickingSound();
|
||||
level.bombDefused = true;
|
||||
setDvar( "ui_bomb_timer", 0 );
|
||||
|
||||
level notify("bomb_defused");
|
||||
|
||||
wait 1.5;
|
||||
|
||||
setGameEndTime( 0 );
|
||||
|
||||
sd_endGame( game["defenders"], game["strings"]["bomb_defused"] );
|
||||
}
|
||||
|
||||
initGametypeAwards()
|
||||
{
|
||||
maps\mp\_awards::initStatAward( "targetsdestroyed", 0, maps\mp\_awards::highestWins );
|
||||
maps\mp\_awards::initStatAward( "bombsplanted", 0, maps\mp\_awards::highestWins );
|
||||
maps\mp\_awards::initStatAward( "bombsdefused", 0, maps\mp\_awards::highestWins );
|
||||
maps\mp\_awards::initStatAward( "bombcarrierkills", 0, maps\mp\_awards::highestWins );
|
||||
maps\mp\_awards::initStatAward( "bombscarried", 0, maps\mp\_awards::highestWins );
|
||||
maps\mp\_awards::initStatAward( "killsasbombcarrier", 0, maps\mp\_awards::highestWins );
|
||||
}
|
||||
@@ -0,0 +1,179 @@
|
||||
#include maps\mp\_utility;
|
||||
#include maps\mp\gametypes\_hud_util;
|
||||
/*
|
||||
War
|
||||
Objective: Score points for your team by eliminating players on the opposing team
|
||||
Map ends: When one team reaches the score limit, or time limit is reached
|
||||
Respawning: No wait / Near teammates
|
||||
|
||||
Level requirementss
|
||||
------------------
|
||||
Spawnpoints:
|
||||
classname mp_tdm_spawn
|
||||
All players spawn from these. The spawnpoint chosen is dependent on the current locations of teammates and enemies
|
||||
at the time of spawn. Players generally spawn behind their teammates relative to the direction of enemies.
|
||||
|
||||
Spectator Spawnpoints:
|
||||
classname mp_global_intermission
|
||||
Spectators spawn from these and intermission is viewed from these positions.
|
||||
Atleast one is required, any more and they are randomly chosen between.
|
||||
*/
|
||||
|
||||
/*QUAKED mp_tdm_spawn (0.0 0.0 1.0) (-16 -16 0) (16 16 72)
|
||||
Players spawn away from enemies and near their team at one of these positions.*/
|
||||
|
||||
/*QUAKED mp_tdm_spawn_axis_start (0.5 0.0 1.0) (-16 -16 0) (16 16 72)
|
||||
Axis players spawn away from enemies and near their team at one of these positions at the start of a round.*/
|
||||
|
||||
/*QUAKED mp_tdm_spawn_allies_start (0.0 0.5 1.0) (-16 -16 0) (16 16 72)
|
||||
Allied players spawn away from enemies and near their team at one of these positions at the start of a round.*/
|
||||
|
||||
main()
|
||||
{
|
||||
if(getdvar("mapname") == "mp_background")
|
||||
return;
|
||||
|
||||
maps\mp\gametypes\_globallogic::init();
|
||||
maps\mp\gametypes\_callbacksetup::SetupCallbacks();
|
||||
maps\mp\gametypes\_globallogic::SetupCallbacks();
|
||||
|
||||
registerRoundSwitchDvar( level.gameType, 0, 0, 9 );
|
||||
registerTimeLimitDvar( level.gameType, 10, 0, 1440 );
|
||||
registerScoreLimitDvar( level.gameType, 500, 0, 5000 );
|
||||
registerRoundLimitDvar( level.gameType, 1, 0, 10 );
|
||||
registerWinLimitDvar( level.gameType, 1, 0, 10 );
|
||||
registerRoundSwitchDvar( level.gameType, 3, 0, 30 );
|
||||
registerNumLivesDvar( level.gameType, 0, 0, 10 );
|
||||
registerHalfTimeDvar( level.gameType, 0, 0, 1 );
|
||||
|
||||
level.teamBased = true;
|
||||
level.onStartGameType = ::onStartGameType;
|
||||
level.getSpawnPoint = ::getSpawnPoint;
|
||||
level.onNormalDeath = ::onNormalDeath;
|
||||
//level.onTimeLimit = ::onTimeLimit; // overtime not fully supported yet
|
||||
|
||||
game["dialog"]["gametype"] = "tm_death";
|
||||
|
||||
if ( getDvarInt( "g_hardcore" ) )
|
||||
game["dialog"]["gametype"] = "hc_" + game["dialog"]["gametype"];
|
||||
else if ( getDvarInt( "camera_thirdPerson" ) )
|
||||
game["dialog"]["gametype"] = "thirdp_" + game["dialog"]["gametype"];
|
||||
else if ( getDvarInt( "scr_diehard" ) )
|
||||
game["dialog"]["gametype"] = "dh_" + game["dialog"]["gametype"];
|
||||
else if (getDvarInt( "scr_" + level.gameType + "_promode" ) )
|
||||
game["dialog"]["gametype"] = game["dialog"]["gametype"] + "_pro";
|
||||
|
||||
game["strings"]["overtime_hint"] = &"MP_FIRST_BLOOD";
|
||||
}
|
||||
|
||||
|
||||
onStartGameType()
|
||||
{
|
||||
setClientNameMode("auto_change");
|
||||
|
||||
if ( !isdefined( game["switchedsides"] ) )
|
||||
game["switchedsides"] = false;
|
||||
|
||||
if ( game["switchedsides"] )
|
||||
{
|
||||
oldAttackers = game["attackers"];
|
||||
oldDefenders = game["defenders"];
|
||||
game["attackers"] = oldDefenders;
|
||||
game["defenders"] = oldAttackers;
|
||||
}
|
||||
|
||||
setObjectiveText( "allies", &"OBJECTIVES_WAR" );
|
||||
setObjectiveText( "axis", &"OBJECTIVES_WAR" );
|
||||
|
||||
if ( level.splitscreen )
|
||||
{
|
||||
setObjectiveScoreText( "allies", &"OBJECTIVES_WAR" );
|
||||
setObjectiveScoreText( "axis", &"OBJECTIVES_WAR" );
|
||||
}
|
||||
else
|
||||
{
|
||||
setObjectiveScoreText( "allies", &"OBJECTIVES_WAR_SCORE" );
|
||||
setObjectiveScoreText( "axis", &"OBJECTIVES_WAR_SCORE" );
|
||||
}
|
||||
setObjectiveHintText( "allies", &"OBJECTIVES_WAR_HINT" );
|
||||
setObjectiveHintText( "axis", &"OBJECTIVES_WAR_HINT" );
|
||||
|
||||
level.spawnMins = ( 0, 0, 0 );
|
||||
level.spawnMaxs = ( 0, 0, 0 );
|
||||
maps\mp\gametypes\_spawnlogic::placeSpawnPoints( "mp_tdm_spawn_allies_start" );
|
||||
maps\mp\gametypes\_spawnlogic::placeSpawnPoints( "mp_tdm_spawn_axis_start" );
|
||||
maps\mp\gametypes\_spawnlogic::addSpawnPoints( "allies", "mp_tdm_spawn" );
|
||||
maps\mp\gametypes\_spawnlogic::addSpawnPoints( "axis", "mp_tdm_spawn" );
|
||||
|
||||
level.mapCenter = maps\mp\gametypes\_spawnlogic::findBoxCenter( level.spawnMins, level.spawnMaxs );
|
||||
setMapCenter( level.mapCenter );
|
||||
|
||||
allowed[0] = level.gameType;
|
||||
allowed[1] = "airdrop_pallet";
|
||||
|
||||
maps\mp\gametypes\_gameobjects::main(allowed);
|
||||
}
|
||||
|
||||
|
||||
getSpawnPoint()
|
||||
{
|
||||
spawnteam = self.pers["team"];
|
||||
if ( game["switchedsides"] )
|
||||
spawnteam = getOtherTeam( spawnteam );
|
||||
|
||||
if ( level.inGracePeriod )
|
||||
{
|
||||
if ( getDvar( "mapname" ) == "mp_shipment_long" )
|
||||
{
|
||||
spawnPoints = maps\mp\gametypes\_spawnlogic::getSpawnpointArray( "mp_cha_spawn_" + spawnteam + "_start" );
|
||||
spawnPoint = maps\mp\gametypes\_spawnlogic::getSpawnpoint_Random( spawnPoints );
|
||||
}
|
||||
else
|
||||
{
|
||||
spawnPoints = maps\mp\gametypes\_spawnlogic::getSpawnpointArray( "mp_tdm_spawn_" + spawnteam + "_start" );
|
||||
spawnPoint = maps\mp\gametypes\_spawnlogic::getSpawnpoint_Random( spawnPoints );
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
spawnPoints = maps\mp\gametypes\_spawnlogic::getTeamSpawnPoints( spawnteam );
|
||||
spawnPoint = maps\mp\gametypes\_spawnlogic::getSpawnpoint_NearTeam( spawnPoints );
|
||||
}
|
||||
|
||||
return spawnPoint;
|
||||
}
|
||||
|
||||
|
||||
onNormalDeath( victim, attacker, lifeId )
|
||||
{
|
||||
score = maps\mp\gametypes\_rank::getScoreInfoValue( "kill" );
|
||||
assert( isDefined( score ) );
|
||||
|
||||
attacker maps\mp\gametypes\_gamescore::giveTeamScoreForObjective( attacker.pers["team"], score );
|
||||
|
||||
if ( game["state"] == "postgame" && game["teamScores"][attacker.team] > game["teamScores"][level.otherTeam[attacker.team]] )
|
||||
attacker.finalKill = true;
|
||||
}
|
||||
|
||||
|
||||
onTimeLimit()
|
||||
{
|
||||
if ( game["status"] == "overtime" )
|
||||
{
|
||||
winner = "forfeit";
|
||||
}
|
||||
else if ( game["teamScores"]["allies"] == game["teamScores"]["axis"] )
|
||||
{
|
||||
winner = "overtime";
|
||||
}
|
||||
else if ( game["teamScores"]["axis"] > game["teamScores"]["allies"] )
|
||||
{
|
||||
winner = "axis";
|
||||
}
|
||||
else
|
||||
{
|
||||
winner = "allies";
|
||||
}
|
||||
|
||||
thread maps\mp\gametypes\_gamelogic::endGame( winner, game["strings"]["time_limit_reached"] );
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
// this file is autogenerated, modifying parameters is ok, other lines will be removed.
|
||||
main()
|
||||
{
|
||||
maps\co_ac130_anim::main();
|
||||
common_scripts\_destructible_types_anim_airconditioner::main();
|
||||
common_scripts\_destructible_types_anim_light_fluo_single::main();
|
||||
//common_scripts\_destructible_types_anim_lockers::main();
|
||||
//common_scripts\_destructible_types_anim_wallfan::main();
|
||||
maps\animated_models\foliage_dead_pine_lg_sway2::main();
|
||||
maps\animated_models\foliage_dead_pine_med_sway2::main();
|
||||
maps\animated_models\foliage_tree_oak_1::main();
|
||||
maps\animated_models\highrise_fencetarp_04b_wind_a::main();
|
||||
maps\animated_models\highrise_fencetarp_04b_wind_b::main();
|
||||
maps\animated_models\highrise_fencetarp_04b_wind_c::main();
|
||||
maps\animated_models\highrise_fencetarp_07b_wind_a::main();
|
||||
maps\animated_models\highrise_fencetarp_07b_wind_b::main();
|
||||
maps\animated_models\highrise_fencetarp_07b_wind_c::main();
|
||||
}
|
||||
@@ -0,0 +1,50 @@
|
||||
#include common_scripts\utility;
|
||||
|
||||
main()
|
||||
{
|
||||
|
||||
|
||||
maps\mp\_load::main();
|
||||
|
||||
|
||||
|
||||
|
||||
game[ "attackers" ] = "allies";
|
||||
game[ "defenders" ] = "axis";
|
||||
|
||||
maps\mp\_compass::setupMiniMap( "compass_map_hunted" );
|
||||
setdvar( "compassmaxrange", "4000" );
|
||||
|
||||
|
||||
array_thread( getentarray( "compassTriggers", "targetname" ), ::compass_triggers_think );
|
||||
|
||||
}
|
||||
|
||||
self_delete()
|
||||
{
|
||||
self delete();
|
||||
}
|
||||
|
||||
|
||||
compass_triggers_think()
|
||||
{
|
||||
assertex( isdefined( self.script_noteworthy ), "compassTrigger at " + self.origin + " needs to have a script_noteworthy with the name of the minimap to use" );
|
||||
while( true )
|
||||
{
|
||||
wait( 1 );
|
||||
self waittill( "trigger" );
|
||||
maps\mp\_compass::setupMiniMap( self.script_noteworthy );
|
||||
}
|
||||
}
|
||||
|
||||
createSpawnpoint( classname, origin, yaw )
|
||||
{
|
||||
spawnpoint = spawn( "script_origin", origin );
|
||||
spawnpoint.angles = (0,yaw,0);
|
||||
|
||||
if ( !isdefined( level.extraspawnpoints ) )
|
||||
level.extraspawnpoints = [];
|
||||
if ( !isdefined( level.extraspawnpoints[classname] ) )
|
||||
level.extraspawnpoints[classname] = [];
|
||||
level.extraspawnpoints[classname][ level.extraspawnpoints[classname].size ] = spawnpoint;
|
||||
}
|
||||
File diff suppressed because it is too large.
Load diff
File diff suppressed because it is too large.
Load diff
File diff suppressed because it is too large.
Load diff
File diff suppressed because it is too large.
Load diff
@@ -0,0 +1,20 @@
|
||||
main()
|
||||
{
|
||||
maps\createart\mp_bloc_art::main();
|
||||
maps\mp\mp_bloc_fx::main();
|
||||
maps\mp\_load::main();
|
||||
|
||||
maps\mp\_compass::setupMiniMap( "compass_map_mp_bloc" );
|
||||
|
||||
setdvar( "compassmaxrange", "2000" );
|
||||
|
||||
ambientPlay( "ambient_trainer_ext2" );
|
||||
|
||||
game["attackers"] = "axis";
|
||||
game["defenders"] = "allies";
|
||||
|
||||
// raise up planes to avoid them flying through buildings
|
||||
level.airstrikeHeightScale = 1.8;
|
||||
|
||||
setdvar( "r_specularcolorscale", "2" );
|
||||
}
|
||||
Loaded 100 of 705 files, more files were not shown because too many files have changed in this diff.
Show more
Reference in new issue
Block a user