2
===========================================================================
3
Copyright (C) 1999-2005 Id Software, Inc.
5
This file is part of Quake III Arena source code.
7
Quake III Arena source code is free software; you can redistribute it
8
and/or modify it under the terms of the GNU General Public License as
9
published by the Free Software Foundation; either version 2 of the License,
10
or (at your option) any later version.
12
Quake III Arena source code is distributed in the hope that it will be
13
useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
14
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15
GNU General Public License for more details.
17
You should have received a copy of the GNU General Public License
18
along with Quake III Arena source code; if not, write to the Free Software
19
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
20
===========================================================================
23
/*****************************************************************************
24
* name: be_aas_route.h
28
* $Archive: /source/code/botlib/be_aas_route.h $
30
*****************************************************************************/
33
//initialize the AAS routing
34
void AAS_InitRouting(void);
35
//free the AAS routing caches
36
void AAS_FreeRoutingCaches(void);
37
//returns the travel time from start to end in the given area
38
unsigned short int AAS_AreaTravelTime(int areanum, vec3_t start, vec3_t end);
40
void AAS_CreateAllRoutingCache(void);
41
void AAS_WriteRouteCache(void);
43
void AAS_RoutingInfo(void);
46
//returns the travel flag for the given travel type
47
int AAS_TravelFlagForType(int traveltype);
48
//return the travel flag(s) for traveling through this area
49
int AAS_AreaContentsTravelFlags(int areanum);
50
//returns the index of the next reachability for the given area
51
int AAS_NextAreaReachability(int areanum, int reachnum);
52
//returns the reachability with the given index
53
void AAS_ReachabilityFromNum(int num, struct aas_reachability_s *reach);
54
//returns a random goal area and goal origin
55
int AAS_RandomGoalArea(int areanum, int travelflags, int *goalareanum, vec3_t goalorigin);
56
//enable or disable an area for routing
57
int AAS_EnableRoutingArea(int areanum, int enable);
58
//returns the travel time within the given area from start to end
59
unsigned short int AAS_AreaTravelTime(int areanum, vec3_t start, vec3_t end);
60
//returns the travel time from the area to the goal area using the given travel flags
61
int AAS_AreaTravelTimeToGoalArea(int areanum, vec3_t origin, int goalareanum, int travelflags);
62
//predict a route up to a stop event
63
int AAS_PredictRoute(struct aas_predictroute_s *route, int areanum, vec3_t origin,
64
int goalareanum, int travelflags, int maxareas, int maxtime,
65
int stopevent, int stopcontents, int stoptfl, int stopareanum);