22 #ifndef MADS_CORE_CONV_H 23 #define MADS_CORE_CONV_H 25 #include "common/array.h" 26 #include "common/stream.h" 32 constexpr
int CONV_MAX_SLOTS = 70;
33 constexpr
int CONV_MAX_DATA = 5;
36 CONV_STATUS_HOLDING = -1,
37 CONV_STATUS_NEXT_NODE = 0,
38 CONV_STATUS_WAIT_AUTO = 1,
39 CONV_STATUS_WAIT_ENTRY = 2,
40 CONV_STATUS_EXECUTE = 3,
41 CONV_STATUS_REPLY = 4,
72 static constexpr
int SIZE = 2 * 5;
77 int16 text_line_index;
82 static constexpr
int SIZE = 2 * 4;
93 static constexpr
int SIZE = 2 + 1 + 1 + 2 + 2;
98 enum PtrType { PTRTYPE_GLOBAL = 1, PTRTYPE_CONV_CONTROL = 2 };
101 int16 val = 0, type = 0;
104 static constexpr
int SIZE = 2 * 3;
113 int16 text_line_count;
118 char speaker_portraits[5][16];
119 int16 speaker_frame[5];
120 char speech_file[14];
122 uint32 commands_length;
136 static constexpr
int SIZE = (2 * 7 + 16 * 5 + 2 * 5 + 14 + 4 + 4) +
144 int16 entryFlagsCount;
145 int16 variablesCount;
148 int16 optionListSize;
149 int16 messageList1Size;
150 int16 messageList2Size;
151 int16 speechList1Size;
152 int16 speechList2Size;
153 int16 optionList[10];
154 int16 messageList1[10];
155 int16 messageList2[10];
156 int16 speechList1[10];
157 int16 speechList2[10];
159 uint16 importsOffset;
160 uint16 entryFlagsOffset;
161 uint16 variablesOffset;
166 static constexpr
int SIZE = 2 * 10 + 2 * 10 * 5 + 2 * 3;
175 ConvStatus hold_status;
178 int16 popup_duration;
180 int16 speaker_active[CONV_MAX_DATA];
181 int16 speaker_series[CONV_MAX_DATA];
182 int16 speaker_frame[CONV_MAX_DATA];
183 int16 x[CONV_MAX_DATA];
184 int16 y[CONV_MAX_DATA];
185 int16 width[CONV_MAX_DATA];
187 int16 person_speaking;
191 int16 me_trigger_mode;
193 int16 you_trigger_mode;
194 int16 commands_allowed;
198 extern Conv *conv[CONV_MAX_DATA];
199 extern ConvData *conv_data[CONV_MAX_DATA];
200 extern Conv *active_conv;
203 extern int16 *conv_imports;
204 extern uint16 *conv_entry_flags;
206 extern int16 *conv_vars0ValPtr;
208 extern int conv_restore_running;
210 extern int16 *conv_my_next_start;
211 extern bool conv_show_boxes;
213 extern void conv_system_init();
214 extern void conv_system_cleanup();
216 extern void conv_start(
ConvData *convData,
Conv *convIn);
217 extern void conv_stop();
218 extern void conv_get(
int convNum);
219 extern void conv_run(
int convNum);
220 extern void conv_update(
bool);
221 extern void conv_regenerate_last_message();
222 extern void conv_export_pointer(int16 *ptr);
223 extern void conv_abort();
224 extern void conv_me_trigger(
int trigger);
225 extern void conv_you_trigger(
int trigger);
226 extern int16 *conv_get_variable(
int varNum);
227 extern void conv_export_value(int16 value);
228 extern void conv_hold();
229 extern void conv_release();
230 extern void conv_flush();
231 extern void conv_reset(
int id);
235 extern void init_conv();
Definition: mps_installer.h:31