summaryrefslogtreecommitdiff
path: root/src/plugins
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins')
-rw-r--r--src/plugins/HPMHooking/HPMHooking.Defs.inc272
-rw-r--r--src/plugins/HPMHooking/HPMHooking_char.HPMHooksCore.inc8
-rw-r--r--src/plugins/HPMHooking/HPMHooking_char.HookingPoints.inc2
-rw-r--r--src/plugins/HPMHooking/HPMHooking_char.Hooks.inc52
-rw-r--r--src/plugins/HPMHooking/HPMHooking_login.HPMHooksCore.inc8
-rw-r--r--src/plugins/HPMHooking/HPMHooking_login.HookingPoints.inc2
-rw-r--r--src/plugins/HPMHooking/HPMHooking_login.Hooks.inc52
-rw-r--r--src/plugins/HPMHooking/HPMHooking_map.HPMHooksCore.inc400
-rw-r--r--src/plugins/HPMHooking/HPMHooking_map.HookingPoints.inc102
-rw-r--r--src/plugins/HPMHooking/HPMHooking_map.Hooks.inc2578
-rw-r--r--src/plugins/Makefile.in2
11 files changed, 3098 insertions, 380 deletions
diff --git a/src/plugins/HPMHooking/HPMHooking.Defs.inc b/src/plugins/HPMHooking/HPMHooking.Defs.inc
index 28f81b97f..c04eedb05 100644
--- a/src/plugins/HPMHooking/HPMHooking.Defs.inc
+++ b/src/plugins/HPMHooking/HPMHooking.Defs.inc
@@ -1410,6 +1410,10 @@ typedef void (*HPMHOOK_pre_clif_chatname_ack) (int *fd, struct block_list **bl);
typedef void (*HPMHOOK_post_clif_chatname_ack) (int fd, struct block_list *bl);
typedef void (*HPMHOOK_pre_clif_elemname_ack) (int *fd, struct block_list **bl);
typedef void (*HPMHOOK_post_clif_elemname_ack) (int fd, struct block_list *bl);
+typedef void (*HPMHOOK_pre_clif_skillname_ack) (int *fd, struct block_list **bl);
+typedef void (*HPMHOOK_post_clif_skillname_ack) (int fd, struct block_list *bl);
+typedef void (*HPMHOOK_pre_clif_itemname_ack) (int *fd, struct block_list **bl);
+typedef void (*HPMHOOK_post_clif_itemname_ack) (int fd, struct block_list *bl);
typedef void (*HPMHOOK_pre_clif_unknownname_ack) (int *fd, struct block_list **bl);
typedef void (*HPMHOOK_post_clif_unknownname_ack) (int fd, struct block_list *bl);
typedef void (*HPMHOOK_pre_clif_monster_hp_bar) (struct mob_data **md, struct map_session_data **sd);
@@ -2762,6 +2766,14 @@ typedef void (*HPMHOOK_pre_clif_plapineDdukDdak_ack) (int *fd, struct map_sessio
typedef void (*HPMHOOK_post_clif_plapineDdukDdak_ack) (int fd, struct map_session_data *sd);
typedef void (*HPMHOOK_pre_clif_plapineDdukDdak_close) (int *fd, struct map_session_data **sd);
typedef void (*HPMHOOK_post_clif_plapineDdukDdak_close) (int fd, struct map_session_data *sd);
+typedef bool (*HPMHOOK_pre_clif_lapineUpgrade_open) (struct map_session_data **sd, int *item_id);
+typedef bool (*HPMHOOK_post_clif_lapineUpgrade_open) (bool retVal___, struct map_session_data *sd, int item_id);
+typedef bool (*HPMHOOK_pre_clif_lapineUpgrade_result) (struct map_session_data **sd, enum lapineUpgrade_result *result);
+typedef bool (*HPMHOOK_post_clif_lapineUpgrade_result) (bool retVal___, struct map_session_data *sd, enum lapineUpgrade_result result);
+typedef void (*HPMHOOK_pre_clif_pLapineUpgrade_close) (int *fd, struct map_session_data **sd);
+typedef void (*HPMHOOK_post_clif_pLapineUpgrade_close) (int fd, struct map_session_data *sd);
+typedef void (*HPMHOOK_pre_clif_pLapineUpgrade_makeItem) (int *fd, struct map_session_data **sd);
+typedef void (*HPMHOOK_post_clif_pLapineUpgrade_makeItem) (int fd, struct map_session_data *sd);
typedef void (*HPMHOOK_pre_clif_pReqGearOff) (int *fd, struct map_session_data **sd);
typedef void (*HPMHOOK_post_clif_pReqGearOff) (int fd, struct map_session_data *sd);
#endif // MAP_CLIF_H
@@ -5212,20 +5224,32 @@ typedef bool (*HPMHOOK_pre_mapit_exists) (struct s_mapiterator **iter);
typedef bool (*HPMHOOK_post_mapit_exists) (bool retVal___, struct s_mapiterator *iter);
#endif // MAP_MAP_H
#ifdef MAP_MAPREG_H /* mapreg */
-typedef void (*HPMHOOK_pre_mapreg_init) (void);
-typedef void (*HPMHOOK_post_mapreg_init) (void);
-typedef void (*HPMHOOK_pre_mapreg_final) (void);
-typedef void (*HPMHOOK_post_mapreg_final) (void);
typedef int (*HPMHOOK_pre_mapreg_readreg) (int64 *uid);
typedef int (*HPMHOOK_post_mapreg_readreg) (int retVal___, int64 uid);
typedef char* (*HPMHOOK_pre_mapreg_readregstr) (int64 *uid);
typedef char* (*HPMHOOK_post_mapreg_readregstr) (char* retVal___, int64 uid);
+typedef bool (*HPMHOOK_pre_mapreg_set_num_db) (int64 *uid, const char **name, unsigned int *index, int *value);
+typedef bool (*HPMHOOK_post_mapreg_set_num_db) (bool retVal___, int64 uid, const char *name, unsigned int index, int value);
+typedef bool (*HPMHOOK_pre_mapreg_delete_num_db) (int64 *uid, const char **name, unsigned int *index);
+typedef bool (*HPMHOOK_post_mapreg_delete_num_db) (bool retVal___, int64 uid, const char *name, unsigned int index);
typedef bool (*HPMHOOK_pre_mapreg_setreg) (int64 *uid, int *val);
typedef bool (*HPMHOOK_post_mapreg_setreg) (bool retVal___, int64 uid, int val);
+typedef bool (*HPMHOOK_pre_mapreg_set_str_db) (int64 *uid, const char **name, unsigned int *index, const char **value);
+typedef bool (*HPMHOOK_post_mapreg_set_str_db) (bool retVal___, int64 uid, const char *name, unsigned int index, const char *value);
+typedef bool (*HPMHOOK_pre_mapreg_delete_str_db) (int64 *uid, const char **name, unsigned int *index);
+typedef bool (*HPMHOOK_post_mapreg_delete_str_db) (bool retVal___, int64 uid, const char *name, unsigned int index);
typedef bool (*HPMHOOK_pre_mapreg_setregstr) (int64 *uid, const char **str);
typedef bool (*HPMHOOK_post_mapreg_setregstr) (bool retVal___, int64 uid, const char *str);
+typedef void (*HPMHOOK_pre_mapreg_load_num_db) (void);
+typedef void (*HPMHOOK_post_mapreg_load_num_db) (void);
+typedef void (*HPMHOOK_pre_mapreg_load_str_db) (void);
+typedef void (*HPMHOOK_post_mapreg_load_str_db) (void);
typedef void (*HPMHOOK_pre_mapreg_load) (void);
typedef void (*HPMHOOK_post_mapreg_load) (void);
+typedef void (*HPMHOOK_pre_mapreg_save_num_db) (const char **name, unsigned int *index, int *value);
+typedef void (*HPMHOOK_post_mapreg_save_num_db) (const char *name, unsigned int index, int value);
+typedef void (*HPMHOOK_pre_mapreg_save_str_db) (const char **name, unsigned int *index, const char **value);
+typedef void (*HPMHOOK_post_mapreg_save_str_db) (const char *name, unsigned int index, const char *value);
typedef void (*HPMHOOK_pre_mapreg_save) (void);
typedef void (*HPMHOOK_post_mapreg_save) (void);
typedef int (*HPMHOOK_pre_mapreg_save_timer) (int *tid, int64 *tick, int *id, intptr_t *data);
@@ -5234,8 +5258,12 @@ typedef int (*HPMHOOK_pre_mapreg_destroyreg) (union DBKey *key, struct DBData **
typedef int (*HPMHOOK_post_mapreg_destroyreg) (int retVal___, union DBKey key, struct DBData *data, va_list ap);
typedef void (*HPMHOOK_pre_mapreg_reload) (void);
typedef void (*HPMHOOK_post_mapreg_reload) (void);
-typedef bool (*HPMHOOK_pre_mapreg_config_read) (const char **filename, const struct config_setting_t **config, bool *imported);
-typedef bool (*HPMHOOK_post_mapreg_config_read) (bool retVal___, const char *filename, const struct config_setting_t *config, bool imported);
+typedef bool (*HPMHOOK_pre_mapreg_config_read_registry) (const char **filename, const struct config_setting_t **config, bool *imported);
+typedef bool (*HPMHOOK_post_mapreg_config_read_registry) (bool retVal___, const char *filename, const struct config_setting_t *config, bool imported);
+typedef void (*HPMHOOK_pre_mapreg_final) (void);
+typedef void (*HPMHOOK_post_mapreg_final) (void);
+typedef void (*HPMHOOK_pre_mapreg_init) (void);
+typedef void (*HPMHOOK_post_mapreg_init) (void);
#endif // MAP_MAPREG_H
#ifdef COMMON_MD5CALC_H /* md5 */
typedef void (*HPMHOOK_pre_md5_string) (const char **string, char **output);
@@ -5452,8 +5480,8 @@ typedef struct block_list* (*HPMHOOK_pre_mob_getmasterhpltmaxrate) (struct mob_d
typedef struct block_list* (*HPMHOOK_post_mob_getmasterhpltmaxrate) (struct block_list* retVal___, struct mob_data *md, int rate);
typedef int (*HPMHOOK_pre_mob_getfriendstatus_sub) (struct block_list **bl, va_list ap);
typedef int (*HPMHOOK_post_mob_getfriendstatus_sub) (int retVal___, struct block_list *bl, va_list ap);
-typedef struct mob_data* (*HPMHOOK_pre_mob_getfriendstatus) (struct mob_data **md, int *cond1, int *cond2);
-typedef struct mob_data* (*HPMHOOK_post_mob_getfriendstatus) (struct mob_data* retVal___, struct mob_data *md, int cond1, int cond2);
+typedef struct block_list* (*HPMHOOK_pre_mob_getfriendstatus) (struct mob_data **md, int *cond1, int *cond2);
+typedef struct block_list* (*HPMHOOK_post_mob_getfriendstatus) (struct block_list* retVal___, struct mob_data *md, int cond1, int cond2);
typedef int (*HPMHOOK_pre_mob_skill_use) (struct mob_data **md, int64 *tick, int *event);
typedef int (*HPMHOOK_post_mob_skill_use) (int retVal___, struct mob_data *md, int64 tick, int event);
typedef int (*HPMHOOK_pre_mob_skill_event) (struct mob_data **md, struct block_list **src, int64 *tick, int *flag);
@@ -5830,6 +5858,10 @@ typedef int (*HPMHOOK_pre_npc_secure_timeout_timer) (int *tid, int64 *tick, int
typedef int (*HPMHOOK_post_npc_secure_timeout_timer) (int retVal___, int tid, int64 tick, int id, intptr_t data);
#endif // MAP_NPC_H
#ifdef COMMON_NULLPO_H /* nullpo */
+typedef void (*HPMHOOK_pre_nullpo_init) (void);
+typedef void (*HPMHOOK_post_nullpo_init) (void);
+typedef void (*HPMHOOK_pre_nullpo_final) (void);
+typedef void (*HPMHOOK_post_nullpo_final) (void);
typedef void (*HPMHOOK_pre_nullpo_assert_report) (const char **file, int *line, const char **func, const char **targetname, const char **title);
typedef void (*HPMHOOK_post_nullpo_assert_report) (const char *file, int line, const char *func, const char *targetname, const char *title);
#endif // COMMON_NULLPO_H
@@ -6184,8 +6216,14 @@ typedef int (*HPMHOOK_pre_pc_checkitem) (struct map_session_data **sd);
typedef int (*HPMHOOK_post_pc_checkitem) (int retVal___, struct map_session_data *sd);
typedef int (*HPMHOOK_pre_pc_useitem) (struct map_session_data **sd, int *n);
typedef int (*HPMHOOK_post_pc_useitem) (int retVal___, struct map_session_data *sd, int n);
-typedef int (*HPMHOOK_pre_pc_itemskill_clear) (struct map_session_data **sd);
-typedef int (*HPMHOOK_post_pc_itemskill_clear) (int retVal___, struct map_session_data *sd);
+typedef void (*HPMHOOK_pre_pc_autocast_clear_current) (struct map_session_data **sd);
+typedef void (*HPMHOOK_post_pc_autocast_clear_current) (struct map_session_data *sd);
+typedef void (*HPMHOOK_pre_pc_autocast_clear) (struct map_session_data **sd);
+typedef void (*HPMHOOK_post_pc_autocast_clear) (struct map_session_data *sd);
+typedef void (*HPMHOOK_pre_pc_autocast_set_current) (struct map_session_data **sd, int *skill_id);
+typedef void (*HPMHOOK_post_pc_autocast_set_current) (struct map_session_data *sd, int skill_id);
+typedef void (*HPMHOOK_pre_pc_autocast_remove) (struct map_session_data **sd, enum autocast_type *type, int *skill_id, int *skill_lv);
+typedef void (*HPMHOOK_post_pc_autocast_remove) (struct map_session_data *sd, enum autocast_type type, int skill_id, int skill_lv);
typedef int (*HPMHOOK_pre_pc_skillatk_bonus) (struct map_session_data **sd, uint16 *skill_id);
typedef int (*HPMHOOK_post_pc_skillatk_bonus) (int retVal___, struct map_session_data *sd, uint16 skill_id);
typedef int (*HPMHOOK_pre_pc_skillheal_bonus) (struct map_session_data **sd, uint16 *skill_id);
@@ -6206,6 +6244,10 @@ typedef int (*HPMHOOK_pre_pc_percentheal) (struct map_session_data **sd, int *hp
typedef int (*HPMHOOK_post_pc_percentheal) (int retVal___, struct map_session_data *sd, int hp, int sp);
typedef int (*HPMHOOK_pre_pc_jobchange) (struct map_session_data **sd, int *class, int *upper);
typedef int (*HPMHOOK_post_pc_jobchange) (int retVal___, struct map_session_data *sd, int class, int upper);
+typedef void (*HPMHOOK_pre_pc_hide) (struct map_session_data **sd, bool *show_msg);
+typedef void (*HPMHOOK_post_pc_hide) (struct map_session_data *sd, bool show_msg);
+typedef void (*HPMHOOK_pre_pc_unhide) (struct map_session_data **sd, bool *show_msg);
+typedef void (*HPMHOOK_post_pc_unhide) (struct map_session_data *sd, bool show_msg);
typedef int (*HPMHOOK_pre_pc_setoption) (struct map_session_data **sd, int *type);
typedef int (*HPMHOOK_post_pc_setoption) (int retVal___, struct map_session_data *sd, int type);
typedef int (*HPMHOOK_pre_pc_setcart) (struct map_session_data **sd, int *type);
@@ -6336,10 +6378,10 @@ typedef void (*HPMHOOK_pre_pc_itemcd_do) (struct map_session_data **sd, bool *lo
typedef void (*HPMHOOK_post_pc_itemcd_do) (struct map_session_data *sd, bool load);
typedef int (*HPMHOOK_pre_pc_load_combo) (struct map_session_data **sd);
typedef int (*HPMHOOK_post_pc_load_combo) (int retVal___, struct map_session_data *sd);
-typedef void (*HPMHOOK_pre_pc_add_charm) (struct map_session_data **sd, int *interval, int *max, int *type);
-typedef void (*HPMHOOK_post_pc_add_charm) (struct map_session_data *sd, int interval, int max, int type);
-typedef void (*HPMHOOK_pre_pc_del_charm) (struct map_session_data **sd, int *count, int *type);
-typedef void (*HPMHOOK_post_pc_del_charm) (struct map_session_data *sd, int count, int type);
+typedef void (*HPMHOOK_pre_pc_add_charm) (struct map_session_data **sd, int *interval, int *max, enum spirit_charm_types *type);
+typedef void (*HPMHOOK_post_pc_add_charm) (struct map_session_data *sd, int interval, int max, enum spirit_charm_types type);
+typedef void (*HPMHOOK_pre_pc_del_charm) (struct map_session_data **sd, int *count, enum spirit_charm_types *type);
+typedef void (*HPMHOOK_post_pc_del_charm) (struct map_session_data *sd, int count, enum spirit_charm_types type);
typedef void (*HPMHOOK_pre_pc_baselevelchanged) (struct map_session_data **sd);
typedef void (*HPMHOOK_post_pc_baselevelchanged) (struct map_session_data *sd);
typedef int (*HPMHOOK_pre_pc_level_penalty_mod) (int *diff, unsigned char *race, uint32 *mode, int *type);
@@ -6496,6 +6538,8 @@ typedef int (*HPMHOOK_pre_pet_final) (void);
typedef int (*HPMHOOK_post_pet_final) (int retVal___);
typedef int (*HPMHOOK_pre_pet_hungry_val) (struct pet_data **pd);
typedef int (*HPMHOOK_post_pet_hungry_val) (int retVal___, struct pet_data *pd);
+typedef void (*HPMHOOK_pre_pet_set_hunger) (struct pet_data **pd, int *value);
+typedef void (*HPMHOOK_post_pet_set_hunger) (struct pet_data *pd, int value);
typedef void (*HPMHOOK_pre_pet_set_intimate) (struct pet_data **pd, int *value);
typedef void (*HPMHOOK_post_pet_set_intimate) (struct pet_data *pd, int value);
typedef int (*HPMHOOK_pre_pet_create_egg) (struct map_session_data **sd, int *item_id);
@@ -6836,8 +6880,8 @@ typedef void (*HPMHOOK_pre_script_set_constant2) (const char **name, int *value,
typedef void (*HPMHOOK_post_script_set_constant2) (const char *name, int value, bool is_parameter, bool is_deprecated);
typedef bool (*HPMHOOK_pre_script_get_constant) (const char **name, int **value);
typedef bool (*HPMHOOK_post_script_get_constant) (bool retVal___, const char *name, int *value);
-typedef void (*HPMHOOK_pre_script_label_add) (int *key, int *pos);
-typedef void (*HPMHOOK_post_script_label_add) (int key, int pos);
+typedef void (*HPMHOOK_pre_script_label_add) (int *key, int *pos, enum script_label_flags *flags);
+typedef void (*HPMHOOK_post_script_label_add) (int key, int pos, enum script_label_flags flags);
typedef void (*HPMHOOK_pre_script_run) (struct script_code **rootscript, int *pos, int *rid, int *oid);
typedef void (*HPMHOOK_post_script_run) (struct script_code *rootscript, int pos, int rid, int oid);
typedef void (*HPMHOOK_pre_script_run_npc) (struct script_code **rootscript, int *pos, int *rid, int *oid);
@@ -6902,6 +6946,8 @@ typedef const char* (*HPMHOOK_pre_script_parse_syntax_close_sub) (const char **p
typedef const char* (*HPMHOOK_post_script_parse_syntax_close_sub) (const char* retVal___, const char *p, int *flag);
typedef const char* (*HPMHOOK_pre_script_parse_syntax) (const char **p);
typedef const char* (*HPMHOOK_post_script_parse_syntax) (const char* retVal___, const char *p);
+typedef const char* (*HPMHOOK_pre_script_parse_syntax_function) (const char **p, bool *is_public);
+typedef const char* (*HPMHOOK_post_script_parse_syntax_function) (const char* retVal___, const char *p, bool is_public);
typedef c_op (*HPMHOOK_pre_script_get_com) (const struct script_buf **scriptbuf, int **pos);
typedef c_op (*HPMHOOK_post_script_get_com) (c_op retVal___, const struct script_buf *scriptbuf, int *pos);
typedef int (*HPMHOOK_pre_script_get_num) (const struct script_buf **scriptbuf, int **pos);
@@ -6966,6 +7012,8 @@ typedef const char* (*HPMHOOK_pre_script_print_line) (StringBuf **buf, const cha
typedef const char* (*HPMHOOK_post_script_print_line) (const char* retVal___, StringBuf *buf, const char *p, const char *mark, int line);
typedef void (*HPMHOOK_pre_script_errorwarning_sub) (StringBuf **buf, const char **src, const char **file, int *start_line, const char **error_msg, const char **error_pos);
typedef void (*HPMHOOK_post_script_errorwarning_sub) (StringBuf *buf, const char *src, const char *file, int start_line, const char *error_msg, const char *error_pos);
+typedef bool (*HPMHOOK_pre_script_is_permanent_variable) (const char **name);
+typedef bool (*HPMHOOK_post_script_is_permanent_variable) (bool retVal___, const char *name);
typedef int (*HPMHOOK_pre_script_set_reg) (struct script_state **st, struct map_session_data **sd, int64 *num, const char **name, const void **value, struct reg_db **ref);
typedef int (*HPMHOOK_post_script_set_reg) (int retVal___, struct script_state *st, struct map_session_data *sd, int64 num, const char *name, const void *value, struct reg_db *ref);
typedef void (*HPMHOOK_pre_script_set_reg_ref_str) (struct script_state **st, struct reg_db **n, int64 *num, const char **name, const char **str);
@@ -7182,10 +7230,10 @@ typedef void (*HPMHOOK_pre_skill_read_db) (bool *minimal);
typedef void (*HPMHOOK_post_skill_read_db) (bool minimal);
typedef int (*HPMHOOK_pre_skill_get_index) (int *skill_id);
typedef int (*HPMHOOK_post_skill_get_index) (int retVal___, int skill_id);
-typedef int (*HPMHOOK_pre_skill_get_type) (int *skill_id);
-typedef int (*HPMHOOK_post_skill_get_type) (int retVal___, int skill_id);
-typedef int (*HPMHOOK_pre_skill_get_hit) (int *skill_id);
-typedef int (*HPMHOOK_post_skill_get_hit) (int retVal___, int skill_id);
+typedef int (*HPMHOOK_pre_skill_get_type) (int *skill_id, int *skill_lv);
+typedef int (*HPMHOOK_post_skill_get_type) (int retVal___, int skill_id, int skill_lv);
+typedef int (*HPMHOOK_pre_skill_get_hit) (int *skill_id, int *skill_lv);
+typedef int (*HPMHOOK_post_skill_get_hit) (int retVal___, int skill_id, int skill_lv);
typedef int (*HPMHOOK_pre_skill_get_inf) (int *skill_id);
typedef int (*HPMHOOK_post_skill_get_inf) (int retVal___, int skill_id);
typedef int (*HPMHOOK_pre_skill_get_ele) (int *skill_id, int *skill_lv);
@@ -7204,20 +7252,30 @@ typedef int (*HPMHOOK_pre_skill_get_hp) (int *skill_id, int *skill_lv);
typedef int (*HPMHOOK_post_skill_get_hp) (int retVal___, int skill_id, int skill_lv);
typedef int (*HPMHOOK_pre_skill_get_mhp) (int *skill_id, int *skill_lv);
typedef int (*HPMHOOK_post_skill_get_mhp) (int retVal___, int skill_id, int skill_lv);
+typedef int (*HPMHOOK_pre_skill_get_msp) (int *skill_id, int *skill_lv);
+typedef int (*HPMHOOK_post_skill_get_msp) (int retVal___, int skill_id, int skill_lv);
typedef int (*HPMHOOK_pre_skill_get_sp) (int *skill_id, int *skill_lv);
typedef int (*HPMHOOK_post_skill_get_sp) (int retVal___, int skill_id, int skill_lv);
typedef int (*HPMHOOK_pre_skill_get_hp_rate) (int *skill_id, int *skill_lv);
typedef int (*HPMHOOK_post_skill_get_hp_rate) (int retVal___, int skill_id, int skill_lv);
typedef int (*HPMHOOK_pre_skill_get_sp_rate) (int *skill_id, int *skill_lv);
typedef int (*HPMHOOK_post_skill_get_sp_rate) (int retVal___, int skill_id, int skill_lv);
-typedef int (*HPMHOOK_pre_skill_get_state) (int *skill_id);
-typedef int (*HPMHOOK_post_skill_get_state) (int retVal___, int skill_id);
+typedef int (*HPMHOOK_pre_skill_get_state) (int *skill_id, int *skill_lv);
+typedef int (*HPMHOOK_post_skill_get_state) (int retVal___, int skill_id, int skill_lv);
typedef int (*HPMHOOK_pre_skill_get_spiritball) (int *skill_id, int *skill_lv);
typedef int (*HPMHOOK_post_skill_get_spiritball) (int retVal___, int skill_id, int skill_lv);
typedef int (*HPMHOOK_pre_skill_get_itemid) (int *skill_id, int *item_idx);
typedef int (*HPMHOOK_post_skill_get_itemid) (int retVal___, int skill_id, int item_idx);
-typedef int (*HPMHOOK_pre_skill_get_itemqty) (int *skill_id, int *item_idx);
-typedef int (*HPMHOOK_post_skill_get_itemqty) (int retVal___, int skill_id, int item_idx);
+typedef int (*HPMHOOK_pre_skill_get_itemqty) (int *skill_id, int *item_idx, int *skill_lv);
+typedef int (*HPMHOOK_post_skill_get_itemqty) (int retVal___, int skill_id, int item_idx, int skill_lv);
+typedef bool (*HPMHOOK_pre_skill_get_item_any_flag) (int *skill_id, int *skill_lv);
+typedef bool (*HPMHOOK_post_skill_get_item_any_flag) (bool retVal___, int skill_id, int skill_lv);
+typedef int (*HPMHOOK_pre_skill_get_equip_id) (int *skill_id, int *item_idx);
+typedef int (*HPMHOOK_post_skill_get_equip_id) (int retVal___, int skill_id, int item_idx);
+typedef int (*HPMHOOK_pre_skill_get_equip_amount) (int *skill_id, int *item_idx, int *skill_lv);
+typedef int (*HPMHOOK_post_skill_get_equip_amount) (int retVal___, int skill_id, int item_idx, int skill_lv);
+typedef bool (*HPMHOOK_pre_skill_get_equip_any_flag) (int *skill_id, int *skill_lv);
+typedef bool (*HPMHOOK_post_skill_get_equip_any_flag) (bool retVal___, int skill_id, int skill_lv);
typedef int (*HPMHOOK_pre_skill_get_zeny) (int *skill_id, int *skill_lv);
typedef int (*HPMHOOK_post_skill_get_zeny) (int retVal___, int skill_id, int skill_lv);
typedef int (*HPMHOOK_pre_skill_get_num) (int *skill_id, int *skill_lv);
@@ -7236,32 +7294,32 @@ typedef int (*HPMHOOK_pre_skill_get_castnodex) (int *skill_id, int *skill_lv);
typedef int (*HPMHOOK_post_skill_get_castnodex) (int retVal___, int skill_id, int skill_lv);
typedef int (*HPMHOOK_pre_skill_get_delaynodex) (int *skill_id, int *skill_lv);
typedef int (*HPMHOOK_post_skill_get_delaynodex) (int retVal___, int skill_id, int skill_lv);
-typedef int (*HPMHOOK_pre_skill_get_castdef) (int *skill_id);
-typedef int (*HPMHOOK_post_skill_get_castdef) (int retVal___, int skill_id);
+typedef int (*HPMHOOK_pre_skill_get_castdef) (int *skill_id, int *skill_lv);
+typedef int (*HPMHOOK_post_skill_get_castdef) (int retVal___, int skill_id, int skill_lv);
typedef int (*HPMHOOK_pre_skill_get_weapontype) (int *skill_id);
typedef int (*HPMHOOK_post_skill_get_weapontype) (int retVal___, int skill_id);
typedef int (*HPMHOOK_pre_skill_get_ammotype) (int *skill_id);
typedef int (*HPMHOOK_post_skill_get_ammotype) (int retVal___, int skill_id);
typedef int (*HPMHOOK_pre_skill_get_ammo_qty) (int *skill_id, int *skill_lv);
typedef int (*HPMHOOK_post_skill_get_ammo_qty) (int retVal___, int skill_id, int skill_lv);
-typedef int (*HPMHOOK_pre_skill_get_unit_id) (int *skill_id, int *flag);
-typedef int (*HPMHOOK_post_skill_get_unit_id) (int retVal___, int skill_id, int flag);
+typedef int (*HPMHOOK_pre_skill_get_unit_id) (int *skill_id, int *skill_lv, int *flag);
+typedef int (*HPMHOOK_post_skill_get_unit_id) (int retVal___, int skill_id, int skill_lv, int flag);
typedef int (*HPMHOOK_pre_skill_get_inf2) (int *skill_id);
typedef int (*HPMHOOK_post_skill_get_inf2) (int retVal___, int skill_id);
-typedef int (*HPMHOOK_pre_skill_get_castcancel) (int *skill_id);
-typedef int (*HPMHOOK_post_skill_get_castcancel) (int retVal___, int skill_id);
+typedef int (*HPMHOOK_pre_skill_get_castcancel) (int *skill_id, int *skill_lv);
+typedef int (*HPMHOOK_post_skill_get_castcancel) (int retVal___, int skill_id, int skill_lv);
typedef int (*HPMHOOK_pre_skill_get_maxcount) (int *skill_id, int *skill_lv);
typedef int (*HPMHOOK_post_skill_get_maxcount) (int retVal___, int skill_id, int skill_lv);
typedef int (*HPMHOOK_pre_skill_get_blewcount) (int *skill_id, int *skill_lv);
typedef int (*HPMHOOK_post_skill_get_blewcount) (int retVal___, int skill_id, int skill_lv);
typedef int (*HPMHOOK_pre_skill_get_unit_flag) (int *skill_id);
typedef int (*HPMHOOK_post_skill_get_unit_flag) (int retVal___, int skill_id);
-typedef int (*HPMHOOK_pre_skill_get_unit_target) (int *skill_id);
-typedef int (*HPMHOOK_post_skill_get_unit_target) (int retVal___, int skill_id);
-typedef int (*HPMHOOK_pre_skill_get_unit_interval) (int *skill_id);
-typedef int (*HPMHOOK_post_skill_get_unit_interval) (int retVal___, int skill_id);
-typedef int (*HPMHOOK_pre_skill_get_unit_bl_target) (int *skill_id);
-typedef int (*HPMHOOK_post_skill_get_unit_bl_target) (int retVal___, int skill_id);
+typedef int (*HPMHOOK_pre_skill_get_unit_target) (int *skill_id, int *skill_lv);
+typedef int (*HPMHOOK_post_skill_get_unit_target) (int retVal___, int skill_id, int skill_lv);
+typedef int (*HPMHOOK_pre_skill_get_unit_interval) (int *skill_id, int *skill_lv);
+typedef int (*HPMHOOK_post_skill_get_unit_interval) (int retVal___, int skill_id, int skill_lv);
+typedef int (*HPMHOOK_pre_skill_get_unit_bl_target) (int *skill_id, int *skill_lv);
+typedef int (*HPMHOOK_post_skill_get_unit_bl_target) (int retVal___, int skill_id, int skill_lv);
typedef int (*HPMHOOK_pre_skill_get_unit_layout_type) (int *skill_id, int *skill_lv);
typedef int (*HPMHOOK_post_skill_get_unit_layout_type) (int retVal___, int skill_id, int skill_lv);
typedef int (*HPMHOOK_pre_skill_get_unit_range) (int *skill_id, int *skill_lv);
@@ -7282,8 +7340,8 @@ typedef bool (*HPMHOOK_pre_skill_is_combo) (int *skill_id);
typedef bool (*HPMHOOK_post_skill_is_combo) (bool retVal___, int skill_id);
typedef int (*HPMHOOK_pre_skill_name2id) (const char **name);
typedef int (*HPMHOOK_post_skill_name2id) (int retVal___, const char *name);
-typedef int (*HPMHOOK_pre_skill_isammotype) (struct map_session_data **sd, int *skill_id);
-typedef int (*HPMHOOK_post_skill_isammotype) (int retVal___, struct map_session_data *sd, int skill_id);
+typedef int (*HPMHOOK_pre_skill_isammotype) (struct map_session_data **sd, int *skill_id, int *skill_lv);
+typedef int (*HPMHOOK_post_skill_isammotype) (int retVal___, struct map_session_data *sd, int skill_id, int skill_lv);
typedef int (*HPMHOOK_pre_skill_castend_id) (int *tid, int64 *tick, int *id, intptr_t *data);
typedef int (*HPMHOOK_post_skill_castend_id) (int retVal___, int tid, int64 tick, int id, intptr_t data);
typedef int (*HPMHOOK_pre_skill_castend_pos) (int *tid, int64 *tick, int *id, intptr_t *data);
@@ -7314,8 +7372,8 @@ typedef int (*HPMHOOK_pre_skill_delunit) (struct skill_unit **su);
typedef int (*HPMHOOK_post_skill_delunit) (int retVal___, struct skill_unit *su);
typedef struct skill_unit_group* (*HPMHOOK_pre_skill_init_unitgroup) (struct block_list **src, int *count, uint16 *skill_id, uint16 *skill_lv, int *unit_id, int *limit, int *interval);
typedef struct skill_unit_group* (*HPMHOOK_post_skill_init_unitgroup) (struct skill_unit_group* retVal___, struct block_list *src, int count, uint16 skill_id, uint16 skill_lv, int unit_id, int limit, int interval);
-typedef int (*HPMHOOK_pre_skill_del_unitgroup) (struct skill_unit_group **group, const char **file, int *line, const char **func);
-typedef int (*HPMHOOK_post_skill_del_unitgroup) (int retVal___, struct skill_unit_group *group, const char *file, int line, const char *func);
+typedef int (*HPMHOOK_pre_skill_del_unitgroup) (struct skill_unit_group **group);
+typedef int (*HPMHOOK_post_skill_del_unitgroup) (int retVal___, struct skill_unit_group *group);
typedef int (*HPMHOOK_pre_skill_clear_unitgroup) (struct block_list **src);
typedef int (*HPMHOOK_post_skill_clear_unitgroup) (int retVal___, struct block_list *src);
typedef int (*HPMHOOK_pre_skill_clear_group) (struct block_list **bl, int *flag);
@@ -7332,12 +7390,18 @@ typedef int (*HPMHOOK_pre_skill_vf_cast_fix) (struct block_list **bl, double *ti
typedef int (*HPMHOOK_post_skill_vf_cast_fix) (int retVal___, struct block_list *bl, double time, uint16 skill_id, uint16 skill_lv);
typedef int (*HPMHOOK_pre_skill_delay_fix) (struct block_list **bl, uint16 *skill_id, uint16 *skill_lv);
typedef int (*HPMHOOK_post_skill_delay_fix) (int retVal___, struct block_list *bl, uint16 skill_id, uint16 skill_lv);
-typedef bool (*HPMHOOK_pre_skill_is_item_skill) (struct map_session_data **sd, int *skill_id, int *skill_lv);
-typedef bool (*HPMHOOK_post_skill_is_item_skill) (bool retVal___, struct map_session_data *sd, int skill_id, int skill_lv);
+typedef int (*HPMHOOK_pre_skill_check_condition_required_equip) (struct map_session_data **sd, int *skill_id, int *skill_lv);
+typedef int (*HPMHOOK_post_skill_check_condition_required_equip) (int retVal___, struct map_session_data *sd, int skill_id, int skill_lv);
typedef int (*HPMHOOK_pre_skill_check_condition_castbegin) (struct map_session_data **sd, uint16 *skill_id, uint16 *skill_lv);
typedef int (*HPMHOOK_post_skill_check_condition_castbegin) (int retVal___, struct map_session_data *sd, uint16 skill_id, uint16 skill_lv);
+typedef int (*HPMHOOK_pre_skill_check_condition_required_items) (struct map_session_data **sd, int *skill_id, int *skill_lv);
+typedef int (*HPMHOOK_post_skill_check_condition_required_items) (int retVal___, struct map_session_data *sd, int skill_id, int skill_lv);
+typedef bool (*HPMHOOK_pre_skill_items_required) (struct map_session_data **sd, int *skill_id, int *skill_lv);
+typedef bool (*HPMHOOK_post_skill_items_required) (bool retVal___, struct map_session_data *sd, int skill_id, int skill_lv);
typedef int (*HPMHOOK_pre_skill_check_condition_castend) (struct map_session_data **sd, uint16 *skill_id, uint16 *skill_lv);
typedef int (*HPMHOOK_post_skill_check_condition_castend) (int retVal___, struct map_session_data *sd, uint16 skill_id, uint16 skill_lv);
+typedef int (*HPMHOOK_pre_skill_get_any_item_index) (struct map_session_data **sd, int *skill_id, int *skill_lv);
+typedef int (*HPMHOOK_post_skill_get_any_item_index) (int retVal___, struct map_session_data *sd, int skill_id, int skill_lv);
typedef int (*HPMHOOK_pre_skill_consume_requirement) (struct map_session_data **sd, uint16 *skill_id, uint16 *skill_lv, short *type);
typedef int (*HPMHOOK_post_skill_consume_requirement) (int retVal___, struct map_session_data *sd, uint16 skill_id, uint16 skill_lv, short type);
typedef struct skill_condition (*HPMHOOK_pre_skill_get_requirement) (struct map_session_data **sd, uint16 *skill_id, uint16 *skill_lv);
@@ -7384,6 +7448,8 @@ typedef int (*HPMHOOK_pre_skill_not_ok_hom_unknown) (uint16 *skill_id, struct ho
typedef int (*HPMHOOK_post_skill_not_ok_hom_unknown) (int retVal___, uint16 skill_id, struct homun_data *hd);
typedef int (*HPMHOOK_pre_skill_not_ok_mercenary) (uint16 *skill_id, struct mercenary_data **md);
typedef int (*HPMHOOK_post_skill_not_ok_mercenary) (int retVal___, uint16 skill_id, struct mercenary_data *md);
+typedef void (*HPMHOOK_pre_skill_validate_autocast_data) (struct map_session_data **sd, int *skill_id, int *skill_lv);
+typedef void (*HPMHOOK_post_skill_validate_autocast_data) (struct map_session_data *sd, int skill_id, int skill_lv);
typedef int (*HPMHOOK_pre_skill_chastle_mob_changetarget) (struct block_list **bl, va_list ap);
typedef int (*HPMHOOK_post_skill_chastle_mob_changetarget) (int retVal___, struct block_list *bl, va_list ap);
typedef int (*HPMHOOK_pre_skill_can_produce_mix) (struct map_session_data **sd, int *nameid, int *trigger, int *qty);
@@ -7422,8 +7488,8 @@ typedef int (*HPMHOOK_pre_skill_check_unit_range2) (struct block_list **bl, int
typedef int (*HPMHOOK_post_skill_check_unit_range2) (int retVal___, struct block_list *bl, int x, int y, uint16 skill_id, uint16 skill_lv);
typedef int (*HPMHOOK_pre_skill_check_unit_range2_sub) (struct block_list **bl, va_list ap);
typedef int (*HPMHOOK_post_skill_check_unit_range2_sub) (int retVal___, struct block_list *bl, va_list ap);
-typedef void (*HPMHOOK_pre_skill_toggle_magicpower) (struct block_list **bl, uint16 *skill_id);
-typedef void (*HPMHOOK_post_skill_toggle_magicpower) (struct block_list *bl, uint16 skill_id);
+typedef void (*HPMHOOK_pre_skill_toggle_magicpower) (struct block_list **bl, uint16 *skill_id, int *skill_lv);
+typedef void (*HPMHOOK_post_skill_toggle_magicpower) (struct block_list *bl, uint16 skill_id, int skill_lv);
typedef int (*HPMHOOK_pre_skill_magic_reflect) (struct block_list **src, struct block_list **bl, int *type);
typedef int (*HPMHOOK_post_skill_magic_reflect) (int retVal___, struct block_list *src, struct block_list *bl, int type);
typedef int (*HPMHOOK_pre_skill_onskillusage) (struct map_session_data **sd, struct block_list **bl, uint16 *skill_id, int64 *tick);
@@ -7504,42 +7570,130 @@ typedef void (*HPMHOOK_pre_skill_init_unit_layout) (void);
typedef void (*HPMHOOK_post_skill_init_unit_layout) (void);
typedef void (*HPMHOOK_pre_skill_init_unit_layout_unknown) (int *skill_idx, int *pos);
typedef void (*HPMHOOK_post_skill_init_unit_layout_unknown) (int skill_idx, int pos);
+typedef void (*HPMHOOK_pre_skill_validate_id) (struct config_setting_t **conf, struct s_skill_db **sk, int *conf_index);
+typedef void (*HPMHOOK_post_skill_validate_id) (struct config_setting_t *conf, struct s_skill_db *sk, int conf_index);
+typedef bool (*HPMHOOK_pre_skill_name_contains_invalid_character) (const char **name);
+typedef bool (*HPMHOOK_post_skill_name_contains_invalid_character) (bool retVal___, const char *name);
+typedef void (*HPMHOOK_pre_skill_validate_name) (struct config_setting_t **conf, struct s_skill_db **sk);
+typedef void (*HPMHOOK_post_skill_validate_name) (struct config_setting_t *conf, struct s_skill_db *sk);
+typedef void (*HPMHOOK_pre_skill_validate_max_level) (struct config_setting_t **conf, struct s_skill_db **sk);
+typedef void (*HPMHOOK_post_skill_validate_max_level) (struct config_setting_t *conf, struct s_skill_db *sk);
+typedef void (*HPMHOOK_pre_skill_validate_description) (struct config_setting_t **conf, struct s_skill_db **sk);
+typedef void (*HPMHOOK_post_skill_validate_description) (struct config_setting_t *conf, struct s_skill_db *sk);
+typedef void (*HPMHOOK_pre_skill_validate_range) (struct config_setting_t **conf, struct s_skill_db **sk);
+typedef void (*HPMHOOK_post_skill_validate_range) (struct config_setting_t *conf, struct s_skill_db *sk);
typedef void (*HPMHOOK_pre_skill_validate_hittype) (struct config_setting_t **conf, struct s_skill_db **sk);
typedef void (*HPMHOOK_post_skill_validate_hittype) (struct config_setting_t *conf, struct s_skill_db *sk);
typedef void (*HPMHOOK_pre_skill_validate_skilltype) (struct config_setting_t **conf, struct s_skill_db **sk);
typedef void (*HPMHOOK_post_skill_validate_skilltype) (struct config_setting_t *conf, struct s_skill_db *sk);
+typedef void (*HPMHOOK_pre_skill_validate_skillinfo) (struct config_setting_t **conf, struct s_skill_db **sk);
+typedef void (*HPMHOOK_post_skill_validate_skillinfo) (struct config_setting_t *conf, struct s_skill_db *sk);
typedef void (*HPMHOOK_pre_skill_validate_attacktype) (struct config_setting_t **conf, struct s_skill_db **sk);
typedef void (*HPMHOOK_post_skill_validate_attacktype) (struct config_setting_t *conf, struct s_skill_db *sk);
typedef void (*HPMHOOK_pre_skill_validate_element) (struct config_setting_t **conf, struct s_skill_db **sk);
typedef void (*HPMHOOK_post_skill_validate_element) (struct config_setting_t *conf, struct s_skill_db *sk);
-typedef void (*HPMHOOK_pre_skill_validate_skillinfo) (struct config_setting_t **conf, struct s_skill_db **sk);
-typedef void (*HPMHOOK_post_skill_validate_skillinfo) (struct config_setting_t *conf, struct s_skill_db *sk);
typedef void (*HPMHOOK_pre_skill_validate_damagetype) (struct config_setting_t **conf, struct s_skill_db **sk);
typedef void (*HPMHOOK_post_skill_validate_damagetype) (struct config_setting_t *conf, struct s_skill_db *sk);
+typedef void (*HPMHOOK_pre_skill_validate_splash_range) (struct config_setting_t **conf, struct s_skill_db **sk);
+typedef void (*HPMHOOK_post_skill_validate_splash_range) (struct config_setting_t *conf, struct s_skill_db *sk);
+typedef void (*HPMHOOK_pre_skill_validate_number_of_hits) (struct config_setting_t **conf, struct s_skill_db **sk);
+typedef void (*HPMHOOK_post_skill_validate_number_of_hits) (struct config_setting_t *conf, struct s_skill_db *sk);
+typedef void (*HPMHOOK_pre_skill_validate_interrupt_cast) (struct config_setting_t **conf, struct s_skill_db **sk);
+typedef void (*HPMHOOK_post_skill_validate_interrupt_cast) (struct config_setting_t *conf, struct s_skill_db *sk);
+typedef void (*HPMHOOK_pre_skill_validate_cast_def_rate) (struct config_setting_t **conf, struct s_skill_db **sk);
+typedef void (*HPMHOOK_post_skill_validate_cast_def_rate) (struct config_setting_t *conf, struct s_skill_db *sk);
+typedef void (*HPMHOOK_pre_skill_validate_number_of_instances) (struct config_setting_t **conf, struct s_skill_db **sk);
+typedef void (*HPMHOOK_post_skill_validate_number_of_instances) (struct config_setting_t *conf, struct s_skill_db *sk);
+typedef void (*HPMHOOK_pre_skill_validate_knock_back_tiles) (struct config_setting_t **conf, struct s_skill_db **sk);
+typedef void (*HPMHOOK_post_skill_validate_knock_back_tiles) (struct config_setting_t *conf, struct s_skill_db *sk);
+typedef void (*HPMHOOK_pre_skill_validate_cast_time) (struct config_setting_t **conf, struct s_skill_db **sk);
+typedef void (*HPMHOOK_post_skill_validate_cast_time) (struct config_setting_t *conf, struct s_skill_db *sk);
+typedef void (*HPMHOOK_pre_skill_validate_act_delay) (struct config_setting_t **conf, struct s_skill_db **sk);
+typedef void (*HPMHOOK_post_skill_validate_act_delay) (struct config_setting_t *conf, struct s_skill_db *sk);
+typedef void (*HPMHOOK_pre_skill_validate_walk_delay) (struct config_setting_t **conf, struct s_skill_db **sk);
+typedef void (*HPMHOOK_post_skill_validate_walk_delay) (struct config_setting_t *conf, struct s_skill_db *sk);
+typedef void (*HPMHOOK_pre_skill_validate_skill_data1) (struct config_setting_t **conf, struct s_skill_db **sk);
+typedef void (*HPMHOOK_post_skill_validate_skill_data1) (struct config_setting_t *conf, struct s_skill_db *sk);
+typedef void (*HPMHOOK_pre_skill_validate_skill_data2) (struct config_setting_t **conf, struct s_skill_db **sk);
+typedef void (*HPMHOOK_post_skill_validate_skill_data2) (struct config_setting_t *conf, struct s_skill_db *sk);
+typedef void (*HPMHOOK_pre_skill_validate_cooldown) (struct config_setting_t **conf, struct s_skill_db **sk);
+typedef void (*HPMHOOK_post_skill_validate_cooldown) (struct config_setting_t *conf, struct s_skill_db *sk);
+typedef void (*HPMHOOK_pre_skill_validate_fixed_cast_time) (struct config_setting_t **conf, struct s_skill_db **sk);
+typedef void (*HPMHOOK_post_skill_validate_fixed_cast_time) (struct config_setting_t *conf, struct s_skill_db *sk);
typedef void (*HPMHOOK_pre_skill_validate_castnodex) (struct config_setting_t **conf, struct s_skill_db **sk, bool *delay);
typedef void (*HPMHOOK_post_skill_validate_castnodex) (struct config_setting_t *conf, struct s_skill_db *sk, bool delay);
+typedef void (*HPMHOOK_pre_skill_validate_hp_cost) (struct config_setting_t **conf, struct s_skill_db **sk);
+typedef void (*HPMHOOK_post_skill_validate_hp_cost) (struct config_setting_t *conf, struct s_skill_db *sk);
+typedef void (*HPMHOOK_pre_skill_validate_sp_cost) (struct config_setting_t **conf, struct s_skill_db **sk);
+typedef void (*HPMHOOK_post_skill_validate_sp_cost) (struct config_setting_t *conf, struct s_skill_db *sk);
+typedef void (*HPMHOOK_pre_skill_validate_hp_rate_cost) (struct config_setting_t **conf, struct s_skill_db **sk);
+typedef void (*HPMHOOK_post_skill_validate_hp_rate_cost) (struct config_setting_t *conf, struct s_skill_db *sk);
+typedef void (*HPMHOOK_pre_skill_validate_sp_rate_cost) (struct config_setting_t **conf, struct s_skill_db **sk);
+typedef void (*HPMHOOK_post_skill_validate_sp_rate_cost) (struct config_setting_t *conf, struct s_skill_db *sk);
+typedef void (*HPMHOOK_pre_skill_validate_max_hp_trigger) (struct config_setting_t **conf, struct s_skill_db **sk);
+typedef void (*HPMHOOK_post_skill_validate_max_hp_trigger) (struct config_setting_t *conf, struct s_skill_db *sk);
+typedef void (*HPMHOOK_pre_skill_validate_max_sp_trigger) (struct config_setting_t **conf, struct s_skill_db **sk);
+typedef void (*HPMHOOK_post_skill_validate_max_sp_trigger) (struct config_setting_t *conf, struct s_skill_db *sk);
+typedef void (*HPMHOOK_pre_skill_validate_zeny_cost) (struct config_setting_t **conf, struct s_skill_db **sk);
+typedef void (*HPMHOOK_post_skill_validate_zeny_cost) (struct config_setting_t *conf, struct s_skill_db *sk);
+typedef int (*HPMHOOK_pre_skill_validate_weapontype_sub) (const char **type, bool *on, struct s_skill_db **sk);
+typedef int (*HPMHOOK_post_skill_validate_weapontype_sub) (int retVal___, const char *type, bool on, struct s_skill_db *sk);
typedef void (*HPMHOOK_pre_skill_validate_weapontype) (struct config_setting_t **conf, struct s_skill_db **sk);
typedef void (*HPMHOOK_post_skill_validate_weapontype) (struct config_setting_t *conf, struct s_skill_db *sk);
+typedef int (*HPMHOOK_pre_skill_validate_ammotype_sub) (const char **type, bool *on, struct s_skill_db **sk);
+typedef int (*HPMHOOK_post_skill_validate_ammotype_sub) (int retVal___, const char *type, bool on, struct s_skill_db *sk);
typedef void (*HPMHOOK_pre_skill_validate_ammotype) (struct config_setting_t **conf, struct s_skill_db **sk);
typedef void (*HPMHOOK_post_skill_validate_ammotype) (struct config_setting_t *conf, struct s_skill_db *sk);
+typedef void (*HPMHOOK_pre_skill_validate_ammo_amount) (struct config_setting_t **conf, struct s_skill_db **sk);
+typedef void (*HPMHOOK_post_skill_validate_ammo_amount) (struct config_setting_t *conf, struct s_skill_db *sk);
+typedef int (*HPMHOOK_pre_skill_validate_state_sub) (const char **state);
+typedef int (*HPMHOOK_post_skill_validate_state_sub) (int retVal___, const char *state);
typedef void (*HPMHOOK_pre_skill_validate_state) (struct config_setting_t **conf, struct s_skill_db **sk);
typedef void (*HPMHOOK_post_skill_validate_state) (struct config_setting_t *conf, struct s_skill_db *sk);
+typedef void (*HPMHOOK_pre_skill_validate_spirit_sphere_cost) (struct config_setting_t **conf, struct s_skill_db **sk);
+typedef void (*HPMHOOK_post_skill_validate_spirit_sphere_cost) (struct config_setting_t *conf, struct s_skill_db *sk);
+typedef void (*HPMHOOK_pre_skill_validate_item_requirements_sub_item_amount) (struct config_setting_t **conf, struct s_skill_db **sk, int *item_index);
+typedef void (*HPMHOOK_post_skill_validate_item_requirements_sub_item_amount) (struct config_setting_t *conf, struct s_skill_db *sk, int item_index);
+typedef void (*HPMHOOK_pre_skill_validate_item_requirements_sub_items) (struct config_setting_t **conf, struct s_skill_db **sk);
+typedef void (*HPMHOOK_post_skill_validate_item_requirements_sub_items) (struct config_setting_t *conf, struct s_skill_db *sk);
+typedef void (*HPMHOOK_pre_skill_validate_item_requirements_sub_any_flag) (struct config_setting_t **conf, struct s_skill_db **sk);
+typedef void (*HPMHOOK_post_skill_validate_item_requirements_sub_any_flag) (struct config_setting_t *conf, struct s_skill_db *sk);
typedef void (*HPMHOOK_pre_skill_validate_item_requirements) (struct config_setting_t **conf, struct s_skill_db **sk);
typedef void (*HPMHOOK_post_skill_validate_item_requirements) (struct config_setting_t *conf, struct s_skill_db *sk);
-typedef void (*HPMHOOK_pre_skill_validate_unit_target) (struct config_setting_t **conf, struct s_skill_db **sk);
-typedef void (*HPMHOOK_post_skill_validate_unit_target) (struct config_setting_t *conf, struct s_skill_db *sk);
+typedef void (*HPMHOOK_pre_skill_validate_equip_requirements_sub_item_amount) (struct config_setting_t **conf, struct s_skill_db **sk, int *item_index);
+typedef void (*HPMHOOK_post_skill_validate_equip_requirements_sub_item_amount) (struct config_setting_t *conf, struct s_skill_db *sk, int item_index);
+typedef void (*HPMHOOK_pre_skill_validate_equip_requirements_sub_items) (struct config_setting_t **conf, struct s_skill_db **sk);
+typedef void (*HPMHOOK_post_skill_validate_equip_requirements_sub_items) (struct config_setting_t *conf, struct s_skill_db *sk);
+typedef void (*HPMHOOK_pre_skill_validate_equip_requirements_sub_any_flag) (struct config_setting_t **conf, struct s_skill_db **sk);
+typedef void (*HPMHOOK_post_skill_validate_equip_requirements_sub_any_flag) (struct config_setting_t *conf, struct s_skill_db *sk);
+typedef void (*HPMHOOK_pre_skill_validate_equip_requirements) (struct config_setting_t **conf, struct s_skill_db **sk);
+typedef void (*HPMHOOK_post_skill_validate_equip_requirements) (struct config_setting_t *conf, struct s_skill_db *sk);
+typedef int (*HPMHOOK_pre_skill_validate_requirements_item_name) (const char **name);
+typedef int (*HPMHOOK_post_skill_validate_requirements_item_name) (int retVal___, const char *name);
+typedef void (*HPMHOOK_pre_skill_validate_requirements) (struct config_setting_t **conf, struct s_skill_db **sk);
+typedef void (*HPMHOOK_post_skill_validate_requirements) (struct config_setting_t *conf, struct s_skill_db *sk);
+typedef int (*HPMHOOK_pre_skill_validate_unit_id_sub) (int *unit_id);
+typedef int (*HPMHOOK_post_skill_validate_unit_id_sub) (int retVal___, int unit_id);
+typedef void (*HPMHOOK_pre_skill_validate_unit_id) (struct config_setting_t **conf, struct s_skill_db **sk);
+typedef void (*HPMHOOK_post_skill_validate_unit_id) (struct config_setting_t *conf, struct s_skill_db *sk);
+typedef void (*HPMHOOK_pre_skill_validate_unit_layout) (struct config_setting_t **conf, struct s_skill_db **sk);
+typedef void (*HPMHOOK_post_skill_validate_unit_layout) (struct config_setting_t *conf, struct s_skill_db *sk);
+typedef void (*HPMHOOK_pre_skill_validate_unit_range) (struct config_setting_t **conf, struct s_skill_db **sk);
+typedef void (*HPMHOOK_post_skill_validate_unit_range) (struct config_setting_t *conf, struct s_skill_db *sk);
+typedef void (*HPMHOOK_pre_skill_validate_unit_interval) (struct config_setting_t **conf, struct s_skill_db **sk);
+typedef void (*HPMHOOK_post_skill_validate_unit_interval) (struct config_setting_t *conf, struct s_skill_db *sk);
+typedef int (*HPMHOOK_pre_skill_validate_unit_flag_sub) (const char **type, bool *on, struct s_skill_db **sk);
+typedef int (*HPMHOOK_post_skill_validate_unit_flag_sub) (int retVal___, const char *type, bool on, struct s_skill_db *sk);
typedef void (*HPMHOOK_pre_skill_validate_unit_flag) (struct config_setting_t **conf, struct s_skill_db **sk);
typedef void (*HPMHOOK_post_skill_validate_unit_flag) (struct config_setting_t *conf, struct s_skill_db *sk);
+typedef int (*HPMHOOK_pre_skill_validate_unit_target_sub) (const char **target);
+typedef int (*HPMHOOK_post_skill_validate_unit_target_sub) (int retVal___, const char *target);
+typedef void (*HPMHOOK_pre_skill_validate_unit_target) (struct config_setting_t **conf, struct s_skill_db **sk);
+typedef void (*HPMHOOK_post_skill_validate_unit_target) (struct config_setting_t *conf, struct s_skill_db *sk);
+typedef void (*HPMHOOK_pre_skill_validate_unit) (struct config_setting_t **conf, struct s_skill_db **sk);
+typedef void (*HPMHOOK_post_skill_validate_unit) (struct config_setting_t *conf, struct s_skill_db *sk);
typedef void (*HPMHOOK_pre_skill_validate_additional_fields) (struct config_setting_t **conf, struct s_skill_db **sk);
typedef void (*HPMHOOK_post_skill_validate_additional_fields) (struct config_setting_t *conf, struct s_skill_db *sk);
-typedef bool (*HPMHOOK_pre_skill_validate_skilldb) (struct s_skill_db **skt, const char **source);
-typedef bool (*HPMHOOK_post_skill_validate_skilldb) (bool retVal___, struct s_skill_db *skt, const char *source);
-typedef int (*HPMHOOK_pre_skill_validate_weapontype_sub) (const char **type, bool *on, struct s_skill_db **sk);
-typedef int (*HPMHOOK_post_skill_validate_weapontype_sub) (int retVal___, const char *type, bool on, struct s_skill_db *sk);
-typedef int (*HPMHOOK_pre_skill_validate_ammotype_sub) (const char **type, bool *on, struct s_skill_db **sk);
-typedef int (*HPMHOOK_post_skill_validate_ammotype_sub) (int retVal___, const char *type, bool on, struct s_skill_db *sk);
-typedef int (*HPMHOOK_pre_skill_validate_unit_flag_sub) (const char **type, bool *on, struct s_skill_db **sk);
-typedef int (*HPMHOOK_post_skill_validate_unit_flag_sub) (int retVal___, const char *type, bool on, struct s_skill_db *sk);
typedef bool (*HPMHOOK_pre_skill_read_skilldb) (const char **filename);
typedef bool (*HPMHOOK_post_skill_read_skilldb) (bool retVal___, const char *filename);
typedef void (*HPMHOOK_pre_skill_config_set_level) (struct config_setting_t **conf, int **arr);
@@ -7662,6 +7816,8 @@ typedef int (*HPMHOOK_pre_skill_check_npc_chaospanic) (struct block_list **bl, v
typedef int (*HPMHOOK_post_skill_check_npc_chaospanic) (int retVal___, struct block_list *bl, va_list args);
typedef int (*HPMHOOK_pre_skill_count_wos) (struct block_list **bl, va_list ap);
typedef int (*HPMHOOK_post_skill_count_wos) (int retVal___, struct block_list *bl, va_list ap);
+typedef int (*HPMHOOK_pre_skill_get_linked_song_dance_id) (int *skill_id);
+typedef int (*HPMHOOK_post_skill_get_linked_song_dance_id) (int retVal___, int skill_id);
#endif // MAP_SKILL_H
#ifdef COMMON_SOCKET_H /* sockt */
typedef void (*HPMHOOK_pre_sockt_init) (void);
@@ -7872,8 +8028,8 @@ typedef int (*HPMHOOK_pre_status_change_start) (struct block_list **src, struct
typedef int (*HPMHOOK_post_status_change_start) (int retVal___, struct block_list *src, struct block_list *bl, enum sc_type type, int rate, int val1, int val2, int val3, int val4, int tick, int flag);
typedef int (*HPMHOOK_pre_status_change_start_sub) (struct block_list **src, struct block_list **bl, enum sc_type *type, int *rate, int *val1, int *val2, int *val3, int *val4, int *tick, int *total_tick, int *flag);
typedef int (*HPMHOOK_post_status_change_start_sub) (int retVal___, struct block_list *src, struct block_list *bl, enum sc_type type, int rate, int val1, int val2, int val3, int val4, int tick, int total_tick, int flag);
-typedef int (*HPMHOOK_pre_status_change_end_) (struct block_list **bl, enum sc_type *type, int *tid, const char **file, int *line);
-typedef int (*HPMHOOK_post_status_change_end_) (int retVal___, struct block_list *bl, enum sc_type type, int tid, const char *file, int line);
+typedef int (*HPMHOOK_pre_status_change_end_) (struct block_list **bl, enum sc_type *type, int *tid);
+typedef int (*HPMHOOK_post_status_change_end_) (int retVal___, struct block_list *bl, enum sc_type type, int tid);
typedef bool (*HPMHOOK_pre_status_is_immune_to_status) (struct status_change **sc, enum sc_type *type);
typedef bool (*HPMHOOK_post_status_is_immune_to_status) (bool retVal___, struct status_change *sc, enum sc_type type);
typedef bool (*HPMHOOK_pre_status_is_boss_resist_sc) (enum sc_type *type);
diff --git a/src/plugins/HPMHooking/HPMHooking_char.HPMHooksCore.inc b/src/plugins/HPMHooking/HPMHooking_char.HPMHooksCore.inc
index 20f57dcb9..ab34a4f18 100644
--- a/src/plugins/HPMHooking/HPMHooking_char.HPMHooksCore.inc
+++ b/src/plugins/HPMHooking/HPMHooking_char.HPMHooksCore.inc
@@ -1308,6 +1308,10 @@ struct {
struct HPMHookPoint *HP_mutex_cond_signal_post;
struct HPMHookPoint *HP_mutex_cond_broadcast_pre;
struct HPMHookPoint *HP_mutex_cond_broadcast_post;
+ struct HPMHookPoint *HP_nullpo_init_pre;
+ struct HPMHookPoint *HP_nullpo_init_post;
+ struct HPMHookPoint *HP_nullpo_final_pre;
+ struct HPMHookPoint *HP_nullpo_final_post;
struct HPMHookPoint *HP_nullpo_assert_report_pre;
struct HPMHookPoint *HP_nullpo_assert_report_post;
struct HPMHookPoint *HP_packets_init_pre;
@@ -2933,6 +2937,10 @@ struct {
int HP_mutex_cond_signal_post;
int HP_mutex_cond_broadcast_pre;
int HP_mutex_cond_broadcast_post;
+ int HP_nullpo_init_pre;
+ int HP_nullpo_init_post;
+ int HP_nullpo_final_pre;
+ int HP_nullpo_final_post;
int HP_nullpo_assert_report_pre;
int HP_nullpo_assert_report_post;
int HP_packets_init_pre;
diff --git a/src/plugins/HPMHooking/HPMHooking_char.HookingPoints.inc b/src/plugins/HPMHooking/HPMHooking_char.HookingPoints.inc
index e8e211f8b..238580b83 100644
--- a/src/plugins/HPMHooking/HPMHooking_char.HookingPoints.inc
+++ b/src/plugins/HPMHooking/HPMHooking_char.HookingPoints.inc
@@ -696,6 +696,8 @@ struct HookingPointData HookingPoints[] = {
{ HP_POP(mutex->cond_signal, HP_mutex_cond_signal) },
{ HP_POP(mutex->cond_broadcast, HP_mutex_cond_broadcast) },
/* nullpo_interface */
+ { HP_POP(nullpo->init, HP_nullpo_init) },
+ { HP_POP(nullpo->final, HP_nullpo_final) },
{ HP_POP(nullpo->assert_report, HP_nullpo_assert_report) },
/* packets_interface */
{ HP_POP(packets->init, HP_packets_init) },
diff --git a/src/plugins/HPMHooking/HPMHooking_char.Hooks.inc b/src/plugins/HPMHooking/HPMHooking_char.Hooks.inc
index a022abb54..8c1dec681 100644
--- a/src/plugins/HPMHooking/HPMHooking_char.Hooks.inc
+++ b/src/plugins/HPMHooking/HPMHooking_char.Hooks.inc
@@ -17160,6 +17160,58 @@ void HP_mutex_cond_broadcast(struct cond_data *c) {
return;
}
/* nullpo_interface */
+void HP_nullpo_init(void) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_nullpo_init_pre > 0) {
+ void (*preHookFunc) (void);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_nullpo_init_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_nullpo_init_pre[hIndex].func;
+ preHookFunc();
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.nullpo.init();
+ }
+ if (HPMHooks.count.HP_nullpo_init_post > 0) {
+ void (*postHookFunc) (void);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_nullpo_init_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_nullpo_init_post[hIndex].func;
+ postHookFunc();
+ }
+ }
+ return;
+}
+void HP_nullpo_final(void) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_nullpo_final_pre > 0) {
+ void (*preHookFunc) (void);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_nullpo_final_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_nullpo_final_pre[hIndex].func;
+ preHookFunc();
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.nullpo.final();
+ }
+ if (HPMHooks.count.HP_nullpo_final_post > 0) {
+ void (*postHookFunc) (void);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_nullpo_final_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_nullpo_final_post[hIndex].func;
+ postHookFunc();
+ }
+ }
+ return;
+}
void HP_nullpo_assert_report(const char *file, int line, const char *func, const char *targetname, const char *title) {
int hIndex = 0;
if (HPMHooks.count.HP_nullpo_assert_report_pre > 0) {
diff --git a/src/plugins/HPMHooking/HPMHooking_login.HPMHooksCore.inc b/src/plugins/HPMHooking/HPMHooking_login.HPMHooksCore.inc
index c638a1ef6..2875df334 100644
--- a/src/plugins/HPMHooking/HPMHooking_login.HPMHooksCore.inc
+++ b/src/plugins/HPMHooking/HPMHooking_login.HPMHooksCore.inc
@@ -520,6 +520,10 @@ struct {
struct HPMHookPoint *HP_mutex_cond_signal_post;
struct HPMHookPoint *HP_mutex_cond_broadcast_pre;
struct HPMHookPoint *HP_mutex_cond_broadcast_post;
+ struct HPMHookPoint *HP_nullpo_init_pre;
+ struct HPMHookPoint *HP_nullpo_init_post;
+ struct HPMHookPoint *HP_nullpo_final_pre;
+ struct HPMHookPoint *HP_nullpo_final_post;
struct HPMHookPoint *HP_nullpo_assert_report_pre;
struct HPMHookPoint *HP_nullpo_assert_report_post;
struct HPMHookPoint *HP_packets_init_pre;
@@ -1325,6 +1329,10 @@ struct {
int HP_mutex_cond_signal_post;
int HP_mutex_cond_broadcast_pre;
int HP_mutex_cond_broadcast_post;
+ int HP_nullpo_init_pre;
+ int HP_nullpo_init_post;
+ int HP_nullpo_final_pre;
+ int HP_nullpo_final_post;
int HP_nullpo_assert_report_pre;
int HP_nullpo_assert_report_post;
int HP_packets_init_pre;
diff --git a/src/plugins/HPMHooking/HPMHooking_login.HookingPoints.inc b/src/plugins/HPMHooking/HPMHooking_login.HookingPoints.inc
index ef6081f41..61864325b 100644
--- a/src/plugins/HPMHooking/HPMHooking_login.HookingPoints.inc
+++ b/src/plugins/HPMHooking/HPMHooking_login.HookingPoints.inc
@@ -290,6 +290,8 @@ struct HookingPointData HookingPoints[] = {
{ HP_POP(mutex->cond_signal, HP_mutex_cond_signal) },
{ HP_POP(mutex->cond_broadcast, HP_mutex_cond_broadcast) },
/* nullpo_interface */
+ { HP_POP(nullpo->init, HP_nullpo_init) },
+ { HP_POP(nullpo->final, HP_nullpo_final) },
{ HP_POP(nullpo->assert_report, HP_nullpo_assert_report) },
/* packets_interface */
{ HP_POP(packets->init, HP_packets_init) },
diff --git a/src/plugins/HPMHooking/HPMHooking_login.Hooks.inc b/src/plugins/HPMHooking/HPMHooking_login.Hooks.inc
index 20c709bce..1c1817276 100644
--- a/src/plugins/HPMHooking/HPMHooking_login.Hooks.inc
+++ b/src/plugins/HPMHooking/HPMHooking_login.Hooks.inc
@@ -6638,6 +6638,58 @@ void HP_mutex_cond_broadcast(struct cond_data *c) {
return;
}
/* nullpo_interface */
+void HP_nullpo_init(void) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_nullpo_init_pre > 0) {
+ void (*preHookFunc) (void);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_nullpo_init_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_nullpo_init_pre[hIndex].func;
+ preHookFunc();
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.nullpo.init();
+ }
+ if (HPMHooks.count.HP_nullpo_init_post > 0) {
+ void (*postHookFunc) (void);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_nullpo_init_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_nullpo_init_post[hIndex].func;
+ postHookFunc();
+ }
+ }
+ return;
+}
+void HP_nullpo_final(void) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_nullpo_final_pre > 0) {
+ void (*preHookFunc) (void);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_nullpo_final_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_nullpo_final_pre[hIndex].func;
+ preHookFunc();
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.nullpo.final();
+ }
+ if (HPMHooks.count.HP_nullpo_final_post > 0) {
+ void (*postHookFunc) (void);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_nullpo_final_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_nullpo_final_post[hIndex].func;
+ postHookFunc();
+ }
+ }
+ return;
+}
void HP_nullpo_assert_report(const char *file, int line, const char *func, const char *targetname, const char *title) {
int hIndex = 0;
if (HPMHooks.count.HP_nullpo_assert_report_pre > 0) {
diff --git a/src/plugins/HPMHooking/HPMHooking_map.HPMHooksCore.inc b/src/plugins/HPMHooking/HPMHooking_map.HPMHooksCore.inc
index f94606bab..60d8b7e20 100644
--- a/src/plugins/HPMHooking/HPMHooking_map.HPMHooksCore.inc
+++ b/src/plugins/HPMHooking/HPMHooking_map.HPMHooksCore.inc
@@ -1000,6 +1000,10 @@ struct {
struct HPMHookPoint *HP_clif_chatname_ack_post;
struct HPMHookPoint *HP_clif_elemname_ack_pre;
struct HPMHookPoint *HP_clif_elemname_ack_post;
+ struct HPMHookPoint *HP_clif_skillname_ack_pre;
+ struct HPMHookPoint *HP_clif_skillname_ack_post;
+ struct HPMHookPoint *HP_clif_itemname_ack_pre;
+ struct HPMHookPoint *HP_clif_itemname_ack_post;
struct HPMHookPoint *HP_clif_unknownname_ack_pre;
struct HPMHookPoint *HP_clif_unknownname_ack_post;
struct HPMHookPoint *HP_clif_monster_hp_bar_pre;
@@ -2352,6 +2356,14 @@ struct {
struct HPMHookPoint *HP_clif_plapineDdukDdak_ack_post;
struct HPMHookPoint *HP_clif_plapineDdukDdak_close_pre;
struct HPMHookPoint *HP_clif_plapineDdukDdak_close_post;
+ struct HPMHookPoint *HP_clif_lapineUpgrade_open_pre;
+ struct HPMHookPoint *HP_clif_lapineUpgrade_open_post;
+ struct HPMHookPoint *HP_clif_lapineUpgrade_result_pre;
+ struct HPMHookPoint *HP_clif_lapineUpgrade_result_post;
+ struct HPMHookPoint *HP_clif_pLapineUpgrade_close_pre;
+ struct HPMHookPoint *HP_clif_pLapineUpgrade_close_post;
+ struct HPMHookPoint *HP_clif_pLapineUpgrade_makeItem_pre;
+ struct HPMHookPoint *HP_clif_pLapineUpgrade_makeItem_post;
struct HPMHookPoint *HP_clif_pReqGearOff_pre;
struct HPMHookPoint *HP_clif_pReqGearOff_post;
struct HPMHookPoint *HP_cmdline_init_pre;
@@ -3816,20 +3828,32 @@ struct {
struct HPMHookPoint *HP_mapit_prev_post;
struct HPMHookPoint *HP_mapit_exists_pre;
struct HPMHookPoint *HP_mapit_exists_post;
- struct HPMHookPoint *HP_mapreg_init_pre;
- struct HPMHookPoint *HP_mapreg_init_post;
- struct HPMHookPoint *HP_mapreg_final_pre;
- struct HPMHookPoint *HP_mapreg_final_post;
struct HPMHookPoint *HP_mapreg_readreg_pre;
struct HPMHookPoint *HP_mapreg_readreg_post;
struct HPMHookPoint *HP_mapreg_readregstr_pre;
struct HPMHookPoint *HP_mapreg_readregstr_post;
+ struct HPMHookPoint *HP_mapreg_set_num_db_pre;
+ struct HPMHookPoint *HP_mapreg_set_num_db_post;
+ struct HPMHookPoint *HP_mapreg_delete_num_db_pre;
+ struct HPMHookPoint *HP_mapreg_delete_num_db_post;
struct HPMHookPoint *HP_mapreg_setreg_pre;
struct HPMHookPoint *HP_mapreg_setreg_post;
+ struct HPMHookPoint *HP_mapreg_set_str_db_pre;
+ struct HPMHookPoint *HP_mapreg_set_str_db_post;
+ struct HPMHookPoint *HP_mapreg_delete_str_db_pre;
+ struct HPMHookPoint *HP_mapreg_delete_str_db_post;
struct HPMHookPoint *HP_mapreg_setregstr_pre;
struct HPMHookPoint *HP_mapreg_setregstr_post;
+ struct HPMHookPoint *HP_mapreg_load_num_db_pre;
+ struct HPMHookPoint *HP_mapreg_load_num_db_post;
+ struct HPMHookPoint *HP_mapreg_load_str_db_pre;
+ struct HPMHookPoint *HP_mapreg_load_str_db_post;
struct HPMHookPoint *HP_mapreg_load_pre;
struct HPMHookPoint *HP_mapreg_load_post;
+ struct HPMHookPoint *HP_mapreg_save_num_db_pre;
+ struct HPMHookPoint *HP_mapreg_save_num_db_post;
+ struct HPMHookPoint *HP_mapreg_save_str_db_pre;
+ struct HPMHookPoint *HP_mapreg_save_str_db_post;
struct HPMHookPoint *HP_mapreg_save_pre;
struct HPMHookPoint *HP_mapreg_save_post;
struct HPMHookPoint *HP_mapreg_save_timer_pre;
@@ -3838,8 +3862,12 @@ struct {
struct HPMHookPoint *HP_mapreg_destroyreg_post;
struct HPMHookPoint *HP_mapreg_reload_pre;
struct HPMHookPoint *HP_mapreg_reload_post;
- struct HPMHookPoint *HP_mapreg_config_read_pre;
- struct HPMHookPoint *HP_mapreg_config_read_post;
+ struct HPMHookPoint *HP_mapreg_config_read_registry_pre;
+ struct HPMHookPoint *HP_mapreg_config_read_registry_post;
+ struct HPMHookPoint *HP_mapreg_final_pre;
+ struct HPMHookPoint *HP_mapreg_final_post;
+ struct HPMHookPoint *HP_mapreg_init_pre;
+ struct HPMHookPoint *HP_mapreg_init_post;
struct HPMHookPoint *HP_md5_string_pre;
struct HPMHookPoint *HP_md5_string_post;
struct HPMHookPoint *HP_md5_binary_pre;
@@ -4420,6 +4448,10 @@ struct {
struct HPMHookPoint *HP_npc_questinfo_clear_post;
struct HPMHookPoint *HP_npc_secure_timeout_timer_pre;
struct HPMHookPoint *HP_npc_secure_timeout_timer_post;
+ struct HPMHookPoint *HP_nullpo_init_pre;
+ struct HPMHookPoint *HP_nullpo_init_post;
+ struct HPMHookPoint *HP_nullpo_final_pre;
+ struct HPMHookPoint *HP_nullpo_final_post;
struct HPMHookPoint *HP_nullpo_assert_report_pre;
struct HPMHookPoint *HP_nullpo_assert_report_post;
struct HPMHookPoint *HP_packets_init_pre;
@@ -4764,8 +4796,14 @@ struct {
struct HPMHookPoint *HP_pc_checkitem_post;
struct HPMHookPoint *HP_pc_useitem_pre;
struct HPMHookPoint *HP_pc_useitem_post;
- struct HPMHookPoint *HP_pc_itemskill_clear_pre;
- struct HPMHookPoint *HP_pc_itemskill_clear_post;
+ struct HPMHookPoint *HP_pc_autocast_clear_current_pre;
+ struct HPMHookPoint *HP_pc_autocast_clear_current_post;
+ struct HPMHookPoint *HP_pc_autocast_clear_pre;
+ struct HPMHookPoint *HP_pc_autocast_clear_post;
+ struct HPMHookPoint *HP_pc_autocast_set_current_pre;
+ struct HPMHookPoint *HP_pc_autocast_set_current_post;
+ struct HPMHookPoint *HP_pc_autocast_remove_pre;
+ struct HPMHookPoint *HP_pc_autocast_remove_post;
struct HPMHookPoint *HP_pc_skillatk_bonus_pre;
struct HPMHookPoint *HP_pc_skillatk_bonus_post;
struct HPMHookPoint *HP_pc_skillheal_bonus_pre;
@@ -4786,6 +4824,10 @@ struct {
struct HPMHookPoint *HP_pc_percentheal_post;
struct HPMHookPoint *HP_pc_jobchange_pre;
struct HPMHookPoint *HP_pc_jobchange_post;
+ struct HPMHookPoint *HP_pc_hide_pre;
+ struct HPMHookPoint *HP_pc_hide_post;
+ struct HPMHookPoint *HP_pc_unhide_pre;
+ struct HPMHookPoint *HP_pc_unhide_post;
struct HPMHookPoint *HP_pc_setoption_pre;
struct HPMHookPoint *HP_pc_setoption_post;
struct HPMHookPoint *HP_pc_setcart_pre;
@@ -5072,6 +5114,8 @@ struct {
struct HPMHookPoint *HP_pet_final_post;
struct HPMHookPoint *HP_pet_hungry_val_pre;
struct HPMHookPoint *HP_pet_hungry_val_post;
+ struct HPMHookPoint *HP_pet_set_hunger_pre;
+ struct HPMHookPoint *HP_pet_set_hunger_post;
struct HPMHookPoint *HP_pet_set_intimate_pre;
struct HPMHookPoint *HP_pet_set_intimate_post;
struct HPMHookPoint *HP_pet_create_egg_pre;
@@ -5432,6 +5476,8 @@ struct {
struct HPMHookPoint *HP_script_parse_syntax_close_sub_post;
struct HPMHookPoint *HP_script_parse_syntax_pre;
struct HPMHookPoint *HP_script_parse_syntax_post;
+ struct HPMHookPoint *HP_script_parse_syntax_function_pre;
+ struct HPMHookPoint *HP_script_parse_syntax_function_post;
struct HPMHookPoint *HP_script_get_com_pre;
struct HPMHookPoint *HP_script_get_com_post;
struct HPMHookPoint *HP_script_get_num_pre;
@@ -5496,6 +5542,8 @@ struct {
struct HPMHookPoint *HP_script_print_line_post;
struct HPMHookPoint *HP_script_errorwarning_sub_pre;
struct HPMHookPoint *HP_script_errorwarning_sub_post;
+ struct HPMHookPoint *HP_script_is_permanent_variable_pre;
+ struct HPMHookPoint *HP_script_is_permanent_variable_post;
struct HPMHookPoint *HP_script_set_reg_pre;
struct HPMHookPoint *HP_script_set_reg_post;
struct HPMHookPoint *HP_script_set_reg_ref_str_pre;
@@ -5728,6 +5776,8 @@ struct {
struct HPMHookPoint *HP_skill_get_hp_post;
struct HPMHookPoint *HP_skill_get_mhp_pre;
struct HPMHookPoint *HP_skill_get_mhp_post;
+ struct HPMHookPoint *HP_skill_get_msp_pre;
+ struct HPMHookPoint *HP_skill_get_msp_post;
struct HPMHookPoint *HP_skill_get_sp_pre;
struct HPMHookPoint *HP_skill_get_sp_post;
struct HPMHookPoint *HP_skill_get_hp_rate_pre;
@@ -5742,6 +5792,14 @@ struct {
struct HPMHookPoint *HP_skill_get_itemid_post;
struct HPMHookPoint *HP_skill_get_itemqty_pre;
struct HPMHookPoint *HP_skill_get_itemqty_post;
+ struct HPMHookPoint *HP_skill_get_item_any_flag_pre;
+ struct HPMHookPoint *HP_skill_get_item_any_flag_post;
+ struct HPMHookPoint *HP_skill_get_equip_id_pre;
+ struct HPMHookPoint *HP_skill_get_equip_id_post;
+ struct HPMHookPoint *HP_skill_get_equip_amount_pre;
+ struct HPMHookPoint *HP_skill_get_equip_amount_post;
+ struct HPMHookPoint *HP_skill_get_equip_any_flag_pre;
+ struct HPMHookPoint *HP_skill_get_equip_any_flag_post;
struct HPMHookPoint *HP_skill_get_zeny_pre;
struct HPMHookPoint *HP_skill_get_zeny_post;
struct HPMHookPoint *HP_skill_get_num_pre;
@@ -5856,12 +5914,18 @@ struct {
struct HPMHookPoint *HP_skill_vf_cast_fix_post;
struct HPMHookPoint *HP_skill_delay_fix_pre;
struct HPMHookPoint *HP_skill_delay_fix_post;
- struct HPMHookPoint *HP_skill_is_item_skill_pre;
- struct HPMHookPoint *HP_skill_is_item_skill_post;
+ struct HPMHookPoint *HP_skill_check_condition_required_equip_pre;
+ struct HPMHookPoint *HP_skill_check_condition_required_equip_post;
struct HPMHookPoint *HP_skill_check_condition_castbegin_pre;
struct HPMHookPoint *HP_skill_check_condition_castbegin_post;
+ struct HPMHookPoint *HP_skill_check_condition_required_items_pre;
+ struct HPMHookPoint *HP_skill_check_condition_required_items_post;
+ struct HPMHookPoint *HP_skill_items_required_pre;
+ struct HPMHookPoint *HP_skill_items_required_post;
struct HPMHookPoint *HP_skill_check_condition_castend_pre;
struct HPMHookPoint *HP_skill_check_condition_castend_post;
+ struct HPMHookPoint *HP_skill_get_any_item_index_pre;
+ struct HPMHookPoint *HP_skill_get_any_item_index_post;
struct HPMHookPoint *HP_skill_consume_requirement_pre;
struct HPMHookPoint *HP_skill_consume_requirement_post;
struct HPMHookPoint *HP_skill_get_requirement_pre;
@@ -5908,6 +5972,8 @@ struct {
struct HPMHookPoint *HP_skill_not_ok_hom_unknown_post;
struct HPMHookPoint *HP_skill_not_ok_mercenary_pre;
struct HPMHookPoint *HP_skill_not_ok_mercenary_post;
+ struct HPMHookPoint *HP_skill_validate_autocast_data_pre;
+ struct HPMHookPoint *HP_skill_validate_autocast_data_post;
struct HPMHookPoint *HP_skill_chastle_mob_changetarget_pre;
struct HPMHookPoint *HP_skill_chastle_mob_changetarget_post;
struct HPMHookPoint *HP_skill_can_produce_mix_pre;
@@ -6028,42 +6094,130 @@ struct {
struct HPMHookPoint *HP_skill_init_unit_layout_post;
struct HPMHookPoint *HP_skill_init_unit_layout_unknown_pre;
struct HPMHookPoint *HP_skill_init_unit_layout_unknown_post;
+ struct HPMHookPoint *HP_skill_validate_id_pre;
+ struct HPMHookPoint *HP_skill_validate_id_post;
+ struct HPMHookPoint *HP_skill_name_contains_invalid_character_pre;
+ struct HPMHookPoint *HP_skill_name_contains_invalid_character_post;
+ struct HPMHookPoint *HP_skill_validate_name_pre;
+ struct HPMHookPoint *HP_skill_validate_name_post;
+ struct HPMHookPoint *HP_skill_validate_max_level_pre;
+ struct HPMHookPoint *HP_skill_validate_max_level_post;
+ struct HPMHookPoint *HP_skill_validate_description_pre;
+ struct HPMHookPoint *HP_skill_validate_description_post;
+ struct HPMHookPoint *HP_skill_validate_range_pre;
+ struct HPMHookPoint *HP_skill_validate_range_post;
struct HPMHookPoint *HP_skill_validate_hittype_pre;
struct HPMHookPoint *HP_skill_validate_hittype_post;
struct HPMHookPoint *HP_skill_validate_skilltype_pre;
struct HPMHookPoint *HP_skill_validate_skilltype_post;
+ struct HPMHookPoint *HP_skill_validate_skillinfo_pre;
+ struct HPMHookPoint *HP_skill_validate_skillinfo_post;
struct HPMHookPoint *HP_skill_validate_attacktype_pre;
struct HPMHookPoint *HP_skill_validate_attacktype_post;
struct HPMHookPoint *HP_skill_validate_element_pre;
struct HPMHookPoint *HP_skill_validate_element_post;
- struct HPMHookPoint *HP_skill_validate_skillinfo_pre;
- struct HPMHookPoint *HP_skill_validate_skillinfo_post;
struct HPMHookPoint *HP_skill_validate_damagetype_pre;
struct HPMHookPoint *HP_skill_validate_damagetype_post;
+ struct HPMHookPoint *HP_skill_validate_splash_range_pre;
+ struct HPMHookPoint *HP_skill_validate_splash_range_post;
+ struct HPMHookPoint *HP_skill_validate_number_of_hits_pre;
+ struct HPMHookPoint *HP_skill_validate_number_of_hits_post;
+ struct HPMHookPoint *HP_skill_validate_interrupt_cast_pre;
+ struct HPMHookPoint *HP_skill_validate_interrupt_cast_post;
+ struct HPMHookPoint *HP_skill_validate_cast_def_rate_pre;
+ struct HPMHookPoint *HP_skill_validate_cast_def_rate_post;
+ struct HPMHookPoint *HP_skill_validate_number_of_instances_pre;
+ struct HPMHookPoint *HP_skill_validate_number_of_instances_post;
+ struct HPMHookPoint *HP_skill_validate_knock_back_tiles_pre;
+ struct HPMHookPoint *HP_skill_validate_knock_back_tiles_post;
+ struct HPMHookPoint *HP_skill_validate_cast_time_pre;
+ struct HPMHookPoint *HP_skill_validate_cast_time_post;
+ struct HPMHookPoint *HP_skill_validate_act_delay_pre;
+ struct HPMHookPoint *HP_skill_validate_act_delay_post;
+ struct HPMHookPoint *HP_skill_validate_walk_delay_pre;
+ struct HPMHookPoint *HP_skill_validate_walk_delay_post;
+ struct HPMHookPoint *HP_skill_validate_skill_data1_pre;
+ struct HPMHookPoint *HP_skill_validate_skill_data1_post;
+ struct HPMHookPoint *HP_skill_validate_skill_data2_pre;
+ struct HPMHookPoint *HP_skill_validate_skill_data2_post;
+ struct HPMHookPoint *HP_skill_validate_cooldown_pre;
+ struct HPMHookPoint *HP_skill_validate_cooldown_post;
+ struct HPMHookPoint *HP_skill_validate_fixed_cast_time_pre;
+ struct HPMHookPoint *HP_skill_validate_fixed_cast_time_post;
struct HPMHookPoint *HP_skill_validate_castnodex_pre;
struct HPMHookPoint *HP_skill_validate_castnodex_post;
+ struct HPMHookPoint *HP_skill_validate_hp_cost_pre;
+ struct HPMHookPoint *HP_skill_validate_hp_cost_post;
+ struct HPMHookPoint *HP_skill_validate_sp_cost_pre;
+ struct HPMHookPoint *HP_skill_validate_sp_cost_post;
+ struct HPMHookPoint *HP_skill_validate_hp_rate_cost_pre;
+ struct HPMHookPoint *HP_skill_validate_hp_rate_cost_post;
+ struct HPMHookPoint *HP_skill_validate_sp_rate_cost_pre;
+ struct HPMHookPoint *HP_skill_validate_sp_rate_cost_post;
+ struct HPMHookPoint *HP_skill_validate_max_hp_trigger_pre;
+ struct HPMHookPoint *HP_skill_validate_max_hp_trigger_post;
+ struct HPMHookPoint *HP_skill_validate_max_sp_trigger_pre;
+ struct HPMHookPoint *HP_skill_validate_max_sp_trigger_post;
+ struct HPMHookPoint *HP_skill_validate_zeny_cost_pre;
+ struct HPMHookPoint *HP_skill_validate_zeny_cost_post;
+ struct HPMHookPoint *HP_skill_validate_weapontype_sub_pre;
+ struct HPMHookPoint *HP_skill_validate_weapontype_sub_post;
struct HPMHookPoint *HP_skill_validate_weapontype_pre;
struct HPMHookPoint *HP_skill_validate_weapontype_post;
+ struct HPMHookPoint *HP_skill_validate_ammotype_sub_pre;
+ struct HPMHookPoint *HP_skill_validate_ammotype_sub_post;
struct HPMHookPoint *HP_skill_validate_ammotype_pre;
struct HPMHookPoint *HP_skill_validate_ammotype_post;
+ struct HPMHookPoint *HP_skill_validate_ammo_amount_pre;
+ struct HPMHookPoint *HP_skill_validate_ammo_amount_post;
+ struct HPMHookPoint *HP_skill_validate_state_sub_pre;
+ struct HPMHookPoint *HP_skill_validate_state_sub_post;
struct HPMHookPoint *HP_skill_validate_state_pre;
struct HPMHookPoint *HP_skill_validate_state_post;
+ struct HPMHookPoint *HP_skill_validate_spirit_sphere_cost_pre;
+ struct HPMHookPoint *HP_skill_validate_spirit_sphere_cost_post;
+ struct HPMHookPoint *HP_skill_validate_item_requirements_sub_item_amount_pre;
+ struct HPMHookPoint *HP_skill_validate_item_requirements_sub_item_amount_post;
+ struct HPMHookPoint *HP_skill_validate_item_requirements_sub_items_pre;
+ struct HPMHookPoint *HP_skill_validate_item_requirements_sub_items_post;
+ struct HPMHookPoint *HP_skill_validate_item_requirements_sub_any_flag_pre;
+ struct HPMHookPoint *HP_skill_validate_item_requirements_sub_any_flag_post;
struct HPMHookPoint *HP_skill_validate_item_requirements_pre;
struct HPMHookPoint *HP_skill_validate_item_requirements_post;
- struct HPMHookPoint *HP_skill_validate_unit_target_pre;
- struct HPMHookPoint *HP_skill_validate_unit_target_post;
+ struct HPMHookPoint *HP_skill_validate_equip_requirements_sub_item_amount_pre;
+ struct HPMHookPoint *HP_skill_validate_equip_requirements_sub_item_amount_post;
+ struct HPMHookPoint *HP_skill_validate_equip_requirements_sub_items_pre;
+ struct HPMHookPoint *HP_skill_validate_equip_requirements_sub_items_post;
+ struct HPMHookPoint *HP_skill_validate_equip_requirements_sub_any_flag_pre;
+ struct HPMHookPoint *HP_skill_validate_equip_requirements_sub_any_flag_post;
+ struct HPMHookPoint *HP_skill_validate_equip_requirements_pre;
+ struct HPMHookPoint *HP_skill_validate_equip_requirements_post;
+ struct HPMHookPoint *HP_skill_validate_requirements_item_name_pre;
+ struct HPMHookPoint *HP_skill_validate_requirements_item_name_post;
+ struct HPMHookPoint *HP_skill_validate_requirements_pre;
+ struct HPMHookPoint *HP_skill_validate_requirements_post;
+ struct HPMHookPoint *HP_skill_validate_unit_id_sub_pre;
+ struct HPMHookPoint *HP_skill_validate_unit_id_sub_post;
+ struct HPMHookPoint *HP_skill_validate_unit_id_pre;
+ struct HPMHookPoint *HP_skill_validate_unit_id_post;
+ struct HPMHookPoint *HP_skill_validate_unit_layout_pre;
+ struct HPMHookPoint *HP_skill_validate_unit_layout_post;
+ struct HPMHookPoint *HP_skill_validate_unit_range_pre;
+ struct HPMHookPoint *HP_skill_validate_unit_range_post;
+ struct HPMHookPoint *HP_skill_validate_unit_interval_pre;
+ struct HPMHookPoint *HP_skill_validate_unit_interval_post;
+ struct HPMHookPoint *HP_skill_validate_unit_flag_sub_pre;
+ struct HPMHookPoint *HP_skill_validate_unit_flag_sub_post;
struct HPMHookPoint *HP_skill_validate_unit_flag_pre;
struct HPMHookPoint *HP_skill_validate_unit_flag_post;
+ struct HPMHookPoint *HP_skill_validate_unit_target_sub_pre;
+ struct HPMHookPoint *HP_skill_validate_unit_target_sub_post;
+ struct HPMHookPoint *HP_skill_validate_unit_target_pre;
+ struct HPMHookPoint *HP_skill_validate_unit_target_post;
+ struct HPMHookPoint *HP_skill_validate_unit_pre;
+ struct HPMHookPoint *HP_skill_validate_unit_post;
struct HPMHookPoint *HP_skill_validate_additional_fields_pre;
struct HPMHookPoint *HP_skill_validate_additional_fields_post;
- struct HPMHookPoint *HP_skill_validate_skilldb_pre;
- struct HPMHookPoint *HP_skill_validate_skilldb_post;
- struct HPMHookPoint *HP_skill_validate_weapontype_sub_pre;
- struct HPMHookPoint *HP_skill_validate_weapontype_sub_post;
- struct HPMHookPoint *HP_skill_validate_ammotype_sub_pre;
- struct HPMHookPoint *HP_skill_validate_ammotype_sub_post;
- struct HPMHookPoint *HP_skill_validate_unit_flag_sub_pre;
- struct HPMHookPoint *HP_skill_validate_unit_flag_sub_post;
struct HPMHookPoint *HP_skill_read_skilldb_pre;
struct HPMHookPoint *HP_skill_read_skilldb_post;
struct HPMHookPoint *HP_skill_config_set_level_pre;
@@ -6186,6 +6340,8 @@ struct {
struct HPMHookPoint *HP_skill_check_npc_chaospanic_post;
struct HPMHookPoint *HP_skill_count_wos_pre;
struct HPMHookPoint *HP_skill_count_wos_post;
+ struct HPMHookPoint *HP_skill_get_linked_song_dance_id_pre;
+ struct HPMHookPoint *HP_skill_get_linked_song_dance_id_post;
struct HPMHookPoint *HP_sockt_init_pre;
struct HPMHookPoint *HP_sockt_init_post;
struct HPMHookPoint *HP_sockt_final_pre;
@@ -7875,6 +8031,10 @@ struct {
int HP_clif_chatname_ack_post;
int HP_clif_elemname_ack_pre;
int HP_clif_elemname_ack_post;
+ int HP_clif_skillname_ack_pre;
+ int HP_clif_skillname_ack_post;
+ int HP_clif_itemname_ack_pre;
+ int HP_clif_itemname_ack_post;
int HP_clif_unknownname_ack_pre;
int HP_clif_unknownname_ack_post;
int HP_clif_monster_hp_bar_pre;
@@ -9227,6 +9387,14 @@ struct {
int HP_clif_plapineDdukDdak_ack_post;
int HP_clif_plapineDdukDdak_close_pre;
int HP_clif_plapineDdukDdak_close_post;
+ int HP_clif_lapineUpgrade_open_pre;
+ int HP_clif_lapineUpgrade_open_post;
+ int HP_clif_lapineUpgrade_result_pre;
+ int HP_clif_lapineUpgrade_result_post;
+ int HP_clif_pLapineUpgrade_close_pre;
+ int HP_clif_pLapineUpgrade_close_post;
+ int HP_clif_pLapineUpgrade_makeItem_pre;
+ int HP_clif_pLapineUpgrade_makeItem_post;
int HP_clif_pReqGearOff_pre;
int HP_clif_pReqGearOff_post;
int HP_cmdline_init_pre;
@@ -10691,20 +10859,32 @@ struct {
int HP_mapit_prev_post;
int HP_mapit_exists_pre;
int HP_mapit_exists_post;
- int HP_mapreg_init_pre;
- int HP_mapreg_init_post;
- int HP_mapreg_final_pre;
- int HP_mapreg_final_post;
int HP_mapreg_readreg_pre;
int HP_mapreg_readreg_post;
int HP_mapreg_readregstr_pre;
int HP_mapreg_readregstr_post;
+ int HP_mapreg_set_num_db_pre;
+ int HP_mapreg_set_num_db_post;
+ int HP_mapreg_delete_num_db_pre;
+ int HP_mapreg_delete_num_db_post;
int HP_mapreg_setreg_pre;
int HP_mapreg_setreg_post;
+ int HP_mapreg_set_str_db_pre;
+ int HP_mapreg_set_str_db_post;
+ int HP_mapreg_delete_str_db_pre;
+ int HP_mapreg_delete_str_db_post;
int HP_mapreg_setregstr_pre;
int HP_mapreg_setregstr_post;
+ int HP_mapreg_load_num_db_pre;
+ int HP_mapreg_load_num_db_post;
+ int HP_mapreg_load_str_db_pre;
+ int HP_mapreg_load_str_db_post;
int HP_mapreg_load_pre;
int HP_mapreg_load_post;
+ int HP_mapreg_save_num_db_pre;
+ int HP_mapreg_save_num_db_post;
+ int HP_mapreg_save_str_db_pre;
+ int HP_mapreg_save_str_db_post;
int HP_mapreg_save_pre;
int HP_mapreg_save_post;
int HP_mapreg_save_timer_pre;
@@ -10713,8 +10893,12 @@ struct {
int HP_mapreg_destroyreg_post;
int HP_mapreg_reload_pre;
int HP_mapreg_reload_post;
- int HP_mapreg_config_read_pre;
- int HP_mapreg_config_read_post;
+ int HP_mapreg_config_read_registry_pre;
+ int HP_mapreg_config_read_registry_post;
+ int HP_mapreg_final_pre;
+ int HP_mapreg_final_post;
+ int HP_mapreg_init_pre;
+ int HP_mapreg_init_post;
int HP_md5_string_pre;
int HP_md5_string_post;
int HP_md5_binary_pre;
@@ -11295,6 +11479,10 @@ struct {
int HP_npc_questinfo_clear_post;
int HP_npc_secure_timeout_timer_pre;
int HP_npc_secure_timeout_timer_post;
+ int HP_nullpo_init_pre;
+ int HP_nullpo_init_post;
+ int HP_nullpo_final_pre;
+ int HP_nullpo_final_post;
int HP_nullpo_assert_report_pre;
int HP_nullpo_assert_report_post;
int HP_packets_init_pre;
@@ -11639,8 +11827,14 @@ struct {
int HP_pc_checkitem_post;
int HP_pc_useitem_pre;
int HP_pc_useitem_post;
- int HP_pc_itemskill_clear_pre;
- int HP_pc_itemskill_clear_post;
+ int HP_pc_autocast_clear_current_pre;
+ int HP_pc_autocast_clear_current_post;
+ int HP_pc_autocast_clear_pre;
+ int HP_pc_autocast_clear_post;
+ int HP_pc_autocast_set_current_pre;
+ int HP_pc_autocast_set_current_post;
+ int HP_pc_autocast_remove_pre;
+ int HP_pc_autocast_remove_post;
int HP_pc_skillatk_bonus_pre;
int HP_pc_skillatk_bonus_post;
int HP_pc_skillheal_bonus_pre;
@@ -11661,6 +11855,10 @@ struct {
int HP_pc_percentheal_post;
int HP_pc_jobchange_pre;
int HP_pc_jobchange_post;
+ int HP_pc_hide_pre;
+ int HP_pc_hide_post;
+ int HP_pc_unhide_pre;
+ int HP_pc_unhide_post;
int HP_pc_setoption_pre;
int HP_pc_setoption_post;
int HP_pc_setcart_pre;
@@ -11947,6 +12145,8 @@ struct {
int HP_pet_final_post;
int HP_pet_hungry_val_pre;
int HP_pet_hungry_val_post;
+ int HP_pet_set_hunger_pre;
+ int HP_pet_set_hunger_post;
int HP_pet_set_intimate_pre;
int HP_pet_set_intimate_post;
int HP_pet_create_egg_pre;
@@ -12307,6 +12507,8 @@ struct {
int HP_script_parse_syntax_close_sub_post;
int HP_script_parse_syntax_pre;
int HP_script_parse_syntax_post;
+ int HP_script_parse_syntax_function_pre;
+ int HP_script_parse_syntax_function_post;
int HP_script_get_com_pre;
int HP_script_get_com_post;
int HP_script_get_num_pre;
@@ -12371,6 +12573,8 @@ struct {
int HP_script_print_line_post;
int HP_script_errorwarning_sub_pre;
int HP_script_errorwarning_sub_post;
+ int HP_script_is_permanent_variable_pre;
+ int HP_script_is_permanent_variable_post;
int HP_script_set_reg_pre;
int HP_script_set_reg_post;
int HP_script_set_reg_ref_str_pre;
@@ -12603,6 +12807,8 @@ struct {
int HP_skill_get_hp_post;
int HP_skill_get_mhp_pre;
int HP_skill_get_mhp_post;
+ int HP_skill_get_msp_pre;
+ int HP_skill_get_msp_post;
int HP_skill_get_sp_pre;
int HP_skill_get_sp_post;
int HP_skill_get_hp_rate_pre;
@@ -12617,6 +12823,14 @@ struct {
int HP_skill_get_itemid_post;
int HP_skill_get_itemqty_pre;
int HP_skill_get_itemqty_post;
+ int HP_skill_get_item_any_flag_pre;
+ int HP_skill_get_item_any_flag_post;
+ int HP_skill_get_equip_id_pre;
+ int HP_skill_get_equip_id_post;
+ int HP_skill_get_equip_amount_pre;
+ int HP_skill_get_equip_amount_post;
+ int HP_skill_get_equip_any_flag_pre;
+ int HP_skill_get_equip_any_flag_post;
int HP_skill_get_zeny_pre;
int HP_skill_get_zeny_post;
int HP_skill_get_num_pre;
@@ -12731,12 +12945,18 @@ struct {
int HP_skill_vf_cast_fix_post;
int HP_skill_delay_fix_pre;
int HP_skill_delay_fix_post;
- int HP_skill_is_item_skill_pre;
- int HP_skill_is_item_skill_post;
+ int HP_skill_check_condition_required_equip_pre;
+ int HP_skill_check_condition_required_equip_post;
int HP_skill_check_condition_castbegin_pre;
int HP_skill_check_condition_castbegin_post;
+ int HP_skill_check_condition_required_items_pre;
+ int HP_skill_check_condition_required_items_post;
+ int HP_skill_items_required_pre;
+ int HP_skill_items_required_post;
int HP_skill_check_condition_castend_pre;
int HP_skill_check_condition_castend_post;
+ int HP_skill_get_any_item_index_pre;
+ int HP_skill_get_any_item_index_post;
int HP_skill_consume_requirement_pre;
int HP_skill_consume_requirement_post;
int HP_skill_get_requirement_pre;
@@ -12783,6 +13003,8 @@ struct {
int HP_skill_not_ok_hom_unknown_post;
int HP_skill_not_ok_mercenary_pre;
int HP_skill_not_ok_mercenary_post;
+ int HP_skill_validate_autocast_data_pre;
+ int HP_skill_validate_autocast_data_post;
int HP_skill_chastle_mob_changetarget_pre;
int HP_skill_chastle_mob_changetarget_post;
int HP_skill_can_produce_mix_pre;
@@ -12903,42 +13125,130 @@ struct {
int HP_skill_init_unit_layout_post;
int HP_skill_init_unit_layout_unknown_pre;
int HP_skill_init_unit_layout_unknown_post;
+ int HP_skill_validate_id_pre;
+ int HP_skill_validate_id_post;
+ int HP_skill_name_contains_invalid_character_pre;
+ int HP_skill_name_contains_invalid_character_post;
+ int HP_skill_validate_name_pre;
+ int HP_skill_validate_name_post;
+ int HP_skill_validate_max_level_pre;
+ int HP_skill_validate_max_level_post;
+ int HP_skill_validate_description_pre;
+ int HP_skill_validate_description_post;
+ int HP_skill_validate_range_pre;
+ int HP_skill_validate_range_post;
int HP_skill_validate_hittype_pre;
int HP_skill_validate_hittype_post;
int HP_skill_validate_skilltype_pre;
int HP_skill_validate_skilltype_post;
+ int HP_skill_validate_skillinfo_pre;
+ int HP_skill_validate_skillinfo_post;
int HP_skill_validate_attacktype_pre;
int HP_skill_validate_attacktype_post;
int HP_skill_validate_element_pre;
int HP_skill_validate_element_post;
- int HP_skill_validate_skillinfo_pre;
- int HP_skill_validate_skillinfo_post;
int HP_skill_validate_damagetype_pre;
int HP_skill_validate_damagetype_post;
+ int HP_skill_validate_splash_range_pre;
+ int HP_skill_validate_splash_range_post;
+ int HP_skill_validate_number_of_hits_pre;
+ int HP_skill_validate_number_of_hits_post;
+ int HP_skill_validate_interrupt_cast_pre;
+ int HP_skill_validate_interrupt_cast_post;
+ int HP_skill_validate_cast_def_rate_pre;
+ int HP_skill_validate_cast_def_rate_post;
+ int HP_skill_validate_number_of_instances_pre;
+ int HP_skill_validate_number_of_instances_post;
+ int HP_skill_validate_knock_back_tiles_pre;
+ int HP_skill_validate_knock_back_tiles_post;
+ int HP_skill_validate_cast_time_pre;
+ int HP_skill_validate_cast_time_post;
+ int HP_skill_validate_act_delay_pre;
+ int HP_skill_validate_act_delay_post;
+ int HP_skill_validate_walk_delay_pre;
+ int HP_skill_validate_walk_delay_post;
+ int HP_skill_validate_skill_data1_pre;
+ int HP_skill_validate_skill_data1_post;
+ int HP_skill_validate_skill_data2_pre;
+ int HP_skill_validate_skill_data2_post;
+ int HP_skill_validate_cooldown_pre;
+ int HP_skill_validate_cooldown_post;
+ int HP_skill_validate_fixed_cast_time_pre;
+ int HP_skill_validate_fixed_cast_time_post;
int HP_skill_validate_castnodex_pre;
int HP_skill_validate_castnodex_post;
+ int HP_skill_validate_hp_cost_pre;
+ int HP_skill_validate_hp_cost_post;
+ int HP_skill_validate_sp_cost_pre;
+ int HP_skill_validate_sp_cost_post;
+ int HP_skill_validate_hp_rate_cost_pre;
+ int HP_skill_validate_hp_rate_cost_post;
+ int HP_skill_validate_sp_rate_cost_pre;
+ int HP_skill_validate_sp_rate_cost_post;
+ int HP_skill_validate_max_hp_trigger_pre;
+ int HP_skill_validate_max_hp_trigger_post;
+ int HP_skill_validate_max_sp_trigger_pre;
+ int HP_skill_validate_max_sp_trigger_post;
+ int HP_skill_validate_zeny_cost_pre;
+ int HP_skill_validate_zeny_cost_post;
+ int HP_skill_validate_weapontype_sub_pre;
+ int HP_skill_validate_weapontype_sub_post;
int HP_skill_validate_weapontype_pre;
int HP_skill_validate_weapontype_post;
+ int HP_skill_validate_ammotype_sub_pre;
+ int HP_skill_validate_ammotype_sub_post;
int HP_skill_validate_ammotype_pre;
int HP_skill_validate_ammotype_post;
+ int HP_skill_validate_ammo_amount_pre;
+ int HP_skill_validate_ammo_amount_post;
+ int HP_skill_validate_state_sub_pre;
+ int HP_skill_validate_state_sub_post;
int HP_skill_validate_state_pre;
int HP_skill_validate_state_post;
+ int HP_skill_validate_spirit_sphere_cost_pre;
+ int HP_skill_validate_spirit_sphere_cost_post;
+ int HP_skill_validate_item_requirements_sub_item_amount_pre;
+ int HP_skill_validate_item_requirements_sub_item_amount_post;
+ int HP_skill_validate_item_requirements_sub_items_pre;
+ int HP_skill_validate_item_requirements_sub_items_post;
+ int HP_skill_validate_item_requirements_sub_any_flag_pre;
+ int HP_skill_validate_item_requirements_sub_any_flag_post;
int HP_skill_validate_item_requirements_pre;
int HP_skill_validate_item_requirements_post;
- int HP_skill_validate_unit_target_pre;
- int HP_skill_validate_unit_target_post;
+ int HP_skill_validate_equip_requirements_sub_item_amount_pre;
+ int HP_skill_validate_equip_requirements_sub_item_amount_post;
+ int HP_skill_validate_equip_requirements_sub_items_pre;
+ int HP_skill_validate_equip_requirements_sub_items_post;
+ int HP_skill_validate_equip_requirements_sub_any_flag_pre;
+ int HP_skill_validate_equip_requirements_sub_any_flag_post;
+ int HP_skill_validate_equip_requirements_pre;
+ int HP_skill_validate_equip_requirements_post;
+ int HP_skill_validate_requirements_item_name_pre;
+ int HP_skill_validate_requirements_item_name_post;
+ int HP_skill_validate_requirements_pre;
+ int HP_skill_validate_requirements_post;
+ int HP_skill_validate_unit_id_sub_pre;
+ int HP_skill_validate_unit_id_sub_post;
+ int HP_skill_validate_unit_id_pre;
+ int HP_skill_validate_unit_id_post;
+ int HP_skill_validate_unit_layout_pre;
+ int HP_skill_validate_unit_layout_post;
+ int HP_skill_validate_unit_range_pre;
+ int HP_skill_validate_unit_range_post;
+ int HP_skill_validate_unit_interval_pre;
+ int HP_skill_validate_unit_interval_post;
+ int HP_skill_validate_unit_flag_sub_pre;
+ int HP_skill_validate_unit_flag_sub_post;
int HP_skill_validate_unit_flag_pre;
int HP_skill_validate_unit_flag_post;
+ int HP_skill_validate_unit_target_sub_pre;
+ int HP_skill_validate_unit_target_sub_post;
+ int HP_skill_validate_unit_target_pre;
+ int HP_skill_validate_unit_target_post;
+ int HP_skill_validate_unit_pre;
+ int HP_skill_validate_unit_post;
int HP_skill_validate_additional_fields_pre;
int HP_skill_validate_additional_fields_post;
- int HP_skill_validate_skilldb_pre;
- int HP_skill_validate_skilldb_post;
- int HP_skill_validate_weapontype_sub_pre;
- int HP_skill_validate_weapontype_sub_post;
- int HP_skill_validate_ammotype_sub_pre;
- int HP_skill_validate_ammotype_sub_post;
- int HP_skill_validate_unit_flag_sub_pre;
- int HP_skill_validate_unit_flag_sub_post;
int HP_skill_read_skilldb_pre;
int HP_skill_read_skilldb_post;
int HP_skill_config_set_level_pre;
@@ -13061,6 +13371,8 @@ struct {
int HP_skill_check_npc_chaospanic_post;
int HP_skill_count_wos_pre;
int HP_skill_count_wos_post;
+ int HP_skill_get_linked_song_dance_id_pre;
+ int HP_skill_get_linked_song_dance_id_post;
int HP_sockt_init_pre;
int HP_sockt_init_post;
int HP_sockt_final_pre;
diff --git a/src/plugins/HPMHooking/HPMHooking_map.HookingPoints.inc b/src/plugins/HPMHooking/HPMHooking_map.HookingPoints.inc
index a360b3f53..899f443d1 100644
--- a/src/plugins/HPMHooking/HPMHooking_map.HookingPoints.inc
+++ b/src/plugins/HPMHooking/HPMHooking_map.HookingPoints.inc
@@ -524,6 +524,8 @@ struct HookingPointData HookingPoints[] = {
{ HP_POP(clif->mobname_normal_ack, HP_clif_mobname_normal_ack) },
{ HP_POP(clif->chatname_ack, HP_clif_chatname_ack) },
{ HP_POP(clif->elemname_ack, HP_clif_elemname_ack) },
+ { HP_POP(clif->skillname_ack, HP_clif_skillname_ack) },
+ { HP_POP(clif->itemname_ack, HP_clif_itemname_ack) },
{ HP_POP(clif->unknownname_ack, HP_clif_unknownname_ack) },
{ HP_POP(clif->monster_hp_bar, HP_clif_monster_hp_bar) },
{ HP_POP(clif->hpmeter, HP_clif_hpmeter) },
@@ -1200,6 +1202,10 @@ struct HookingPointData HookingPoints[] = {
{ HP_POP(clif->lapineDdukDdak_result, HP_clif_lapineDdukDdak_result) },
{ HP_POP(clif->plapineDdukDdak_ack, HP_clif_plapineDdukDdak_ack) },
{ HP_POP(clif->plapineDdukDdak_close, HP_clif_plapineDdukDdak_close) },
+ { HP_POP(clif->lapineUpgrade_open, HP_clif_lapineUpgrade_open) },
+ { HP_POP(clif->lapineUpgrade_result, HP_clif_lapineUpgrade_result) },
+ { HP_POP(clif->pLapineUpgrade_close, HP_clif_pLapineUpgrade_close) },
+ { HP_POP(clif->pLapineUpgrade_makeItem, HP_clif_pLapineUpgrade_makeItem) },
{ HP_POP(clif->pReqGearOff, HP_clif_pReqGearOff) },
/* cmdline_interface */
{ HP_POP(cmdline->init, HP_cmdline_init) },
@@ -1954,18 +1960,26 @@ struct HookingPointData HookingPoints[] = {
{ HP_POP(mapit->prev, HP_mapit_prev) },
{ HP_POP(mapit->exists, HP_mapit_exists) },
/* mapreg_interface */
- { HP_POP(mapreg->init, HP_mapreg_init) },
- { HP_POP(mapreg->final, HP_mapreg_final) },
{ HP_POP(mapreg->readreg, HP_mapreg_readreg) },
{ HP_POP(mapreg->readregstr, HP_mapreg_readregstr) },
+ { HP_POP(mapreg->set_num_db, HP_mapreg_set_num_db) },
+ { HP_POP(mapreg->delete_num_db, HP_mapreg_delete_num_db) },
{ HP_POP(mapreg->setreg, HP_mapreg_setreg) },
+ { HP_POP(mapreg->set_str_db, HP_mapreg_set_str_db) },
+ { HP_POP(mapreg->delete_str_db, HP_mapreg_delete_str_db) },
{ HP_POP(mapreg->setregstr, HP_mapreg_setregstr) },
+ { HP_POP(mapreg->load_num_db, HP_mapreg_load_num_db) },
+ { HP_POP(mapreg->load_str_db, HP_mapreg_load_str_db) },
{ HP_POP(mapreg->load, HP_mapreg_load) },
+ { HP_POP(mapreg->save_num_db, HP_mapreg_save_num_db) },
+ { HP_POP(mapreg->save_str_db, HP_mapreg_save_str_db) },
{ HP_POP(mapreg->save, HP_mapreg_save) },
{ HP_POP(mapreg->save_timer, HP_mapreg_save_timer) },
{ HP_POP(mapreg->destroyreg, HP_mapreg_destroyreg) },
{ HP_POP(mapreg->reload, HP_mapreg_reload) },
- { HP_POP(mapreg->config_read, HP_mapreg_config_read) },
+ { HP_POP(mapreg->config_read_registry, HP_mapreg_config_read_registry) },
+ { HP_POP(mapreg->final, HP_mapreg_final) },
+ { HP_POP(mapreg->init, HP_mapreg_init) },
/* md5_interface */
{ HP_POP(md5->string, HP_md5_string) },
{ HP_POP(md5->binary, HP_md5_binary) },
@@ -2263,6 +2277,8 @@ struct HookingPointData HookingPoints[] = {
{ HP_POP(npc->questinfo_clear, HP_npc_questinfo_clear) },
{ HP_POP(npc->secure_timeout_timer, HP_npc_secure_timeout_timer) },
/* nullpo_interface */
+ { HP_POP(nullpo->init, HP_nullpo_init) },
+ { HP_POP(nullpo->final, HP_nullpo_final) },
{ HP_POP(nullpo->assert_report, HP_nullpo_assert_report) },
/* packets_interface */
{ HP_POP(packets->init, HP_packets_init) },
@@ -2440,7 +2456,10 @@ struct HookingPointData HookingPoints[] = {
{ HP_POP(pc->unequipitem_pos, HP_pc_unequipitem_pos) },
{ HP_POP(pc->checkitem, HP_pc_checkitem) },
{ HP_POP(pc->useitem, HP_pc_useitem) },
- { HP_POP(pc->itemskill_clear, HP_pc_itemskill_clear) },
+ { HP_POP(pc->autocast_clear_current, HP_pc_autocast_clear_current) },
+ { HP_POP(pc->autocast_clear, HP_pc_autocast_clear) },
+ { HP_POP(pc->autocast_set_current, HP_pc_autocast_set_current) },
+ { HP_POP(pc->autocast_remove, HP_pc_autocast_remove) },
{ HP_POP(pc->skillatk_bonus, HP_pc_skillatk_bonus) },
{ HP_POP(pc->skillheal_bonus, HP_pc_skillheal_bonus) },
{ HP_POP(pc->skillheal2_bonus, HP_pc_skillheal2_bonus) },
@@ -2451,6 +2470,8 @@ struct HookingPointData HookingPoints[] = {
{ HP_POP(pc->itemheal, HP_pc_itemheal) },
{ HP_POP(pc->percentheal, HP_pc_percentheal) },
{ HP_POP(pc->jobchange, HP_pc_jobchange) },
+ { HP_POP(pc->hide, HP_pc_hide) },
+ { HP_POP(pc->unhide, HP_pc_unhide) },
{ HP_POP(pc->setoption, HP_pc_setoption) },
{ HP_POP(pc->setcart, HP_pc_setcart) },
{ HP_POP(pc->setfalcon, HP_pc_setfalcon) },
@@ -2596,6 +2617,7 @@ struct HookingPointData HookingPoints[] = {
{ HP_POP(pet->init, HP_pet_init) },
{ HP_POP(pet->final, HP_pet_final) },
{ HP_POP(pet->hungry_val, HP_pet_hungry_val) },
+ { HP_POP(pet->set_hunger, HP_pet_set_hunger) },
{ HP_POP(pet->set_intimate, HP_pet_set_intimate) },
{ HP_POP(pet->create_egg, HP_pet_create_egg) },
{ HP_POP(pet->unlocktarget, HP_pet_unlocktarget) },
@@ -2782,6 +2804,7 @@ struct HookingPointData HookingPoints[] = {
{ HP_POP(script->parse_syntax_close, HP_script_parse_syntax_close) },
{ HP_POP(script->parse_syntax_close_sub, HP_script_parse_syntax_close_sub) },
{ HP_POP(script->parse_syntax, HP_script_parse_syntax) },
+ { HP_POP(script->parse_syntax_function, HP_script_parse_syntax_function) },
{ HP_POP(script->get_com, HP_script_get_com) },
{ HP_POP(script->get_num, HP_script_get_num) },
{ HP_POP(script->op2name, HP_script_op2name) },
@@ -2814,6 +2837,7 @@ struct HookingPointData HookingPoints[] = {
{ HP_POP(script->load_parameters, HP_script_load_parameters) },
{ HP_POP(script->print_line, HP_script_print_line) },
{ HP_POP(script->errorwarning_sub, HP_script_errorwarning_sub) },
+ { HP_POP(script->is_permanent_variable, HP_script_is_permanent_variable) },
{ HP_POP(script->set_reg, HP_script_set_reg) },
{ HP_POP(script->set_reg_ref_str, HP_script_set_reg_ref_str) },
{ HP_POP(script->set_reg_pc_ref_str, HP_script_set_reg_pc_ref_str) },
@@ -2933,6 +2957,7 @@ struct HookingPointData HookingPoints[] = {
{ HP_POP(skill->get_splash, HP_skill_get_splash) },
{ HP_POP(skill->get_hp, HP_skill_get_hp) },
{ HP_POP(skill->get_mhp, HP_skill_get_mhp) },
+ { HP_POP(skill->get_msp, HP_skill_get_msp) },
{ HP_POP(skill->get_sp, HP_skill_get_sp) },
{ HP_POP(skill->get_hp_rate, HP_skill_get_hp_rate) },
{ HP_POP(skill->get_sp_rate, HP_skill_get_sp_rate) },
@@ -2940,6 +2965,10 @@ struct HookingPointData HookingPoints[] = {
{ HP_POP(skill->get_spiritball, HP_skill_get_spiritball) },
{ HP_POP(skill->get_itemid, HP_skill_get_itemid) },
{ HP_POP(skill->get_itemqty, HP_skill_get_itemqty) },
+ { HP_POP(skill->get_item_any_flag, HP_skill_get_item_any_flag) },
+ { HP_POP(skill->get_equip_id, HP_skill_get_equip_id) },
+ { HP_POP(skill->get_equip_amount, HP_skill_get_equip_amount) },
+ { HP_POP(skill->get_equip_any_flag, HP_skill_get_equip_any_flag) },
{ HP_POP(skill->get_zeny, HP_skill_get_zeny) },
{ HP_POP(skill->get_num, HP_skill_get_num) },
{ HP_POP(skill->get_cast, HP_skill_get_cast) },
@@ -2997,9 +3026,12 @@ struct HookingPointData HookingPoints[] = {
{ HP_POP(skill->cast_fix_sc, HP_skill_cast_fix_sc) },
{ HP_POP(skill->vf_cast_fix, HP_skill_vf_cast_fix) },
{ HP_POP(skill->delay_fix, HP_skill_delay_fix) },
- { HP_POP(skill->is_item_skill, HP_skill_is_item_skill) },
+ { HP_POP(skill->check_condition_required_equip, HP_skill_check_condition_required_equip) },
{ HP_POP(skill->check_condition_castbegin, HP_skill_check_condition_castbegin) },
+ { HP_POP(skill->check_condition_required_items, HP_skill_check_condition_required_items) },
+ { HP_POP(skill->items_required, HP_skill_items_required) },
{ HP_POP(skill->check_condition_castend, HP_skill_check_condition_castend) },
+ { HP_POP(skill->get_any_item_index, HP_skill_get_any_item_index) },
{ HP_POP(skill->consume_requirement, HP_skill_consume_requirement) },
{ HP_POP(skill->get_requirement, HP_skill_get_requirement) },
{ HP_POP(skill->check_pc_partner, HP_skill_check_pc_partner) },
@@ -3023,6 +3055,7 @@ struct HookingPointData HookingPoints[] = {
{ HP_POP(skill->not_ok_hom, HP_skill_not_ok_hom) },
{ HP_POP(skill->not_ok_hom_unknown, HP_skill_not_ok_hom_unknown) },
{ HP_POP(skill->not_ok_mercenary, HP_skill_not_ok_mercenary) },
+ { HP_POP(skill->validate_autocast_data, HP_skill_validate_autocast_data) },
{ HP_POP(skill->chastle_mob_changetarget, HP_skill_chastle_mob_changetarget) },
{ HP_POP(skill->can_produce_mix, HP_skill_can_produce_mix) },
{ HP_POP(skill->produce_mix, HP_skill_produce_mix) },
@@ -3083,24 +3116,68 @@ struct HookingPointData HookingPoints[] = {
{ HP_POP(skill->unit_timer_sub, HP_skill_unit_timer_sub) },
{ HP_POP(skill->init_unit_layout, HP_skill_init_unit_layout) },
{ HP_POP(skill->init_unit_layout_unknown, HP_skill_init_unit_layout_unknown) },
+ { HP_POP(skill->validate_id, HP_skill_validate_id) },
+ { HP_POP(skill->name_contains_invalid_character, HP_skill_name_contains_invalid_character) },
+ { HP_POP(skill->validate_name, HP_skill_validate_name) },
+ { HP_POP(skill->validate_max_level, HP_skill_validate_max_level) },
+ { HP_POP(skill->validate_description, HP_skill_validate_description) },
+ { HP_POP(skill->validate_range, HP_skill_validate_range) },
{ HP_POP(skill->validate_hittype, HP_skill_validate_hittype) },
{ HP_POP(skill->validate_skilltype, HP_skill_validate_skilltype) },
+ { HP_POP(skill->validate_skillinfo, HP_skill_validate_skillinfo) },
{ HP_POP(skill->validate_attacktype, HP_skill_validate_attacktype) },
{ HP_POP(skill->validate_element, HP_skill_validate_element) },
- { HP_POP(skill->validate_skillinfo, HP_skill_validate_skillinfo) },
{ HP_POP(skill->validate_damagetype, HP_skill_validate_damagetype) },
+ { HP_POP(skill->validate_splash_range, HP_skill_validate_splash_range) },
+ { HP_POP(skill->validate_number_of_hits, HP_skill_validate_number_of_hits) },
+ { HP_POP(skill->validate_interrupt_cast, HP_skill_validate_interrupt_cast) },
+ { HP_POP(skill->validate_cast_def_rate, HP_skill_validate_cast_def_rate) },
+ { HP_POP(skill->validate_number_of_instances, HP_skill_validate_number_of_instances) },
+ { HP_POP(skill->validate_knock_back_tiles, HP_skill_validate_knock_back_tiles) },
+ { HP_POP(skill->validate_cast_time, HP_skill_validate_cast_time) },
+ { HP_POP(skill->validate_act_delay, HP_skill_validate_act_delay) },
+ { HP_POP(skill->validate_walk_delay, HP_skill_validate_walk_delay) },
+ { HP_POP(skill->validate_skill_data1, HP_skill_validate_skill_data1) },
+ { HP_POP(skill->validate_skill_data2, HP_skill_validate_skill_data2) },
+ { HP_POP(skill->validate_cooldown, HP_skill_validate_cooldown) },
+ { HP_POP(skill->validate_fixed_cast_time, HP_skill_validate_fixed_cast_time) },
{ HP_POP(skill->validate_castnodex, HP_skill_validate_castnodex) },
+ { HP_POP(skill->validate_hp_cost, HP_skill_validate_hp_cost) },
+ { HP_POP(skill->validate_sp_cost, HP_skill_validate_sp_cost) },
+ { HP_POP(skill->validate_hp_rate_cost, HP_skill_validate_hp_rate_cost) },
+ { HP_POP(skill->validate_sp_rate_cost, HP_skill_validate_sp_rate_cost) },
+ { HP_POP(skill->validate_max_hp_trigger, HP_skill_validate_max_hp_trigger) },
+ { HP_POP(skill->validate_max_sp_trigger, HP_skill_validate_max_sp_trigger) },
+ { HP_POP(skill->validate_zeny_cost, HP_skill_validate_zeny_cost) },
+ { HP_POP(skill->validate_weapontype_sub, HP_skill_validate_weapontype_sub) },
{ HP_POP(skill->validate_weapontype, HP_skill_validate_weapontype) },
+ { HP_POP(skill->validate_ammotype_sub, HP_skill_validate_ammotype_sub) },
{ HP_POP(skill->validate_ammotype, HP_skill_validate_ammotype) },
+ { HP_POP(skill->validate_ammo_amount, HP_skill_validate_ammo_amount) },
+ { HP_POP(skill->validate_state_sub, HP_skill_validate_state_sub) },
{ HP_POP(skill->validate_state, HP_skill_validate_state) },
+ { HP_POP(skill->validate_spirit_sphere_cost, HP_skill_validate_spirit_sphere_cost) },
+ { HP_POP(skill->validate_item_requirements_sub_item_amount, HP_skill_validate_item_requirements_sub_item_amount) },
+ { HP_POP(skill->validate_item_requirements_sub_items, HP_skill_validate_item_requirements_sub_items) },
+ { HP_POP(skill->validate_item_requirements_sub_any_flag, HP_skill_validate_item_requirements_sub_any_flag) },
{ HP_POP(skill->validate_item_requirements, HP_skill_validate_item_requirements) },
- { HP_POP(skill->validate_unit_target, HP_skill_validate_unit_target) },
+ { HP_POP(skill->validate_equip_requirements_sub_item_amount, HP_skill_validate_equip_requirements_sub_item_amount) },
+ { HP_POP(skill->validate_equip_requirements_sub_items, HP_skill_validate_equip_requirements_sub_items) },
+ { HP_POP(skill->validate_equip_requirements_sub_any_flag, HP_skill_validate_equip_requirements_sub_any_flag) },
+ { HP_POP(skill->validate_equip_requirements, HP_skill_validate_equip_requirements) },
+ { HP_POP(skill->validate_requirements_item_name, HP_skill_validate_requirements_item_name) },
+ { HP_POP(skill->validate_requirements, HP_skill_validate_requirements) },
+ { HP_POP(skill->validate_unit_id_sub, HP_skill_validate_unit_id_sub) },
+ { HP_POP(skill->validate_unit_id, HP_skill_validate_unit_id) },
+ { HP_POP(skill->validate_unit_layout, HP_skill_validate_unit_layout) },
+ { HP_POP(skill->validate_unit_range, HP_skill_validate_unit_range) },
+ { HP_POP(skill->validate_unit_interval, HP_skill_validate_unit_interval) },
+ { HP_POP(skill->validate_unit_flag_sub, HP_skill_validate_unit_flag_sub) },
{ HP_POP(skill->validate_unit_flag, HP_skill_validate_unit_flag) },
+ { HP_POP(skill->validate_unit_target_sub, HP_skill_validate_unit_target_sub) },
+ { HP_POP(skill->validate_unit_target, HP_skill_validate_unit_target) },
+ { HP_POP(skill->validate_unit, HP_skill_validate_unit) },
{ HP_POP(skill->validate_additional_fields, HP_skill_validate_additional_fields) },
- { HP_POP(skill->validate_skilldb, HP_skill_validate_skilldb) },
- { HP_POP(skill->validate_weapontype_sub, HP_skill_validate_weapontype_sub) },
- { HP_POP(skill->validate_ammotype_sub, HP_skill_validate_ammotype_sub) },
- { HP_POP(skill->validate_unit_flag_sub, HP_skill_validate_unit_flag_sub) },
{ HP_POP(skill->read_skilldb, HP_skill_read_skilldb) },
{ HP_POP(skill->config_set_level, HP_skill_config_set_level) },
{ HP_POP(skill->level_set_value, HP_skill_level_set_value) },
@@ -3162,6 +3239,7 @@ struct HookingPointData HookingPoints[] = {
{ HP_POP(skill->splash_target, HP_skill_splash_target) },
{ HP_POP(skill->check_npc_chaospanic, HP_skill_check_npc_chaospanic) },
{ HP_POP(skill->count_wos, HP_skill_count_wos) },
+ { HP_POP(skill->get_linked_song_dance_id, HP_skill_get_linked_song_dance_id) },
/* socket_interface */
{ HP_POP(sockt->init, HP_sockt_init) },
{ HP_POP(sockt->final, HP_sockt_final) },
@@ -3534,4 +3612,4 @@ struct HookingPointData HookingPoints[] = {
{ HP_POP(vending->searchall, HP_vending_searchall) },
};
-int HookingPointsLenMax = 49;
+int HookingPointsLenMax = 50;
diff --git a/src/plugins/HPMHooking/HPMHooking_map.Hooks.inc b/src/plugins/HPMHooking/HPMHooking_map.Hooks.inc
index 592279cc4..f6f1b3839 100644
--- a/src/plugins/HPMHooking/HPMHooking_map.Hooks.inc
+++ b/src/plugins/HPMHooking/HPMHooking_map.Hooks.inc
@@ -13035,6 +13035,58 @@ void HP_clif_elemname_ack(int fd, struct block_list *bl) {
}
return;
}
+void HP_clif_skillname_ack(int fd, struct block_list *bl) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_clif_skillname_ack_pre > 0) {
+ void (*preHookFunc) (int *fd, struct block_list **bl);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_skillname_ack_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_clif_skillname_ack_pre[hIndex].func;
+ preHookFunc(&fd, &bl);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.clif.skillname_ack(fd, bl);
+ }
+ if (HPMHooks.count.HP_clif_skillname_ack_post > 0) {
+ void (*postHookFunc) (int fd, struct block_list *bl);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_skillname_ack_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_clif_skillname_ack_post[hIndex].func;
+ postHookFunc(fd, bl);
+ }
+ }
+ return;
+}
+void HP_clif_itemname_ack(int fd, struct block_list *bl) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_clif_itemname_ack_pre > 0) {
+ void (*preHookFunc) (int *fd, struct block_list **bl);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_itemname_ack_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_clif_itemname_ack_pre[hIndex].func;
+ preHookFunc(&fd, &bl);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.clif.itemname_ack(fd, bl);
+ }
+ if (HPMHooks.count.HP_clif_itemname_ack_post > 0) {
+ void (*postHookFunc) (int fd, struct block_list *bl);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_itemname_ack_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_clif_itemname_ack_post[hIndex].func;
+ postHookFunc(fd, bl);
+ }
+ }
+ return;
+}
void HP_clif_unknownname_ack(int fd, struct block_list *bl) {
int hIndex = 0;
if (HPMHooks.count.HP_clif_unknownname_ack_pre > 0) {
@@ -30663,6 +30715,112 @@ void HP_clif_plapineDdukDdak_close(int fd, struct map_session_data *sd) {
}
return;
}
+bool HP_clif_lapineUpgrade_open(struct map_session_data *sd, int item_id) {
+ int hIndex = 0;
+ bool retVal___ = false;
+ if (HPMHooks.count.HP_clif_lapineUpgrade_open_pre > 0) {
+ bool (*preHookFunc) (struct map_session_data **sd, int *item_id);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_lapineUpgrade_open_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_clif_lapineUpgrade_open_pre[hIndex].func;
+ retVal___ = preHookFunc(&sd, &item_id);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return retVal___;
+ }
+ }
+ {
+ retVal___ = HPMHooks.source.clif.lapineUpgrade_open(sd, item_id);
+ }
+ if (HPMHooks.count.HP_clif_lapineUpgrade_open_post > 0) {
+ bool (*postHookFunc) (bool retVal___, struct map_session_data *sd, int item_id);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_lapineUpgrade_open_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_clif_lapineUpgrade_open_post[hIndex].func;
+ retVal___ = postHookFunc(retVal___, sd, item_id);
+ }
+ }
+ return retVal___;
+}
+bool HP_clif_lapineUpgrade_result(struct map_session_data *sd, enum lapineUpgrade_result result) {
+ int hIndex = 0;
+ bool retVal___ = false;
+ if (HPMHooks.count.HP_clif_lapineUpgrade_result_pre > 0) {
+ bool (*preHookFunc) (struct map_session_data **sd, enum lapineUpgrade_result *result);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_lapineUpgrade_result_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_clif_lapineUpgrade_result_pre[hIndex].func;
+ retVal___ = preHookFunc(&sd, &result);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return retVal___;
+ }
+ }
+ {
+ retVal___ = HPMHooks.source.clif.lapineUpgrade_result(sd, result);
+ }
+ if (HPMHooks.count.HP_clif_lapineUpgrade_result_post > 0) {
+ bool (*postHookFunc) (bool retVal___, struct map_session_data *sd, enum lapineUpgrade_result result);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_lapineUpgrade_result_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_clif_lapineUpgrade_result_post[hIndex].func;
+ retVal___ = postHookFunc(retVal___, sd, result);
+ }
+ }
+ return retVal___;
+}
+void HP_clif_pLapineUpgrade_close(int fd, struct map_session_data *sd) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_clif_pLapineUpgrade_close_pre > 0) {
+ void (*preHookFunc) (int *fd, struct map_session_data **sd);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_pLapineUpgrade_close_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_clif_pLapineUpgrade_close_pre[hIndex].func;
+ preHookFunc(&fd, &sd);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.clif.pLapineUpgrade_close(fd, sd);
+ }
+ if (HPMHooks.count.HP_clif_pLapineUpgrade_close_post > 0) {
+ void (*postHookFunc) (int fd, struct map_session_data *sd);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_pLapineUpgrade_close_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_clif_pLapineUpgrade_close_post[hIndex].func;
+ postHookFunc(fd, sd);
+ }
+ }
+ return;
+}
+void HP_clif_pLapineUpgrade_makeItem(int fd, struct map_session_data *sd) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_clif_pLapineUpgrade_makeItem_pre > 0) {
+ void (*preHookFunc) (int *fd, struct map_session_data **sd);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_pLapineUpgrade_makeItem_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_clif_pLapineUpgrade_makeItem_pre[hIndex].func;
+ preHookFunc(&fd, &sd);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.clif.pLapineUpgrade_makeItem(fd, sd);
+ }
+ if (HPMHooks.count.HP_clif_pLapineUpgrade_makeItem_post > 0) {
+ void (*postHookFunc) (int fd, struct map_session_data *sd);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_pLapineUpgrade_makeItem_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_clif_pLapineUpgrade_makeItem_post[hIndex].func;
+ postHookFunc(fd, sd);
+ }
+ }
+ return;
+}
void HP_clif_pReqGearOff(int fd, struct map_session_data *sd) {
int hIndex = 0;
if (HPMHooks.count.HP_clif_pReqGearOff_pre > 0) {
@@ -50460,58 +50618,6 @@ bool HP_mapit_exists(struct s_mapiterator *iter) {
return retVal___;
}
/* mapreg_interface */
-void HP_mapreg_init(void) {
- int hIndex = 0;
- if (HPMHooks.count.HP_mapreg_init_pre > 0) {
- void (*preHookFunc) (void);
- *HPMforce_return = false;
- for (hIndex = 0; hIndex < HPMHooks.count.HP_mapreg_init_pre; hIndex++) {
- preHookFunc = HPMHooks.list.HP_mapreg_init_pre[hIndex].func;
- preHookFunc();
- }
- if (*HPMforce_return) {
- *HPMforce_return = false;
- return;
- }
- }
- {
- HPMHooks.source.mapreg.init();
- }
- if (HPMHooks.count.HP_mapreg_init_post > 0) {
- void (*postHookFunc) (void);
- for (hIndex = 0; hIndex < HPMHooks.count.HP_mapreg_init_post; hIndex++) {
- postHookFunc = HPMHooks.list.HP_mapreg_init_post[hIndex].func;
- postHookFunc();
- }
- }
- return;
-}
-void HP_mapreg_final(void) {
- int hIndex = 0;
- if (HPMHooks.count.HP_mapreg_final_pre > 0) {
- void (*preHookFunc) (void);
- *HPMforce_return = false;
- for (hIndex = 0; hIndex < HPMHooks.count.HP_mapreg_final_pre; hIndex++) {
- preHookFunc = HPMHooks.list.HP_mapreg_final_pre[hIndex].func;
- preHookFunc();
- }
- if (*HPMforce_return) {
- *HPMforce_return = false;
- return;
- }
- }
- {
- HPMHooks.source.mapreg.final();
- }
- if (HPMHooks.count.HP_mapreg_final_post > 0) {
- void (*postHookFunc) (void);
- for (hIndex = 0; hIndex < HPMHooks.count.HP_mapreg_final_post; hIndex++) {
- postHookFunc = HPMHooks.list.HP_mapreg_final_post[hIndex].func;
- postHookFunc();
- }
- }
- return;
-}
int HP_mapreg_readreg(int64 uid) {
int hIndex = 0;
int retVal___ = 0;
@@ -50566,6 +50672,60 @@ char* HP_mapreg_readregstr(int64 uid) {
}
return retVal___;
}
+bool HP_mapreg_set_num_db(int64 uid, const char *name, unsigned int index, int value) {
+ int hIndex = 0;
+ bool retVal___ = false;
+ if (HPMHooks.count.HP_mapreg_set_num_db_pre > 0) {
+ bool (*preHookFunc) (int64 *uid, const char **name, unsigned int *index, int *value);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_mapreg_set_num_db_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_mapreg_set_num_db_pre[hIndex].func;
+ retVal___ = preHookFunc(&uid, &name, &index, &value);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return retVal___;
+ }
+ }
+ {
+ retVal___ = HPMHooks.source.mapreg.set_num_db(uid, name, index, value);
+ }
+ if (HPMHooks.count.HP_mapreg_set_num_db_post > 0) {
+ bool (*postHookFunc) (bool retVal___, int64 uid, const char *name, unsigned int index, int value);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_mapreg_set_num_db_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_mapreg_set_num_db_post[hIndex].func;
+ retVal___ = postHookFunc(retVal___, uid, name, index, value);
+ }
+ }
+ return retVal___;
+}
+bool HP_mapreg_delete_num_db(int64 uid, const char *name, unsigned int index) {
+ int hIndex = 0;
+ bool retVal___ = false;
+ if (HPMHooks.count.HP_mapreg_delete_num_db_pre > 0) {
+ bool (*preHookFunc) (int64 *uid, const char **name, unsigned int *index);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_mapreg_delete_num_db_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_mapreg_delete_num_db_pre[hIndex].func;
+ retVal___ = preHookFunc(&uid, &name, &index);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return retVal___;
+ }
+ }
+ {
+ retVal___ = HPMHooks.source.mapreg.delete_num_db(uid, name, index);
+ }
+ if (HPMHooks.count.HP_mapreg_delete_num_db_post > 0) {
+ bool (*postHookFunc) (bool retVal___, int64 uid, const char *name, unsigned int index);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_mapreg_delete_num_db_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_mapreg_delete_num_db_post[hIndex].func;
+ retVal___ = postHookFunc(retVal___, uid, name, index);
+ }
+ }
+ return retVal___;
+}
bool HP_mapreg_setreg(int64 uid, int val) {
int hIndex = 0;
bool retVal___ = false;
@@ -50593,6 +50753,60 @@ bool HP_mapreg_setreg(int64 uid, int val) {
}
return retVal___;
}
+bool HP_mapreg_set_str_db(int64 uid, const char *name, unsigned int index, const char *value) {
+ int hIndex = 0;
+ bool retVal___ = false;
+ if (HPMHooks.count.HP_mapreg_set_str_db_pre > 0) {
+ bool (*preHookFunc) (int64 *uid, const char **name, unsigned int *index, const char **value);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_mapreg_set_str_db_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_mapreg_set_str_db_pre[hIndex].func;
+ retVal___ = preHookFunc(&uid, &name, &index, &value);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return retVal___;
+ }
+ }
+ {
+ retVal___ = HPMHooks.source.mapreg.set_str_db(uid, name, index, value);
+ }
+ if (HPMHooks.count.HP_mapreg_set_str_db_post > 0) {
+ bool (*postHookFunc) (bool retVal___, int64 uid, const char *name, unsigned int index, const char *value);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_mapreg_set_str_db_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_mapreg_set_str_db_post[hIndex].func;
+ retVal___ = postHookFunc(retVal___, uid, name, index, value);
+ }
+ }
+ return retVal___;
+}
+bool HP_mapreg_delete_str_db(int64 uid, const char *name, unsigned int index) {
+ int hIndex = 0;
+ bool retVal___ = false;
+ if (HPMHooks.count.HP_mapreg_delete_str_db_pre > 0) {
+ bool (*preHookFunc) (int64 *uid, const char **name, unsigned int *index);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_mapreg_delete_str_db_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_mapreg_delete_str_db_pre[hIndex].func;
+ retVal___ = preHookFunc(&uid, &name, &index);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return retVal___;
+ }
+ }
+ {
+ retVal___ = HPMHooks.source.mapreg.delete_str_db(uid, name, index);
+ }
+ if (HPMHooks.count.HP_mapreg_delete_str_db_post > 0) {
+ bool (*postHookFunc) (bool retVal___, int64 uid, const char *name, unsigned int index);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_mapreg_delete_str_db_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_mapreg_delete_str_db_post[hIndex].func;
+ retVal___ = postHookFunc(retVal___, uid, name, index);
+ }
+ }
+ return retVal___;
+}
bool HP_mapreg_setregstr(int64 uid, const char *str) {
int hIndex = 0;
bool retVal___ = false;
@@ -50620,6 +50834,58 @@ bool HP_mapreg_setregstr(int64 uid, const char *str) {
}
return retVal___;
}
+void HP_mapreg_load_num_db(void) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_mapreg_load_num_db_pre > 0) {
+ void (*preHookFunc) (void);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_mapreg_load_num_db_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_mapreg_load_num_db_pre[hIndex].func;
+ preHookFunc();
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.mapreg.load_num_db();
+ }
+ if (HPMHooks.count.HP_mapreg_load_num_db_post > 0) {
+ void (*postHookFunc) (void);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_mapreg_load_num_db_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_mapreg_load_num_db_post[hIndex].func;
+ postHookFunc();
+ }
+ }
+ return;
+}
+void HP_mapreg_load_str_db(void) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_mapreg_load_str_db_pre > 0) {
+ void (*preHookFunc) (void);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_mapreg_load_str_db_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_mapreg_load_str_db_pre[hIndex].func;
+ preHookFunc();
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.mapreg.load_str_db();
+ }
+ if (HPMHooks.count.HP_mapreg_load_str_db_post > 0) {
+ void (*postHookFunc) (void);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_mapreg_load_str_db_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_mapreg_load_str_db_post[hIndex].func;
+ postHookFunc();
+ }
+ }
+ return;
+}
void HP_mapreg_load(void) {
int hIndex = 0;
if (HPMHooks.count.HP_mapreg_load_pre > 0) {
@@ -50646,6 +50912,58 @@ void HP_mapreg_load(void) {
}
return;
}
+void HP_mapreg_save_num_db(const char *name, unsigned int index, int value) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_mapreg_save_num_db_pre > 0) {
+ void (*preHookFunc) (const char **name, unsigned int *index, int *value);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_mapreg_save_num_db_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_mapreg_save_num_db_pre[hIndex].func;
+ preHookFunc(&name, &index, &value);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.mapreg.save_num_db(name, index, value);
+ }
+ if (HPMHooks.count.HP_mapreg_save_num_db_post > 0) {
+ void (*postHookFunc) (const char *name, unsigned int index, int value);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_mapreg_save_num_db_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_mapreg_save_num_db_post[hIndex].func;
+ postHookFunc(name, index, value);
+ }
+ }
+ return;
+}
+void HP_mapreg_save_str_db(const char *name, unsigned int index, const char *value) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_mapreg_save_str_db_pre > 0) {
+ void (*preHookFunc) (const char **name, unsigned int *index, const char **value);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_mapreg_save_str_db_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_mapreg_save_str_db_pre[hIndex].func;
+ preHookFunc(&name, &index, &value);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.mapreg.save_str_db(name, index, value);
+ }
+ if (HPMHooks.count.HP_mapreg_save_str_db_post > 0) {
+ void (*postHookFunc) (const char *name, unsigned int index, const char *value);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_mapreg_save_str_db_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_mapreg_save_str_db_post[hIndex].func;
+ postHookFunc(name, index, value);
+ }
+ }
+ return;
+}
void HP_mapreg_save(void) {
int hIndex = 0;
if (HPMHooks.count.HP_mapreg_save_pre > 0) {
@@ -50758,14 +51076,14 @@ void HP_mapreg_reload(void) {
}
return;
}
-bool HP_mapreg_config_read(const char *filename, const struct config_setting_t *config, bool imported) {
+bool HP_mapreg_config_read_registry(const char *filename, const struct config_setting_t *config, bool imported) {
int hIndex = 0;
bool retVal___ = false;
- if (HPMHooks.count.HP_mapreg_config_read_pre > 0) {
+ if (HPMHooks.count.HP_mapreg_config_read_registry_pre > 0) {
bool (*preHookFunc) (const char **filename, const struct config_setting_t **config, bool *imported);
*HPMforce_return = false;
- for (hIndex = 0; hIndex < HPMHooks.count.HP_mapreg_config_read_pre; hIndex++) {
- preHookFunc = HPMHooks.list.HP_mapreg_config_read_pre[hIndex].func;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_mapreg_config_read_registry_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_mapreg_config_read_registry_pre[hIndex].func;
retVal___ = preHookFunc(&filename, &config, &imported);
}
if (*HPMforce_return) {
@@ -50774,17 +51092,69 @@ bool HP_mapreg_config_read(const char *filename, const struct config_setting_t *
}
}
{
- retVal___ = HPMHooks.source.mapreg.config_read(filename, config, imported);
+ retVal___ = HPMHooks.source.mapreg.config_read_registry(filename, config, imported);
}
- if (HPMHooks.count.HP_mapreg_config_read_post > 0) {
+ if (HPMHooks.count.HP_mapreg_config_read_registry_post > 0) {
bool (*postHookFunc) (bool retVal___, const char *filename, const struct config_setting_t *config, bool imported);
- for (hIndex = 0; hIndex < HPMHooks.count.HP_mapreg_config_read_post; hIndex++) {
- postHookFunc = HPMHooks.list.HP_mapreg_config_read_post[hIndex].func;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_mapreg_config_read_registry_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_mapreg_config_read_registry_post[hIndex].func;
retVal___ = postHookFunc(retVal___, filename, config, imported);
}
}
return retVal___;
}
+void HP_mapreg_final(void) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_mapreg_final_pre > 0) {
+ void (*preHookFunc) (void);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_mapreg_final_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_mapreg_final_pre[hIndex].func;
+ preHookFunc();
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.mapreg.final();
+ }
+ if (HPMHooks.count.HP_mapreg_final_post > 0) {
+ void (*postHookFunc) (void);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_mapreg_final_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_mapreg_final_post[hIndex].func;
+ postHookFunc();
+ }
+ }
+ return;
+}
+void HP_mapreg_init(void) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_mapreg_init_pre > 0) {
+ void (*preHookFunc) (void);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_mapreg_init_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_mapreg_init_pre[hIndex].func;
+ preHookFunc();
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.mapreg.init();
+ }
+ if (HPMHooks.count.HP_mapreg_init_post > 0) {
+ void (*postHookFunc) (void);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_mapreg_init_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_mapreg_init_post[hIndex].func;
+ postHookFunc();
+ }
+ }
+ return;
+}
/* md5_interface */
void HP_md5_string(const char *string, char *output) {
int hIndex = 0;
@@ -53703,11 +54073,11 @@ int HP_mob_getfriendstatus_sub(struct block_list *bl, va_list ap) {
}
return retVal___;
}
-struct mob_data* HP_mob_getfriendstatus(struct mob_data *md, int cond1, int cond2) {
+struct block_list* HP_mob_getfriendstatus(struct mob_data *md, int cond1, int cond2) {
int hIndex = 0;
- struct mob_data* retVal___ = NULL;
+ struct block_list* retVal___ = NULL;
if (HPMHooks.count.HP_mob_getfriendstatus_pre > 0) {
- struct mob_data* (*preHookFunc) (struct mob_data **md, int *cond1, int *cond2);
+ struct block_list* (*preHookFunc) (struct mob_data **md, int *cond1, int *cond2);
*HPMforce_return = false;
for (hIndex = 0; hIndex < HPMHooks.count.HP_mob_getfriendstatus_pre; hIndex++) {
preHookFunc = HPMHooks.list.HP_mob_getfriendstatus_pre[hIndex].func;
@@ -53722,7 +54092,7 @@ struct mob_data* HP_mob_getfriendstatus(struct mob_data *md, int cond1, int cond
retVal___ = HPMHooks.source.mob.getfriendstatus(md, cond1, cond2);
}
if (HPMHooks.count.HP_mob_getfriendstatus_post > 0) {
- struct mob_data* (*postHookFunc) (struct mob_data* retVal___, struct mob_data *md, int cond1, int cond2);
+ struct block_list* (*postHookFunc) (struct block_list* retVal___, struct mob_data *md, int cond1, int cond2);
for (hIndex = 0; hIndex < HPMHooks.count.HP_mob_getfriendstatus_post; hIndex++) {
postHookFunc = HPMHooks.list.HP_mob_getfriendstatus_post[hIndex].func;
retVal___ = postHookFunc(retVal___, md, cond1, cond2);
@@ -58718,6 +59088,58 @@ int HP_npc_secure_timeout_timer(int tid, int64 tick, int id, intptr_t data) {
return retVal___;
}
/* nullpo_interface */
+void HP_nullpo_init(void) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_nullpo_init_pre > 0) {
+ void (*preHookFunc) (void);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_nullpo_init_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_nullpo_init_pre[hIndex].func;
+ preHookFunc();
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.nullpo.init();
+ }
+ if (HPMHooks.count.HP_nullpo_init_post > 0) {
+ void (*postHookFunc) (void);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_nullpo_init_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_nullpo_init_post[hIndex].func;
+ postHookFunc();
+ }
+ }
+ return;
+}
+void HP_nullpo_final(void) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_nullpo_final_pre > 0) {
+ void (*preHookFunc) (void);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_nullpo_final_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_nullpo_final_pre[hIndex].func;
+ preHookFunc();
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.nullpo.final();
+ }
+ if (HPMHooks.count.HP_nullpo_final_post > 0) {
+ void (*postHookFunc) (void);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_nullpo_final_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_nullpo_final_post[hIndex].func;
+ postHookFunc();
+ }
+ }
+ return;
+}
void HP_nullpo_assert_report(const char *file, int line, const char *func, const char *targetname, const char *title) {
int hIndex = 0;
if (HPMHooks.count.HP_nullpo_assert_report_pre > 0) {
@@ -63359,32 +63781,109 @@ int HP_pc_useitem(struct map_session_data *sd, int n) {
}
return retVal___;
}
-int HP_pc_itemskill_clear(struct map_session_data *sd) {
+void HP_pc_autocast_clear_current(struct map_session_data *sd) {
int hIndex = 0;
- int retVal___ = 0;
- if (HPMHooks.count.HP_pc_itemskill_clear_pre > 0) {
- int (*preHookFunc) (struct map_session_data **sd);
+ if (HPMHooks.count.HP_pc_autocast_clear_current_pre > 0) {
+ void (*preHookFunc) (struct map_session_data **sd);
*HPMforce_return = false;
- for (hIndex = 0; hIndex < HPMHooks.count.HP_pc_itemskill_clear_pre; hIndex++) {
- preHookFunc = HPMHooks.list.HP_pc_itemskill_clear_pre[hIndex].func;
- retVal___ = preHookFunc(&sd);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_pc_autocast_clear_current_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_pc_autocast_clear_current_pre[hIndex].func;
+ preHookFunc(&sd);
}
if (*HPMforce_return) {
*HPMforce_return = false;
- return retVal___;
+ return;
}
}
{
- retVal___ = HPMHooks.source.pc.itemskill_clear(sd);
+ HPMHooks.source.pc.autocast_clear_current(sd);
}
- if (HPMHooks.count.HP_pc_itemskill_clear_post > 0) {
- int (*postHookFunc) (int retVal___, struct map_session_data *sd);
- for (hIndex = 0; hIndex < HPMHooks.count.HP_pc_itemskill_clear_post; hIndex++) {
- postHookFunc = HPMHooks.list.HP_pc_itemskill_clear_post[hIndex].func;
- retVal___ = postHookFunc(retVal___, sd);
+ if (HPMHooks.count.HP_pc_autocast_clear_current_post > 0) {
+ void (*postHookFunc) (struct map_session_data *sd);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_pc_autocast_clear_current_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_pc_autocast_clear_current_post[hIndex].func;
+ postHookFunc(sd);
}
}
- return retVal___;
+ return;
+}
+void HP_pc_autocast_clear(struct map_session_data *sd) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_pc_autocast_clear_pre > 0) {
+ void (*preHookFunc) (struct map_session_data **sd);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_pc_autocast_clear_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_pc_autocast_clear_pre[hIndex].func;
+ preHookFunc(&sd);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.pc.autocast_clear(sd);
+ }
+ if (HPMHooks.count.HP_pc_autocast_clear_post > 0) {
+ void (*postHookFunc) (struct map_session_data *sd);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_pc_autocast_clear_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_pc_autocast_clear_post[hIndex].func;
+ postHookFunc(sd);
+ }
+ }
+ return;
+}
+void HP_pc_autocast_set_current(struct map_session_data *sd, int skill_id) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_pc_autocast_set_current_pre > 0) {
+ void (*preHookFunc) (struct map_session_data **sd, int *skill_id);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_pc_autocast_set_current_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_pc_autocast_set_current_pre[hIndex].func;
+ preHookFunc(&sd, &skill_id);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.pc.autocast_set_current(sd, skill_id);
+ }
+ if (HPMHooks.count.HP_pc_autocast_set_current_post > 0) {
+ void (*postHookFunc) (struct map_session_data *sd, int skill_id);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_pc_autocast_set_current_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_pc_autocast_set_current_post[hIndex].func;
+ postHookFunc(sd, skill_id);
+ }
+ }
+ return;
+}
+void HP_pc_autocast_remove(struct map_session_data *sd, enum autocast_type type, int skill_id, int skill_lv) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_pc_autocast_remove_pre > 0) {
+ void (*preHookFunc) (struct map_session_data **sd, enum autocast_type *type, int *skill_id, int *skill_lv);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_pc_autocast_remove_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_pc_autocast_remove_pre[hIndex].func;
+ preHookFunc(&sd, &type, &skill_id, &skill_lv);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.pc.autocast_remove(sd, type, skill_id, skill_lv);
+ }
+ if (HPMHooks.count.HP_pc_autocast_remove_post > 0) {
+ void (*postHookFunc) (struct map_session_data *sd, enum autocast_type type, int skill_id, int skill_lv);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_pc_autocast_remove_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_pc_autocast_remove_post[hIndex].func;
+ postHookFunc(sd, type, skill_id, skill_lv);
+ }
+ }
+ return;
}
int HP_pc_skillatk_bonus(struct map_session_data *sd, uint16 skill_id) {
int hIndex = 0;
@@ -63653,6 +64152,58 @@ int HP_pc_jobchange(struct map_session_data *sd, int class, int upper) {
}
return retVal___;
}
+void HP_pc_hide(struct map_session_data *sd, bool show_msg) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_pc_hide_pre > 0) {
+ void (*preHookFunc) (struct map_session_data **sd, bool *show_msg);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_pc_hide_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_pc_hide_pre[hIndex].func;
+ preHookFunc(&sd, &show_msg);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.pc.hide(sd, show_msg);
+ }
+ if (HPMHooks.count.HP_pc_hide_post > 0) {
+ void (*postHookFunc) (struct map_session_data *sd, bool show_msg);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_pc_hide_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_pc_hide_post[hIndex].func;
+ postHookFunc(sd, show_msg);
+ }
+ }
+ return;
+}
+void HP_pc_unhide(struct map_session_data *sd, bool show_msg) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_pc_unhide_pre > 0) {
+ void (*preHookFunc) (struct map_session_data **sd, bool *show_msg);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_pc_unhide_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_pc_unhide_pre[hIndex].func;
+ preHookFunc(&sd, &show_msg);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.pc.unhide(sd, show_msg);
+ }
+ if (HPMHooks.count.HP_pc_unhide_post > 0) {
+ void (*postHookFunc) (struct map_session_data *sd, bool show_msg);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_pc_unhide_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_pc_unhide_post[hIndex].func;
+ postHookFunc(sd, show_msg);
+ }
+ }
+ return;
+}
int HP_pc_setoption(struct map_session_data *sd, int type) {
int hIndex = 0;
int retVal___ = 0;
@@ -65391,10 +65942,10 @@ int HP_pc_load_combo(struct map_session_data *sd) {
}
return retVal___;
}
-void HP_pc_add_charm(struct map_session_data *sd, int interval, int max, int type) {
+void HP_pc_add_charm(struct map_session_data *sd, int interval, int max, enum spirit_charm_types type) {
int hIndex = 0;
if (HPMHooks.count.HP_pc_add_charm_pre > 0) {
- void (*preHookFunc) (struct map_session_data **sd, int *interval, int *max, int *type);
+ void (*preHookFunc) (struct map_session_data **sd, int *interval, int *max, enum spirit_charm_types *type);
*HPMforce_return = false;
for (hIndex = 0; hIndex < HPMHooks.count.HP_pc_add_charm_pre; hIndex++) {
preHookFunc = HPMHooks.list.HP_pc_add_charm_pre[hIndex].func;
@@ -65409,7 +65960,7 @@ void HP_pc_add_charm(struct map_session_data *sd, int interval, int max, int typ
HPMHooks.source.pc.add_charm(sd, interval, max, type);
}
if (HPMHooks.count.HP_pc_add_charm_post > 0) {
- void (*postHookFunc) (struct map_session_data *sd, int interval, int max, int type);
+ void (*postHookFunc) (struct map_session_data *sd, int interval, int max, enum spirit_charm_types type);
for (hIndex = 0; hIndex < HPMHooks.count.HP_pc_add_charm_post; hIndex++) {
postHookFunc = HPMHooks.list.HP_pc_add_charm_post[hIndex].func;
postHookFunc(sd, interval, max, type);
@@ -65417,10 +65968,10 @@ void HP_pc_add_charm(struct map_session_data *sd, int interval, int max, int typ
}
return;
}
-void HP_pc_del_charm(struct map_session_data *sd, int count, int type) {
+void HP_pc_del_charm(struct map_session_data *sd, int count, enum spirit_charm_types type) {
int hIndex = 0;
if (HPMHooks.count.HP_pc_del_charm_pre > 0) {
- void (*preHookFunc) (struct map_session_data **sd, int *count, int *type);
+ void (*preHookFunc) (struct map_session_data **sd, int *count, enum spirit_charm_types *type);
*HPMforce_return = false;
for (hIndex = 0; hIndex < HPMHooks.count.HP_pc_del_charm_pre; hIndex++) {
preHookFunc = HPMHooks.list.HP_pc_del_charm_pre[hIndex].func;
@@ -65435,7 +65986,7 @@ void HP_pc_del_charm(struct map_session_data *sd, int count, int type) {
HPMHooks.source.pc.del_charm(sd, count, type);
}
if (HPMHooks.count.HP_pc_del_charm_post > 0) {
- void (*postHookFunc) (struct map_session_data *sd, int count, int type);
+ void (*postHookFunc) (struct map_session_data *sd, int count, enum spirit_charm_types type);
for (hIndex = 0; hIndex < HPMHooks.count.HP_pc_del_charm_post; hIndex++) {
postHookFunc = HPMHooks.list.HP_pc_del_charm_post[hIndex].func;
postHookFunc(sd, count, type);
@@ -67509,6 +68060,32 @@ int HP_pet_hungry_val(struct pet_data *pd) {
}
return retVal___;
}
+void HP_pet_set_hunger(struct pet_data *pd, int value) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_pet_set_hunger_pre > 0) {
+ void (*preHookFunc) (struct pet_data **pd, int *value);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_pet_set_hunger_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_pet_set_hunger_pre[hIndex].func;
+ preHookFunc(&pd, &value);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.pet.set_hunger(pd, value);
+ }
+ if (HPMHooks.count.HP_pet_set_hunger_post > 0) {
+ void (*postHookFunc) (struct pet_data *pd, int value);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_pet_set_hunger_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_pet_set_hunger_post[hIndex].func;
+ postHookFunc(pd, value);
+ }
+ }
+ return;
+}
void HP_pet_set_intimate(struct pet_data *pd, int value) {
int hIndex = 0;
if (HPMHooks.count.HP_pet_set_intimate_pre > 0) {
@@ -71461,14 +72038,14 @@ bool HP_script_get_constant(const char *name, int *value) {
}
return retVal___;
}
-void HP_script_label_add(int key, int pos) {
+void HP_script_label_add(int key, int pos, enum script_label_flags flags) {
int hIndex = 0;
if (HPMHooks.count.HP_script_label_add_pre > 0) {
- void (*preHookFunc) (int *key, int *pos);
+ void (*preHookFunc) (int *key, int *pos, enum script_label_flags *flags);
*HPMforce_return = false;
for (hIndex = 0; hIndex < HPMHooks.count.HP_script_label_add_pre; hIndex++) {
preHookFunc = HPMHooks.list.HP_script_label_add_pre[hIndex].func;
- preHookFunc(&key, &pos);
+ preHookFunc(&key, &pos, &flags);
}
if (*HPMforce_return) {
*HPMforce_return = false;
@@ -71476,13 +72053,13 @@ void HP_script_label_add(int key, int pos) {
}
}
{
- HPMHooks.source.script.label_add(key, pos);
+ HPMHooks.source.script.label_add(key, pos, flags);
}
if (HPMHooks.count.HP_script_label_add_post > 0) {
- void (*postHookFunc) (int key, int pos);
+ void (*postHookFunc) (int key, int pos, enum script_label_flags flags);
for (hIndex = 0; hIndex < HPMHooks.count.HP_script_label_add_post; hIndex++) {
postHookFunc = HPMHooks.list.HP_script_label_add_post[hIndex].func;
- postHookFunc(key, pos);
+ postHookFunc(key, pos, flags);
}
}
return;
@@ -72337,6 +72914,33 @@ const char* HP_script_parse_syntax(const char *p) {
}
return retVal___;
}
+const char* HP_script_parse_syntax_function(const char *p, bool is_public) {
+ int hIndex = 0;
+ const char* retVal___ = NULL;
+ if (HPMHooks.count.HP_script_parse_syntax_function_pre > 0) {
+ const char* (*preHookFunc) (const char **p, bool *is_public);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_script_parse_syntax_function_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_script_parse_syntax_function_pre[hIndex].func;
+ retVal___ = preHookFunc(&p, &is_public);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return retVal___;
+ }
+ }
+ {
+ retVal___ = HPMHooks.source.script.parse_syntax_function(p, is_public);
+ }
+ if (HPMHooks.count.HP_script_parse_syntax_function_post > 0) {
+ const char* (*postHookFunc) (const char* retVal___, const char *p, bool is_public);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_script_parse_syntax_function_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_script_parse_syntax_function_post[hIndex].func;
+ retVal___ = postHookFunc(retVal___, p, is_public);
+ }
+ }
+ return retVal___;
+}
c_op HP_script_get_com(const struct script_buf *scriptbuf, int *pos) {
int hIndex = 0;
c_op retVal___ = C_NOP;
@@ -73185,6 +73789,33 @@ void HP_script_errorwarning_sub(StringBuf *buf, const char *src, const char *fil
}
return;
}
+bool HP_script_is_permanent_variable(const char *name) {
+ int hIndex = 0;
+ bool retVal___ = false;
+ if (HPMHooks.count.HP_script_is_permanent_variable_pre > 0) {
+ bool (*preHookFunc) (const char **name);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_script_is_permanent_variable_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_script_is_permanent_variable_pre[hIndex].func;
+ retVal___ = preHookFunc(&name);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return retVal___;
+ }
+ }
+ {
+ retVal___ = HPMHooks.source.script.is_permanent_variable(name);
+ }
+ if (HPMHooks.count.HP_script_is_permanent_variable_post > 0) {
+ bool (*postHookFunc) (bool retVal___, const char *name);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_script_is_permanent_variable_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_script_is_permanent_variable_post[hIndex].func;
+ retVal___ = postHookFunc(retVal___, name);
+ }
+ }
+ return retVal___;
+}
int HP_script_set_reg(struct script_state *st, struct map_session_data *sd, int64 num, const char *name, const void *value, struct reg_db *ref) {
int hIndex = 0;
int retVal___ = 0;
@@ -76138,15 +76769,15 @@ int HP_skill_get_index(int skill_id) {
}
return retVal___;
}
-int HP_skill_get_type(int skill_id) {
+int HP_skill_get_type(int skill_id, int skill_lv) {
int hIndex = 0;
int retVal___ = 0;
if (HPMHooks.count.HP_skill_get_type_pre > 0) {
- int (*preHookFunc) (int *skill_id);
+ int (*preHookFunc) (int *skill_id, int *skill_lv);
*HPMforce_return = false;
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_type_pre; hIndex++) {
preHookFunc = HPMHooks.list.HP_skill_get_type_pre[hIndex].func;
- retVal___ = preHookFunc(&skill_id);
+ retVal___ = preHookFunc(&skill_id, &skill_lv);
}
if (*HPMforce_return) {
*HPMforce_return = false;
@@ -76154,26 +76785,26 @@ int HP_skill_get_type(int skill_id) {
}
}
{
- retVal___ = HPMHooks.source.skill.get_type(skill_id);
+ retVal___ = HPMHooks.source.skill.get_type(skill_id, skill_lv);
}
if (HPMHooks.count.HP_skill_get_type_post > 0) {
- int (*postHookFunc) (int retVal___, int skill_id);
+ int (*postHookFunc) (int retVal___, int skill_id, int skill_lv);
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_type_post; hIndex++) {
postHookFunc = HPMHooks.list.HP_skill_get_type_post[hIndex].func;
- retVal___ = postHookFunc(retVal___, skill_id);
+ retVal___ = postHookFunc(retVal___, skill_id, skill_lv);
}
}
return retVal___;
}
-int HP_skill_get_hit(int skill_id) {
+int HP_skill_get_hit(int skill_id, int skill_lv) {
int hIndex = 0;
int retVal___ = 0;
if (HPMHooks.count.HP_skill_get_hit_pre > 0) {
- int (*preHookFunc) (int *skill_id);
+ int (*preHookFunc) (int *skill_id, int *skill_lv);
*HPMforce_return = false;
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_hit_pre; hIndex++) {
preHookFunc = HPMHooks.list.HP_skill_get_hit_pre[hIndex].func;
- retVal___ = preHookFunc(&skill_id);
+ retVal___ = preHookFunc(&skill_id, &skill_lv);
}
if (*HPMforce_return) {
*HPMforce_return = false;
@@ -76181,13 +76812,13 @@ int HP_skill_get_hit(int skill_id) {
}
}
{
- retVal___ = HPMHooks.source.skill.get_hit(skill_id);
+ retVal___ = HPMHooks.source.skill.get_hit(skill_id, skill_lv);
}
if (HPMHooks.count.HP_skill_get_hit_post > 0) {
- int (*postHookFunc) (int retVal___, int skill_id);
+ int (*postHookFunc) (int retVal___, int skill_id, int skill_lv);
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_hit_post; hIndex++) {
postHookFunc = HPMHooks.list.HP_skill_get_hit_post[hIndex].func;
- retVal___ = postHookFunc(retVal___, skill_id);
+ retVal___ = postHookFunc(retVal___, skill_id, skill_lv);
}
}
return retVal___;
@@ -76435,6 +77066,33 @@ int HP_skill_get_mhp(int skill_id, int skill_lv) {
}
return retVal___;
}
+int HP_skill_get_msp(int skill_id, int skill_lv) {
+ int hIndex = 0;
+ int retVal___ = 0;
+ if (HPMHooks.count.HP_skill_get_msp_pre > 0) {
+ int (*preHookFunc) (int *skill_id, int *skill_lv);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_msp_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_skill_get_msp_pre[hIndex].func;
+ retVal___ = preHookFunc(&skill_id, &skill_lv);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return retVal___;
+ }
+ }
+ {
+ retVal___ = HPMHooks.source.skill.get_msp(skill_id, skill_lv);
+ }
+ if (HPMHooks.count.HP_skill_get_msp_post > 0) {
+ int (*postHookFunc) (int retVal___, int skill_id, int skill_lv);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_msp_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_skill_get_msp_post[hIndex].func;
+ retVal___ = postHookFunc(retVal___, skill_id, skill_lv);
+ }
+ }
+ return retVal___;
+}
int HP_skill_get_sp(int skill_id, int skill_lv) {
int hIndex = 0;
int retVal___ = 0;
@@ -76516,15 +77174,15 @@ int HP_skill_get_sp_rate(int skill_id, int skill_lv) {
}
return retVal___;
}
-int HP_skill_get_state(int skill_id) {
+int HP_skill_get_state(int skill_id, int skill_lv) {
int hIndex = 0;
int retVal___ = 0;
if (HPMHooks.count.HP_skill_get_state_pre > 0) {
- int (*preHookFunc) (int *skill_id);
+ int (*preHookFunc) (int *skill_id, int *skill_lv);
*HPMforce_return = false;
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_state_pre; hIndex++) {
preHookFunc = HPMHooks.list.HP_skill_get_state_pre[hIndex].func;
- retVal___ = preHookFunc(&skill_id);
+ retVal___ = preHookFunc(&skill_id, &skill_lv);
}
if (*HPMforce_return) {
*HPMforce_return = false;
@@ -76532,13 +77190,13 @@ int HP_skill_get_state(int skill_id) {
}
}
{
- retVal___ = HPMHooks.source.skill.get_state(skill_id);
+ retVal___ = HPMHooks.source.skill.get_state(skill_id, skill_lv);
}
if (HPMHooks.count.HP_skill_get_state_post > 0) {
- int (*postHookFunc) (int retVal___, int skill_id);
+ int (*postHookFunc) (int retVal___, int skill_id, int skill_lv);
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_state_post; hIndex++) {
postHookFunc = HPMHooks.list.HP_skill_get_state_post[hIndex].func;
- retVal___ = postHookFunc(retVal___, skill_id);
+ retVal___ = postHookFunc(retVal___, skill_id, skill_lv);
}
}
return retVal___;
@@ -76597,15 +77255,15 @@ int HP_skill_get_itemid(int skill_id, int item_idx) {
}
return retVal___;
}
-int HP_skill_get_itemqty(int skill_id, int item_idx) {
+int HP_skill_get_itemqty(int skill_id, int item_idx, int skill_lv) {
int hIndex = 0;
int retVal___ = 0;
if (HPMHooks.count.HP_skill_get_itemqty_pre > 0) {
- int (*preHookFunc) (int *skill_id, int *item_idx);
+ int (*preHookFunc) (int *skill_id, int *item_idx, int *skill_lv);
*HPMforce_return = false;
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_itemqty_pre; hIndex++) {
preHookFunc = HPMHooks.list.HP_skill_get_itemqty_pre[hIndex].func;
- retVal___ = preHookFunc(&skill_id, &item_idx);
+ retVal___ = preHookFunc(&skill_id, &item_idx, &skill_lv);
}
if (*HPMforce_return) {
*HPMforce_return = false;
@@ -76613,17 +77271,125 @@ int HP_skill_get_itemqty(int skill_id, int item_idx) {
}
}
{
- retVal___ = HPMHooks.source.skill.get_itemqty(skill_id, item_idx);
+ retVal___ = HPMHooks.source.skill.get_itemqty(skill_id, item_idx, skill_lv);
}
if (HPMHooks.count.HP_skill_get_itemqty_post > 0) {
- int (*postHookFunc) (int retVal___, int skill_id, int item_idx);
+ int (*postHookFunc) (int retVal___, int skill_id, int item_idx, int skill_lv);
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_itemqty_post; hIndex++) {
postHookFunc = HPMHooks.list.HP_skill_get_itemqty_post[hIndex].func;
+ retVal___ = postHookFunc(retVal___, skill_id, item_idx, skill_lv);
+ }
+ }
+ return retVal___;
+}
+bool HP_skill_get_item_any_flag(int skill_id, int skill_lv) {
+ int hIndex = 0;
+ bool retVal___ = false;
+ if (HPMHooks.count.HP_skill_get_item_any_flag_pre > 0) {
+ bool (*preHookFunc) (int *skill_id, int *skill_lv);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_item_any_flag_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_skill_get_item_any_flag_pre[hIndex].func;
+ retVal___ = preHookFunc(&skill_id, &skill_lv);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return retVal___;
+ }
+ }
+ {
+ retVal___ = HPMHooks.source.skill.get_item_any_flag(skill_id, skill_lv);
+ }
+ if (HPMHooks.count.HP_skill_get_item_any_flag_post > 0) {
+ bool (*postHookFunc) (bool retVal___, int skill_id, int skill_lv);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_item_any_flag_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_skill_get_item_any_flag_post[hIndex].func;
+ retVal___ = postHookFunc(retVal___, skill_id, skill_lv);
+ }
+ }
+ return retVal___;
+}
+int HP_skill_get_equip_id(int skill_id, int item_idx) {
+ int hIndex = 0;
+ int retVal___ = 0;
+ if (HPMHooks.count.HP_skill_get_equip_id_pre > 0) {
+ int (*preHookFunc) (int *skill_id, int *item_idx);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_equip_id_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_skill_get_equip_id_pre[hIndex].func;
+ retVal___ = preHookFunc(&skill_id, &item_idx);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return retVal___;
+ }
+ }
+ {
+ retVal___ = HPMHooks.source.skill.get_equip_id(skill_id, item_idx);
+ }
+ if (HPMHooks.count.HP_skill_get_equip_id_post > 0) {
+ int (*postHookFunc) (int retVal___, int skill_id, int item_idx);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_equip_id_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_skill_get_equip_id_post[hIndex].func;
retVal___ = postHookFunc(retVal___, skill_id, item_idx);
}
}
return retVal___;
}
+int HP_skill_get_equip_amount(int skill_id, int item_idx, int skill_lv) {
+ int hIndex = 0;
+ int retVal___ = 0;
+ if (HPMHooks.count.HP_skill_get_equip_amount_pre > 0) {
+ int (*preHookFunc) (int *skill_id, int *item_idx, int *skill_lv);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_equip_amount_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_skill_get_equip_amount_pre[hIndex].func;
+ retVal___ = preHookFunc(&skill_id, &item_idx, &skill_lv);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return retVal___;
+ }
+ }
+ {
+ retVal___ = HPMHooks.source.skill.get_equip_amount(skill_id, item_idx, skill_lv);
+ }
+ if (HPMHooks.count.HP_skill_get_equip_amount_post > 0) {
+ int (*postHookFunc) (int retVal___, int skill_id, int item_idx, int skill_lv);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_equip_amount_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_skill_get_equip_amount_post[hIndex].func;
+ retVal___ = postHookFunc(retVal___, skill_id, item_idx, skill_lv);
+ }
+ }
+ return retVal___;
+}
+bool HP_skill_get_equip_any_flag(int skill_id, int skill_lv) {
+ int hIndex = 0;
+ bool retVal___ = false;
+ if (HPMHooks.count.HP_skill_get_equip_any_flag_pre > 0) {
+ bool (*preHookFunc) (int *skill_id, int *skill_lv);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_equip_any_flag_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_skill_get_equip_any_flag_pre[hIndex].func;
+ retVal___ = preHookFunc(&skill_id, &skill_lv);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return retVal___;
+ }
+ }
+ {
+ retVal___ = HPMHooks.source.skill.get_equip_any_flag(skill_id, skill_lv);
+ }
+ if (HPMHooks.count.HP_skill_get_equip_any_flag_post > 0) {
+ bool (*postHookFunc) (bool retVal___, int skill_id, int skill_lv);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_equip_any_flag_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_skill_get_equip_any_flag_post[hIndex].func;
+ retVal___ = postHookFunc(retVal___, skill_id, skill_lv);
+ }
+ }
+ return retVal___;
+}
int HP_skill_get_zeny(int skill_id, int skill_lv) {
int hIndex = 0;
int retVal___ = 0;
@@ -76867,15 +77633,15 @@ int HP_skill_get_delaynodex(int skill_id, int skill_lv) {
}
return retVal___;
}
-int HP_skill_get_castdef(int skill_id) {
+int HP_skill_get_castdef(int skill_id, int skill_lv) {
int hIndex = 0;
int retVal___ = 0;
if (HPMHooks.count.HP_skill_get_castdef_pre > 0) {
- int (*preHookFunc) (int *skill_id);
+ int (*preHookFunc) (int *skill_id, int *skill_lv);
*HPMforce_return = false;
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_castdef_pre; hIndex++) {
preHookFunc = HPMHooks.list.HP_skill_get_castdef_pre[hIndex].func;
- retVal___ = preHookFunc(&skill_id);
+ retVal___ = preHookFunc(&skill_id, &skill_lv);
}
if (*HPMforce_return) {
*HPMforce_return = false;
@@ -76883,13 +77649,13 @@ int HP_skill_get_castdef(int skill_id) {
}
}
{
- retVal___ = HPMHooks.source.skill.get_castdef(skill_id);
+ retVal___ = HPMHooks.source.skill.get_castdef(skill_id, skill_lv);
}
if (HPMHooks.count.HP_skill_get_castdef_post > 0) {
- int (*postHookFunc) (int retVal___, int skill_id);
+ int (*postHookFunc) (int retVal___, int skill_id, int skill_lv);
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_castdef_post; hIndex++) {
postHookFunc = HPMHooks.list.HP_skill_get_castdef_post[hIndex].func;
- retVal___ = postHookFunc(retVal___, skill_id);
+ retVal___ = postHookFunc(retVal___, skill_id, skill_lv);
}
}
return retVal___;
@@ -76975,15 +77741,15 @@ int HP_skill_get_ammo_qty(int skill_id, int skill_lv) {
}
return retVal___;
}
-int HP_skill_get_unit_id(int skill_id, int flag) {
+int HP_skill_get_unit_id(int skill_id, int skill_lv, int flag) {
int hIndex = 0;
int retVal___ = 0;
if (HPMHooks.count.HP_skill_get_unit_id_pre > 0) {
- int (*preHookFunc) (int *skill_id, int *flag);
+ int (*preHookFunc) (int *skill_id, int *skill_lv, int *flag);
*HPMforce_return = false;
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_unit_id_pre; hIndex++) {
preHookFunc = HPMHooks.list.HP_skill_get_unit_id_pre[hIndex].func;
- retVal___ = preHookFunc(&skill_id, &flag);
+ retVal___ = preHookFunc(&skill_id, &skill_lv, &flag);
}
if (*HPMforce_return) {
*HPMforce_return = false;
@@ -76991,13 +77757,13 @@ int HP_skill_get_unit_id(int skill_id, int flag) {
}
}
{
- retVal___ = HPMHooks.source.skill.get_unit_id(skill_id, flag);
+ retVal___ = HPMHooks.source.skill.get_unit_id(skill_id, skill_lv, flag);
}
if (HPMHooks.count.HP_skill_get_unit_id_post > 0) {
- int (*postHookFunc) (int retVal___, int skill_id, int flag);
+ int (*postHookFunc) (int retVal___, int skill_id, int skill_lv, int flag);
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_unit_id_post; hIndex++) {
postHookFunc = HPMHooks.list.HP_skill_get_unit_id_post[hIndex].func;
- retVal___ = postHookFunc(retVal___, skill_id, flag);
+ retVal___ = postHookFunc(retVal___, skill_id, skill_lv, flag);
}
}
return retVal___;
@@ -77029,15 +77795,15 @@ int HP_skill_get_inf2(int skill_id) {
}
return retVal___;
}
-int HP_skill_get_castcancel(int skill_id) {
+int HP_skill_get_castcancel(int skill_id, int skill_lv) {
int hIndex = 0;
int retVal___ = 0;
if (HPMHooks.count.HP_skill_get_castcancel_pre > 0) {
- int (*preHookFunc) (int *skill_id);
+ int (*preHookFunc) (int *skill_id, int *skill_lv);
*HPMforce_return = false;
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_castcancel_pre; hIndex++) {
preHookFunc = HPMHooks.list.HP_skill_get_castcancel_pre[hIndex].func;
- retVal___ = preHookFunc(&skill_id);
+ retVal___ = preHookFunc(&skill_id, &skill_lv);
}
if (*HPMforce_return) {
*HPMforce_return = false;
@@ -77045,13 +77811,13 @@ int HP_skill_get_castcancel(int skill_id) {
}
}
{
- retVal___ = HPMHooks.source.skill.get_castcancel(skill_id);
+ retVal___ = HPMHooks.source.skill.get_castcancel(skill_id, skill_lv);
}
if (HPMHooks.count.HP_skill_get_castcancel_post > 0) {
- int (*postHookFunc) (int retVal___, int skill_id);
+ int (*postHookFunc) (int retVal___, int skill_id, int skill_lv);
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_castcancel_post; hIndex++) {
postHookFunc = HPMHooks.list.HP_skill_get_castcancel_post[hIndex].func;
- retVal___ = postHookFunc(retVal___, skill_id);
+ retVal___ = postHookFunc(retVal___, skill_id, skill_lv);
}
}
return retVal___;
@@ -77137,15 +77903,15 @@ int HP_skill_get_unit_flag(int skill_id) {
}
return retVal___;
}
-int HP_skill_get_unit_target(int skill_id) {
+int HP_skill_get_unit_target(int skill_id, int skill_lv) {
int hIndex = 0;
int retVal___ = 0;
if (HPMHooks.count.HP_skill_get_unit_target_pre > 0) {
- int (*preHookFunc) (int *skill_id);
+ int (*preHookFunc) (int *skill_id, int *skill_lv);
*HPMforce_return = false;
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_unit_target_pre; hIndex++) {
preHookFunc = HPMHooks.list.HP_skill_get_unit_target_pre[hIndex].func;
- retVal___ = preHookFunc(&skill_id);
+ retVal___ = preHookFunc(&skill_id, &skill_lv);
}
if (*HPMforce_return) {
*HPMforce_return = false;
@@ -77153,26 +77919,26 @@ int HP_skill_get_unit_target(int skill_id) {
}
}
{
- retVal___ = HPMHooks.source.skill.get_unit_target(skill_id);
+ retVal___ = HPMHooks.source.skill.get_unit_target(skill_id, skill_lv);
}
if (HPMHooks.count.HP_skill_get_unit_target_post > 0) {
- int (*postHookFunc) (int retVal___, int skill_id);
+ int (*postHookFunc) (int retVal___, int skill_id, int skill_lv);
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_unit_target_post; hIndex++) {
postHookFunc = HPMHooks.list.HP_skill_get_unit_target_post[hIndex].func;
- retVal___ = postHookFunc(retVal___, skill_id);
+ retVal___ = postHookFunc(retVal___, skill_id, skill_lv);
}
}
return retVal___;
}
-int HP_skill_get_unit_interval(int skill_id) {
+int HP_skill_get_unit_interval(int skill_id, int skill_lv) {
int hIndex = 0;
int retVal___ = 0;
if (HPMHooks.count.HP_skill_get_unit_interval_pre > 0) {
- int (*preHookFunc) (int *skill_id);
+ int (*preHookFunc) (int *skill_id, int *skill_lv);
*HPMforce_return = false;
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_unit_interval_pre; hIndex++) {
preHookFunc = HPMHooks.list.HP_skill_get_unit_interval_pre[hIndex].func;
- retVal___ = preHookFunc(&skill_id);
+ retVal___ = preHookFunc(&skill_id, &skill_lv);
}
if (*HPMforce_return) {
*HPMforce_return = false;
@@ -77180,26 +77946,26 @@ int HP_skill_get_unit_interval(int skill_id) {
}
}
{
- retVal___ = HPMHooks.source.skill.get_unit_interval(skill_id);
+ retVal___ = HPMHooks.source.skill.get_unit_interval(skill_id, skill_lv);
}
if (HPMHooks.count.HP_skill_get_unit_interval_post > 0) {
- int (*postHookFunc) (int retVal___, int skill_id);
+ int (*postHookFunc) (int retVal___, int skill_id, int skill_lv);
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_unit_interval_post; hIndex++) {
postHookFunc = HPMHooks.list.HP_skill_get_unit_interval_post[hIndex].func;
- retVal___ = postHookFunc(retVal___, skill_id);
+ retVal___ = postHookFunc(retVal___, skill_id, skill_lv);
}
}
return retVal___;
}
-int HP_skill_get_unit_bl_target(int skill_id) {
+int HP_skill_get_unit_bl_target(int skill_id, int skill_lv) {
int hIndex = 0;
int retVal___ = 0;
if (HPMHooks.count.HP_skill_get_unit_bl_target_pre > 0) {
- int (*preHookFunc) (int *skill_id);
+ int (*preHookFunc) (int *skill_id, int *skill_lv);
*HPMforce_return = false;
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_unit_bl_target_pre; hIndex++) {
preHookFunc = HPMHooks.list.HP_skill_get_unit_bl_target_pre[hIndex].func;
- retVal___ = preHookFunc(&skill_id);
+ retVal___ = preHookFunc(&skill_id, &skill_lv);
}
if (*HPMforce_return) {
*HPMforce_return = false;
@@ -77207,13 +77973,13 @@ int HP_skill_get_unit_bl_target(int skill_id) {
}
}
{
- retVal___ = HPMHooks.source.skill.get_unit_bl_target(skill_id);
+ retVal___ = HPMHooks.source.skill.get_unit_bl_target(skill_id, skill_lv);
}
if (HPMHooks.count.HP_skill_get_unit_bl_target_post > 0) {
- int (*postHookFunc) (int retVal___, int skill_id);
+ int (*postHookFunc) (int retVal___, int skill_id, int skill_lv);
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_unit_bl_target_post; hIndex++) {
postHookFunc = HPMHooks.list.HP_skill_get_unit_bl_target_post[hIndex].func;
- retVal___ = postHookFunc(retVal___, skill_id);
+ retVal___ = postHookFunc(retVal___, skill_id, skill_lv);
}
}
return retVal___;
@@ -77488,15 +78254,15 @@ int HP_skill_name2id(const char *name) {
}
return retVal___;
}
-int HP_skill_isammotype(struct map_session_data *sd, int skill_id) {
+int HP_skill_isammotype(struct map_session_data *sd, int skill_id, int skill_lv) {
int hIndex = 0;
int retVal___ = 0;
if (HPMHooks.count.HP_skill_isammotype_pre > 0) {
- int (*preHookFunc) (struct map_session_data **sd, int *skill_id);
+ int (*preHookFunc) (struct map_session_data **sd, int *skill_id, int *skill_lv);
*HPMforce_return = false;
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_isammotype_pre; hIndex++) {
preHookFunc = HPMHooks.list.HP_skill_isammotype_pre[hIndex].func;
- retVal___ = preHookFunc(&sd, &skill_id);
+ retVal___ = preHookFunc(&sd, &skill_id, &skill_lv);
}
if (*HPMforce_return) {
*HPMforce_return = false;
@@ -77504,13 +78270,13 @@ int HP_skill_isammotype(struct map_session_data *sd, int skill_id) {
}
}
{
- retVal___ = HPMHooks.source.skill.isammotype(sd, skill_id);
+ retVal___ = HPMHooks.source.skill.isammotype(sd, skill_id, skill_lv);
}
if (HPMHooks.count.HP_skill_isammotype_post > 0) {
- int (*postHookFunc) (int retVal___, struct map_session_data *sd, int skill_id);
+ int (*postHookFunc) (int retVal___, struct map_session_data *sd, int skill_id, int skill_lv);
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_isammotype_post; hIndex++) {
postHookFunc = HPMHooks.list.HP_skill_isammotype_post[hIndex].func;
- retVal___ = postHookFunc(retVal___, sd, skill_id);
+ retVal___ = postHookFunc(retVal___, sd, skill_id, skill_lv);
}
}
return retVal___;
@@ -77920,15 +78686,15 @@ struct skill_unit_group* HP_skill_init_unitgroup(struct block_list *src, int cou
}
return retVal___;
}
-int HP_skill_del_unitgroup(struct skill_unit_group *group, const char *file, int line, const char *func) {
+int HP_skill_del_unitgroup(struct skill_unit_group *group) {
int hIndex = 0;
int retVal___ = 0;
if (HPMHooks.count.HP_skill_del_unitgroup_pre > 0) {
- int (*preHookFunc) (struct skill_unit_group **group, const char **file, int *line, const char **func);
+ int (*preHookFunc) (struct skill_unit_group **group);
*HPMforce_return = false;
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_del_unitgroup_pre; hIndex++) {
preHookFunc = HPMHooks.list.HP_skill_del_unitgroup_pre[hIndex].func;
- retVal___ = preHookFunc(&group, &file, &line, &func);
+ retVal___ = preHookFunc(&group);
}
if (*HPMforce_return) {
*HPMforce_return = false;
@@ -77936,13 +78702,13 @@ int HP_skill_del_unitgroup(struct skill_unit_group *group, const char *file, int
}
}
{
- retVal___ = HPMHooks.source.skill.del_unitgroup(group, file, line, func);
+ retVal___ = HPMHooks.source.skill.del_unitgroup(group);
}
if (HPMHooks.count.HP_skill_del_unitgroup_post > 0) {
- int (*postHookFunc) (int retVal___, struct skill_unit_group *group, const char *file, int line, const char *func);
+ int (*postHookFunc) (int retVal___, struct skill_unit_group *group);
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_del_unitgroup_post; hIndex++) {
postHookFunc = HPMHooks.list.HP_skill_del_unitgroup_post[hIndex].func;
- retVal___ = postHookFunc(retVal___, group, file, line, func);
+ retVal___ = postHookFunc(retVal___, group);
}
}
return retVal___;
@@ -78163,14 +78929,14 @@ int HP_skill_delay_fix(struct block_list *bl, uint16 skill_id, uint16 skill_lv)
}
return retVal___;
}
-bool HP_skill_is_item_skill(struct map_session_data *sd, int skill_id, int skill_lv) {
+int HP_skill_check_condition_required_equip(struct map_session_data *sd, int skill_id, int skill_lv) {
int hIndex = 0;
- bool retVal___ = false;
- if (HPMHooks.count.HP_skill_is_item_skill_pre > 0) {
- bool (*preHookFunc) (struct map_session_data **sd, int *skill_id, int *skill_lv);
+ int retVal___ = 0;
+ if (HPMHooks.count.HP_skill_check_condition_required_equip_pre > 0) {
+ int (*preHookFunc) (struct map_session_data **sd, int *skill_id, int *skill_lv);
*HPMforce_return = false;
- for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_is_item_skill_pre; hIndex++) {
- preHookFunc = HPMHooks.list.HP_skill_is_item_skill_pre[hIndex].func;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_check_condition_required_equip_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_skill_check_condition_required_equip_pre[hIndex].func;
retVal___ = preHookFunc(&sd, &skill_id, &skill_lv);
}
if (*HPMforce_return) {
@@ -78179,12 +78945,12 @@ bool HP_skill_is_item_skill(struct map_session_data *sd, int skill_id, int skill
}
}
{
- retVal___ = HPMHooks.source.skill.is_item_skill(sd, skill_id, skill_lv);
+ retVal___ = HPMHooks.source.skill.check_condition_required_equip(sd, skill_id, skill_lv);
}
- if (HPMHooks.count.HP_skill_is_item_skill_post > 0) {
- bool (*postHookFunc) (bool retVal___, struct map_session_data *sd, int skill_id, int skill_lv);
- for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_is_item_skill_post; hIndex++) {
- postHookFunc = HPMHooks.list.HP_skill_is_item_skill_post[hIndex].func;
+ if (HPMHooks.count.HP_skill_check_condition_required_equip_post > 0) {
+ int (*postHookFunc) (int retVal___, struct map_session_data *sd, int skill_id, int skill_lv);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_check_condition_required_equip_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_skill_check_condition_required_equip_post[hIndex].func;
retVal___ = postHookFunc(retVal___, sd, skill_id, skill_lv);
}
}
@@ -78217,6 +78983,60 @@ int HP_skill_check_condition_castbegin(struct map_session_data *sd, uint16 skill
}
return retVal___;
}
+int HP_skill_check_condition_required_items(struct map_session_data *sd, int skill_id, int skill_lv) {
+ int hIndex = 0;
+ int retVal___ = 0;
+ if (HPMHooks.count.HP_skill_check_condition_required_items_pre > 0) {
+ int (*preHookFunc) (struct map_session_data **sd, int *skill_id, int *skill_lv);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_check_condition_required_items_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_skill_check_condition_required_items_pre[hIndex].func;
+ retVal___ = preHookFunc(&sd, &skill_id, &skill_lv);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return retVal___;
+ }
+ }
+ {
+ retVal___ = HPMHooks.source.skill.check_condition_required_items(sd, skill_id, skill_lv);
+ }
+ if (HPMHooks.count.HP_skill_check_condition_required_items_post > 0) {
+ int (*postHookFunc) (int retVal___, struct map_session_data *sd, int skill_id, int skill_lv);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_check_condition_required_items_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_skill_check_condition_required_items_post[hIndex].func;
+ retVal___ = postHookFunc(retVal___, sd, skill_id, skill_lv);
+ }
+ }
+ return retVal___;
+}
+bool HP_skill_items_required(struct map_session_data *sd, int skill_id, int skill_lv) {
+ int hIndex = 0;
+ bool retVal___ = false;
+ if (HPMHooks.count.HP_skill_items_required_pre > 0) {
+ bool (*preHookFunc) (struct map_session_data **sd, int *skill_id, int *skill_lv);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_items_required_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_skill_items_required_pre[hIndex].func;
+ retVal___ = preHookFunc(&sd, &skill_id, &skill_lv);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return retVal___;
+ }
+ }
+ {
+ retVal___ = HPMHooks.source.skill.items_required(sd, skill_id, skill_lv);
+ }
+ if (HPMHooks.count.HP_skill_items_required_post > 0) {
+ bool (*postHookFunc) (bool retVal___, struct map_session_data *sd, int skill_id, int skill_lv);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_items_required_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_skill_items_required_post[hIndex].func;
+ retVal___ = postHookFunc(retVal___, sd, skill_id, skill_lv);
+ }
+ }
+ return retVal___;
+}
int HP_skill_check_condition_castend(struct map_session_data *sd, uint16 skill_id, uint16 skill_lv) {
int hIndex = 0;
int retVal___ = 0;
@@ -78244,6 +79064,33 @@ int HP_skill_check_condition_castend(struct map_session_data *sd, uint16 skill_i
}
return retVal___;
}
+int HP_skill_get_any_item_index(struct map_session_data *sd, int skill_id, int skill_lv) {
+ int hIndex = 0;
+ int retVal___ = 0;
+ if (HPMHooks.count.HP_skill_get_any_item_index_pre > 0) {
+ int (*preHookFunc) (struct map_session_data **sd, int *skill_id, int *skill_lv);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_any_item_index_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_skill_get_any_item_index_pre[hIndex].func;
+ retVal___ = preHookFunc(&sd, &skill_id, &skill_lv);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return retVal___;
+ }
+ }
+ {
+ retVal___ = HPMHooks.source.skill.get_any_item_index(sd, skill_id, skill_lv);
+ }
+ if (HPMHooks.count.HP_skill_get_any_item_index_post > 0) {
+ int (*postHookFunc) (int retVal___, struct map_session_data *sd, int skill_id, int skill_lv);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_any_item_index_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_skill_get_any_item_index_post[hIndex].func;
+ retVal___ = postHookFunc(retVal___, sd, skill_id, skill_lv);
+ }
+ }
+ return retVal___;
+}
int HP_skill_consume_requirement(struct map_session_data *sd, uint16 skill_id, uint16 skill_lv, short type) {
int hIndex = 0;
int retVal___ = 0;
@@ -78867,6 +79714,32 @@ int HP_skill_not_ok_mercenary(uint16 skill_id, struct mercenary_data *md) {
}
return retVal___;
}
+void HP_skill_validate_autocast_data(struct map_session_data *sd, int skill_id, int skill_lv) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_skill_validate_autocast_data_pre > 0) {
+ void (*preHookFunc) (struct map_session_data **sd, int *skill_id, int *skill_lv);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_autocast_data_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_skill_validate_autocast_data_pre[hIndex].func;
+ preHookFunc(&sd, &skill_id, &skill_lv);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.skill.validate_autocast_data(sd, skill_id, skill_lv);
+ }
+ if (HPMHooks.count.HP_skill_validate_autocast_data_post > 0) {
+ void (*postHookFunc) (struct map_session_data *sd, int skill_id, int skill_lv);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_autocast_data_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_skill_validate_autocast_data_post[hIndex].func;
+ postHookFunc(sd, skill_id, skill_lv);
+ }
+ }
+ return;
+}
int HP_skill_chastle_mob_changetarget(struct block_list *bl, va_list ap) {
int hIndex = 0;
int retVal___ = 0;
@@ -79409,14 +80282,14 @@ int HP_skill_check_unit_range2_sub(struct block_list *bl, va_list ap) {
}
return retVal___;
}
-void HP_skill_toggle_magicpower(struct block_list *bl, uint16 skill_id) {
+void HP_skill_toggle_magicpower(struct block_list *bl, uint16 skill_id, int skill_lv) {
int hIndex = 0;
if (HPMHooks.count.HP_skill_toggle_magicpower_pre > 0) {
- void (*preHookFunc) (struct block_list **bl, uint16 *skill_id);
+ void (*preHookFunc) (struct block_list **bl, uint16 *skill_id, int *skill_lv);
*HPMforce_return = false;
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_toggle_magicpower_pre; hIndex++) {
preHookFunc = HPMHooks.list.HP_skill_toggle_magicpower_pre[hIndex].func;
- preHookFunc(&bl, &skill_id);
+ preHookFunc(&bl, &skill_id, &skill_lv);
}
if (*HPMforce_return) {
*HPMforce_return = false;
@@ -79424,13 +80297,13 @@ void HP_skill_toggle_magicpower(struct block_list *bl, uint16 skill_id) {
}
}
{
- HPMHooks.source.skill.toggle_magicpower(bl, skill_id);
+ HPMHooks.source.skill.toggle_magicpower(bl, skill_id, skill_lv);
}
if (HPMHooks.count.HP_skill_toggle_magicpower_post > 0) {
- void (*postHookFunc) (struct block_list *bl, uint16 skill_id);
+ void (*postHookFunc) (struct block_list *bl, uint16 skill_id, int skill_lv);
for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_toggle_magicpower_post; hIndex++) {
postHookFunc = HPMHooks.list.HP_skill_toggle_magicpower_post[hIndex].func;
- postHookFunc(bl, skill_id);
+ postHookFunc(bl, skill_id, skill_lv);
}
}
return;
@@ -80610,6 +81483,163 @@ void HP_skill_init_unit_layout_unknown(int skill_idx, int pos) {
}
return;
}
+void HP_skill_validate_id(struct config_setting_t *conf, struct s_skill_db *sk, int conf_index) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_skill_validate_id_pre > 0) {
+ void (*preHookFunc) (struct config_setting_t **conf, struct s_skill_db **sk, int *conf_index);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_id_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_skill_validate_id_pre[hIndex].func;
+ preHookFunc(&conf, &sk, &conf_index);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.skill.validate_id(conf, sk, conf_index);
+ }
+ if (HPMHooks.count.HP_skill_validate_id_post > 0) {
+ void (*postHookFunc) (struct config_setting_t *conf, struct s_skill_db *sk, int conf_index);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_id_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_skill_validate_id_post[hIndex].func;
+ postHookFunc(conf, sk, conf_index);
+ }
+ }
+ return;
+}
+bool HP_skill_name_contains_invalid_character(const char *name) {
+ int hIndex = 0;
+ bool retVal___ = false;
+ if (HPMHooks.count.HP_skill_name_contains_invalid_character_pre > 0) {
+ bool (*preHookFunc) (const char **name);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_name_contains_invalid_character_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_skill_name_contains_invalid_character_pre[hIndex].func;
+ retVal___ = preHookFunc(&name);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return retVal___;
+ }
+ }
+ {
+ retVal___ = HPMHooks.source.skill.name_contains_invalid_character(name);
+ }
+ if (HPMHooks.count.HP_skill_name_contains_invalid_character_post > 0) {
+ bool (*postHookFunc) (bool retVal___, const char *name);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_name_contains_invalid_character_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_skill_name_contains_invalid_character_post[hIndex].func;
+ retVal___ = postHookFunc(retVal___, name);
+ }
+ }
+ return retVal___;
+}
+void HP_skill_validate_name(struct config_setting_t *conf, struct s_skill_db *sk) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_skill_validate_name_pre > 0) {
+ void (*preHookFunc) (struct config_setting_t **conf, struct s_skill_db **sk);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_name_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_skill_validate_name_pre[hIndex].func;
+ preHookFunc(&conf, &sk);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.skill.validate_name(conf, sk);
+ }
+ if (HPMHooks.count.HP_skill_validate_name_post > 0) {
+ void (*postHookFunc) (struct config_setting_t *conf, struct s_skill_db *sk);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_name_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_skill_validate_name_post[hIndex].func;
+ postHookFunc(conf, sk);
+ }
+ }
+ return;
+}
+void HP_skill_validate_max_level(struct config_setting_t *conf, struct s_skill_db *sk) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_skill_validate_max_level_pre > 0) {
+ void (*preHookFunc) (struct config_setting_t **conf, struct s_skill_db **sk);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_max_level_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_skill_validate_max_level_pre[hIndex].func;
+ preHookFunc(&conf, &sk);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.skill.validate_max_level(conf, sk);
+ }
+ if (HPMHooks.count.HP_skill_validate_max_level_post > 0) {
+ void (*postHookFunc) (struct config_setting_t *conf, struct s_skill_db *sk);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_max_level_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_skill_validate_max_level_post[hIndex].func;
+ postHookFunc(conf, sk);
+ }
+ }
+ return;
+}
+void HP_skill_validate_description(struct config_setting_t *conf, struct s_skill_db *sk) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_skill_validate_description_pre > 0) {
+ void (*preHookFunc) (struct config_setting_t **conf, struct s_skill_db **sk);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_description_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_skill_validate_description_pre[hIndex].func;
+ preHookFunc(&conf, &sk);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.skill.validate_description(conf, sk);
+ }
+ if (HPMHooks.count.HP_skill_validate_description_post > 0) {
+ void (*postHookFunc) (struct config_setting_t *conf, struct s_skill_db *sk);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_description_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_skill_validate_description_post[hIndex].func;
+ postHookFunc(conf, sk);
+ }
+ }
+ return;
+}
+void HP_skill_validate_range(struct config_setting_t *conf, struct s_skill_db *sk) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_skill_validate_range_pre > 0) {
+ void (*preHookFunc) (struct config_setting_t **conf, struct s_skill_db **sk);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_range_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_skill_validate_range_pre[hIndex].func;
+ preHookFunc(&conf, &sk);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.skill.validate_range(conf, sk);
+ }
+ if (HPMHooks.count.HP_skill_validate_range_post > 0) {
+ void (*postHookFunc) (struct config_setting_t *conf, struct s_skill_db *sk);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_range_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_skill_validate_range_post[hIndex].func;
+ postHookFunc(conf, sk);
+ }
+ }
+ return;
+}
void HP_skill_validate_hittype(struct config_setting_t *conf, struct s_skill_db *sk) {
int hIndex = 0;
if (HPMHooks.count.HP_skill_validate_hittype_pre > 0) {
@@ -80662,6 +81692,32 @@ void HP_skill_validate_skilltype(struct config_setting_t *conf, struct s_skill_d
}
return;
}
+void HP_skill_validate_skillinfo(struct config_setting_t *conf, struct s_skill_db *sk) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_skill_validate_skillinfo_pre > 0) {
+ void (*preHookFunc) (struct config_setting_t **conf, struct s_skill_db **sk);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_skillinfo_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_skill_validate_skillinfo_pre[hIndex].func;
+ preHookFunc(&conf, &sk);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.skill.validate_skillinfo(conf, sk);
+ }
+ if (HPMHooks.count.HP_skill_validate_skillinfo_post > 0) {
+ void (*postHookFunc) (struct config_setting_t *conf, struct s_skill_db *sk);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_skillinfo_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_skill_validate_skillinfo_post[hIndex].func;
+ postHookFunc(conf, sk);
+ }
+ }
+ return;
+}
void HP_skill_validate_attacktype(struct config_setting_t *conf, struct s_skill_db *sk) {
int hIndex = 0;
if (HPMHooks.count.HP_skill_validate_attacktype_pre > 0) {
@@ -80714,13 +81770,13 @@ void HP_skill_validate_element(struct config_setting_t *conf, struct s_skill_db
}
return;
}
-void HP_skill_validate_skillinfo(struct config_setting_t *conf, struct s_skill_db *sk) {
+void HP_skill_validate_damagetype(struct config_setting_t *conf, struct s_skill_db *sk) {
int hIndex = 0;
- if (HPMHooks.count.HP_skill_validate_skillinfo_pre > 0) {
+ if (HPMHooks.count.HP_skill_validate_damagetype_pre > 0) {
void (*preHookFunc) (struct config_setting_t **conf, struct s_skill_db **sk);
*HPMforce_return = false;
- for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_skillinfo_pre; hIndex++) {
- preHookFunc = HPMHooks.list.HP_skill_validate_skillinfo_pre[hIndex].func;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_damagetype_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_skill_validate_damagetype_pre[hIndex].func;
preHookFunc(&conf, &sk);
}
if (*HPMforce_return) {
@@ -80729,24 +81785,24 @@ void HP_skill_validate_skillinfo(struct config_setting_t *conf, struct s_skill_d
}
}
{
- HPMHooks.source.skill.validate_skillinfo(conf, sk);
+ HPMHooks.source.skill.validate_damagetype(conf, sk);
}
- if (HPMHooks.count.HP_skill_validate_skillinfo_post > 0) {
+ if (HPMHooks.count.HP_skill_validate_damagetype_post > 0) {
void (*postHookFunc) (struct config_setting_t *conf, struct s_skill_db *sk);
- for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_skillinfo_post; hIndex++) {
- postHookFunc = HPMHooks.list.HP_skill_validate_skillinfo_post[hIndex].func;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_damagetype_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_skill_validate_damagetype_post[hIndex].func;
postHookFunc(conf, sk);
}
}
return;
}
-void HP_skill_validate_damagetype(struct config_setting_t *conf, struct s_skill_db *sk) {
+void HP_skill_validate_splash_range(struct config_setting_t *conf, struct s_skill_db *sk) {
int hIndex = 0;
- if (HPMHooks.count.HP_skill_validate_damagetype_pre > 0) {
+ if (HPMHooks.count.HP_skill_validate_splash_range_pre > 0) {
void (*preHookFunc) (struct config_setting_t **conf, struct s_skill_db **sk);
*HPMforce_return = false;
- for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_damagetype_pre; hIndex++) {
- preHookFunc = HPMHooks.list.HP_skill_validate_damagetype_pre[hIndex].func;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_splash_range_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_skill_validate_splash_range_pre[hIndex].func;
preHookFunc(&conf, &sk);
}
if (*HPMforce_return) {
@@ -80755,12 +81811,324 @@ void HP_skill_validate_damagetype(struct config_setting_t *conf, struct s_skill_
}
}
{
- HPMHooks.source.skill.validate_damagetype(conf, sk);
+ HPMHooks.source.skill.validate_splash_range(conf, sk);
}
- if (HPMHooks.count.HP_skill_validate_damagetype_post > 0) {
+ if (HPMHooks.count.HP_skill_validate_splash_range_post > 0) {
void (*postHookFunc) (struct config_setting_t *conf, struct s_skill_db *sk);
- for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_damagetype_post; hIndex++) {
- postHookFunc = HPMHooks.list.HP_skill_validate_damagetype_post[hIndex].func;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_splash_range_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_skill_validate_splash_range_post[hIndex].func;
+ postHookFunc(conf, sk);
+ }
+ }
+ return;
+}
+void HP_skill_validate_number_of_hits(struct config_setting_t *conf, struct s_skill_db *sk) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_skill_validate_number_of_hits_pre > 0) {
+ void (*preHookFunc) (struct config_setting_t **conf, struct s_skill_db **sk);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_number_of_hits_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_skill_validate_number_of_hits_pre[hIndex].func;
+ preHookFunc(&conf, &sk);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.skill.validate_number_of_hits(conf, sk);
+ }
+ if (HPMHooks.count.HP_skill_validate_number_of_hits_post > 0) {
+ void (*postHookFunc) (struct config_setting_t *conf, struct s_skill_db *sk);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_number_of_hits_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_skill_validate_number_of_hits_post[hIndex].func;
+ postHookFunc(conf, sk);
+ }
+ }
+ return;
+}
+void HP_skill_validate_interrupt_cast(struct config_setting_t *conf, struct s_skill_db *sk) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_skill_validate_interrupt_cast_pre > 0) {
+ void (*preHookFunc) (struct config_setting_t **conf, struct s_skill_db **sk);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_interrupt_cast_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_skill_validate_interrupt_cast_pre[hIndex].func;
+ preHookFunc(&conf, &sk);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.skill.validate_interrupt_cast(conf, sk);
+ }
+ if (HPMHooks.count.HP_skill_validate_interrupt_cast_post > 0) {
+ void (*postHookFunc) (struct config_setting_t *conf, struct s_skill_db *sk);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_interrupt_cast_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_skill_validate_interrupt_cast_post[hIndex].func;
+ postHookFunc(conf, sk);
+ }
+ }
+ return;
+}
+void HP_skill_validate_cast_def_rate(struct config_setting_t *conf, struct s_skill_db *sk) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_skill_validate_cast_def_rate_pre > 0) {
+ void (*preHookFunc) (struct config_setting_t **conf, struct s_skill_db **sk);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_cast_def_rate_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_skill_validate_cast_def_rate_pre[hIndex].func;
+ preHookFunc(&conf, &sk);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.skill.validate_cast_def_rate(conf, sk);
+ }
+ if (HPMHooks.count.HP_skill_validate_cast_def_rate_post > 0) {
+ void (*postHookFunc) (struct config_setting_t *conf, struct s_skill_db *sk);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_cast_def_rate_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_skill_validate_cast_def_rate_post[hIndex].func;
+ postHookFunc(conf, sk);
+ }
+ }
+ return;
+}
+void HP_skill_validate_number_of_instances(struct config_setting_t *conf, struct s_skill_db *sk) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_skill_validate_number_of_instances_pre > 0) {
+ void (*preHookFunc) (struct config_setting_t **conf, struct s_skill_db **sk);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_number_of_instances_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_skill_validate_number_of_instances_pre[hIndex].func;
+ preHookFunc(&conf, &sk);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.skill.validate_number_of_instances(conf, sk);
+ }
+ if (HPMHooks.count.HP_skill_validate_number_of_instances_post > 0) {
+ void (*postHookFunc) (struct config_setting_t *conf, struct s_skill_db *sk);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_number_of_instances_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_skill_validate_number_of_instances_post[hIndex].func;
+ postHookFunc(conf, sk);
+ }
+ }
+ return;
+}
+void HP_skill_validate_knock_back_tiles(struct config_setting_t *conf, struct s_skill_db *sk) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_skill_validate_knock_back_tiles_pre > 0) {
+ void (*preHookFunc) (struct config_setting_t **conf, struct s_skill_db **sk);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_knock_back_tiles_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_skill_validate_knock_back_tiles_pre[hIndex].func;
+ preHookFunc(&conf, &sk);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.skill.validate_knock_back_tiles(conf, sk);
+ }
+ if (HPMHooks.count.HP_skill_validate_knock_back_tiles_post > 0) {
+ void (*postHookFunc) (struct config_setting_t *conf, struct s_skill_db *sk);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_knock_back_tiles_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_skill_validate_knock_back_tiles_post[hIndex].func;
+ postHookFunc(conf, sk);
+ }
+ }
+ return;
+}
+void HP_skill_validate_cast_time(struct config_setting_t *conf, struct s_skill_db *sk) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_skill_validate_cast_time_pre > 0) {
+ void (*preHookFunc) (struct config_setting_t **conf, struct s_skill_db **sk);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_cast_time_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_skill_validate_cast_time_pre[hIndex].func;
+ preHookFunc(&conf, &sk);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.skill.validate_cast_time(conf, sk);
+ }
+ if (HPMHooks.count.HP_skill_validate_cast_time_post > 0) {
+ void (*postHookFunc) (struct config_setting_t *conf, struct s_skill_db *sk);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_cast_time_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_skill_validate_cast_time_post[hIndex].func;
+ postHookFunc(conf, sk);
+ }
+ }
+ return;
+}
+void HP_skill_validate_act_delay(struct config_setting_t *conf, struct s_skill_db *sk) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_skill_validate_act_delay_pre > 0) {
+ void (*preHookFunc) (struct config_setting_t **conf, struct s_skill_db **sk);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_act_delay_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_skill_validate_act_delay_pre[hIndex].func;
+ preHookFunc(&conf, &sk);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.skill.validate_act_delay(conf, sk);
+ }
+ if (HPMHooks.count.HP_skill_validate_act_delay_post > 0) {
+ void (*postHookFunc) (struct config_setting_t *conf, struct s_skill_db *sk);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_act_delay_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_skill_validate_act_delay_post[hIndex].func;
+ postHookFunc(conf, sk);
+ }
+ }
+ return;
+}
+void HP_skill_validate_walk_delay(struct config_setting_t *conf, struct s_skill_db *sk) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_skill_validate_walk_delay_pre > 0) {
+ void (*preHookFunc) (struct config_setting_t **conf, struct s_skill_db **sk);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_walk_delay_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_skill_validate_walk_delay_pre[hIndex].func;
+ preHookFunc(&conf, &sk);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.skill.validate_walk_delay(conf, sk);
+ }
+ if (HPMHooks.count.HP_skill_validate_walk_delay_post > 0) {
+ void (*postHookFunc) (struct config_setting_t *conf, struct s_skill_db *sk);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_walk_delay_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_skill_validate_walk_delay_post[hIndex].func;
+ postHookFunc(conf, sk);
+ }
+ }
+ return;
+}
+void HP_skill_validate_skill_data1(struct config_setting_t *conf, struct s_skill_db *sk) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_skill_validate_skill_data1_pre > 0) {
+ void (*preHookFunc) (struct config_setting_t **conf, struct s_skill_db **sk);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_skill_data1_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_skill_validate_skill_data1_pre[hIndex].func;
+ preHookFunc(&conf, &sk);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.skill.validate_skill_data1(conf, sk);
+ }
+ if (HPMHooks.count.HP_skill_validate_skill_data1_post > 0) {
+ void (*postHookFunc) (struct config_setting_t *conf, struct s_skill_db *sk);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_skill_data1_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_skill_validate_skill_data1_post[hIndex].func;
+ postHookFunc(conf, sk);
+ }
+ }
+ return;
+}
+void HP_skill_validate_skill_data2(struct config_setting_t *conf, struct s_skill_db *sk) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_skill_validate_skill_data2_pre > 0) {
+ void (*preHookFunc) (struct config_setting_t **conf, struct s_skill_db **sk);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_skill_data2_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_skill_validate_skill_data2_pre[hIndex].func;
+ preHookFunc(&conf, &sk);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.skill.validate_skill_data2(conf, sk);
+ }
+ if (HPMHooks.count.HP_skill_validate_skill_data2_post > 0) {
+ void (*postHookFunc) (struct config_setting_t *conf, struct s_skill_db *sk);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_skill_data2_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_skill_validate_skill_data2_post[hIndex].func;
+ postHookFunc(conf, sk);
+ }
+ }
+ return;
+}
+void HP_skill_validate_cooldown(struct config_setting_t *conf, struct s_skill_db *sk) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_skill_validate_cooldown_pre > 0) {
+ void (*preHookFunc) (struct config_setting_t **conf, struct s_skill_db **sk);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_cooldown_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_skill_validate_cooldown_pre[hIndex].func;
+ preHookFunc(&conf, &sk);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.skill.validate_cooldown(conf, sk);
+ }
+ if (HPMHooks.count.HP_skill_validate_cooldown_post > 0) {
+ void (*postHookFunc) (struct config_setting_t *conf, struct s_skill_db *sk);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_cooldown_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_skill_validate_cooldown_post[hIndex].func;
+ postHookFunc(conf, sk);
+ }
+ }
+ return;
+}
+void HP_skill_validate_fixed_cast_time(struct config_setting_t *conf, struct s_skill_db *sk) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_skill_validate_fixed_cast_time_pre > 0) {
+ void (*preHookFunc) (struct config_setting_t **conf, struct s_skill_db **sk);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_fixed_cast_time_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_skill_validate_fixed_cast_time_pre[hIndex].func;
+ preHookFunc(&conf, &sk);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.skill.validate_fixed_cast_time(conf, sk);
+ }
+ if (HPMHooks.count.HP_skill_validate_fixed_cast_time_post > 0) {
+ void (*postHookFunc) (struct config_setting_t *conf, struct s_skill_db *sk);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_fixed_cast_time_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_skill_validate_fixed_cast_time_post[hIndex].func;
postHookFunc(conf, sk);
}
}
@@ -80792,6 +82160,215 @@ void HP_skill_validate_castnodex(struct config_setting_t *conf, struct s_skill_d
}
return;
}
+void HP_skill_validate_hp_cost(struct config_setting_t *conf, struct s_skill_db *sk) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_skill_validate_hp_cost_pre > 0) {
+ void (*preHookFunc) (struct config_setting_t **conf, struct s_skill_db **sk);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_hp_cost_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_skill_validate_hp_cost_pre[hIndex].func;
+ preHookFunc(&conf, &sk);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.skill.validate_hp_cost(conf, sk);
+ }
+ if (HPMHooks.count.HP_skill_validate_hp_cost_post > 0) {
+ void (*postHookFunc) (struct config_setting_t *conf, struct s_skill_db *sk);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_hp_cost_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_skill_validate_hp_cost_post[hIndex].func;
+ postHookFunc(conf, sk);
+ }
+ }
+ return;
+}
+void HP_skill_validate_sp_cost(struct config_setting_t *conf, struct s_skill_db *sk) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_skill_validate_sp_cost_pre > 0) {
+ void (*preHookFunc) (struct config_setting_t **conf, struct s_skill_db **sk);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_sp_cost_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_skill_validate_sp_cost_pre[hIndex].func;
+ preHookFunc(&conf, &sk);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.skill.validate_sp_cost(conf, sk);
+ }
+ if (HPMHooks.count.HP_skill_validate_sp_cost_post > 0) {
+ void (*postHookFunc) (struct config_setting_t *conf, struct s_skill_db *sk);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_sp_cost_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_skill_validate_sp_cost_post[hIndex].func;
+ postHookFunc(conf, sk);
+ }
+ }
+ return;
+}
+void HP_skill_validate_hp_rate_cost(struct config_setting_t *conf, struct s_skill_db *sk) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_skill_validate_hp_rate_cost_pre > 0) {
+ void (*preHookFunc) (struct config_setting_t **conf, struct s_skill_db **sk);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_hp_rate_cost_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_skill_validate_hp_rate_cost_pre[hIndex].func;
+ preHookFunc(&conf, &sk);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.skill.validate_hp_rate_cost(conf, sk);
+ }
+ if (HPMHooks.count.HP_skill_validate_hp_rate_cost_post > 0) {
+ void (*postHookFunc) (struct config_setting_t *conf, struct s_skill_db *sk);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_hp_rate_cost_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_skill_validate_hp_rate_cost_post[hIndex].func;
+ postHookFunc(conf, sk);
+ }
+ }
+ return;
+}
+void HP_skill_validate_sp_rate_cost(struct config_setting_t *conf, struct s_skill_db *sk) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_skill_validate_sp_rate_cost_pre > 0) {
+ void (*preHookFunc) (struct config_setting_t **conf, struct s_skill_db **sk);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_sp_rate_cost_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_skill_validate_sp_rate_cost_pre[hIndex].func;
+ preHookFunc(&conf, &sk);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.skill.validate_sp_rate_cost(conf, sk);
+ }
+ if (HPMHooks.count.HP_skill_validate_sp_rate_cost_post > 0) {
+ void (*postHookFunc) (struct config_setting_t *conf, struct s_skill_db *sk);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_sp_rate_cost_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_skill_validate_sp_rate_cost_post[hIndex].func;
+ postHookFunc(conf, sk);
+ }
+ }
+ return;
+}
+void HP_skill_validate_max_hp_trigger(struct config_setting_t *conf, struct s_skill_db *sk) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_skill_validate_max_hp_trigger_pre > 0) {
+ void (*preHookFunc) (struct config_setting_t **conf, struct s_skill_db **sk);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_max_hp_trigger_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_skill_validate_max_hp_trigger_pre[hIndex].func;
+ preHookFunc(&conf, &sk);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.skill.validate_max_hp_trigger(conf, sk);
+ }
+ if (HPMHooks.count.HP_skill_validate_max_hp_trigger_post > 0) {
+ void (*postHookFunc) (struct config_setting_t *conf, struct s_skill_db *sk);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_max_hp_trigger_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_skill_validate_max_hp_trigger_post[hIndex].func;
+ postHookFunc(conf, sk);
+ }
+ }
+ return;
+}
+void HP_skill_validate_max_sp_trigger(struct config_setting_t *conf, struct s_skill_db *sk) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_skill_validate_max_sp_trigger_pre > 0) {
+ void (*preHookFunc) (struct config_setting_t **conf, struct s_skill_db **sk);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_max_sp_trigger_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_skill_validate_max_sp_trigger_pre[hIndex].func;
+ preHookFunc(&conf, &sk);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.skill.validate_max_sp_trigger(conf, sk);
+ }
+ if (HPMHooks.count.HP_skill_validate_max_sp_trigger_post > 0) {
+ void (*postHookFunc) (struct config_setting_t *conf, struct s_skill_db *sk);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_max_sp_trigger_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_skill_validate_max_sp_trigger_post[hIndex].func;
+ postHookFunc(conf, sk);
+ }
+ }
+ return;
+}
+void HP_skill_validate_zeny_cost(struct config_setting_t *conf, struct s_skill_db *sk) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_skill_validate_zeny_cost_pre > 0) {
+ void (*preHookFunc) (struct config_setting_t **conf, struct s_skill_db **sk);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_zeny_cost_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_skill_validate_zeny_cost_pre[hIndex].func;
+ preHookFunc(&conf, &sk);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.skill.validate_zeny_cost(conf, sk);
+ }
+ if (HPMHooks.count.HP_skill_validate_zeny_cost_post > 0) {
+ void (*postHookFunc) (struct config_setting_t *conf, struct s_skill_db *sk);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_zeny_cost_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_skill_validate_zeny_cost_post[hIndex].func;
+ postHookFunc(conf, sk);
+ }
+ }
+ return;
+}
+int HP_skill_validate_weapontype_sub(const char *type, bool on, struct s_skill_db *sk) {
+ int hIndex = 0;
+ int retVal___ = 0;
+ if (HPMHooks.count.HP_skill_validate_weapontype_sub_pre > 0) {
+ int (*preHookFunc) (const char **type, bool *on, struct s_skill_db **sk);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_weapontype_sub_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_skill_validate_weapontype_sub_pre[hIndex].func;
+ retVal___ = preHookFunc(&type, &on, &sk);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return retVal___;
+ }
+ }
+ {
+ retVal___ = HPMHooks.source.skill.validate_weapontype_sub(type, on, sk);
+ }
+ if (HPMHooks.count.HP_skill_validate_weapontype_sub_post > 0) {
+ int (*postHookFunc) (int retVal___, const char *type, bool on, struct s_skill_db *sk);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_weapontype_sub_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_skill_validate_weapontype_sub_post[hIndex].func;
+ retVal___ = postHookFunc(retVal___, type, on, sk);
+ }
+ }
+ return retVal___;
+}
void HP_skill_validate_weapontype(struct config_setting_t *conf, struct s_skill_db *sk) {
int hIndex = 0;
if (HPMHooks.count.HP_skill_validate_weapontype_pre > 0) {
@@ -80818,6 +82395,33 @@ void HP_skill_validate_weapontype(struct config_setting_t *conf, struct s_skill_
}
return;
}
+int HP_skill_validate_ammotype_sub(const char *type, bool on, struct s_skill_db *sk) {
+ int hIndex = 0;
+ int retVal___ = 0;
+ if (HPMHooks.count.HP_skill_validate_ammotype_sub_pre > 0) {
+ int (*preHookFunc) (const char **type, bool *on, struct s_skill_db **sk);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_ammotype_sub_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_skill_validate_ammotype_sub_pre[hIndex].func;
+ retVal___ = preHookFunc(&type, &on, &sk);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return retVal___;
+ }
+ }
+ {
+ retVal___ = HPMHooks.source.skill.validate_ammotype_sub(type, on, sk);
+ }
+ if (HPMHooks.count.HP_skill_validate_ammotype_sub_post > 0) {
+ int (*postHookFunc) (int retVal___, const char *type, bool on, struct s_skill_db *sk);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_ammotype_sub_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_skill_validate_ammotype_sub_post[hIndex].func;
+ retVal___ = postHookFunc(retVal___, type, on, sk);
+ }
+ }
+ return retVal___;
+}
void HP_skill_validate_ammotype(struct config_setting_t *conf, struct s_skill_db *sk) {
int hIndex = 0;
if (HPMHooks.count.HP_skill_validate_ammotype_pre > 0) {
@@ -80844,6 +82448,59 @@ void HP_skill_validate_ammotype(struct config_setting_t *conf, struct s_skill_db
}
return;
}
+void HP_skill_validate_ammo_amount(struct config_setting_t *conf, struct s_skill_db *sk) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_skill_validate_ammo_amount_pre > 0) {
+ void (*preHookFunc) (struct config_setting_t **conf, struct s_skill_db **sk);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_ammo_amount_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_skill_validate_ammo_amount_pre[hIndex].func;
+ preHookFunc(&conf, &sk);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.skill.validate_ammo_amount(conf, sk);
+ }
+ if (HPMHooks.count.HP_skill_validate_ammo_amount_post > 0) {
+ void (*postHookFunc) (struct config_setting_t *conf, struct s_skill_db *sk);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_ammo_amount_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_skill_validate_ammo_amount_post[hIndex].func;
+ postHookFunc(conf, sk);
+ }
+ }
+ return;
+}
+int HP_skill_validate_state_sub(const char *state) {
+ int hIndex = 0;
+ int retVal___ = 0;
+ if (HPMHooks.count.HP_skill_validate_state_sub_pre > 0) {
+ int (*preHookFunc) (const char **state);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_state_sub_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_skill_validate_state_sub_pre[hIndex].func;
+ retVal___ = preHookFunc(&state);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return retVal___;
+ }
+ }
+ {
+ retVal___ = HPMHooks.source.skill.validate_state_sub(state);
+ }
+ if (HPMHooks.count.HP_skill_validate_state_sub_post > 0) {
+ int (*postHookFunc) (int retVal___, const char *state);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_state_sub_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_skill_validate_state_sub_post[hIndex].func;
+ retVal___ = postHookFunc(retVal___, state);
+ }
+ }
+ return retVal___;
+}
void HP_skill_validate_state(struct config_setting_t *conf, struct s_skill_db *sk) {
int hIndex = 0;
if (HPMHooks.count.HP_skill_validate_state_pre > 0) {
@@ -80870,6 +82527,110 @@ void HP_skill_validate_state(struct config_setting_t *conf, struct s_skill_db *s
}
return;
}
+void HP_skill_validate_spirit_sphere_cost(struct config_setting_t *conf, struct s_skill_db *sk) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_skill_validate_spirit_sphere_cost_pre > 0) {
+ void (*preHookFunc) (struct config_setting_t **conf, struct s_skill_db **sk);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_spirit_sphere_cost_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_skill_validate_spirit_sphere_cost_pre[hIndex].func;
+ preHookFunc(&conf, &sk);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.skill.validate_spirit_sphere_cost(conf, sk);
+ }
+ if (HPMHooks.count.HP_skill_validate_spirit_sphere_cost_post > 0) {
+ void (*postHookFunc) (struct config_setting_t *conf, struct s_skill_db *sk);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_spirit_sphere_cost_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_skill_validate_spirit_sphere_cost_post[hIndex].func;
+ postHookFunc(conf, sk);
+ }
+ }
+ return;
+}
+void HP_skill_validate_item_requirements_sub_item_amount(struct config_setting_t *conf, struct s_skill_db *sk, int item_index) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_skill_validate_item_requirements_sub_item_amount_pre > 0) {
+ void (*preHookFunc) (struct config_setting_t **conf, struct s_skill_db **sk, int *item_index);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_item_requirements_sub_item_amount_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_skill_validate_item_requirements_sub_item_amount_pre[hIndex].func;
+ preHookFunc(&conf, &sk, &item_index);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.skill.validate_item_requirements_sub_item_amount(conf, sk, item_index);
+ }
+ if (HPMHooks.count.HP_skill_validate_item_requirements_sub_item_amount_post > 0) {
+ void (*postHookFunc) (struct config_setting_t *conf, struct s_skill_db *sk, int item_index);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_item_requirements_sub_item_amount_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_skill_validate_item_requirements_sub_item_amount_post[hIndex].func;
+ postHookFunc(conf, sk, item_index);
+ }
+ }
+ return;
+}
+void HP_skill_validate_item_requirements_sub_items(struct config_setting_t *conf, struct s_skill_db *sk) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_skill_validate_item_requirements_sub_items_pre > 0) {
+ void (*preHookFunc) (struct config_setting_t **conf, struct s_skill_db **sk);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_item_requirements_sub_items_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_skill_validate_item_requirements_sub_items_pre[hIndex].func;
+ preHookFunc(&conf, &sk);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.skill.validate_item_requirements_sub_items(conf, sk);
+ }
+ if (HPMHooks.count.HP_skill_validate_item_requirements_sub_items_post > 0) {
+ void (*postHookFunc) (struct config_setting_t *conf, struct s_skill_db *sk);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_item_requirements_sub_items_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_skill_validate_item_requirements_sub_items_post[hIndex].func;
+ postHookFunc(conf, sk);
+ }
+ }
+ return;
+}
+void HP_skill_validate_item_requirements_sub_any_flag(struct config_setting_t *conf, struct s_skill_db *sk) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_skill_validate_item_requirements_sub_any_flag_pre > 0) {
+ void (*preHookFunc) (struct config_setting_t **conf, struct s_skill_db **sk);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_item_requirements_sub_any_flag_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_skill_validate_item_requirements_sub_any_flag_pre[hIndex].func;
+ preHookFunc(&conf, &sk);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.skill.validate_item_requirements_sub_any_flag(conf, sk);
+ }
+ if (HPMHooks.count.HP_skill_validate_item_requirements_sub_any_flag_post > 0) {
+ void (*postHookFunc) (struct config_setting_t *conf, struct s_skill_db *sk);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_item_requirements_sub_any_flag_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_skill_validate_item_requirements_sub_any_flag_post[hIndex].func;
+ postHookFunc(conf, sk);
+ }
+ }
+ return;
+}
void HP_skill_validate_item_requirements(struct config_setting_t *conf, struct s_skill_db *sk) {
int hIndex = 0;
if (HPMHooks.count.HP_skill_validate_item_requirements_pre > 0) {
@@ -80896,13 +82657,39 @@ void HP_skill_validate_item_requirements(struct config_setting_t *conf, struct s
}
return;
}
-void HP_skill_validate_unit_target(struct config_setting_t *conf, struct s_skill_db *sk) {
+void HP_skill_validate_equip_requirements_sub_item_amount(struct config_setting_t *conf, struct s_skill_db *sk, int item_index) {
int hIndex = 0;
- if (HPMHooks.count.HP_skill_validate_unit_target_pre > 0) {
+ if (HPMHooks.count.HP_skill_validate_equip_requirements_sub_item_amount_pre > 0) {
+ void (*preHookFunc) (struct config_setting_t **conf, struct s_skill_db **sk, int *item_index);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_equip_requirements_sub_item_amount_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_skill_validate_equip_requirements_sub_item_amount_pre[hIndex].func;
+ preHookFunc(&conf, &sk, &item_index);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.skill.validate_equip_requirements_sub_item_amount(conf, sk, item_index);
+ }
+ if (HPMHooks.count.HP_skill_validate_equip_requirements_sub_item_amount_post > 0) {
+ void (*postHookFunc) (struct config_setting_t *conf, struct s_skill_db *sk, int item_index);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_equip_requirements_sub_item_amount_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_skill_validate_equip_requirements_sub_item_amount_post[hIndex].func;
+ postHookFunc(conf, sk, item_index);
+ }
+ }
+ return;
+}
+void HP_skill_validate_equip_requirements_sub_items(struct config_setting_t *conf, struct s_skill_db *sk) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_skill_validate_equip_requirements_sub_items_pre > 0) {
void (*preHookFunc) (struct config_setting_t **conf, struct s_skill_db **sk);
*HPMforce_return = false;
- for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_unit_target_pre; hIndex++) {
- preHookFunc = HPMHooks.list.HP_skill_validate_unit_target_pre[hIndex].func;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_equip_requirements_sub_items_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_skill_validate_equip_requirements_sub_items_pre[hIndex].func;
preHookFunc(&conf, &sk);
}
if (*HPMforce_return) {
@@ -80911,24 +82698,24 @@ void HP_skill_validate_unit_target(struct config_setting_t *conf, struct s_skill
}
}
{
- HPMHooks.source.skill.validate_unit_target(conf, sk);
+ HPMHooks.source.skill.validate_equip_requirements_sub_items(conf, sk);
}
- if (HPMHooks.count.HP_skill_validate_unit_target_post > 0) {
+ if (HPMHooks.count.HP_skill_validate_equip_requirements_sub_items_post > 0) {
void (*postHookFunc) (struct config_setting_t *conf, struct s_skill_db *sk);
- for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_unit_target_post; hIndex++) {
- postHookFunc = HPMHooks.list.HP_skill_validate_unit_target_post[hIndex].func;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_equip_requirements_sub_items_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_skill_validate_equip_requirements_sub_items_post[hIndex].func;
postHookFunc(conf, sk);
}
}
return;
}
-void HP_skill_validate_unit_flag(struct config_setting_t *conf, struct s_skill_db *sk) {
+void HP_skill_validate_equip_requirements_sub_any_flag(struct config_setting_t *conf, struct s_skill_db *sk) {
int hIndex = 0;
- if (HPMHooks.count.HP_skill_validate_unit_flag_pre > 0) {
+ if (HPMHooks.count.HP_skill_validate_equip_requirements_sub_any_flag_pre > 0) {
void (*preHookFunc) (struct config_setting_t **conf, struct s_skill_db **sk);
*HPMforce_return = false;
- for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_unit_flag_pre; hIndex++) {
- preHookFunc = HPMHooks.list.HP_skill_validate_unit_flag_pre[hIndex].func;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_equip_requirements_sub_any_flag_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_skill_validate_equip_requirements_sub_any_flag_pre[hIndex].func;
preHookFunc(&conf, &sk);
}
if (*HPMforce_return) {
@@ -80937,24 +82724,24 @@ void HP_skill_validate_unit_flag(struct config_setting_t *conf, struct s_skill_d
}
}
{
- HPMHooks.source.skill.validate_unit_flag(conf, sk);
+ HPMHooks.source.skill.validate_equip_requirements_sub_any_flag(conf, sk);
}
- if (HPMHooks.count.HP_skill_validate_unit_flag_post > 0) {
+ if (HPMHooks.count.HP_skill_validate_equip_requirements_sub_any_flag_post > 0) {
void (*postHookFunc) (struct config_setting_t *conf, struct s_skill_db *sk);
- for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_unit_flag_post; hIndex++) {
- postHookFunc = HPMHooks.list.HP_skill_validate_unit_flag_post[hIndex].func;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_equip_requirements_sub_any_flag_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_skill_validate_equip_requirements_sub_any_flag_post[hIndex].func;
postHookFunc(conf, sk);
}
}
return;
}
-void HP_skill_validate_additional_fields(struct config_setting_t *conf, struct s_skill_db *sk) {
+void HP_skill_validate_equip_requirements(struct config_setting_t *conf, struct s_skill_db *sk) {
int hIndex = 0;
- if (HPMHooks.count.HP_skill_validate_additional_fields_pre > 0) {
+ if (HPMHooks.count.HP_skill_validate_equip_requirements_pre > 0) {
void (*preHookFunc) (struct config_setting_t **conf, struct s_skill_db **sk);
*HPMforce_return = false;
- for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_additional_fields_pre; hIndex++) {
- preHookFunc = HPMHooks.list.HP_skill_validate_additional_fields_pre[hIndex].func;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_equip_requirements_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_skill_validate_equip_requirements_pre[hIndex].func;
preHookFunc(&conf, &sk);
}
if (*HPMforce_return) {
@@ -80963,26 +82750,26 @@ void HP_skill_validate_additional_fields(struct config_setting_t *conf, struct s
}
}
{
- HPMHooks.source.skill.validate_additional_fields(conf, sk);
+ HPMHooks.source.skill.validate_equip_requirements(conf, sk);
}
- if (HPMHooks.count.HP_skill_validate_additional_fields_post > 0) {
+ if (HPMHooks.count.HP_skill_validate_equip_requirements_post > 0) {
void (*postHookFunc) (struct config_setting_t *conf, struct s_skill_db *sk);
- for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_additional_fields_post; hIndex++) {
- postHookFunc = HPMHooks.list.HP_skill_validate_additional_fields_post[hIndex].func;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_equip_requirements_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_skill_validate_equip_requirements_post[hIndex].func;
postHookFunc(conf, sk);
}
}
return;
}
-bool HP_skill_validate_skilldb(struct s_skill_db *skt, const char *source) {
+int HP_skill_validate_requirements_item_name(const char *name) {
int hIndex = 0;
- bool retVal___ = false;
- if (HPMHooks.count.HP_skill_validate_skilldb_pre > 0) {
- bool (*preHookFunc) (struct s_skill_db **skt, const char **source);
+ int retVal___ = 0;
+ if (HPMHooks.count.HP_skill_validate_requirements_item_name_pre > 0) {
+ int (*preHookFunc) (const char **name);
*HPMforce_return = false;
- for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_skilldb_pre; hIndex++) {
- preHookFunc = HPMHooks.list.HP_skill_validate_skilldb_pre[hIndex].func;
- retVal___ = preHookFunc(&skt, &source);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_requirements_item_name_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_skill_validate_requirements_item_name_pre[hIndex].func;
+ retVal___ = preHookFunc(&name);
}
if (*HPMforce_return) {
*HPMforce_return = false;
@@ -80990,53 +82777,52 @@ bool HP_skill_validate_skilldb(struct s_skill_db *skt, const char *source) {
}
}
{
- retVal___ = HPMHooks.source.skill.validate_skilldb(skt, source);
+ retVal___ = HPMHooks.source.skill.validate_requirements_item_name(name);
}
- if (HPMHooks.count.HP_skill_validate_skilldb_post > 0) {
- bool (*postHookFunc) (bool retVal___, struct s_skill_db *skt, const char *source);
- for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_skilldb_post; hIndex++) {
- postHookFunc = HPMHooks.list.HP_skill_validate_skilldb_post[hIndex].func;
- retVal___ = postHookFunc(retVal___, skt, source);
+ if (HPMHooks.count.HP_skill_validate_requirements_item_name_post > 0) {
+ int (*postHookFunc) (int retVal___, const char *name);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_requirements_item_name_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_skill_validate_requirements_item_name_post[hIndex].func;
+ retVal___ = postHookFunc(retVal___, name);
}
}
return retVal___;
}
-int HP_skill_validate_weapontype_sub(const char *type, bool on, struct s_skill_db *sk) {
+void HP_skill_validate_requirements(struct config_setting_t *conf, struct s_skill_db *sk) {
int hIndex = 0;
- int retVal___ = 0;
- if (HPMHooks.count.HP_skill_validate_weapontype_sub_pre > 0) {
- int (*preHookFunc) (const char **type, bool *on, struct s_skill_db **sk);
+ if (HPMHooks.count.HP_skill_validate_requirements_pre > 0) {
+ void (*preHookFunc) (struct config_setting_t **conf, struct s_skill_db **sk);
*HPMforce_return = false;
- for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_weapontype_sub_pre; hIndex++) {
- preHookFunc = HPMHooks.list.HP_skill_validate_weapontype_sub_pre[hIndex].func;
- retVal___ = preHookFunc(&type, &on, &sk);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_requirements_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_skill_validate_requirements_pre[hIndex].func;
+ preHookFunc(&conf, &sk);
}
if (*HPMforce_return) {
*HPMforce_return = false;
- return retVal___;
+ return;
}
}
{
- retVal___ = HPMHooks.source.skill.validate_weapontype_sub(type, on, sk);
+ HPMHooks.source.skill.validate_requirements(conf, sk);
}
- if (HPMHooks.count.HP_skill_validate_weapontype_sub_post > 0) {
- int (*postHookFunc) (int retVal___, const char *type, bool on, struct s_skill_db *sk);
- for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_weapontype_sub_post; hIndex++) {
- postHookFunc = HPMHooks.list.HP_skill_validate_weapontype_sub_post[hIndex].func;
- retVal___ = postHookFunc(retVal___, type, on, sk);
+ if (HPMHooks.count.HP_skill_validate_requirements_post > 0) {
+ void (*postHookFunc) (struct config_setting_t *conf, struct s_skill_db *sk);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_requirements_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_skill_validate_requirements_post[hIndex].func;
+ postHookFunc(conf, sk);
}
}
- return retVal___;
+ return;
}
-int HP_skill_validate_ammotype_sub(const char *type, bool on, struct s_skill_db *sk) {
+int HP_skill_validate_unit_id_sub(int unit_id) {
int hIndex = 0;
int retVal___ = 0;
- if (HPMHooks.count.HP_skill_validate_ammotype_sub_pre > 0) {
- int (*preHookFunc) (const char **type, bool *on, struct s_skill_db **sk);
+ if (HPMHooks.count.HP_skill_validate_unit_id_sub_pre > 0) {
+ int (*preHookFunc) (int *unit_id);
*HPMforce_return = false;
- for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_ammotype_sub_pre; hIndex++) {
- preHookFunc = HPMHooks.list.HP_skill_validate_ammotype_sub_pre[hIndex].func;
- retVal___ = preHookFunc(&type, &on, &sk);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_unit_id_sub_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_skill_validate_unit_id_sub_pre[hIndex].func;
+ retVal___ = preHookFunc(&unit_id);
}
if (*HPMforce_return) {
*HPMforce_return = false;
@@ -81044,17 +82830,121 @@ int HP_skill_validate_ammotype_sub(const char *type, bool on, struct s_skill_db
}
}
{
- retVal___ = HPMHooks.source.skill.validate_ammotype_sub(type, on, sk);
+ retVal___ = HPMHooks.source.skill.validate_unit_id_sub(unit_id);
}
- if (HPMHooks.count.HP_skill_validate_ammotype_sub_post > 0) {
- int (*postHookFunc) (int retVal___, const char *type, bool on, struct s_skill_db *sk);
- for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_ammotype_sub_post; hIndex++) {
- postHookFunc = HPMHooks.list.HP_skill_validate_ammotype_sub_post[hIndex].func;
- retVal___ = postHookFunc(retVal___, type, on, sk);
+ if (HPMHooks.count.HP_skill_validate_unit_id_sub_post > 0) {
+ int (*postHookFunc) (int retVal___, int unit_id);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_unit_id_sub_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_skill_validate_unit_id_sub_post[hIndex].func;
+ retVal___ = postHookFunc(retVal___, unit_id);
}
}
return retVal___;
}
+void HP_skill_validate_unit_id(struct config_setting_t *conf, struct s_skill_db *sk) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_skill_validate_unit_id_pre > 0) {
+ void (*preHookFunc) (struct config_setting_t **conf, struct s_skill_db **sk);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_unit_id_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_skill_validate_unit_id_pre[hIndex].func;
+ preHookFunc(&conf, &sk);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.skill.validate_unit_id(conf, sk);
+ }
+ if (HPMHooks.count.HP_skill_validate_unit_id_post > 0) {
+ void (*postHookFunc) (struct config_setting_t *conf, struct s_skill_db *sk);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_unit_id_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_skill_validate_unit_id_post[hIndex].func;
+ postHookFunc(conf, sk);
+ }
+ }
+ return;
+}
+void HP_skill_validate_unit_layout(struct config_setting_t *conf, struct s_skill_db *sk) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_skill_validate_unit_layout_pre > 0) {
+ void (*preHookFunc) (struct config_setting_t **conf, struct s_skill_db **sk);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_unit_layout_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_skill_validate_unit_layout_pre[hIndex].func;
+ preHookFunc(&conf, &sk);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.skill.validate_unit_layout(conf, sk);
+ }
+ if (HPMHooks.count.HP_skill_validate_unit_layout_post > 0) {
+ void (*postHookFunc) (struct config_setting_t *conf, struct s_skill_db *sk);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_unit_layout_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_skill_validate_unit_layout_post[hIndex].func;
+ postHookFunc(conf, sk);
+ }
+ }
+ return;
+}
+void HP_skill_validate_unit_range(struct config_setting_t *conf, struct s_skill_db *sk) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_skill_validate_unit_range_pre > 0) {
+ void (*preHookFunc) (struct config_setting_t **conf, struct s_skill_db **sk);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_unit_range_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_skill_validate_unit_range_pre[hIndex].func;
+ preHookFunc(&conf, &sk);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.skill.validate_unit_range(conf, sk);
+ }
+ if (HPMHooks.count.HP_skill_validate_unit_range_post > 0) {
+ void (*postHookFunc) (struct config_setting_t *conf, struct s_skill_db *sk);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_unit_range_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_skill_validate_unit_range_post[hIndex].func;
+ postHookFunc(conf, sk);
+ }
+ }
+ return;
+}
+void HP_skill_validate_unit_interval(struct config_setting_t *conf, struct s_skill_db *sk) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_skill_validate_unit_interval_pre > 0) {
+ void (*preHookFunc) (struct config_setting_t **conf, struct s_skill_db **sk);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_unit_interval_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_skill_validate_unit_interval_pre[hIndex].func;
+ preHookFunc(&conf, &sk);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.skill.validate_unit_interval(conf, sk);
+ }
+ if (HPMHooks.count.HP_skill_validate_unit_interval_post > 0) {
+ void (*postHookFunc) (struct config_setting_t *conf, struct s_skill_db *sk);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_unit_interval_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_skill_validate_unit_interval_post[hIndex].func;
+ postHookFunc(conf, sk);
+ }
+ }
+ return;
+}
int HP_skill_validate_unit_flag_sub(const char *type, bool on, struct s_skill_db *sk) {
int hIndex = 0;
int retVal___ = 0;
@@ -81082,6 +82972,137 @@ int HP_skill_validate_unit_flag_sub(const char *type, bool on, struct s_skill_db
}
return retVal___;
}
+void HP_skill_validate_unit_flag(struct config_setting_t *conf, struct s_skill_db *sk) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_skill_validate_unit_flag_pre > 0) {
+ void (*preHookFunc) (struct config_setting_t **conf, struct s_skill_db **sk);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_unit_flag_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_skill_validate_unit_flag_pre[hIndex].func;
+ preHookFunc(&conf, &sk);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.skill.validate_unit_flag(conf, sk);
+ }
+ if (HPMHooks.count.HP_skill_validate_unit_flag_post > 0) {
+ void (*postHookFunc) (struct config_setting_t *conf, struct s_skill_db *sk);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_unit_flag_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_skill_validate_unit_flag_post[hIndex].func;
+ postHookFunc(conf, sk);
+ }
+ }
+ return;
+}
+int HP_skill_validate_unit_target_sub(const char *target) {
+ int hIndex = 0;
+ int retVal___ = 0;
+ if (HPMHooks.count.HP_skill_validate_unit_target_sub_pre > 0) {
+ int (*preHookFunc) (const char **target);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_unit_target_sub_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_skill_validate_unit_target_sub_pre[hIndex].func;
+ retVal___ = preHookFunc(&target);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return retVal___;
+ }
+ }
+ {
+ retVal___ = HPMHooks.source.skill.validate_unit_target_sub(target);
+ }
+ if (HPMHooks.count.HP_skill_validate_unit_target_sub_post > 0) {
+ int (*postHookFunc) (int retVal___, const char *target);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_unit_target_sub_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_skill_validate_unit_target_sub_post[hIndex].func;
+ retVal___ = postHookFunc(retVal___, target);
+ }
+ }
+ return retVal___;
+}
+void HP_skill_validate_unit_target(struct config_setting_t *conf, struct s_skill_db *sk) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_skill_validate_unit_target_pre > 0) {
+ void (*preHookFunc) (struct config_setting_t **conf, struct s_skill_db **sk);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_unit_target_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_skill_validate_unit_target_pre[hIndex].func;
+ preHookFunc(&conf, &sk);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.skill.validate_unit_target(conf, sk);
+ }
+ if (HPMHooks.count.HP_skill_validate_unit_target_post > 0) {
+ void (*postHookFunc) (struct config_setting_t *conf, struct s_skill_db *sk);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_unit_target_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_skill_validate_unit_target_post[hIndex].func;
+ postHookFunc(conf, sk);
+ }
+ }
+ return;
+}
+void HP_skill_validate_unit(struct config_setting_t *conf, struct s_skill_db *sk) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_skill_validate_unit_pre > 0) {
+ void (*preHookFunc) (struct config_setting_t **conf, struct s_skill_db **sk);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_unit_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_skill_validate_unit_pre[hIndex].func;
+ preHookFunc(&conf, &sk);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.skill.validate_unit(conf, sk);
+ }
+ if (HPMHooks.count.HP_skill_validate_unit_post > 0) {
+ void (*postHookFunc) (struct config_setting_t *conf, struct s_skill_db *sk);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_unit_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_skill_validate_unit_post[hIndex].func;
+ postHookFunc(conf, sk);
+ }
+ }
+ return;
+}
+void HP_skill_validate_additional_fields(struct config_setting_t *conf, struct s_skill_db *sk) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_skill_validate_additional_fields_pre > 0) {
+ void (*preHookFunc) (struct config_setting_t **conf, struct s_skill_db **sk);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_additional_fields_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_skill_validate_additional_fields_pre[hIndex].func;
+ preHookFunc(&conf, &sk);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.skill.validate_additional_fields(conf, sk);
+ }
+ if (HPMHooks.count.HP_skill_validate_additional_fields_post > 0) {
+ void (*postHookFunc) (struct config_setting_t *conf, struct s_skill_db *sk);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_validate_additional_fields_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_skill_validate_additional_fields_post[hIndex].func;
+ postHookFunc(conf, sk);
+ }
+ }
+ return;
+}
bool HP_skill_read_skilldb(const char *filename) {
int hIndex = 0;
bool retVal___ = false;
@@ -82727,6 +84748,33 @@ int HP_skill_count_wos(struct block_list *bl, va_list ap) {
}
return retVal___;
}
+int HP_skill_get_linked_song_dance_id(int skill_id) {
+ int hIndex = 0;
+ int retVal___ = 0;
+ if (HPMHooks.count.HP_skill_get_linked_song_dance_id_pre > 0) {
+ int (*preHookFunc) (int *skill_id);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_linked_song_dance_id_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_skill_get_linked_song_dance_id_pre[hIndex].func;
+ retVal___ = preHookFunc(&skill_id);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return retVal___;
+ }
+ }
+ {
+ retVal___ = HPMHooks.source.skill.get_linked_song_dance_id(skill_id);
+ }
+ if (HPMHooks.count.HP_skill_get_linked_song_dance_id_post > 0) {
+ int (*postHookFunc) (int retVal___, int skill_id);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_skill_get_linked_song_dance_id_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_skill_get_linked_song_dance_id_post[hIndex].func;
+ retVal___ = postHookFunc(retVal___, skill_id);
+ }
+ }
+ return retVal___;
+}
/* socket_interface */
void HP_sockt_init(void) {
int hIndex = 0;
@@ -85475,15 +87523,15 @@ int HP_status_change_start_sub(struct block_list *src, struct block_list *bl, en
}
return retVal___;
}
-int HP_status_change_end_(struct block_list *bl, enum sc_type type, int tid, const char *file, int line) {
+int HP_status_change_end_(struct block_list *bl, enum sc_type type, int tid) {
int hIndex = 0;
int retVal___ = 0;
if (HPMHooks.count.HP_status_change_end__pre > 0) {
- int (*preHookFunc) (struct block_list **bl, enum sc_type *type, int *tid, const char **file, int *line);
+ int (*preHookFunc) (struct block_list **bl, enum sc_type *type, int *tid);
*HPMforce_return = false;
for (hIndex = 0; hIndex < HPMHooks.count.HP_status_change_end__pre; hIndex++) {
preHookFunc = HPMHooks.list.HP_status_change_end__pre[hIndex].func;
- retVal___ = preHookFunc(&bl, &type, &tid, &file, &line);
+ retVal___ = preHookFunc(&bl, &type, &tid);
}
if (*HPMforce_return) {
*HPMforce_return = false;
@@ -85491,13 +87539,13 @@ int HP_status_change_end_(struct block_list *bl, enum sc_type type, int tid, con
}
}
{
- retVal___ = HPMHooks.source.status.change_end_(bl, type, tid, file, line);
+ retVal___ = HPMHooks.source.status.change_end_(bl, type, tid);
}
if (HPMHooks.count.HP_status_change_end__post > 0) {
- int (*postHookFunc) (int retVal___, struct block_list *bl, enum sc_type type, int tid, const char *file, int line);
+ int (*postHookFunc) (int retVal___, struct block_list *bl, enum sc_type type, int tid);
for (hIndex = 0; hIndex < HPMHooks.count.HP_status_change_end__post; hIndex++) {
postHookFunc = HPMHooks.list.HP_status_change_end__post[hIndex].func;
- retVal___ = postHookFunc(retVal___, bl, type, tid, file, line);
+ retVal___ = postHookFunc(retVal___, bl, type, tid);
}
}
return retVal___;
diff --git a/src/plugins/Makefile.in b/src/plugins/Makefile.in
index 5527ceb2f..e44412bfa 100644
--- a/src/plugins/Makefile.in
+++ b/src/plugins/Makefile.in
@@ -103,7 +103,7 @@ Makefile: Makefile.in
../../plugins/%@DLLEXT@: %.c $(ALL_H) $$(shell ls %/* 2>/dev/null)
@echo " CC $<"
- @$(CC) $(COMMON_INCLUDE) $(THIRDPARTY_INCLUDE) @PLUGINSTATIC@ @DEFS@ @CFLAGS@ @CPPFLAGS@ @LDFLAGS@ @SOFLAGS@ -o $@ $<
+ @$(CC) $(COMMON_INCLUDE) $(THIRDPARTY_INCLUDE) @PLUGINSTATIC@ @DEFS@ @CFLAGS@ @CPPFLAGS@ @LDFLAGS@ @SOFLAGS@ @LIBS@ @MYSQL_LIBS@ -o $@ $<
../../plugins/HPMHooking_login@DLLEXT@: HPMHOOKINGTYPE = LOGIN
../../plugins/HPMHooking_char@DLLEXT@: HPMHOOKINGTYPE = CHAR