diff --git a/common/main/ai.h b/common/main/ai.h index d6d581ced..bbebfccd5 100644 --- a/common/main/ai.h +++ b/common/main/ai.h @@ -98,7 +98,7 @@ extern void init_ai_object(object *objp, int initial_mode, int hide_segment); extern void update_player_awareness(object *objp, fix new_awareness); extern void do_ai_frame_all(void); extern void reset_ai_states(object *objp); -extern 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); +int create_path_points(objptridx_t 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); extern void create_all_paths(void); extern void create_path_to_station(object *objp, int max_length); extern void ai_follow_path(object *objp, int player_visibility, vms_vector *vec_to_player); diff --git a/similar/main/aipath.cpp b/similar/main/aipath.cpp index 322721ed9..ced491293 100644 --- a/similar/main/aipath.cpp +++ b/similar/main/aipath.cpp @@ -279,7 +279,7 @@ if (vm_vec_mag_quick(&e) < F1_0/2) // like to say that it ensures that the object can move between the points, but that would require knowing what // the object is (which isn't passed, right?) and making fvi calls (slow, right?). So, consider it the more_or_less_safe_flag. // If end_seg == -2, then end seg will never be found and this routine will drop out due to depth (probably called by create_n_segment_path). -int create_path_points(object *objp, int start_seg, int end_seg, point_seg *psegs, short *num_points, int max_depth, int random_flag, int safety_flag, int avoid_seg) +int create_path_points(objptridx_t objp, int start_seg, int end_seg, point_seg *psegs, short *num_points, int max_depth, int random_flag, int safety_flag, int avoid_seg) { int cur_seg; int sidenum; @@ -367,7 +367,7 @@ if ((objp->type == OBJ_ROBOT) && (objp->ctype.ai_info.behavior == AIB_RUN_FROM)) fq.startseg = objp->segnum; fq.p1 = ¢er_point; fq.rad = objp->size; - fq.thisobjnum = objp-Objects; + fq.thisobjnum = objp; fq.ignore_obj_list = NULL; fq.flags = 0;