00001 /* 00002 =========================================================================== 00003 Copyright (C) 1999-2005 Id Software, Inc. 00004 00005 This file is part of Quake III Arena source code. 00006 00007 Quake III Arena source code is free software; you can redistribute it 00008 and/or modify it under the terms of the GNU General Public License as 00009 published by the Free Software Foundation; either version 2 of the License, 00010 or (at your option) any later version. 00011 00012 Quake III Arena source code is distributed in the hope that it will be 00013 useful, but WITHOUT ANY WARRANTY; without even the implied warranty of 00014 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00015 GNU General Public License for more details. 00016 00017 You should have received a copy of the GNU General Public License 00018 along with Foobar; if not, write to the Free Software 00019 Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 00020 =========================================================================== 00021 */ 00022 00023 /***************************************************************************** 00024 * name: be_aas_route.h 00025 * 00026 * desc: AAS 00027 * 00028 * $Archive: /source/code/botlib/be_aas_route.h $ 00029 * 00030 *****************************************************************************/ 00031 00032 #ifdef AASINTERN 00033 //initialize the AAS routing 00034 void AAS_InitRouting(void); 00035 //free the AAS routing caches 00036 void AAS_FreeRoutingCaches(void); 00037 //returns the travel time from start to end in the given area 00038 unsigned short int AAS_AreaTravelTime(int areanum, vec3_t start, vec3_t end); 00039 // 00040 void AAS_CreateAllRoutingCache(void); 00041 void AAS_WriteRouteCache(void); 00042 // 00043 void AAS_RoutingInfo(void); 00044 #endif //AASINTERN 00045 00046 //returns the travel flag for the given travel type 00047 int AAS_TravelFlagForType(int traveltype); 00048 //return the travel flag(s) for traveling through this area 00049 int AAS_AreaContentsTravelFlags(int areanum); 00050 //returns the index of the next reachability for the given area 00051 int AAS_NextAreaReachability(int areanum, int reachnum); 00052 //returns the reachability with the given index 00053 void AAS_ReachabilityFromNum(int num, struct aas_reachability_s *reach); 00054 //returns a random goal area and goal origin 00055 int AAS_RandomGoalArea(int areanum, int travelflags, int *goalareanum, vec3_t goalorigin); 00056 //enable or disable an area for routing 00057 int AAS_EnableRoutingArea(int areanum, int enable); 00058 //returns the travel time within the given area from start to end 00059 unsigned short int AAS_AreaTravelTime(int areanum, vec3_t start, vec3_t end); 00060 //returns the travel time from the area to the goal area using the given travel flags 00061 int AAS_AreaTravelTimeToGoalArea(int areanum, vec3_t origin, int goalareanum, int travelflags); 00062 //predict a route up to a stop event 00063 int AAS_PredictRoute(struct aas_predictroute_s *route, int areanum, vec3_t origin, 00064 int goalareanum, int travelflags, int maxareas, int maxtime, 00065 int stopevent, int stopcontents, int stoptfl, int stopareanum); 00066 00067
1.3.9.1