//==========================================================================================
//
//	necrology_b2fix.gm
//
//	Who  	When		What
//------------------------------------------------------------------------------------------
//	^4Tardis	08 June 2010	Initial Script
//
//==========================================================================================
//

global Map =
{
	Ammo_Cabinet_north_ammocabinet = "AMMOCAB_north_ammocabinet",
	Health_Cabinet_north_healthcabinet = "HEALTHCAB_north_healthcabinet",
	Ammo_Cabinet_south_ammocabinet = "AMMOCAB_south_ammocabinet",
	Health_Cabinet_south_healthcabinet = "HEALTHCAB_south_healthcabinet",
	Flag_allies_gold_crate = "FLAG_allies_gold_crate",
	Flag_allies_gold_crate_1 = "FLAG_allies_gold_crate_1",
	Flag_allies_gold_crate_2 = "FLAG_allies_gold_crate_2",
	Flag_allies_gold_crate_3 = "FLAG_allies_gold_crate_3",
	Flag_allies_gold_crate_4 = "FLAG_allies_gold_crate_4",
	Flag_allies_gold_crate_5 = "FLAG_allies_gold_crate_5",
	Flag_allies_gold_crate_6 = "FLAG_allies_gold_crate_6",
	Flag_allies_gold_crate_7 = "FLAG_allies_gold_crate_7",
	Flag_axis_gold_crate = "FLAG_axis_gold_crate",
	Flag_axis_gold_crate_1 = "FLAG_axis_gold_crate_1",
	Flag_axis_gold_crate_2 = "FLAG_axis_gold_crate_2",
	Flag_axis_gold_crate_3 = "FLAG_axis_gold_crate_3",
	Flag_axis_gold_crate_4 = "FLAG_axis_gold_crate_4",
	Flag_axis_gold_crate_5 = "FLAG_axis_gold_crate_5",
	Flag_axis_gold_crate_6 = "FLAG_axis_gold_crate_6",
	Flag_axis_gold_crate_7 = "FLAG_axis_gold_crate_7",
	CAPPOINT_FAKE_Allies_A = "CAPPOINT_FAKE_Allies_A",
	CAPPOINT_FAKE_Allies_B = "CAPPOINT_FAKE_Allies_B",
	CAPPOINT_FAKE_Allies_C = "CAPPOINT_FAKE_Allies_C",
	CAPPOINT_FAKE_Allies_D = "CAPPOINT_FAKE_Allies_D",
	CAPPOINT_FAKE_Allies_E = "CAPPOINT_FAKE_Allies_E",
	CAPPOINT_FAKE_Allies_F = "CAPPOINT_FAKE_Allies_F",
	CAPPOINT_FAKE_Allies_G = "CAPPOINT_FAKE_Allies_G",
	CAPPOINT_FAKE_Allies_H = "CAPPOINT_FAKE_Allies_H",
	CAPPOINT_FAKE_Axis_A = "CAPPOINT_FAKE_Axis_A",
	CAPPOINT_FAKE_Axis_B = "CAPPOINT_FAKE_Axis_B",
	CAPPOINT_FAKE_Axis_C = "CAPPOINT_FAKE_Axis_C",
	CAPPOINT_FAKE_Axis_D = "CAPPOINT_FAKE_Axis_D",
	CAPPOINT_FAKE_Axis_E = "CAPPOINT_FAKE_Axis_E",
	CAPPOINT_FAKE_Axis_F = "CAPPOINT_FAKE_Axis_F",
	CAPPOINT_FAKE_Axis_G = "CAPPOINT_FAKE_Axis_G",
	CAPPOINT_FAKE_Axis_H = "CAPPOINT_FAKE_Axis_H",
	Cappoint_ALLIES = "CAPPOINT_ALLIES",
	Cappoint_AXIS = "CAPPOINT_AXIS",
	Build_Soul_Resurector = "BUILD_Soul_Resurector",
	Plant_Soul_Resurector = "PLANT_Soul_Resurector",
	Soul_Resurector_Dyno = 0,
	
	Allies_Soul_Resurector_Built = function( trigger )
	{
         SetAvailableMapGoals(TEAM.ALLIES, true, "CAPPOINT_ALLIES" );
	 SetAvailableMapGoals( TEAM.ALLIES, false, "CAPPOINT_FAKE_Allies.*" );
	 SetAvailableMapGoals( TEAM.ALLIES, false, "CAPPOINT_FAKE_Axis.*" );
	 
		Util.MapDebugPrint( "Allies_Soul_Resurector_Built" );
	},
	
	Allied_Soul_Resurector_Planted = function( trigger )
	{
		if ( TestMap )
			{ return; }

		Map.Soul_Resurector_Dyno += 1;
		Util.MapDebugPrint( "Allies_Soul_Resurector_Planted" );
	},
	
	Allied_Soul_Resurector_Defused = function( trigger )
	{
		if ( TestMap )
			{ return; }

		Map.Soul_Resurector_Dyno -= 1;
		Util.MapDebugUtil.MapDebugPrint( "Allies_Soul_Resurector_Defused" );
	},
	
	Allies_Soul_Resurector_Destroyed = function( trigger )
	{
         SetAvailableMapGoals( TEAM.ALLIES, true, "CAPPOINT_FAKE_Allies.*" );
	 SetAvailableMapGoals( TEAM.ALLIES, false, "CAPPOINT_FAKE_Axis.*" );
	 SetAvailableMapGoals( TEAM.ALLIES, false, "CAPPOINT_ALLIES" );
		Util.MapDebugPrint( "Allies_Soul_Resurector_Destroyed" );
	},
 
	Axis_Soul_Resurector_Built = function( trigger )
	{
	 SetAvailableMapGoals( TEAM.AXIS, true, "CAPPOINT_AXIS" );
         SetAvailableMapGoals( TEAM.AXIS, false, "CAPPOINT_FAKE_Axis.*" );
	 SetAvailableMapGoals( TEAM.AXIS, false, "CAPPOINT_FAKE_Allies.*" );
	 
		Util.MapDebugPrint( "Axis_Soul_Resurector_Built" );
	},
	
	Axis_Soul_Resurector_Planted = function( trigger )
	{
		if ( TestMap )
			{ return; }

		Map.Soul_Resurector_Dyno += 1;
		Util.MapDebugPrint( "Axis_Soul_Resurector_Planted" );
	},
	
	Axis_Soul_Resurector_Defused = function( trigger )
	{
		if ( TestMap )
			{ return; }

		Map.Soul_Resurector_Dyno -= 1;
		Util.MapDebugUtil.MapDebugPrint( "Axis_Soul_Resurector_Defused" );
	},
	
	Axis_Soul_Resurector_Destroyed = function( trigger )
	{
         SetAvailableMapGoals( TEAM.AXIS, true, "CAPPOINT_FAKE_Axis.*" );
	 SetAvailableMapGoals( TEAM.AXIS, false, "CAPPOINT_FAKE_Allies.*" );
	 SetAvailableMapGoals( TEAM.AXIS, false, "CAPPOINT_AXIS" );
	 
		Util.MapDebugPrint( "Axis_Soul_Resurector_Destroyed" );
	},
 
	allies_gold_crate_Taken = function( trigger )
	{
		if ( TestMap )
			{ return; }

		Util.MapDebugPrint( "allies_gold_crate_Taken" );
	},

	axis_gold_crate_Taken = function( trigger )
	{
		if ( TestMap )
			{ return; }

		Util.MapDebugPrint( "axis_gold_crate_Taken" );
	},

	allies_gold_crate_Returned = function( trigger )
	{
		if ( TestMap )
			{ return; }

		Util.MapDebugPrint( "allies_gold_crate_Returned" );
	},

	allies_gold_crate_1_Returned = function( trigger )
	{
		if ( TestMap )
			{ return; }

		Util.MapDebugPrint( "allies_gold_crate_1_Returned" );
	},

	allies_gold_crate_2_Returned = function( trigger )
	{
		if ( TestMap )
			{ return; }

		Util.MapDebugPrint( "allies_gold_crate_2_Returned" );
	},

	allies_gold_crate_3_Returned = function( trigger )
	{
		if ( TestMap )
			{ return; }

		Util.MapDebugPrint( "allies_gold_crate_3_Returned" );
	},

	allies_gold_crate_4_Returned = function( trigger )
	{
		if ( TestMap )
			{ return; }

		Util.MapDebugPrint( "allies_gold_crate_4_Returned" );
	},

	allies_gold_crate_5_Returned = function( trigger )
	{
		if ( TestMap )
			{ return; }

		Util.MapDebugPrint( "allies_gold_crate_5_Returned" );
	},

	allies_gold_crate_6_Returned = function( trigger )
	{
		if ( TestMap )
			{ return; }

		Util.MapDebugPrint( "allies_gold_crate_6_Returned" );
	},

	allies_gold_crate_7_Returned = function( trigger )
	{
		if ( TestMap )
			{ return; }

		Util.MapDebugPrint( "allies_gold_crate_7_Returned" );
	},

	axis_gold_crate_Returned = function( trigger )
	{
		if ( TestMap )
			{ return; }

		Util.MapDebugPrint( "axis_gold_crate_Returned" );
	},

	axis_gold_crate_1_Returned = function( trigger )
	{
		if ( TestMap )
			{ return; }

		Util.MapDebugPrint( "axis_gold_crate_1_Returned" );
	},

	axis_gold_crate_2_Returned = function( trigger )
	{
		if ( TestMap )
			{ return; }

		Util.MapDebugPrint( "axis_gold_crate_2_Returned" );
	},

	axis_gold_crate_3_Returned = function( trigger )
	{
		if ( TestMap )
			{ return; }

		Util.MapDebugPrint( "axis_gold_crate_3_Returned" );
	},

	axis_gold_crate_4_Returned = function( trigger )
	{
		if ( TestMap )
			{ return; }

		Util.MapDebugPrint( "axis_gold_crate_4_Returned" );
	},

	axis_gold_crate_5_Returned = function( trigger )
	{
		if ( TestMap )
			{ return; }

		Util.MapDebugPrint( "axis_gold_crate_5_Returned" );
	},

	axis_gold_crate_6_Returned = function( trigger )
	{
		if ( TestMap )
			{ return; }

		Util.MapDebugPrint( "axis_gold_crate_6_Returned" );
	},

	axis_gold_crate_7_Returned = function( trigger )
	{
		if ( TestMap )
			{ return; }

		Util.MapDebugPrint( "axis_gold_crate_7_Returned" );
	},

	allies_gold_crate_Secured = function( trigger )
	{
		if ( TestMap )
			{ return; }

		Util.MapDebugPrint( "allies_gold_crate_Secured" );
	},

	allies_gold_crate_1_Secured = function( trigger )
	{
		if ( TestMap )
			{ return; }

		Util.MapDebugPrint( "allies_gold_crate_1_Secured" );
	},

	allies_gold_crate_2_Secured = function( trigger )
	{
		if ( TestMap )
			{ return; }

		Util.MapDebugPrint( "allies_gold_crate_2_Secured" );
	},

	allies_gold_crate_3_Secured = function( trigger )
	{
		if ( TestMap )
			{ return; }

		Util.MapDebugPrint( "allies_gold_crate_3_Secured" );
	},

	allies_gold_crate_4_Secured = function( trigger )
	{
		if ( TestMap )
			{ return; }

		Util.MapDebugPrint( "allies_gold_crate_4_Secured" );
	},

	allies_gold_crate_5_Secured = function( trigger )
	{
		if ( TestMap )
			{ return; }

		Util.MapDebugPrint( "allies_gold_crate_5_Secured" );
	},

	allies_gold_crate_6_Secured = function( trigger )
	{
		if ( TestMap )
			{ return; }

		Util.MapDebugPrint( "allies_gold_crate_6_Secured" );
	},

	allies_gold_crate_7_Secured = function( trigger )
	{
		if ( TestMap )
			{ return; }

		Util.MapDebugPrint( "allies_gold_crate_7_Secured" );
	},

	axis_gold_crate_Secured = function( trigger )
	{
		if ( TestMap )
			{ return; }

		Util.MapDebugPrint( "axis_gold_crate_Secured" );
	},

	axis_gold_crate_1_Secured = function( trigger )
	{
		if ( TestMap )
			{ return; }

		Util.MapDebugPrint( "axis_gold_crate_1_Secured" );
	},

	axis_gold_crate_2_Secured = function( trigger )
	{
		if ( TestMap )
			{ return; }

		Util.MapDebugPrint( "axis_gold_crate_2_Secured" );
	},

	axis_gold_crate_3_Secured = function( trigger )
	{
		if ( TestMap )
			{ return; }

		Util.MapDebugPrint( "axis_gold_crate_3_Secured" );
	},

	axis_gold_crate_4_Secured = function( trigger )
	{
		if ( TestMap )
			{ return; }

		Util.MapDebugPrint( "axis_gold_crate_4_Secured" );
	},

	axis_gold_crate_5_Secured = function( trigger )
	{
		if ( TestMap )
			{ return; }

		Util.MapDebugPrint( "axis_gold_crate_5_Secured" );
	},

	axis_gold_crate_6_Secured = function( trigger )
	{
		if ( TestMap )
			{ return; }

		Util.MapDebugPrint( "axis_gold_crate_6_Secured" );
	},

	axis_gold_crate_7_Secured = function( trigger )
	{
		if ( TestMap )
			{ return; }

		Util.MapDebugPrint( "axis_gold_crate_7_Secured" );
	},
	
	
	ALLIES_Captured = function( trigger )
	{
		if ( TestMap )
			{ return; }

		Util.MapDebugPrint( "ALLIES_Captured" );
	},

	AXIS_Captured = function( trigger )
	{
		if ( TestMap )
			{ return; }

		Util.MapDebugPrint( "AXIS_Captured" );
	},


};

