28 #ifndef __diguyInteractionMachine_H
29 #define __diguyInteractionMachine_H
35 #define CPLUSPLUS_ONLY
39 class bdiScenarioInteractionMachine;
131 const char* get_name();
164 int begin_interaction(
const char* initial_state = NULL,
165 const char* initial_input = NULL);
187 int end_interaction();
199 int get_interaction_is_active();
228 void set_pause_scenario_while_active(
int pause_while_active);
240 int get_pause_scenario_while_active();
299 void set_interaction_subject(
diguyCharacter* interaction_subject);
361 UI_APPEARANCE_CONVERSATION = 0,
363 UI_APPEARANCE_NOTIFICATION,
387 int set_initial_ui_appearance(
int initial_ui_appearance);
399 int get_initial_ui_appearance();
421 int set_ui_appearance(
int ui_appearance);
434 int get_ui_appearance();
460 void set_initial_heading(
const char* initial_heading);
472 const char* get_initial_heading();
491 void set_heading(
const char* heading);
503 const char* get_heading();
521 void set_heading_visible(
int heading_visible);
533 int get_heading_visible();
552 void set_heading_color_bg(
int ui_appearance,
575 void set_heading_color_fg(
int ui_appearance,
604 void set_heading_font(
int ui_appearance,
605 const char* font_family,
607 int font_is_bold = 0,
608 int font_is_italic = 0);
633 void set_initial_info(
const char* initial_info);
640 const char* get_initial_info();
647 void set_info(
const char* info);
654 const char* get_info();
661 void set_info_visible(
int info_visible);
668 int get_info_visible();
675 void set_info_color_bg(
int ui_appearance,
686 void set_info_color_fg(
int ui_appearance,
697 void set_info_font(
int ui_appearance,
698 const char* font_family,
700 int font_is_bold = 0,
701 int font_is_italic = 0);
728 int get_num_states();
741 const char* get_state_id_at_index(
int index);
784 int add_state(
const char* state_id,
785 const char* entry_script);
808 int remove_state(
const char* state_id);
832 int rename_state(
const char* old_state_id,
const char* new_state_id);
854 int set_state_entry_script(
const char* state_id,
855 const char* entry_script);
876 int set_begin_state_entry_script(
const char* entry_script);
893 const char* get_current_state();
921 void set_current_state(
const char* new_current_state,
922 int run_entry_script = 1);
972 int add_input(
const char* input_id,
973 const char* input_string,
974 const char* resulting_state =
"",
975 int int_param_0 = 0);
995 int remove_input(
const char* input_id);
1007 int get_num_inputs();
1020 const char* get_input_id(
int index);
1032 const char* get_input_string(
const char* input_id);
1044 const char* get_input_resulting_state(
const char* input_id);
1056 int get_input_int_param_0(
const char* input_id);
1083 int select_input(
const char* input_id);
1097 const char* get_last_selected_input();
1120 void set_last_input_variable(
const char* last_input_variable);
1133 const char* get_last_input_variable();
1150 void set_inputs_visible(
int visible);
1162 int get_inputs_visible();
1184 void set_input_shortcuts_visible(
int visible);
1196 int get_input_shortcuts_visible();
1203 void set_inputs_font(
int ui_appearance,
1204 const char* font_family,
1205 int font_point_size,
1206 int font_is_bold = 0,
1207 int font_is_italic = 0);
1214 void set_inputs_color_bg(
int ui_appearance,
1225 void set_inputs_color_fg(
int ui_appearance,
1248 int set_current_settings_index(
int current_settings_index);
1251 void set_input_response_script(
const char* script);
1257 #ifdef CPLUSPLUS_ONLY
1259 bdiScenarioInteractionMachine* get_scripted_object() {
return m_scripted_object;}
1276 bdiScenarioInteractionMachine* m_scripted_object;
1278 friend class bdiScenarioInteractionMachine;