56#define navigation_item_initlinks_ifneeded(e) MACRO_BEGIN if (!e.wp00) waypoint_clearlinks(e); MACRO_END
57#define navigation_item_getlinknum(to_item, from_wp) waypoint_getlinknum(to_item, from_wp)
58#define navigation_item_iswalkablelink(to_item, from_wp) (waypoint_get_assigned_link_cost(to_item, from_wp) < 999)
60#define navigation_item_add_link(from_wp, to_item, walkable) \
61 waypoint_addlink_customcost(to_item, from_wp, (walkable ? waypoint_getlinkcost(from_wp, to_item) : 999))
63#define TELEPORT_USED(pl, tele_wp) \
64 boxesoverlap(tele_wp.absmin, tele_wp.absmax, pl.lastteleport_origin + STAT(PL_MIN, pl), pl.lastteleport_origin + STAT(PL_MAX, pl))
100#define SUBMERGED_UNDEFINED 0
101#define SUBMERGED_NO 1
102#define SUBMERGED_YES 2
float nearestwaypointtimeout
bool navigation_dynamicgoal
vector lastteleport_origin
float goalentity_lock_timeout
var entity(vector mins, vector maxs,.entity tofield) findbox_tofield_OrFallback
bool goalentity_shouldbefrozen
entity bot_waypoint_queue_bestgoal
void debugnodestatus(vector position, float status)
float navigation_routetogoal(entity this, entity e, vector startposition)
float navigation_waypoint_will_link(vector v, vector org, entity ent, vector v2, float v2_height, vector o2, float o2_height, float walkfromwp, float bestdist)
float bot_navigation_movemode
entity navigation_findnearestwaypoint(entity ent, float walkfromwp)
void navigation_goalrating_start(entity this)
void navigation_goalrating_timeout_force(entity this)
float goalcurrent_distance_2d
void navigation_markroutes_inverted(entity fixed_source_waypoint)
void navigation_goalrating_timeout_set(entity this)
void debugnode(entity this, vector node)
const float DEBUG_NODE_SUCCESS
float bot_waypoint_queue_bestgoalrating
void navigation_unstuck(entity this)
float goalcurrent_distance_time
void navigation_markroutes_checkwaypoint(entity w, entity wp, float cost2, vector p)
vector navigation_jetpack_point
const float DEBUG_NODE_WARNING
entity bot_waypoint_queue_owner
float navigation_markroutes_nearestwaypoints(entity this, float maxdist)
bool navigation_goalrating_timeout(entity this)
void navigation_dynamicgoal_init(entity this, bool initially_static)
void navigation_markroutes(entity this, entity fixed_source_waypoint)
const float BOT_BUNNYHOP_WP_DETECTION_RANGE
void navigation_poproute(entity this)
entity navigation_bestgoal
entity bot_waypoint_queue_nextgoal
void navigation_routerating(entity this, entity e, float f, float rangebias)
float tracewalk(entity e, vector start, vector m1, vector m2, vector end, float end_height, float movemode)
void navigation_dynamicgoal_set(entity this, entity dropper)
bool navigation_check_submerged_state(entity ent, vector pos)
void navigation_clearroute(entity this)
entity navigation_jetpack_goal
void debuggoalstack(entity this)
float goalcurrent_distance_z
void navigation_goalrating_end(entity this)
void navigation_pushroute(entity this, entity e)
bool navigation_shortenpath(entity this)
entity bot_waypoint_queue_goal
float tracewalk_dest_height
void botframe_updatedangerousobjects(float maxupdate)
int navigation_poptouchedgoals(entity this)
float navigation_bestrating
float navigation_testtracewalk
const float DEBUG_NODE_FAIL
void navigation_dynamicgoal_unset(entity this)