global OnMapLoad = function()
{
	if ( TestMapOn )
		{ Util.AutoTestMap(); }

// Register callback functions
	OnTrigger( "^4Allies activated the Resurector, Allied crypt door is open !", Map.Allies_Soul_Resurector_Built );
	OnTrigger( "^1Axis desactived the Resurector, Allied crypt door is closed !", Map.Allies_Soul_Resurector_Destroyed );
	OnTrigger( "^1Axis activated the Resurector, Axis crypt door is open !", Map.Axis_Soul_Resurector_Built );
	OnTrigger( "^4Allies desactived the Resurector, Axis crypt door is closed !", Map.Axis_Soul_Resurector_Destroyed );
	OnTrigger( "Allies Have Secured The Bones!", Map.ALLIES_Captured );
	OnTrigger( "Axis Have Secured The Bones!", Map.AXIS_Captured );
	OnTrigger( "Allies have stolen the first Bones!", Map.allies_gold_crate_Taken );
	OnTrigger( "Axis have stolen the Axis Bones!", Map.axis_gold_crate_Taken );
	OnTrigger( "Axis have returned the first Bones!", Map.allies_gold_crate_Returned  );
	OnTrigger( "Axis have returned the second Bones!", Map.allies_gold_crate_1_Returned );
	OnTrigger( "Axis have returned the third Bones!", Map.allies_gold_crate_2_Returned  );
	OnTrigger( "Axis have returned the forth Bones!", Map.allies_gold_crate_3_Returned  );
	OnTrigger( "Axis have returned the fifth Bones!", Map.allies_gold_crate_4_Returned  );
	OnTrigger( "Axis have returned the sixth Bones!", Map.allies_gold_crate_5_Returned  );
	OnTrigger( "Axis have returned the seventh Bones!", Map.allies_gold_crate_6_Returned  );
	OnTrigger( "Axis have returned the last Bones!", Map.allies_gold_crate_7_Returned  );
	OnTrigger( "Allies have returned the first Bones!", Map.axis_gold_crate_Returned  );
	OnTrigger( "Allies have returned the second Bones!", Map.axis_gold_crate_1_Returned  );
	OnTrigger( "Allies have returned the third Bones!", Map.axis_gold_crate_2_Returned  );
	OnTrigger( "Allies have returned the forth Bones!", Map.axis_gold_crate_3_Returned  );
	OnTrigger( "Allies have returned the fifth Bones!", Map.axis_gold_crate_4_Returned  );
	OnTrigger( "Allies have returned the sixth Bones!", Map.axis_gold_crate_5_Returned  );
	OnTrigger( "Allies have returned the seventh Bones!", Map.axis_gold_crate_6_Returned  );
	OnTrigger( "Allies have returned the last Bones!", Map.axis_gold_crate_7_Returned  );
	OnTrigger( "^4Allied has secured the first Bones!", Map.allies_gold_crate_Secured );
	OnTrigger( "^4Allied has secured the second Bones!", Map.allies_gold_crate_1_Secured );
	OnTrigger( "^4Allied has secured the third Bones!", Map.allies_gold_crate_2_Secured );
	OnTrigger( "^4Allied has secured the forth Bones!", Map.allies_gold_crate_3_Secured );
	OnTrigger( "^4Allied has secured the fifth Bones!", Map.allies_gold_crate_4_Secured );
	OnTrigger( "^4Allied has secured the sixth Bones!", Map.allies_gold_crate_5_Secured );
	OnTrigger( "^4Allied has secured the seventh Bones!", Map.allies_gold_crate_6_Secured );
	OnTrigger( "^4Allied has secured the last Bones!", Map.allies_gold_crate_7_Secured );
	OnTrigger( "^1Axis has secured the first Bones!", Map.axis_gold_crate_Secured );
	OnTrigger( "^1Axis has secured the second Bones!", Map.axis_gold_crate_1_Secured );
	OnTrigger( "^1Axis has secured the third Bones!", Map.axis_gold_crate_2_Secured );
	OnTrigger( "^1Axis has secured the forth Bones!", Map.axis_gold_crate_3_Secured );
	OnTrigger( "^1Axis has secured the fifth Bones!", Map.axis_gold_crate_4_Secured );
	OnTrigger( "^1Axis has secured the sixth Bones!", Map.axis_gold_crate_5_Secured );
	OnTrigger( "^1Axis has secured the seventh Bones!", Map.axis_gold_crate_6_Secured );
	OnTrigger( "^1Axis has secured the last Bones!", Map.axis_gold_crate_7_Secured );
//Util.SetGoalOffset	
	 Util.SetGoalOffset( 0, 60, 10, "BUILD_Soul_Resurector" );
	 Util.SetGoalOffset( 0, -60, 10, "PLANT_Soul_Resurector" );
	 
	
//Util.DisableGoal	
	 Util.DisableGoal( ".*", true ); // all but routes
	 
//SetGoalPriority	
	SetGoalPriority( "CAPPOINT_FAKE_.*", 1.0, 0, 0, true );
	 
//~SetAvailableMapGoals	 
	 SetAvailableMapGoals( TEAM.AXIS, true, "BUILD_Soul_Resurector");
	 SetAvailableMapGoals( TEAM.AXIS, true, "PLANT_Soul_Resurector");
	 SetAvailableMapGoals( TEAM.AXIS, true, "AMMOCAB_.*" );
	 SetAvailableMapGoals( TEAM.AXIS, true, "HEALTHCAB_.*" );	
	 SetAvailableMapGoals( TEAM.AXIS, true, "CAPPOINT_FAKE_Axis_.*" );
	 SetAvailableMapGoals( TEAM.AXIS, true, "FLAG_.*" );
	
	 SetAvailableMapGoals( TEAM.ALLIES, true, "BUILD_Soul_Resurector");
	 SetAvailableMapGoals( TEAM.ALLIES, true, "PLANT_Soul_Resurector");
	 SetAvailableMapGoals( TEAM.ALLIES, true, "AMMOCAB_.*" );
	 SetAvailableMapGoals( TEAM.ALLIES, true, "HEALTHCAB_.*" );	
	 SetAvailableMapGoals( TEAM.ALLIES, true, "CAPPOINT_FAKE_Allies_.*" );
	 SetAvailableMapGoals( TEAM.ALLIES, true, "FLAG_.*" );
	 
// Max users per goal
	Util.SetMaxUsers( 1, "CAPPOINT_FAKE_Allies_.*" );
	Util.SetMaxUsers( 1, "CAPPOINT_FAKE_Axis_.*" );
	Util.SetMaxUsers( 1, "FLAG_.*" );	

// Camp times
	SetMapGoalProperties( "MOBILEMG42_.*", {MinCampTime=10, MaxCampTime=60} );

//Map Routes		
		MapRoutes =
	{
		BUILD_Soul_Resurector = 
		{
			ROUTE_ALLIES_SPAWN  = 
			{
				ROUTE_Root_Allies_A  = 
				{
					ROUTE_Root_Allies_Res_A  = 
					{
					},
					ROUTE_Root_Allies_Res_B  = 
					{
					},
					ROUTE_Root_Allies_Res_C  = 
					{
					},
				},
				ROUTE_Root_Allies_B  = 
				{
					ROUTE_Root_Allies_Res_A  = 
					{
					},
					ROUTE_Root_Allies_Res_B  = 
					{
					},
					ROUTE_Root_Allies_Res_C  = 
					{
					},
				},
				ROUTE_Root_Allies_C  = 
				{
					ROUTE_Root_Allies_Res_A  = 
					{
					},
					ROUTE_Root_Allies_Res_B  = 
					{
					},
					ROUTE_Root_Allies_Res_C  = 
					{
					},
				},
				ROUTE_Root_Allies_D  = 
				{
					ROUTE_Root_Allies_TEL_A  = 
					{
						ROUTE_Root_Allies_TEL_B  = 
						{
							ROUTE_Root_Allies_Res_A  = 
							{
							},
							ROUTE_Root_Allies_Res_B  = 
							{
							},
							ROUTE_Root_Allies_Res_C  = 
							{
							},
						},
						ROUTE_Root_Allies_TEL_Exit  = 
						{
							ROUTE_Root_Allies_Res_A  = 
							{
							},
							ROUTE_Root_Allies_Res_B  = 
							{
							},
							ROUTE_Root_Allies_Res_C  = 
							{
							},
						},
					},
					ROUTE_Root_Allies_TEL_C  = 
					{
						ROUTE_Root_Allies_TEL_D  = 
						{
							ROUTE_Root_Allies_Res_A  = 
							{
							},
							ROUTE_Root_Allies_Res_B  = 
							{
							},
							ROUTE_Root_Allies_Res_C  = 
							{
							},
						},
						ROUTE_Root_Allies_TEL_Exit  = 
						{
							ROUTE_Root_Allies_Res_A  = 
							{
							},
							ROUTE_Root_Allies_Res_B  = 
							{
							},
							ROUTE_Root_Allies_Res_C  = 
							{
							},
						},
					},
				},
			},
			ROUTE_AXIS_SPAWN  = 
			{
				ROUTE_Root_Axis_A  = 
				{
					ROUTE_Root_Axis_Res_A  = 
					{
					},
					ROUTE_Root_Axis_Res_B  = 
					{
					},
					ROUTE_Root_Axis_Res_C  = 
					{
					},
				},
				ROUTE_Root_Axis_B  = 
				{
					ROUTE_Root_Axis_Res_A  = 
					{
					},
					ROUTE_Root_Axis_Res_B  = 
					{
					},
					ROUTE_Root_Axis_Res_C  = 
					{
					},
				},
				ROUTE_Root_Axis_C  = 
				{
					ROUTE_Root_Axis_Res_A  = 
					{
					},
					ROUTE_Root_Axis_Res_B  = 
					{
					},
					ROUTE_Root_Axis_Res_C  = 
					{
					},
				},
				ROUTE_Root_Axis_D  = 
				{
					ROUTE_Root_Axis_TEL_A  = 
					{
						ROUTE_Root_Axis_TEL_B  = 
						{
							ROUTE_Root_Axis_Res_A  = 
							{
							},
							ROUTE_Root_Axis_Res_B  = 
							{
							},
							ROUTE_Root_Axis_Res_C  = 
							{
							},
						},
						ROUTE_Root_Axis_TEL_Exit  = 
						{
							ROUTE_Root_Axis_Res_A  = 
							{
							},
							ROUTE_Root_Axis_Res_B  = 
							{
							},
							ROUTE_Root_Axis_Res_C  = 
							{
							},
						},
					},
					ROUTE_Root_Axis_TEL_C  = 
					{
						ROUTE_Root_Axis_TEL_D  = 
						{
							ROUTE_Root_Axis_Res_A  = 
							{
							},
							ROUTE_Root_Axis_Res_B  = 
							{
							},
							ROUTE_Root_Axis_Res_C  = 
							{
							},
						},
						ROUTE_Root_Axis_TEL_Exit  = 
						{
							ROUTE_Root_Axis_Res_A  = 
							{
							},
							ROUTE_Root_Axis_Res_B  = 
							{
							},
							ROUTE_Root_Axis_Res_C  = 
							{
							},
						},
					},
				},
			},
		},
		PLANT_Soul_Resurector = 
		{
			ROUTE_ALLIES_SPAWN  = 
			{
				ROUTE_Root_Allies_A  = 
				{
					ROUTE_Root_Allies_Res_A  = 
					{
					},
					ROUTE_Root_Allies_Res_B  = 
					{
					},
					ROUTE_Root_Allies_Res_C  = 
					{
					},
				},
				ROUTE_Root_Allies_B  = 
				{
					ROUTE_Root_Allies_Res_A  = 
					{
					},
					ROUTE_Root_Allies_Res_B  = 
					{
					},
					ROUTE_Root_Allies_Res_C  = 
					{
					},
				},
				ROUTE_Root_Allies_C  = 
				{
					ROUTE_Root_Allies_Res_A  = 
					{
					},
					ROUTE_Root_Allies_Res_B  = 
					{
					},
					ROUTE_Root_Allies_Res_C  = 
					{
					},
				},
				ROUTE_Root_Allies_D  = 
				{
					ROUTE_Root_Allies_TEL_A  = 
					{
						ROUTE_Root_Allies_TEL_B  = 
						{
							ROUTE_Root_Allies_Res_A  = 
							{
							},
							ROUTE_Root_Allies_Res_B  = 
							{
							},
							ROUTE_Root_Allies_Res_C  = 
							{
							},
						},
						ROUTE_Root_Allies_TEL_Exit  = 
						{
							ROUTE_Root_Allies_Res_A  = 
							{
							},
							ROUTE_Root_Allies_Res_B  = 
							{
							},
							ROUTE_Root_Allies_Res_C  = 
							{
							},
						},
					},
					ROUTE_Root_Allies_TEL_C  = 
					{
						ROUTE_Root_Allies_TEL_D  = 
						{
							ROUTE_Root_Allies_Res_A  = 
							{
							},
							ROUTE_Root_Allies_Res_B  = 
							{
							},
							ROUTE_Root_Allies_Res_C  = 
							{
							},
						},
						ROUTE_Root_Allies_TEL_Exit  = 
						{
							ROUTE_Root_Allies_Res_A  = 
							{
							},
							ROUTE_Root_Allies_Res_B  = 
							{
							},
							ROUTE_Root_Allies_Res_C  = 
							{
							},
						},
					},
				},
			},
			ROUTE_AXIS_SPAWN  = 
			{
				ROUTE_Root_Axis_A  = 
				{
					ROUTE_Root_Axis_Res_A  = 
					{
					},
					ROUTE_Root_Axis_Res_B  = 
					{
					},
					ROUTE_Root_Axis_Res_C  = 
					{
					},
				},
				ROUTE_Root_Axis_B  = 
				{
					ROUTE_Root_Axis_Res_A  = 
					{
					},
					ROUTE_Root_Axis_Res_B  = 
					{
					},
					ROUTE_Root_Axis_Res_C  = 
					{
					},
				},
				ROUTE_Root_Axis_C  = 
				{
					ROUTE_Root_Axis_Res_A  = 
					{
					},
					ROUTE_Root_Axis_Res_B  = 
					{
					},
					ROUTE_Root_Axis_Res_C  = 
					{
					},
				},
				ROUTE_Root_Axis_D  = 
				{
					ROUTE_Root_Axis_TEL_A  = 
					{
						ROUTE_Root_Axis_TEL_B  = 
						{
							ROUTE_Root_Axis_Res_A  = 
							{
							},
							ROUTE_Root_Axis_Res_B  = 
							{
							},
							ROUTE_Root_Axis_Res_C  = 
							{
							},
						},
						ROUTE_Root_Axis_TEL_Exit  = 
						{
							ROUTE_Root_Axis_Res_A  = 
							{
							},
							ROUTE_Root_Axis_Res_B  = 
							{
							},
							ROUTE_Root_Axis_Res_C  = 
							{
							},
						},
					},
					ROUTE_Root_Axis_TEL_C  = 
					{
						ROUTE_Root_Axis_TEL_D  = 
						{
							ROUTE_Root_Axis_Res_A  = 
							{
							},
							ROUTE_Root_Axis_Res_B  = 
							{
							},
							ROUTE_Root_Axis_Res_C  = 
							{
							},
						},
						ROUTE_Root_Axis_TEL_Exit  = 
						{
							ROUTE_Root_Axis_Res_A  = 
							{
							},
							ROUTE_Root_Axis_Res_B  = 
							{
							},
							ROUTE_Root_Axis_Res_C  = 
							{
							},
						},
					},
				},
			},
		},
		FLAG_axis_gold_crate = 
		{
			ROUTE_ALLIES_SPAWN  = 
			{
				ROUTE_Root_Allies_A  = 
				{
				},
				ROUTE_Root_Allies_B  = 
				{
				},
				ROUTE_Root_Allies_C  = 
				{
				},
				ROUTE_Root_Allies_D  = 
				{
					ROUTE_Root_Allies_TEL_A  = 
					{
						ROUTE_Root_Allies_TEL_B  = 
						{
						},
						ROUTE_Root_Allies_TEL_Exit  = 
						{
						},
					},
					ROUTE_Root_Allies_TEL_C  = 
					{
						ROUTE_Root_Allies_TEL_D  = 
						{
						},
						ROUTE_Root_Allies_TEL_Exit  = 
						{
						},
					},
				},
			},
		},
		
		FLAG_allies_gold_crate = 
		{
			ROUTE_AXIS_SPAWN  = 
			{
				ROUTE_Root_Axis_A  = 
				{
				},
				ROUTE_Root_Axis_B  = 
				{
				},
				ROUTE_Root_Axis_C  = 
				{
				},
				ROUTE_Root_Axis_D  = 
				{
					ROUTE_Root_Axis_TEL_A  = 
					{
						ROUTE_Root_Axis_TEL_B  = 
						{
						},
						ROUTE_Root_Axis_TEL_Exit  = 
						{
						},
					},
					ROUTE_Root_Axis_TEL_C  = 
					{
						ROUTE_Root_Axis_TEL_D  = 
						{
						},
						ROUTE_Root_Axis_TEL_Exit  = 
						{
						},
					},
				},
			},
		},
	};
MapRoutes.FLAG_allies_gold_crate = MapRoutes.FLAG_allies_gold_crate_1;
MapRoutes.FLAG_allies_gold_crate = MapRoutes.FLAG_allies_gold_crate_2;
MapRoutes.FLAG_allies_gold_crate = MapRoutes.FLAG_allies_gold_crate_3;
MapRoutes.FLAG_allies_gold_crate = MapRoutes.FLAG_allies_gold_crate_4;
MapRoutes.FLAG_allies_gold_crate = MapRoutes.FLAG_allies_gold_crate_5;
MapRoutes.FLAG_allies_gold_crate = MapRoutes.FLAG_allies_gold_crate_6;
MapRoutes.FLAG_allies_gold_crate = MapRoutes.FLAG_allies_gold_crate_7;

MapRoutes.FLAG_axis_gold_crate = MapRoutes.FLAG_axis_gold_crate_1;
MapRoutes.FLAG_axis_gold_crate = MapRoutes.FLAG_axis_gold_crate_2;
MapRoutes.FLAG_axis_gold_crate = MapRoutes.FLAG_axis_gold_crate_3;
MapRoutes.FLAG_axis_gold_crate = MapRoutes.FLAG_axis_gold_crate_4;
MapRoutes.FLAG_axis_gold_crate = MapRoutes.FLAG_axis_gold_crate_5;
MapRoutes.FLAG_axis_gold_crate = MapRoutes.FLAG_axis_gold_crate_6;
MapRoutes.FLAG_axis_gold_crate = MapRoutes.FLAG_axis_gold_crate_7;
	
	Util.Routes(MapRoutes);
	
if ( Map.Debug > 1 )
		{ Util.ShowActiveGoals(); }

	print( "Omni_bot map script for " + GetMapName() + " executed." );
};

global OnBotJoin = function( bot )
{
	// Uncomment for shootable breakables
	bot.TargetBreakableDist = 120.0;
	// Only set MaxViewDistance on maps with limited sight (e.g. fog)
	bot.MaxViewDistance = 2400;
};
