mirror of
https://github.com/ineedbots/t5_bot_warfare.git
synced 2025-04-21 00:55:44 +00:00
179 lines
5.0 KiB
Plaintext
179 lines
5.0 KiB
Plaintext
#include maps\mp\_utility;
|
|
#include common_scripts\utility;
|
|
#include maps\mp\_events;
|
|
|
|
main()
|
|
{
|
|
///#
|
|
//execdevgui( "devgui_mp_duga" );
|
|
//#/
|
|
|
|
//needs to be first for create fx
|
|
maps\mp\mp_duga_fx::main();
|
|
|
|
maps\mp\_load::main();
|
|
|
|
maps\mp\mp_duga_amb::main();
|
|
|
|
// If the team nationalites change in this file,
|
|
// you must update the team nationality in the level's csc file as well!
|
|
maps\mp\gametypes\_teamset_winterspecops::level_init();
|
|
|
|
precachemodel("collision_geo_mc_8x560x190");
|
|
precachemodel("collision_geo_mc_4x52x190");
|
|
|
|
// enable new spawning system
|
|
maps\mp\gametypes\_spawning::level_use_unified_spawning(true);
|
|
|
|
if ( GetDvarInt( #"xblive_wagermatch" ) == 1 )
|
|
{
|
|
maps\mp\_compass::setupMiniMap("compass_map_mp_duga_wager");
|
|
}
|
|
else
|
|
{
|
|
maps\mp\_compass::setupMiniMap("compass_map_mp_duga");
|
|
}
|
|
|
|
//Increase sample size so as to resolve lighting issue
|
|
SetDvar("sm_sunSampleSizeNear", ".5" );
|
|
|
|
//Sets it up so my events go off at times based on the game time and score limit
|
|
//level thread transformer_timer_init();
|
|
///#
|
|
//level thread devgui_duga();
|
|
//#/
|
|
|
|
glasses = GetStructArray( "glass_shatter_on_spawn", "targetname" );
|
|
|
|
for ( i = 0; i < glasses.size; i++ )
|
|
{
|
|
RadiusDamage( glasses[i].origin, 64, 101, 100 );
|
|
}
|
|
|
|
// weapon collision to keep grenades from falling out of the map through a gap between the terrain and the wall.
|
|
spawncollision("collision_geo_mc_8x560x190","collider",(462, -3840, -165), (0, 0, 0));
|
|
spawncollision("collision_geo_mc_4x52x190","collider",(184, -3870, -164), (0, 270, 0));
|
|
spawncollision("collision_geo_mc_4x52x190","collider",(184, -3922, -164), (0, 270, 0));
|
|
spawncollision("collision_geo_mc_4x52x190","collider",(188, -3922, -169), (0, 270, 0));
|
|
}
|
|
|
|
//Sets it up so events can happen based on match time and score changes
|
|
transformer_timer_init()
|
|
{
|
|
first_transformer_structs = getstructarray("transformer_struct","targetname");
|
|
|
|
level._transformer_array = [];
|
|
|
|
for( i=0; i < first_transformer_structs.size; i++)
|
|
{
|
|
current_struct = first_transformer_structs[i];
|
|
level._transformer_array = add_to_array(level._transformer_array, current_struct);
|
|
|
|
while(IsDefined(current_struct.target))
|
|
{
|
|
current_struct = getstruct(current_struct.target, "targetname");
|
|
level._transformer_array = add_to_array(level._transformer_array, current_struct);
|
|
}
|
|
}
|
|
|
|
level waittill( "prematch_over" );
|
|
|
|
|
|
if( (IsDefined(level.timelimit)) && (level.timelimit > 0))
|
|
{
|
|
//Electric transformers explode in pairs. The number of pairs is critical to determine how many 'events' we need.
|
|
transformer_pairs = level._transformer_array.size / 2;
|
|
total_seconds = level.timelimit * 60;
|
|
//We want to space out the transformer pair explosion evenly thourought the match
|
|
interval = total_seconds / transformer_pairs;
|
|
|
|
//This creates events based on how many we need. The event sends a notify to duga.csc to set off explosions.
|
|
for( i = total_seconds; i >= interval; i -= interval )
|
|
{
|
|
println( "Seconds: " + i );
|
|
add_timed_event( int( i ), undefined, "go" );
|
|
}
|
|
|
|
//This event sets off with a tenth of a second left in the game. The duga.csc waits for the notify.
|
|
add_timed_event( .1, undefined, "fin" );
|
|
}
|
|
//add_score_event( Int(level.scorelimit * .99), undefined, "final_boom" );
|
|
//add_score_event( Int(level.scorelimit * 0.1),undefined, "next_boom" );
|
|
//add_score_event( Int(level.scorelimit * 0.2),undefined, "next_boom" );
|
|
}
|
|
|
|
devgui_duga( cmd )
|
|
{
|
|
|
|
for ( ;; )
|
|
{
|
|
wait( 0.5 );
|
|
|
|
devgui_string = GetDvar( #"devgui_notify" );
|
|
|
|
switch( devgui_string )
|
|
{
|
|
case "":
|
|
break;
|
|
|
|
case "transformer_explode1":
|
|
level ClientNotify ("transformer_explode");
|
|
break;
|
|
|
|
case "transformer_explode2":
|
|
level ClientNotify ("transformer_explode");
|
|
break;
|
|
|
|
case "transformer_explode3":
|
|
level ClientNotify ("transformer_explode");
|
|
break;
|
|
|
|
case "transformer_explode4":
|
|
level ClientNotify ("transformer_explode");
|
|
break;
|
|
|
|
case "transformer_explode5":
|
|
level ClientNotify ("transformer_explode");
|
|
break;
|
|
|
|
case "transformer_explode6":
|
|
level ClientNotify ("transformer_explode");
|
|
break;
|
|
|
|
case "transformer_explode7":
|
|
level ClientNotify ("transformer_explode");
|
|
break;
|
|
|
|
case "transformer_explode8":
|
|
level ClientNotify ("transformer_explode");
|
|
break;
|
|
|
|
case "transformer_explode9":
|
|
level ClientNotify ("transformer_explode");
|
|
break;
|
|
|
|
case "transformer_explode10":
|
|
level ClientNotify ("transformer_explode");
|
|
break;
|
|
|
|
case "transformer_explode11":
|
|
level ClientNotify ("transformer_explode");
|
|
break;
|
|
|
|
case "transformer_explode12":
|
|
level ClientNotify ("transformer_explode");
|
|
break;
|
|
|
|
//case "final_explode":
|
|
//transformer_array[5] notify ("final_explode");
|
|
//break;
|
|
|
|
default:
|
|
level notify( devgui_string );
|
|
break;
|
|
}
|
|
|
|
SetDvar( "devgui_notify", "" );
|
|
}
|
|
}
|