aboutsummaryrefslogtreecommitdiff
path: root/engines/hdb/ai.h
diff options
context:
space:
mode:
authorNipun Garg2019-07-08 21:42:35 +0530
committerEugene Sandulenko2019-09-03 17:17:15 +0200
commitebbee5cef40a8ce7152df717cd804dbf89a22198 (patch)
treea02da2e040a6e5eeb5dd7af154af09f6ebafedcb /engines/hdb/ai.h
parentfffa7bd1a23b6d0695c5055cd580d0603ff9640d (diff)
downloadscummvm-rg350-ebbee5cef40a8ce7152df717cd804dbf89a22198.tar.gz
scummvm-rg350-ebbee5cef40a8ce7152df717cd804dbf89a22198.tar.bz2
scummvm-rg350-ebbee5cef40a8ce7152df717cd804dbf89a22198.zip
HDB: Add FuncLookUp structs and functions
Diffstat (limited to 'engines/hdb/ai.h')
-rw-r--r--engines/hdb/ai.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/engines/hdb/ai.h b/engines/hdb/ai.h
index 7328c11730..3cb0cc0610 100644
--- a/engines/hdb/ai.h
+++ b/engines/hdb/ai.h
@@ -541,6 +541,10 @@ struct AIEntity {
}
};
+// Structs for Function Table Lookup for SaveGames
+typedef void(*FuncPtr)(AIEntity *);
+typedef void(*EntFuncPtr)(AIEntity *, int, int);
+
struct AIEntTypeInfo {
AIType type;
const char *luaName;
@@ -549,7 +553,13 @@ struct AIEntTypeInfo {
void (*initFunc2)(AIEntity *e);
};
+struct FuncLookUp {
+ void(*function)(AIEntity *e);
+ const char *funcName;
+};
+
extern AIEntTypeInfo aiEntList[];
+extern FuncLookUp aiFuncList[];
struct AIEntLevel2 {
uint16 x;
@@ -783,6 +793,8 @@ public:
bool init();
void clearPersistent();
void restartSystem();
+ const char *funcLookUp(void(*function)(AIEntity *e));
+ FuncPtr funcLookUp(const char *function);
void save(Common::OutSaveFile *out);
void loadSaveFile(Common::InSaveFile *in);
void initAnimInfo();