34 #ifndef __diguyAgentParams_H
35 #define __diguyAgentParams_H
41 #define CPLUSPLUS_ONLY
49 class bdiScenarioAgentParams;
50 class bdiScenarioAgent;
145 void set_behavior_path_shape(
const char* behavior_path_shape_name);
154 const char* get_behavior_path_shape();
166 void set_behavior_region(
const char* behavior_region_name);
175 const char* get_behavior_region();
202 void set_behavior_region_border_is_solid(
int is_solid);
210 int get_behavior_region_border_is_solid();
224 void set_focus_character(
const char* focus_character_name);
232 const char* get_focus_character();
246 void set_focus_group(
const char* focus_group_name);
254 const char* get_focus_group();
262 void set_focus_affects_gaze(
int focus_affects_gaze);
270 int get_focus_affects_gaze();
278 void set_max_focus_distance(
float distance);
285 float get_max_focus_distance();
294 void set_move_on_t_min(
float t_min);
302 float get_move_on_t_min();
310 void set_move_on_t_max(
float t_max);
318 float get_move_on_t_max();
333 void set_attack_distance(
float distance);
341 float get_attack_distance();
349 void set_attack_fire_interval(
float time_interval);
357 float get_attack_fire_interval();
372 void set_attack_stands_ground(
int value);
379 int get_attack_stands_ground();
389 void set_attack_zone(
float x,
float y,
float z,
float radius);
396 int get_attack_zone(
float* x,
float* y,
float* z,
float* radius);
407 void set_attack_zone_enabled(
int use_attack_zone);
414 int get_attack_zone_enabled();
429 void set_wander_max_wander_dist(
float distance);
437 void set_wander_sets_desired_orientation(
int sets_desired_orientation);
451 void set_pursue_speed_match_enabled(
int enabled);
460 int get_pursue_speed_match_enabled();
468 void set_pursue_speed_match_update_dt(
float dt);
475 float get_pursue_speed_match_update_dt();
492 void set_pursue_speed_match_max_factor(
float factor);
500 float get_pursue_speed_match_max_factor();
514 void set_pursue_offset(
float x,
float y,
float z);
521 int get_pursue_offset(
float* x,
float* y,
float* z);
536 void set_path_follow_pause_t_when_off_path(
int pause_t);
543 int get_path_follow_pause_t_when_off_path();
551 void set_path_follow_unpause_t_at_radius(
float radius);
558 float get_path_follow_unpause_t_at_radius();
567 void set_path_follow_position_lookahead_distance(
float distance);
574 float get_path_follow_position_lookahead_distance();
609 void set_wedged_trap_time_threshold(
float threshold);
617 float get_wedged_trap_time_threshold();
645 void set_first_no_progress_trap_time_threshold(
float threshold);
654 float get_first_no_progress_trap_time_threshold();
680 void set_second_no_progress_trap_time_threshold(
float threshold);
689 float get_second_no_progress_trap_time_threshold();
698 void set_untrap_method_random_turn_max_tries(
int max_tries);
706 int get_untrap_method_random_turn_max_tries();
714 void set_untrap_method_ghost_duration(
float duration);
722 float get_untrap_method_ghost_duration();
791 void set_speed_type_radius_hysteresis(
float hysteresis_distance);
799 float get_speed_type_radius_hysteresis();
833 void set_radius_variation(
float distance);
841 float get_radius_variation();
850 int set_turning_motions_enabled(
int enabled);
858 int get_turning_motions_enabled();
921 void set_max_orientation_change_rate(
float max_orientation_change_rate);
929 float get_max_orientation_change_rate();
941 void set_influence_center_shift(
float x,
float y,
float z);
957 void set_vehicle_base_influence_box(
float min_x,
float min_y,
float min_z,
958 float max_x,
float max_y,
float max_z);
965 void get_vehicle_base_influence_box(
float* min_x,
float* min_y,
float* min_z,
966 float* max_x,
float* max_y,
float* max_z);
973 void set_influence_box_enabled(
int enabled = 1);
980 int get_influence_box_enabled();
994 void set_feeler_enabled(
int feeler_index,
1002 int get_feeler_enabled(
int feeler_index);
1012 void set_feeler_rz_offset(
int feeler_index,
1013 float feeler_rz_offset);
1021 float get_feeler_rz_offset(
int feeler_index);
1030 void set_feeler_height(
int feeler_index,
1031 float feeler_height);
1038 float get_feeler_height(
int feeler_index);
1048 void set_feeler_collision_distance(
int feeler_index,
1049 float collision_distance);
1057 float get_feeler_collision_distance(
int feeler_index);
1067 void set_feeler_turn_distance(
int feeler_index,
1068 float turn_distance);
1076 float get_feeler_turn_distance(
int feeler_index);
1084 void set_feeler_turn_direction(
int feeler_index,
1115 void set_path_planner_preferred_region_mask(
int mask);
1126 int get_path_planner_preferred_region_mask();
1137 void set_path_planner_preferred_cost_bias(
float value);
1145 float get_path_planner_preferred_cost_bias();
1163 void set_path_planner_neutral_cost_bias(
float value);
1171 float get_path_planner_neutral_cost_bias();
1186 void set_path_planner_repulsed_region_mask(
int mask);
1194 int get_path_planner_repulsed_region_mask();
1209 void set_path_planner_repulsed_cost_bias(
float value);
1217 float get_path_planner_repulsed_cost_bias();
1226 void set_path_planner_fallback_region(
const char* fallback_region_name);
1234 const char* get_path_planner_fallback_region();
1243 void set_wander_uses_path_planner(
int wander_uses_path_planner);
1251 int get_wander_uses_path_planner();
1262 void set_pursue_uses_path_planner(
int pursue_uses_path_planner);
1270 int get_pursue_uses_path_planner();
1287 void set_max_LOS_travel_distance(
float distance);
1295 float get_max_LOS_travel_distance();
1309 void set_desired_navpath_distance_threshold(
float threshold);
1318 float get_desired_navpath_distance_threshold();
1330 void set_path_planner_cost_rule(
int mask);
1331 int get_path_planner_cost_rule();
1338 #ifdef CPLUSPLUS_ONLY
1340 bdiScenarioAgentParams* get_scripted_object() {
return m_scripted_object;}
1357 bdiScenarioAgentParams* m_scripted_object;
1358 bdiScenarioAgent* m_agent_object;
1360 friend class bdiScenarioAgentParams;
1361 friend class bdiScenarioAgent;