summaryrefslogtreecommitdiff
path: root/src/plugins
diff options
context:
space:
mode:
authorHaru <haru@dotalux.com>2018-05-01 18:56:28 +0200
committerGitHub <noreply@github.com>2018-05-01 18:56:28 +0200
commit75930315136d7a6b3ce301d09065e3b0386806e0 (patch)
tree539679fec485b593c54dd2ee4096630232638ed4 /src/plugins
parent24360ce305c85b34d814283be9fe7c70a1eff404 (diff)
parent51da42665a00756ecbeae5e264875c312fd1536d (diff)
downloadhercules-75930315136d7a6b3ce301d09065e3b0386806e0.tar.gz
hercules-75930315136d7a6b3ce301d09065e3b0386806e0.tar.bz2
hercules-75930315136d7a6b3ce301d09065e3b0386806e0.tar.xz
hercules-75930315136d7a6b3ce301d09065e3b0386806e0.zip
Merge pull request #2019 from Asheraf/mskillconf
Convert mob_skill_db into libconf format
Diffstat (limited to 'src/plugins')
-rw-r--r--src/plugins/HPMHooking/HPMHooking.Defs.inc8
-rw-r--r--src/plugins/HPMHooking/HPMHooking_map.HPMHooksCore.inc16
-rw-r--r--src/plugins/HPMHooking/HPMHooking_map.HookingPoints.inc4
-rw-r--r--src/plugins/HPMHooking/HPMHooking_map.Hooks.inc108
4 files changed, 102 insertions, 34 deletions
diff --git a/src/plugins/HPMHooking/HPMHooking.Defs.inc b/src/plugins/HPMHooking/HPMHooking.Defs.inc
index a548d4eaf..90d6945c2 100644
--- a/src/plugins/HPMHooking/HPMHooking.Defs.inc
+++ b/src/plugins/HPMHooking/HPMHooking.Defs.inc
@@ -5078,8 +5078,6 @@ typedef bool (*HPMHOOK_pre_mob_parse_row_chatdb) (char ***str, const char **sour
typedef bool (*HPMHOOK_post_mob_parse_row_chatdb) (bool retVal___, char **str, const char *source, int line, int *last_msg_id);
typedef void (*HPMHOOK_pre_mob_readchatdb) (void);
typedef void (*HPMHOOK_post_mob_readchatdb) (void);
-typedef bool (*HPMHOOK_pre_mob_parse_row_mobskilldb) (char ***str, int *columns, int *current);
-typedef bool (*HPMHOOK_post_mob_parse_row_mobskilldb) (bool retVal___, char **str, int columns, int current);
typedef void (*HPMHOOK_pre_mob_readskilldb) (void);
typedef void (*HPMHOOK_post_mob_readskilldb) (void);
typedef bool (*HPMHOOK_pre_mob_readdb_race2) (char **fields[], int *columns, int *current);
@@ -5092,6 +5090,12 @@ typedef void (*HPMHOOK_pre_mob_clear_spawninfo) (void);
typedef void (*HPMHOOK_post_mob_clear_spawninfo) (void);
typedef void (*HPMHOOK_pre_mob_destroy_mob_db) (int *index);
typedef void (*HPMHOOK_post_mob_destroy_mob_db) (int index);
+typedef bool (*HPMHOOK_pre_mob_skill_db_libconfig) (const char **filename, bool *ignore_missing);
+typedef bool (*HPMHOOK_post_mob_skill_db_libconfig) (bool retVal___, const char *filename, bool ignore_missing);
+typedef bool (*HPMHOOK_pre_mob_skill_db_libconfig_sub) (struct config_setting_t **it, int *n);
+typedef bool (*HPMHOOK_post_mob_skill_db_libconfig_sub) (bool retVal___, struct config_setting_t *it, int n);
+typedef bool (*HPMHOOK_pre_mob_skill_db_libconfig_sub_skill) (struct config_setting_t **it, int *n, int *mob_id);
+typedef bool (*HPMHOOK_post_mob_skill_db_libconfig_sub_skill) (bool retVal___, struct config_setting_t *it, int n, int mob_id);
#endif // MAP_MOB_H
#ifdef COMMON_MUTEX_H /* mutex */
typedef struct mutex_data* (*HPMHOOK_pre_mutex_create) (void);
diff --git a/src/plugins/HPMHooking/HPMHooking_map.HPMHooksCore.inc b/src/plugins/HPMHooking/HPMHooking_map.HPMHooksCore.inc
index 19f91bb11..d07c83187 100644
--- a/src/plugins/HPMHooking/HPMHooking_map.HPMHooksCore.inc
+++ b/src/plugins/HPMHooking/HPMHooking_map.HPMHooksCore.inc
@@ -3750,8 +3750,6 @@ struct {
struct HPMHookPoint *HP_mob_parse_row_chatdb_post;
struct HPMHookPoint *HP_mob_readchatdb_pre;
struct HPMHookPoint *HP_mob_readchatdb_post;
- struct HPMHookPoint *HP_mob_parse_row_mobskilldb_pre;
- struct HPMHookPoint *HP_mob_parse_row_mobskilldb_post;
struct HPMHookPoint *HP_mob_readskilldb_pre;
struct HPMHookPoint *HP_mob_readskilldb_post;
struct HPMHookPoint *HP_mob_readdb_race2_pre;
@@ -3764,6 +3762,12 @@ struct {
struct HPMHookPoint *HP_mob_clear_spawninfo_post;
struct HPMHookPoint *HP_mob_destroy_mob_db_pre;
struct HPMHookPoint *HP_mob_destroy_mob_db_post;
+ struct HPMHookPoint *HP_mob_skill_db_libconfig_pre;
+ struct HPMHookPoint *HP_mob_skill_db_libconfig_post;
+ struct HPMHookPoint *HP_mob_skill_db_libconfig_sub_pre;
+ struct HPMHookPoint *HP_mob_skill_db_libconfig_sub_post;
+ struct HPMHookPoint *HP_mob_skill_db_libconfig_sub_skill_pre;
+ struct HPMHookPoint *HP_mob_skill_db_libconfig_sub_skill_post;
struct HPMHookPoint *HP_mutex_create_pre;
struct HPMHookPoint *HP_mutex_create_post;
struct HPMHookPoint *HP_mutex_destroy_pre;
@@ -10085,8 +10089,6 @@ struct {
int HP_mob_parse_row_chatdb_post;
int HP_mob_readchatdb_pre;
int HP_mob_readchatdb_post;
- int HP_mob_parse_row_mobskilldb_pre;
- int HP_mob_parse_row_mobskilldb_post;
int HP_mob_readskilldb_pre;
int HP_mob_readskilldb_post;
int HP_mob_readdb_race2_pre;
@@ -10099,6 +10101,12 @@ struct {
int HP_mob_clear_spawninfo_post;
int HP_mob_destroy_mob_db_pre;
int HP_mob_destroy_mob_db_post;
+ int HP_mob_skill_db_libconfig_pre;
+ int HP_mob_skill_db_libconfig_post;
+ int HP_mob_skill_db_libconfig_sub_pre;
+ int HP_mob_skill_db_libconfig_sub_post;
+ int HP_mob_skill_db_libconfig_sub_skill_pre;
+ int HP_mob_skill_db_libconfig_sub_skill_post;
int HP_mutex_create_pre;
int HP_mutex_create_post;
int HP_mutex_destroy_pre;
diff --git a/src/plugins/HPMHooking/HPMHooking_map.HookingPoints.inc b/src/plugins/HPMHooking/HPMHooking_map.HookingPoints.inc
index 711e25d30..488792200 100644
--- a/src/plugins/HPMHooking/HPMHooking_map.HookingPoints.inc
+++ b/src/plugins/HPMHooking/HPMHooking_map.HookingPoints.inc
@@ -1923,13 +1923,15 @@ struct HookingPointData HookingPoints[] = {
{ HP_POP(mob->read_randommonster, HP_mob_read_randommonster) },
{ HP_POP(mob->parse_row_chatdb, HP_mob_parse_row_chatdb) },
{ HP_POP(mob->readchatdb, HP_mob_readchatdb) },
- { HP_POP(mob->parse_row_mobskilldb, HP_mob_parse_row_mobskilldb) },
{ HP_POP(mob->readskilldb, HP_mob_readskilldb) },
{ HP_POP(mob->readdb_race2, HP_mob_readdb_race2) },
{ HP_POP(mob->readdb_itemratio, HP_mob_readdb_itemratio) },
{ HP_POP(mob->load, HP_mob_load) },
{ HP_POP(mob->clear_spawninfo, HP_mob_clear_spawninfo) },
{ HP_POP(mob->destroy_mob_db, HP_mob_destroy_mob_db) },
+ { HP_POP(mob->skill_db_libconfig, HP_mob_skill_db_libconfig) },
+ { HP_POP(mob->skill_db_libconfig_sub, HP_mob_skill_db_libconfig_sub) },
+ { HP_POP(mob->skill_db_libconfig_sub_skill, HP_mob_skill_db_libconfig_sub_skill) },
/* mutex_interface */
{ HP_POP(mutex->create, HP_mutex_create) },
{ HP_POP(mutex->destroy, HP_mutex_destroy) },
diff --git a/src/plugins/HPMHooking/HPMHooking_map.Hooks.inc b/src/plugins/HPMHooking/HPMHooking_map.Hooks.inc
index 0d07e26a2..718aa77d7 100644
--- a/src/plugins/HPMHooking/HPMHooking_map.Hooks.inc
+++ b/src/plugins/HPMHooking/HPMHooking_map.Hooks.inc
@@ -49770,33 +49770,6 @@ void HP_mob_readchatdb(void) {
}
return;
}
-bool HP_mob_parse_row_mobskilldb(char **str, int columns, int current) {
- int hIndex = 0;
- bool retVal___ = false;
- if (HPMHooks.count.HP_mob_parse_row_mobskilldb_pre > 0) {
- bool (*preHookFunc) (char ***str, int *columns, int *current);
- *HPMforce_return = false;
- for (hIndex = 0; hIndex < HPMHooks.count.HP_mob_parse_row_mobskilldb_pre; hIndex++) {
- preHookFunc = HPMHooks.list.HP_mob_parse_row_mobskilldb_pre[hIndex].func;
- retVal___ = preHookFunc(&str, &columns, &current);
- }
- if (*HPMforce_return) {
- *HPMforce_return = false;
- return retVal___;
- }
- }
- {
- retVal___ = HPMHooks.source.mob.parse_row_mobskilldb(str, columns, current);
- }
- if (HPMHooks.count.HP_mob_parse_row_mobskilldb_post > 0) {
- bool (*postHookFunc) (bool retVal___, char **str, int columns, int current);
- for (hIndex = 0; hIndex < HPMHooks.count.HP_mob_parse_row_mobskilldb_post; hIndex++) {
- postHookFunc = HPMHooks.list.HP_mob_parse_row_mobskilldb_post[hIndex].func;
- retVal___ = postHookFunc(retVal___, str, columns, current);
- }
- }
- return retVal___;
-}
void HP_mob_readskilldb(void) {
int hIndex = 0;
if (HPMHooks.count.HP_mob_readskilldb_pre > 0) {
@@ -49955,6 +49928,87 @@ void HP_mob_destroy_mob_db(int index) {
}
return;
}
+bool HP_mob_skill_db_libconfig(const char *filename, bool ignore_missing) {
+ int hIndex = 0;
+ bool retVal___ = false;
+ if (HPMHooks.count.HP_mob_skill_db_libconfig_pre > 0) {
+ bool (*preHookFunc) (const char **filename, bool *ignore_missing);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_mob_skill_db_libconfig_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_mob_skill_db_libconfig_pre[hIndex].func;
+ retVal___ = preHookFunc(&filename, &ignore_missing);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return retVal___;
+ }
+ }
+ {
+ retVal___ = HPMHooks.source.mob.skill_db_libconfig(filename, ignore_missing);
+ }
+ if (HPMHooks.count.HP_mob_skill_db_libconfig_post > 0) {
+ bool (*postHookFunc) (bool retVal___, const char *filename, bool ignore_missing);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_mob_skill_db_libconfig_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_mob_skill_db_libconfig_post[hIndex].func;
+ retVal___ = postHookFunc(retVal___, filename, ignore_missing);
+ }
+ }
+ return retVal___;
+}
+bool HP_mob_skill_db_libconfig_sub(struct config_setting_t *it, int n) {
+ int hIndex = 0;
+ bool retVal___ = false;
+ if (HPMHooks.count.HP_mob_skill_db_libconfig_sub_pre > 0) {
+ bool (*preHookFunc) (struct config_setting_t **it, int *n);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_mob_skill_db_libconfig_sub_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_mob_skill_db_libconfig_sub_pre[hIndex].func;
+ retVal___ = preHookFunc(&it, &n);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return retVal___;
+ }
+ }
+ {
+ retVal___ = HPMHooks.source.mob.skill_db_libconfig_sub(it, n);
+ }
+ if (HPMHooks.count.HP_mob_skill_db_libconfig_sub_post > 0) {
+ bool (*postHookFunc) (bool retVal___, struct config_setting_t *it, int n);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_mob_skill_db_libconfig_sub_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_mob_skill_db_libconfig_sub_post[hIndex].func;
+ retVal___ = postHookFunc(retVal___, it, n);
+ }
+ }
+ return retVal___;
+}
+bool HP_mob_skill_db_libconfig_sub_skill(struct config_setting_t *it, int n, int mob_id) {
+ int hIndex = 0;
+ bool retVal___ = false;
+ if (HPMHooks.count.HP_mob_skill_db_libconfig_sub_skill_pre > 0) {
+ bool (*preHookFunc) (struct config_setting_t **it, int *n, int *mob_id);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_mob_skill_db_libconfig_sub_skill_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_mob_skill_db_libconfig_sub_skill_pre[hIndex].func;
+ retVal___ = preHookFunc(&it, &n, &mob_id);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return retVal___;
+ }
+ }
+ {
+ retVal___ = HPMHooks.source.mob.skill_db_libconfig_sub_skill(it, n, mob_id);
+ }
+ if (HPMHooks.count.HP_mob_skill_db_libconfig_sub_skill_post > 0) {
+ bool (*postHookFunc) (bool retVal___, struct config_setting_t *it, int n, int mob_id);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_mob_skill_db_libconfig_sub_skill_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_mob_skill_db_libconfig_sub_skill_post[hIndex].func;
+ retVal___ = postHookFunc(retVal___, it, n, mob_id);
+ }
+ }
+ return retVal___;
+}
/* mutex_interface */
struct mutex_data* HP_mutex_create(void) {
int hIndex = 0;