main/ai.h File Reference

#include "object.h"

Defines

#define PLAYER_AWARENESS_INITIAL_TIME   (3*F1_0)
#define MAX_PATH_LENGTH   30
#define MAX_DEPTH_TO_SEARCH_FOR_PLAYER   10
#define BOSS_GATE_MATCEN_NUM   -1
#define MAX_BOSS_TELEPORT_SEGS   100
#define BOSS_ECLIP_NUM   53
#define ROBOT_BRAIN   7
#define ROBOT_BOSS1   17

Functions

void move_towards_segment_center (object *objp)
int gate_in_robot (int type, int segnum)
void do_ai_movement (object *objp)
void ai_move_to_new_segment (object *obj, short newseg, int first_time)
void ai_recover_from_wall_hit (object *obj, int segnum)
void ai_move_one (object *objp)
void do_ai_frame (object *objp)
void init_ai_object (int objnum, int initial_mode, int hide_segment)
void update_player_awareness (object *objp, fix new_awareness)
void create_awareness_event (object *objp, int type)
void do_ai_frame_all (void)
void init_ai_system (void)
void reset_ai_states (object *objp)
int create_path_points (object *objp, int start_seg, int end_seg, point_seg *point_segs, short *num_points, int max_depth, int random_flag, int safety_flag, int avoid_seg)
void create_all_paths (void)
void create_path_to_station (object *objp, int max_length)
void ai_follow_path (object *objp, int player_visibility)
void ai_turn_towards_vector (vms_vector *vec_to_player, object *obj, fix rate)
void ai_turn_towards_vel_vec (object *objp, fix rate)
void init_ai_objects (void)
void do_ai_robot_hit (object *robot, int type)
void create_n_segment_path (object *objp, int path_length, int avoid_seg)
void create_n_segment_path_to_door (object *objp, int path_length, int avoid_seg)
void make_random_vector (vms_vector *vec)
void init_robots_for_level (void)
int ai_behavior_to_mode (int behavior)
void create_path_to_player (object *objp, int max_length, int safety_flag)
void attempt_to_resume_path (object *objp)
void do_ai_robot_hit_attack (object *robot, object *player, vms_vector *collision_point)
void ai_open_doors_in_segment (object *robot)
int ai_door_is_openable (object *objp, segment *segp, int sidenum)
int player_is_visible_from_object (object *objp, vms_vector *pos, fix field_of_view, vms_vector *vec_to_player)
void ai_reset_all_paths (void)
int ai_multiplayer_awareness (object *objp, int awareness_level)
void force_dump_ai_objects_all (char *msg)
void start_boss_death_sequence (object *objp)
void ai_init_boss_for_ship (void)
void HUD_init_message (char *format,...)

Variables

fix Boss_cloak_start_time
fix Boss_cloak_end_time
int Boss_hit_this_frame
int Num_boss_teleport_segs
short Boss_teleport_segs [MAX_BOSS_TELEPORT_SEGS]
fix Last_teleport_time
fix Boss_cloak_duration
int Boss_dying
ai_local Ai_local_info [MAX_OBJECTS]
vms_vector Believed_player_pos
int Robot_firing_enabled
int Boss_been_hit
fix AI_proc_time

Define Documentation

#define BOSS_ECLIP_NUM   53
 

#define BOSS_GATE_MATCEN_NUM   -1
 

#define MAX_BOSS_TELEPORT_SEGS   100
 

#define MAX_DEPTH_TO_SEARCH_FOR_PLAYER   10
 

#define MAX_PATH_LENGTH   30
 

#define PLAYER_AWARENESS_INITIAL_TIME   (3*F1_0)
 

#define ROBOT_BOSS1   17
 

#define ROBOT_BRAIN   7
 


Function Documentation

int ai_behavior_to_mode int  behavior  ) 
 

int ai_door_is_openable object objp,
segment segp,
int  sidenum
 

void ai_follow_path object objp,
int  player_visibility
 

void ai_init_boss_for_ship void   ) 
 

void ai_move_one object objp  ) 
 

void ai_move_to_new_segment object obj,
short  newseg,
int  first_time
 

int ai_multiplayer_awareness object objp,
int  awareness_level
 

void ai_open_doors_in_segment object robot  ) 
 

void ai_recover_from_wall_hit object obj,
int  segnum
 

void ai_reset_all_paths void   ) 
 

void ai_turn_towards_vector vms_vector vec_to_player,
object obj,
fix  rate
 

void ai_turn_towards_vel_vec object objp,
fix  rate
 

void attempt_to_resume_path object objp  ) 
 

void create_all_paths void   ) 
 

void create_awareness_event object objp,
int  type
 

void create_n_segment_path object objp,
int  path_length,
int  avoid_seg
 

void create_n_segment_path_to_door object objp,
int  path_length,
int  avoid_seg
 

int create_path_points object objp,
int  start_seg,
int  end_seg,
point_seg point_segs,
short *  num_points,
int  max_depth,
int  random_flag,
int  safety_flag,
int  avoid_seg
 

void create_path_to_player object objp,
int  max_length,
int  safety_flag
 

void create_path_to_station object objp,
int  max_length
 

void do_ai_frame object objp  ) 
 

void do_ai_frame_all void   ) 
 

void do_ai_movement object objp  ) 
 

void do_ai_robot_hit object robot,
int  type
 

void do_ai_robot_hit_attack object robot,
object player,
vms_vector collision_point
 

void force_dump_ai_objects_all char *  msg  ) 
 

int gate_in_robot int  type,
int  segnum
 

void HUD_init_message char *  format,
  ...
 

void init_ai_object int  objnum,
int  initial_mode,
int  hide_segment
 

void init_ai_objects void   ) 
 

void init_ai_system void   ) 
 

void init_robots_for_level void   ) 
 

void make_random_vector vms_vector vec  ) 
 

void move_towards_segment_center object objp  ) 
 

int player_is_visible_from_object object objp,
vms_vector pos,
fix  field_of_view,
vms_vector vec_to_player
 

void reset_ai_states object objp  ) 
 

void start_boss_death_sequence object objp  ) 
 

void update_player_awareness object objp,
fix  new_awareness
 


Variable Documentation

ai_local Ai_local_info[MAX_OBJECTS]
 

fix AI_proc_time
 

vms_vector Believed_player_pos
 

int Boss_been_hit
 

fix Boss_cloak_duration
 

fix Boss_cloak_end_time
 

fix Boss_cloak_start_time
 

int Boss_dying
 

int Boss_hit_this_frame
 

short Boss_teleport_segs[MAX_BOSS_TELEPORT_SEGS]
 

fix Last_teleport_time
 

int Num_boss_teleport_segs
 

int Robot_firing_enabled
 


Generated on Mon Aug 28 20:55:32 2006 for D1X-Rebirth by  doxygen 1.4.6