diff options
-rw-r--r-- | src/plugins/HPMHooking/HPMHooking.Defs.inc | 20 | ||||
-rw-r--r-- | src/plugins/HPMHooking/HPMHooking_map.HPMHooksCore.inc | 24 | ||||
-rw-r--r-- | src/plugins/HPMHooking/HPMHooking_map.HookingPoints.inc | 6 | ||||
-rw-r--r-- | src/plugins/HPMHooking/HPMHooking_map.Hooks.inc | 170 |
4 files changed, 210 insertions, 10 deletions
diff --git a/src/plugins/HPMHooking/HPMHooking.Defs.inc b/src/plugins/HPMHooking/HPMHooking.Defs.inc index 638fcab3d..1451b34b2 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 @@ -6344,10 +6356,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); diff --git a/src/plugins/HPMHooking/HPMHooking_map.HPMHooksCore.inc b/src/plugins/HPMHooking/HPMHooking_map.HPMHooksCore.inc index 13633807c..82a2a3bdb 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; @@ -7885,6 +7897,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; @@ -9237,6 +9253,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; diff --git a/src/plugins/HPMHooking/HPMHooking_map.HookingPoints.inc b/src/plugins/HPMHooking/HPMHooking_map.HookingPoints.inc index 673dcc67a..9880a679f 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) }, diff --git a/src/plugins/HPMHooking/HPMHooking_map.Hooks.inc b/src/plugins/HPMHooking/HPMHooking_map.Hooks.inc index 64b23abc7..f2871964c 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) { @@ -65495,10 +65653,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; @@ -65513,7 +65671,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); @@ -65521,10 +65679,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; @@ -65539,7 +65697,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); |