22 #ifndef AGS_ENGINE_SCRIPT_SCRIPT_H 23 #define AGS_ENGINE_SCRIPT_SCRIPT_H 25 #include "common/std/memory.h" 26 #include "common/std/vector.h" 28 #include "ags/engine/script/cc_instance.h" 29 #include "ags/engine/script/executing_script.h" 30 #include "ags/engine/script/non_blocking_script_function.h" 31 #include "ags/engine/ac/dynobj/script_system.h" 32 #include "ags/shared/game/interactions.h" 33 #include "ags/shared/util/string.h" 37 using AGS::Shared::String;
38 using AGS::Shared::Interaction;
39 using AGS::Shared::InteractionCommandList;
40 using AGS::Shared::InteractionScripts;
41 using AGS::Shared::InteractionVariable;
43 #define LATE_REP_EXEC_ALWAYS_NAME "late_repeatedly_execute_always" 44 #define REP_EXEC_ALWAYS_NAME "repeatedly_execute_always" 45 #define REP_EXEC_NAME "repeatedly_execute" 62 : BlockName(block_name), BlockID(block_id) {}
65 : BlockName(block_name), BlockID(block_id), DynObj(dyn_obj), Mode(mode) {}
68 int run_dialog_request(
int parmtr);
80 int run_interaction_event(
const ObjectEvent &obj_evt,
Interaction *nint,
int evnt,
int chkAny = -1,
bool isInv =
false);
86 void run_unhandled_event(
const ObjectEvent &obj_evt,
int evnt);
87 int create_global_script();
88 void cancel_all_scripts();
90 ccInstance *GetScriptInstanceByType(ScriptInstType sc_inst);
92 void QueueScriptFunction(ScriptInstType sc_inst,
const char *fn_name,
size_t param_count = 0,
95 int RunScriptFunction(
ccInstance *sci,
const char *tsname,
size_t param_count = 0,
99 void RunScriptFunctionInModules(
const char *tsname,
size_t param_count = 0,
102 int RunScriptFunctionInRoom(
const char *tsname,
size_t param_count = 0,
106 int RunScriptFunctionAuto(ScriptInstType sc_inst,
const char *fn_name,
size_t param_count = 0,
110 void AllocScriptModules();
112 void FreeAllScriptInstances();
114 void FreeRoomScriptInstance();
117 void FreeGlobalScripts();
123 char *make_ts_func_name(
const char *base,
int iii,
int subd);
127 void post_script_cleanup();
128 void quit_with_script_error(
const char *functionName);
132 void can_run_delayed_command();
136 String cc_get_callstack(
int max_lines = INT_MAX);
Definition: interactions.h:154
Definition: runtime_script_value.h:63
Definition: cc_instance.h:98
Definition: interactions.h:185
Definition: interactions.h:201
Definition: cc_instance.h:114
Definition: interactions.h:122
Definition: non_blocking_script_function.h:31