1 #using scripts\shared\array_shared;
2 #using scripts\shared\gameobjects_shared;
3 #using scripts\shared\math_shared;
4 #using scripts\shared\util_shared;
5 #insert scripts\shared\shared.gsh;
7 #using scripts\mp\gametypes\dom;
9 #using scripts\shared\bots\_bot;
10 #using scripts\shared\bots\_bot_combat;
11 #using scripts\mp\bots\_bot;
12 #using scripts\mp\bots\_bot_combat;
14 #insert scripts\mp\bots\_bot.gsh;
16 #define BOT_DOM_FLAG_NEAR_DIST_SQ 384 * 384
20 #define ARBITARY_RADIUS 160 // size of radius trigger in BO2
21 #define MAX_FLAG_TARGET_POINTS 256
22 #define MAX_FLAG_TARGET_HEIGHT 72
23 #define FLAG_TARGET_SPACING 37.5 // Default Radius * 2.5
38 self.bot.goalFlag = undefined;
40 if ( !
self BotGoalReached() )
42 foreach( flag
in level.domFlags )
46 self.bot.goalFlag = flag;
59 isdefined(
self.bot.goalFlag ) &&
62 self BotSetGoal(
self.origin );
71 if ( isdefined(
self.bot.capturingFlag ) )
79 if ( isdefined( bestFlag ) )
95 if ( isdefined(
self.bot.capturingFlag ) )
97 if (
self BotGoalReached() )
112 foreach( flag
in level.domFlags )
125 bestFlag = undefined;
126 bestFlagDistSq = undefined;
129 foreach( flag
in level.domFlags )
133 distSq = Distance2DSquared(
self.origin, flag.origin );
135 if ( ownerTeam ==
self.team && !contested )
140 if ( !isdefined( bestFlag ) ||
141 distSq < bestFlagDistSq )
144 bestFlagDistSq = distSq;