diff options
author | Hercules.ws <dev@herc.ws> | 2017-08-08 16:48:54 +0200 |
---|---|---|
committer | HerculesWSAPI <dev@herc.ws> | 2017-08-08 16:48:54 +0200 |
commit | 2053a2d8ff9e822ed61fac8e6fd12513ded633bd (patch) | |
tree | 82d486c375f65a810baac0815d4b14198ba0acc6 /src | |
parent | 89ccf19c2780f80aa475c07fcea5750519266807 (diff) | |
download | hercules-2053a2d8ff9e822ed61fac8e6fd12513ded633bd.tar.gz hercules-2053a2d8ff9e822ed61fac8e6fd12513ded633bd.tar.bz2 hercules-2053a2d8ff9e822ed61fac8e6fd12513ded633bd.tar.xz hercules-2053a2d8ff9e822ed61fac8e6fd12513ded633bd.zip |
HPM Hooks Update
Signed-off-by: HerculesWSAPI <dev@herc.ws>
Diffstat (limited to 'src')
-rw-r--r-- | src/common/HPMDataCheck.h | 37 | ||||
-rw-r--r-- | src/common/HPMSymbols.inc.h | 14 | ||||
-rw-r--r-- | src/plugins/HPMHooking/HPMHooking.Defs.inc | 140 | ||||
-rw-r--r-- | src/plugins/HPMHooking/HPMHooking_char.HPMHooksCore.inc | 65 | ||||
-rw-r--r-- | src/plugins/HPMHooking/HPMHooking_char.HookingPoints.inc | 17 | ||||
-rw-r--r-- | src/plugins/HPMHooking/HPMHooking_char.Hooks.inc | 430 | ||||
-rw-r--r-- | src/plugins/HPMHooking/HPMHooking_char.sources.inc | 1 | ||||
-rw-r--r-- | src/plugins/HPMHooking/HPMHooking_map.HPMHooksCore.inc | 209 | ||||
-rw-r--r-- | src/plugins/HPMHooking/HPMHooking_map.HookingPoints.inc | 53 | ||||
-rw-r--r-- | src/plugins/HPMHooking/HPMHooking_map.Hooks.inc | 1361 | ||||
-rw-r--r-- | src/plugins/HPMHooking/HPMHooking_map.sources.inc | 1 |
11 files changed, 2328 insertions, 0 deletions
diff --git a/src/common/HPMDataCheck.h b/src/common/HPMDataCheck.h index 2a1c092b7..7480269e5 100644 --- a/src/common/HPMDataCheck.h +++ b/src/common/HPMDataCheck.h @@ -101,6 +101,11 @@ HPExport const struct s_HPMDataCheck HPMDataCheck[] = { #else #define CHAR_INT_QUEST_H #endif // CHAR_INT_QUEST_H + #ifdef CHAR_INT_RODEX_H + { "inter_rodex_interface", sizeof(struct inter_rodex_interface), SERVER_TYPE_CHAR }, + #else + #define CHAR_INT_RODEX_H + #endif // CHAR_INT_RODEX_H #ifdef CHAR_INT_STORAGE_H { "inter_storage_interface", sizeof(struct inter_storage_interface), SERVER_TYPE_CHAR }, #else @@ -207,6 +212,8 @@ HPExport const struct s_HPMDataCheck HPMDataCheck[] = { { "party_member", sizeof(struct party_member), SERVER_TYPE_ALL }, { "point", sizeof(struct point), SERVER_TYPE_ALL }, { "quest", sizeof(struct quest), SERVER_TYPE_ALL }, + { "rodex_maillist", sizeof(struct rodex_maillist), SERVER_TYPE_ALL }, + { "rodex_message", sizeof(struct rodex_message), SERVER_TYPE_ALL }, { "s_elemental", sizeof(struct s_elemental), SERVER_TYPE_ALL }, { "s_friend", sizeof(struct s_friend), SERVER_TYPE_ALL }, { "s_homunculus", sizeof(struct s_homunculus), SERVER_TYPE_ALL }, @@ -545,6 +552,31 @@ HPExport const struct s_HPMDataCheck HPMDataCheck[] = { { "EQUIPSLOTINFO", sizeof(struct EQUIPSLOTINFO), SERVER_TYPE_MAP }, { "ItemOptions", sizeof(struct ItemOptions), SERVER_TYPE_MAP }, { "NORMALITEM_INFO", sizeof(struct NORMALITEM_INFO), SERVER_TYPE_MAP }, + { "PACKET_CZ_ADD_ITEM_TO_MAIL", sizeof(struct PACKET_CZ_ADD_ITEM_TO_MAIL), SERVER_TYPE_MAP }, + { "PACKET_CZ_CHECKNAME", sizeof(struct PACKET_CZ_CHECKNAME), SERVER_TYPE_MAP }, + { "PACKET_CZ_REQ_DELETE_MAIL", sizeof(struct PACKET_CZ_REQ_DELETE_MAIL), SERVER_TYPE_MAP }, + { "PACKET_CZ_REQ_ITEM_FROM_MAIL", sizeof(struct PACKET_CZ_REQ_ITEM_FROM_MAIL), SERVER_TYPE_MAP }, + { "PACKET_CZ_REQ_NEXT_MAIL_LIST", sizeof(struct PACKET_CZ_REQ_NEXT_MAIL_LIST), SERVER_TYPE_MAP }, + { "PACKET_CZ_REQ_OPEN_MAIL", sizeof(struct PACKET_CZ_REQ_OPEN_MAIL), SERVER_TYPE_MAP }, + { "PACKET_CZ_REQ_OPEN_WRITE_MAIL", sizeof(struct PACKET_CZ_REQ_OPEN_WRITE_MAIL), SERVER_TYPE_MAP }, + { "PACKET_CZ_REQ_READ_MAIL", sizeof(struct PACKET_CZ_REQ_READ_MAIL), SERVER_TYPE_MAP }, + { "PACKET_CZ_REQ_REFRESH_MAIL_LIST", sizeof(struct PACKET_CZ_REQ_REFRESH_MAIL_LIST), SERVER_TYPE_MAP }, + { "PACKET_CZ_REQ_REMOVE_ITEM_MAIL", sizeof(struct PACKET_CZ_REQ_REMOVE_ITEM_MAIL), SERVER_TYPE_MAP }, + { "PACKET_CZ_REQ_ZENY_FROM_MAIL", sizeof(struct PACKET_CZ_REQ_ZENY_FROM_MAIL), SERVER_TYPE_MAP }, + { "PACKET_CZ_SEND_MAIL", sizeof(struct PACKET_CZ_SEND_MAIL), SERVER_TYPE_MAP }, + { "PACKET_ZC_ACK_DELETE_MAIL", sizeof(struct PACKET_ZC_ACK_DELETE_MAIL), SERVER_TYPE_MAP }, + { "PACKET_ZC_ACK_ITEM_FROM_MAIL", sizeof(struct PACKET_ZC_ACK_ITEM_FROM_MAIL), SERVER_TYPE_MAP }, + { "PACKET_ZC_ACK_OPEN_WRITE_MAIL", sizeof(struct PACKET_ZC_ACK_OPEN_WRITE_MAIL), SERVER_TYPE_MAP }, + { "PACKET_ZC_ACK_REMOVE_ITEM_MAIL", sizeof(struct PACKET_ZC_ACK_REMOVE_ITEM_MAIL), SERVER_TYPE_MAP }, + { "PACKET_ZC_ACK_ZENY_FROM_MAIL", sizeof(struct PACKET_ZC_ACK_ZENY_FROM_MAIL), SERVER_TYPE_MAP }, + { "PACKET_ZC_ADD_ITEM_TO_MAIL", sizeof(struct PACKET_ZC_ADD_ITEM_TO_MAIL), SERVER_TYPE_MAP }, + { "PACKET_ZC_CHECKNAME", sizeof(struct PACKET_ZC_CHECKNAME), SERVER_TYPE_MAP }, + { "PACKET_ZC_MAIL_LIST", sizeof(struct PACKET_ZC_MAIL_LIST), SERVER_TYPE_MAP }, + { "PACKET_ZC_NOTIFY_UNREADMAIL", sizeof(struct PACKET_ZC_NOTIFY_UNREADMAIL), SERVER_TYPE_MAP }, + { "PACKET_ZC_READ_MAIL", sizeof(struct PACKET_ZC_READ_MAIL), SERVER_TYPE_MAP }, + { "PACKET_ZC_WRITE_MAIL_RESULT", sizeof(struct PACKET_ZC_WRITE_MAIL_RESULT), SERVER_TYPE_MAP }, + { "mail_item", sizeof(struct mail_item), SERVER_TYPE_MAP }, + { "maillistinfo", sizeof(struct maillistinfo), SERVER_TYPE_MAP }, { "packet_additem", sizeof(struct packet_additem), SERVER_TYPE_MAP }, { "packet_authok", sizeof(struct packet_authok), SERVER_TYPE_MAP }, { "packet_banking_check", sizeof(struct packet_banking_check), SERVER_TYPE_MAP }, @@ -672,6 +704,11 @@ HPExport const struct s_HPMDataCheck HPMDataCheck[] = { #else #define MAP_QUEST_H #endif // MAP_QUEST_H + #ifdef MAP_RODEX_H + { "rodex_interface", sizeof(struct rodex_interface), SERVER_TYPE_MAP }, + #else + #define MAP_RODEX_H + #endif // MAP_RODEX_H #ifdef MAP_SCRIPT_H { "Script_Config", sizeof(struct Script_Config), SERVER_TYPE_MAP }, { "casecheck_data", sizeof(struct casecheck_data), SERVER_TYPE_MAP }, diff --git a/src/common/HPMSymbols.inc.h b/src/common/HPMSymbols.inc.h index 30ec45405..5ee8a014b 100644 --- a/src/common/HPMSymbols.inc.h +++ b/src/common/HPMSymbols.inc.h @@ -125,6 +125,9 @@ struct inter_pet_interface *inter_pet; #ifdef CHAR_INT_QUEST_H /* inter_quest */ struct inter_quest_interface *inter_quest; #endif // CHAR_INT_QUEST_H +#ifdef CHAR_INT_RODEX_H /* inter_rodex */ +struct inter_rodex_interface *inter_rodex; +#endif // CHAR_INT_RODEX_H #ifdef CHAR_INT_STORAGE_H /* inter_storage */ struct inter_storage_interface *inter_storage; #endif // CHAR_INT_STORAGE_H @@ -218,6 +221,9 @@ struct quest_interface *quest; #ifdef COMMON_RANDOM_H /* rnd */ struct rnd_interface *rnd; #endif // COMMON_RANDOM_H +#ifdef MAP_RODEX_H /* rodex */ +struct rodex_interface *rodex; +#endif // MAP_RODEX_H #ifdef MAP_SCRIPT_H /* script */ struct script_interface *script; #endif // MAP_SCRIPT_H @@ -405,6 +411,10 @@ HPExport const char *HPM_shared_symbols(int server_type) if ((server_type&(SERVER_TYPE_CHAR)) != 0 && !HPM_SYMBOL("inter_quest", inter_quest)) return "inter_quest"; #endif // CHAR_INT_QUEST_H +#ifdef CHAR_INT_RODEX_H /* inter_rodex */ + if ((server_type&(SERVER_TYPE_CHAR)) != 0 && !HPM_SYMBOL("inter_rodex", inter_rodex)) + return "inter_rodex"; +#endif // CHAR_INT_RODEX_H #ifdef CHAR_INT_STORAGE_H /* inter_storage */ if ((server_type&(SERVER_TYPE_CHAR)) != 0 && !HPM_SYMBOL("inter_storage", inter_storage)) return "inter_storage"; @@ -529,6 +539,10 @@ HPExport const char *HPM_shared_symbols(int server_type) if ((server_type&(SERVER_TYPE_ALL)) != 0 && !HPM_SYMBOL("rnd", rnd)) return "rnd"; #endif // COMMON_RANDOM_H +#ifdef MAP_RODEX_H /* rodex */ + if ((server_type&(SERVER_TYPE_MAP)) != 0 && !HPM_SYMBOL("rodex", rodex)) + return "rodex"; +#endif // MAP_RODEX_H #ifdef MAP_SCRIPT_H /* script */ if ((server_type&(SERVER_TYPE_MAP)) != 0 && !HPM_SYMBOL("script", script)) return "script"; diff --git a/src/plugins/HPMHooking/HPMHooking.Defs.inc b/src/plugins/HPMHooking/HPMHooking.Defs.inc index 25e40ec0c..b5ae9b0db 100644 --- a/src/plugins/HPMHooking/HPMHooking.Defs.inc +++ b/src/plugins/HPMHooking/HPMHooking.Defs.inc @@ -2240,6 +2240,58 @@ typedef void (*HPMHOOK_pre_clif_pSelectCart) (int *fd, struct map_session_data * typedef void (*HPMHOOK_post_clif_pSelectCart) (int fd, struct map_session_data *sd); typedef const char* (*HPMHOOK_pre_clif_get_bl_name) (const struct block_list **bl); typedef const char* (*HPMHOOK_post_clif_get_bl_name) (const char* retVal___, const struct block_list *bl); +typedef void (*HPMHOOK_pre_clif_pRodexOpenWriteMail) (int *fd, struct map_session_data **sd); +typedef void (*HPMHOOK_post_clif_pRodexOpenWriteMail) (int fd, struct map_session_data *sd); +typedef void (*HPMHOOK_pre_clif_rodex_open_write_mail) (int *fd, const char **receiver_name, int8 *result); +typedef void (*HPMHOOK_post_clif_rodex_open_write_mail) (int fd, const char *receiver_name, int8 result); +typedef void (*HPMHOOK_pre_clif_pRodexAddItem) (int *fd, struct map_session_data **sd); +typedef void (*HPMHOOK_post_clif_pRodexAddItem) (int fd, struct map_session_data *sd); +typedef void (*HPMHOOK_pre_clif_rodex_add_item_result) (struct map_session_data **sd, int16 *idx, int16 *amount, int8 *result); +typedef void (*HPMHOOK_post_clif_rodex_add_item_result) (struct map_session_data *sd, int16 idx, int16 amount, int8 result); +typedef void (*HPMHOOK_pre_clif_pRodexRemoveItem) (int *fd, struct map_session_data **sd); +typedef void (*HPMHOOK_post_clif_pRodexRemoveItem) (int fd, struct map_session_data *sd); +typedef void (*HPMHOOK_pre_clif_rodex_remove_item_result) (struct map_session_data **sd, int16 *idx, int16 *amount); +typedef void (*HPMHOOK_post_clif_rodex_remove_item_result) (struct map_session_data *sd, int16 idx, int16 amount); +typedef void (*HPMHOOK_pre_clif_pRodexSendMail) (int *fd, struct map_session_data **sd); +typedef void (*HPMHOOK_post_clif_pRodexSendMail) (int fd, struct map_session_data *sd); +typedef void (*HPMHOOK_pre_clif_rodex_send_mail_result) (int *fd, struct map_session_data **sd, int8 *result); +typedef void (*HPMHOOK_post_clif_rodex_send_mail_result) (int fd, struct map_session_data *sd, int8 result); +typedef void (*HPMHOOK_pre_clif_rodex_send_maillist) (int *fd, struct map_session_data **sd, int8 *open_type, int64 *page_start); +typedef void (*HPMHOOK_post_clif_rodex_send_maillist) (int fd, struct map_session_data *sd, int8 open_type, int64 page_start); +typedef void (*HPMHOOK_pre_clif_rodex_send_refresh) (int *fd, struct map_session_data **sd, int8 *open_type, int *count); +typedef void (*HPMHOOK_post_clif_rodex_send_refresh) (int fd, struct map_session_data *sd, int8 open_type, int count); +typedef void (*HPMHOOK_pre_clif_pRodexReadMail) (int *fd, struct map_session_data **sd); +typedef void (*HPMHOOK_post_clif_pRodexReadMail) (int fd, struct map_session_data *sd); +typedef void (*HPMHOOK_pre_clif_rodex_read_mail) (struct map_session_data **sd, int8 *opentype, struct rodex_message **msg); +typedef void (*HPMHOOK_post_clif_rodex_read_mail) (struct map_session_data *sd, int8 opentype, struct rodex_message *msg); +typedef void (*HPMHOOK_pre_clif_pRodexNextMaillist) (int *fd, struct map_session_data **sd); +typedef void (*HPMHOOK_post_clif_pRodexNextMaillist) (int fd, struct map_session_data *sd); +typedef void (*HPMHOOK_pre_clif_pRodexCloseMailbox) (int *fd, struct map_session_data **sd); +typedef void (*HPMHOOK_post_clif_pRodexCloseMailbox) (int fd, struct map_session_data *sd); +typedef void (*HPMHOOK_pre_clif_pRodexCancelWriteMail) (int *fd, struct map_session_data **sd); +typedef void (*HPMHOOK_post_clif_pRodexCancelWriteMail) (int fd, struct map_session_data *sd); +typedef void (*HPMHOOK_pre_clif_pRodexOpenMailbox) (int *fd, struct map_session_data **sd); +typedef void (*HPMHOOK_post_clif_pRodexOpenMailbox) (int fd, struct map_session_data *sd); +typedef void (*HPMHOOK_pre_clif_pRodexCheckName) (int *fd, struct map_session_data **sd); +typedef void (*HPMHOOK_post_clif_pRodexCheckName) (int fd, struct map_session_data *sd); +typedef void (*HPMHOOK_pre_clif_rodex_checkname_result) (struct map_session_data **sd, int *char_id, short *class_, int *base_level, const char **name); +typedef void (*HPMHOOK_post_clif_rodex_checkname_result) (struct map_session_data *sd, int char_id, short class_, int base_level, const char *name); +typedef void (*HPMHOOK_pre_clif_pRodexDeleteMail) (int *fd, struct map_session_data **sd); +typedef void (*HPMHOOK_post_clif_pRodexDeleteMail) (int fd, struct map_session_data *sd); +typedef void (*HPMHOOK_pre_clif_rodex_delete_mail) (struct map_session_data **sd, int8 *opentype, int64 *mail_id); +typedef void (*HPMHOOK_post_clif_rodex_delete_mail) (struct map_session_data *sd, int8 opentype, int64 mail_id); +typedef void (*HPMHOOK_pre_clif_pRodexRefreshMaillist) (int *fd, struct map_session_data **sd); +typedef void (*HPMHOOK_post_clif_pRodexRefreshMaillist) (int fd, struct map_session_data *sd); +typedef void (*HPMHOOK_pre_clif_pRodexRequestZeny) (int *fd, struct map_session_data **sd); +typedef void (*HPMHOOK_post_clif_pRodexRequestZeny) (int fd, struct map_session_data *sd); +typedef void (*HPMHOOK_pre_clif_rodex_request_zeny) (struct map_session_data **sd, int8 *opentype, int64 *mail_id, int8 *result); +typedef void (*HPMHOOK_post_clif_rodex_request_zeny) (struct map_session_data *sd, int8 opentype, int64 mail_id, int8 result); +typedef void (*HPMHOOK_pre_clif_pRodexRequestItems) (int *fd, struct map_session_data **sd); +typedef void (*HPMHOOK_post_clif_pRodexRequestItems) (int fd, struct map_session_data *sd); +typedef void (*HPMHOOK_pre_clif_rodex_request_items) (struct map_session_data **sd, int8 *opentype, int64 *mail_id, int8 *result); +typedef void (*HPMHOOK_post_clif_rodex_request_items) (struct map_session_data *sd, int8 opentype, int64 mail_id, int8 result); +typedef void (*HPMHOOK_pre_clif_rodex_icon) (int *fd, bool *show); +typedef void (*HPMHOOK_post_clif_rodex_icon) (int fd, bool show); #endif // MAP_CLIF_H #ifdef COMMON_CORE_H /* cmdline */ typedef void (*HPMHOOK_pre_cmdline_init) (void); @@ -2965,6 +3017,22 @@ typedef int (*HPMHOOK_post_inter_pet_parse_frommap) (int retVal___, int fd); typedef int (*HPMHOOK_pre_inter_quest_parse_frommap) (int *fd); typedef int (*HPMHOOK_post_inter_quest_parse_frommap) (int retVal___, int fd); #endif // CHAR_INT_QUEST_H +#ifdef CHAR_INT_RODEX_H /* inter_rodex */ +typedef int (*HPMHOOK_pre_inter_rodex_sql_init) (void); +typedef int (*HPMHOOK_post_inter_rodex_sql_init) (int retVal___); +typedef void (*HPMHOOK_pre_inter_rodex_sql_final) (void); +typedef void (*HPMHOOK_post_inter_rodex_sql_final) (void); +typedef int (*HPMHOOK_pre_inter_rodex_parse_frommap) (int *fd); +typedef int (*HPMHOOK_post_inter_rodex_parse_frommap) (int retVal___, int fd); +typedef int (*HPMHOOK_pre_inter_rodex_fromsql) (int *char_id, int *account_id, int8 *opentype, int64 *mail_id, struct rodex_maillist **mails); +typedef int (*HPMHOOK_post_inter_rodex_fromsql) (int retVal___, int char_id, int account_id, int8 opentype, int64 mail_id, struct rodex_maillist *mails); +typedef bool (*HPMHOOK_pre_inter_rodex_hasnew) (int *char_id, int *account_id); +typedef bool (*HPMHOOK_post_inter_rodex_hasnew) (bool retVal___, int char_id, int account_id); +typedef bool (*HPMHOOK_pre_inter_rodex_checkname) (const char **name, int **target_char_id, short **target_class, int **target_level); +typedef bool (*HPMHOOK_post_inter_rodex_checkname) (bool retVal___, const char *name, int *target_char_id, short *target_class, int *target_level); +typedef int64 (*HPMHOOK_pre_inter_rodex_savemessage) (struct rodex_message **msg); +typedef int64 (*HPMHOOK_post_inter_rodex_savemessage) (int64 retVal___, struct rodex_message *msg); +#endif // CHAR_INT_RODEX_H #ifdef CHAR_INT_STORAGE_H /* inter_storage */ typedef int (*HPMHOOK_pre_inter_storage_tosql) (int *account_id, const struct storage_data **p); typedef int (*HPMHOOK_post_inter_storage_tosql) (int retVal___, int account_id, const struct storage_data *p); @@ -3124,6 +3192,16 @@ typedef int (*HPMHOOK_pre_intif_elemental_delete) (int *ele_id); typedef int (*HPMHOOK_post_intif_elemental_delete) (int retVal___, int ele_id); typedef int (*HPMHOOK_pre_intif_elemental_save) (struct s_elemental **ele); typedef int (*HPMHOOK_post_intif_elemental_save) (int retVal___, struct s_elemental *ele); +typedef int (*HPMHOOK_pre_intif_rodex_requestinbox) (int *char_id, int *account_id, int8 *flag, int8 *opentype, int64 *mail_id); +typedef int (*HPMHOOK_post_intif_rodex_requestinbox) (int retVal___, int char_id, int account_id, int8 flag, int8 opentype, int64 mail_id); +typedef int (*HPMHOOK_pre_intif_rodex_checkhasnew) (struct map_session_data **sd); +typedef int (*HPMHOOK_post_intif_rodex_checkhasnew) (int retVal___, struct map_session_data *sd); +typedef int (*HPMHOOK_pre_intif_rodex_updatemail) (int64 *mail_id, int8 *flag); +typedef int (*HPMHOOK_post_intif_rodex_updatemail) (int retVal___, int64 mail_id, int8 flag); +typedef int (*HPMHOOK_pre_intif_rodex_sendmail) (struct rodex_message **msg); +typedef int (*HPMHOOK_post_intif_rodex_sendmail) (int retVal___, struct rodex_message *msg); +typedef int (*HPMHOOK_pre_intif_rodex_checkname) (struct map_session_data **sd, const char **name); +typedef int (*HPMHOOK_post_intif_rodex_checkname) (int retVal___, struct map_session_data *sd, const char *name); typedef void (*HPMHOOK_pre_intif_request_accinfo) (int *u_fd, int *aid, int *group_lv, char **query); typedef void (*HPMHOOK_post_intif_request_accinfo) (int u_fd, int aid, int group_lv, char *query); typedef int (*HPMHOOK_pre_intif_CheckForCharServer) (void); @@ -3256,6 +3334,14 @@ typedef void (*HPMHOOK_pre_intif_pSaveHomunculusOk) (int *fd); typedef void (*HPMHOOK_post_intif_pSaveHomunculusOk) (int fd); typedef void (*HPMHOOK_pre_intif_pDeleteHomunculusOk) (int *fd); typedef void (*HPMHOOK_post_intif_pDeleteHomunculusOk) (int fd); +typedef void (*HPMHOOK_pre_intif_pRequestRodexOpenInbox) (int *fd); +typedef void (*HPMHOOK_post_intif_pRequestRodexOpenInbox) (int fd); +typedef void (*HPMHOOK_pre_intif_pRodexHasNew) (int *fd); +typedef void (*HPMHOOK_post_intif_pRodexHasNew) (int fd); +typedef void (*HPMHOOK_pre_intif_pRodexSendMail) (int *fd); +typedef void (*HPMHOOK_post_intif_pRodexSendMail) (int fd); +typedef void (*HPMHOOK_pre_intif_pRodexCheckName) (int *fd); +typedef void (*HPMHOOK_post_intif_pRodexCheckName) (int fd); #endif // MAP_INTIF_H #ifdef MAP_IRC_BOT_H /* ircbot */ typedef void (*HPMHOOK_pre_ircbot_init) (bool *minimal); @@ -4370,6 +4456,24 @@ typedef void (*HPMHOOK_pre_mapif_send_quests) (int *fd, int *char_id, struct que typedef void (*HPMHOOK_post_mapif_send_quests) (int fd, int char_id, struct quest *tmp_questlog, int num_quests); typedef int (*HPMHOOK_pre_mapif_parse_quest_load) (int *fd); typedef int (*HPMHOOK_post_mapif_parse_quest_load) (int retVal___, int fd); +typedef int (*HPMHOOK_pre_mapif_parse_rodex_requestinbox) (int *fd); +typedef int (*HPMHOOK_post_mapif_parse_rodex_requestinbox) (int retVal___, int fd); +typedef void (*HPMHOOK_pre_mapif_rodex_sendinbox) (int *fd, int *char_id, int8 *opentype, int8 *flag, int *count, struct rodex_maillist **mails); +typedef void (*HPMHOOK_post_mapif_rodex_sendinbox) (int fd, int char_id, int8 opentype, int8 flag, int count, struct rodex_maillist *mails); +typedef int (*HPMHOOK_pre_mapif_parse_rodex_checkhasnew) (int *fd); +typedef int (*HPMHOOK_post_mapif_parse_rodex_checkhasnew) (int retVal___, int fd); +typedef void (*HPMHOOK_pre_mapif_rodex_sendhasnew) (int *fd, int *char_id, bool *has_new); +typedef void (*HPMHOOK_post_mapif_rodex_sendhasnew) (int fd, int char_id, bool has_new); +typedef int (*HPMHOOK_pre_mapif_parse_rodex_updatemail) (int *fd); +typedef int (*HPMHOOK_post_mapif_parse_rodex_updatemail) (int retVal___, int fd); +typedef int (*HPMHOOK_pre_mapif_parse_rodex_send) (int *fd); +typedef int (*HPMHOOK_post_mapif_parse_rodex_send) (int retVal___, int fd); +typedef void (*HPMHOOK_pre_mapif_rodex_send) (int *fd, int *sender_id, int *receiver_id, int *receiver_accountid, bool *result); +typedef void (*HPMHOOK_post_mapif_rodex_send) (int fd, int sender_id, int receiver_id, int receiver_accountid, bool result); +typedef int (*HPMHOOK_pre_mapif_parse_rodex_checkname) (int *fd); +typedef int (*HPMHOOK_post_mapif_parse_rodex_checkname) (int retVal___, int fd); +typedef void (*HPMHOOK_pre_mapif_rodex_checkname) (int *fd, int *reqchar_id, int *target_char_id, short *target_class, int *target_level, ); +typedef void (*HPMHOOK_post_mapif_rodex_checkname) (int fd, int reqchar_id, int target_char_id, short target_class, int target_level, ); typedef int (*HPMHOOK_pre_mapif_load_guild_storage) (int *fd, int *account_id, int *guild_id, char *flag); typedef int (*HPMHOOK_post_mapif_load_guild_storage) (int retVal___, int fd, int account_id, int guild_id, char flag); typedef int (*HPMHOOK_pre_mapif_save_guild_storage_ack) (int *fd, int *account_id, int *guild_id, int *fail); @@ -5779,6 +5883,42 @@ typedef double (*HPMHOOK_post_rnd_uniform) (double retVal___); typedef double (*HPMHOOK_pre_rnd_uniform53) (void); typedef double (*HPMHOOK_post_rnd_uniform53) (double retVal___); #endif // COMMON_RANDOM_H +#ifdef MAP_RODEX_H /* rodex */ +typedef void (*HPMHOOK_pre_rodex_init) (bool *minimal); +typedef void (*HPMHOOK_post_rodex_init) (bool minimal); +typedef void (*HPMHOOK_pre_rodex_final) (void); +typedef void (*HPMHOOK_post_rodex_final) (void); +typedef bool (*HPMHOOK_pre_rodex_isenabled) (void); +typedef bool (*HPMHOOK_post_rodex_isenabled) (bool retVal___); +typedef void (*HPMHOOK_pre_rodex_open) (struct map_session_data **sd, int8 *open_type); +typedef void (*HPMHOOK_post_rodex_open) (struct map_session_data *sd, int8 open_type); +typedef void (*HPMHOOK_pre_rodex_next_page) (struct map_session_data **sd, int8 *open_type, int64 *last_mail_id); +typedef void (*HPMHOOK_post_rodex_next_page) (struct map_session_data *sd, int8 open_type, int64 last_mail_id); +typedef void (*HPMHOOK_pre_rodex_refresh) (struct map_session_data **sd, int8 *open_type, int64 *first_mail_id); +typedef void (*HPMHOOK_post_rodex_refresh) (struct map_session_data *sd, int8 open_type, int64 first_mail_id); +typedef void (*HPMHOOK_pre_rodex_add_item) (struct map_session_data **sd, int16 *idx, int16 *amount); +typedef void (*HPMHOOK_post_rodex_add_item) (struct map_session_data *sd, int16 idx, int16 amount); +typedef void (*HPMHOOK_pre_rodex_remove_item) (struct map_session_data **sd, int16 *idx, int16 *amount); +typedef void (*HPMHOOK_post_rodex_remove_item) (struct map_session_data *sd, int16 idx, int16 amount); +typedef void (*HPMHOOK_pre_rodex_check_player) (struct map_session_data **sd, const char **name, int **base_level, int **char_id, short **class); +typedef void (*HPMHOOK_post_rodex_check_player) (struct map_session_data *sd, const char *name, int *base_level, int *char_id, short *class); +typedef int (*HPMHOOK_pre_rodex_send_mail) (struct map_session_data **sd, const char **receiver_name, const char **body, const char **title, int64 *zeny); +typedef int (*HPMHOOK_post_rodex_send_mail) (int retVal___, struct map_session_data *sd, const char *receiver_name, const char *body, const char *title, int64 zeny); +typedef void (*HPMHOOK_pre_rodex_send_mail_result) (struct map_session_data **ssd, struct map_session_data **rsd, bool *result); +typedef void (*HPMHOOK_post_rodex_send_mail_result) (struct map_session_data *ssd, struct map_session_data *rsd, bool result); +typedef struct rodex_message* (*HPMHOOK_pre_rodex_get_mail) (struct map_session_data **sd, int64 *mail_id); +typedef struct rodex_message* (*HPMHOOK_post_rodex_get_mail) (struct rodex_message* retVal___, struct map_session_data *sd, int64 mail_id); +typedef void (*HPMHOOK_pre_rodex_read_mail) (struct map_session_data **sd, int64 *mail_id); +typedef void (*HPMHOOK_post_rodex_read_mail) (struct map_session_data *sd, int64 mail_id); +typedef void (*HPMHOOK_pre_rodex_get_zeny) (struct map_session_data **sd, int8 *opentype, int64 *mail_id); +typedef void (*HPMHOOK_post_rodex_get_zeny) (struct map_session_data *sd, int8 opentype, int64 mail_id); +typedef void (*HPMHOOK_pre_rodex_get_items) (struct map_session_data **sd, int8 *opentype, int64 *mail_id); +typedef void (*HPMHOOK_post_rodex_get_items) (struct map_session_data *sd, int8 opentype, int64 mail_id); +typedef void (*HPMHOOK_pre_rodex_delete_mail) (struct map_session_data **sd, int64 *mail_id); +typedef void (*HPMHOOK_post_rodex_delete_mail) (struct map_session_data *sd, int64 mail_id); +typedef void (*HPMHOOK_pre_rodex_clean) (struct map_session_data **sd, int8 *flag); +typedef void (*HPMHOOK_post_rodex_clean) (struct map_session_data *sd, int8 flag); +#endif // MAP_RODEX_H #ifdef MAP_SCRIPT_H /* script */ typedef void (*HPMHOOK_pre_script_init) (bool *minimal); typedef void (*HPMHOOK_post_script_init) (bool minimal); diff --git a/src/plugins/HPMHooking/HPMHooking_char.HPMHooksCore.inc b/src/plugins/HPMHooking/HPMHooking_char.HPMHooksCore.inc index 46c79c47a..3eeb7fd91 100644 --- a/src/plugins/HPMHooking/HPMHooking_char.HPMHooksCore.inc +++ b/src/plugins/HPMHooking/HPMHooking_char.HPMHooksCore.inc @@ -626,6 +626,20 @@ struct { struct HPMHookPoint *HP_inter_pet_parse_frommap_post; struct HPMHookPoint *HP_inter_quest_parse_frommap_pre; struct HPMHookPoint *HP_inter_quest_parse_frommap_post; + struct HPMHookPoint *HP_inter_rodex_sql_init_pre; + struct HPMHookPoint *HP_inter_rodex_sql_init_post; + struct HPMHookPoint *HP_inter_rodex_sql_final_pre; + struct HPMHookPoint *HP_inter_rodex_sql_final_post; + struct HPMHookPoint *HP_inter_rodex_parse_frommap_pre; + struct HPMHookPoint *HP_inter_rodex_parse_frommap_post; + struct HPMHookPoint *HP_inter_rodex_fromsql_pre; + struct HPMHookPoint *HP_inter_rodex_fromsql_post; + struct HPMHookPoint *HP_inter_rodex_hasnew_pre; + struct HPMHookPoint *HP_inter_rodex_hasnew_post; + struct HPMHookPoint *HP_inter_rodex_checkname_pre; + struct HPMHookPoint *HP_inter_rodex_checkname_post; + struct HPMHookPoint *HP_inter_rodex_savemessage_pre; + struct HPMHookPoint *HP_inter_rodex_savemessage_post; struct HPMHookPoint *HP_inter_storage_tosql_pre; struct HPMHookPoint *HP_inter_storage_tosql_post; struct HPMHookPoint *HP_inter_storage_fromsql_pre; @@ -1098,6 +1112,24 @@ struct { struct HPMHookPoint *HP_mapif_send_quests_post; struct HPMHookPoint *HP_mapif_parse_quest_load_pre; struct HPMHookPoint *HP_mapif_parse_quest_load_post; + struct HPMHookPoint *HP_mapif_parse_rodex_requestinbox_pre; + struct HPMHookPoint *HP_mapif_parse_rodex_requestinbox_post; + struct HPMHookPoint *HP_mapif_rodex_sendinbox_pre; + struct HPMHookPoint *HP_mapif_rodex_sendinbox_post; + struct HPMHookPoint *HP_mapif_parse_rodex_checkhasnew_pre; + struct HPMHookPoint *HP_mapif_parse_rodex_checkhasnew_post; + struct HPMHookPoint *HP_mapif_rodex_sendhasnew_pre; + struct HPMHookPoint *HP_mapif_rodex_sendhasnew_post; + struct HPMHookPoint *HP_mapif_parse_rodex_updatemail_pre; + struct HPMHookPoint *HP_mapif_parse_rodex_updatemail_post; + struct HPMHookPoint *HP_mapif_parse_rodex_send_pre; + struct HPMHookPoint *HP_mapif_parse_rodex_send_post; + struct HPMHookPoint *HP_mapif_rodex_send_pre; + struct HPMHookPoint *HP_mapif_rodex_send_post; + struct HPMHookPoint *HP_mapif_parse_rodex_checkname_pre; + struct HPMHookPoint *HP_mapif_parse_rodex_checkname_post; + struct HPMHookPoint *HP_mapif_rodex_checkname_pre; + struct HPMHookPoint *HP_mapif_rodex_checkname_post; struct HPMHookPoint *HP_mapif_load_guild_storage_pre; struct HPMHookPoint *HP_mapif_load_guild_storage_post; struct HPMHookPoint *HP_mapif_save_guild_storage_ack_pre; @@ -2113,6 +2145,20 @@ struct { int HP_inter_pet_parse_frommap_post; int HP_inter_quest_parse_frommap_pre; int HP_inter_quest_parse_frommap_post; + int HP_inter_rodex_sql_init_pre; + int HP_inter_rodex_sql_init_post; + int HP_inter_rodex_sql_final_pre; + int HP_inter_rodex_sql_final_post; + int HP_inter_rodex_parse_frommap_pre; + int HP_inter_rodex_parse_frommap_post; + int HP_inter_rodex_fromsql_pre; + int HP_inter_rodex_fromsql_post; + int HP_inter_rodex_hasnew_pre; + int HP_inter_rodex_hasnew_post; + int HP_inter_rodex_checkname_pre; + int HP_inter_rodex_checkname_post; + int HP_inter_rodex_savemessage_pre; + int HP_inter_rodex_savemessage_post; int HP_inter_storage_tosql_pre; int HP_inter_storage_tosql_post; int HP_inter_storage_fromsql_pre; @@ -2585,6 +2631,24 @@ struct { int HP_mapif_send_quests_post; int HP_mapif_parse_quest_load_pre; int HP_mapif_parse_quest_load_post; + int HP_mapif_parse_rodex_requestinbox_pre; + int HP_mapif_parse_rodex_requestinbox_post; + int HP_mapif_rodex_sendinbox_pre; + int HP_mapif_rodex_sendinbox_post; + int HP_mapif_parse_rodex_checkhasnew_pre; + int HP_mapif_parse_rodex_checkhasnew_post; + int HP_mapif_rodex_sendhasnew_pre; + int HP_mapif_rodex_sendhasnew_post; + int HP_mapif_parse_rodex_updatemail_pre; + int HP_mapif_parse_rodex_updatemail_post; + int HP_mapif_parse_rodex_send_pre; + int HP_mapif_parse_rodex_send_post; + int HP_mapif_rodex_send_pre; + int HP_mapif_rodex_send_post; + int HP_mapif_parse_rodex_checkname_pre; + int HP_mapif_parse_rodex_checkname_post; + int HP_mapif_rodex_checkname_pre; + int HP_mapif_rodex_checkname_post; int HP_mapif_load_guild_storage_pre; int HP_mapif_load_guild_storage_post; int HP_mapif_save_guild_storage_ack_pre; @@ -3018,6 +3082,7 @@ struct { struct inter_party_interface inter_party; struct inter_pet_interface inter_pet; struct inter_quest_interface inter_quest; + struct inter_rodex_interface inter_rodex; struct inter_storage_interface inter_storage; struct libconfig_interface libconfig; struct loginif_interface loginif; diff --git a/src/plugins/HPMHooking/HPMHooking_char.HookingPoints.inc b/src/plugins/HPMHooking/HPMHooking_char.HookingPoints.inc index 29f6d668c..bbd484fe1 100644 --- a/src/plugins/HPMHooking/HPMHooking_char.HookingPoints.inc +++ b/src/plugins/HPMHooking/HPMHooking_char.HookingPoints.inc @@ -344,6 +344,14 @@ struct HookingPointData HookingPoints[] = { { HP_POP(inter_pet->parse_frommap, HP_inter_pet_parse_frommap) }, /* inter_quest_interface */ { HP_POP(inter_quest->parse_frommap, HP_inter_quest_parse_frommap) }, +/* inter_rodex_interface */ + { HP_POP(inter_rodex->sql_init, HP_inter_rodex_sql_init) }, + { HP_POP(inter_rodex->sql_final, HP_inter_rodex_sql_final) }, + { HP_POP(inter_rodex->parse_frommap, HP_inter_rodex_parse_frommap) }, + { HP_POP(inter_rodex->fromsql, HP_inter_rodex_fromsql) }, + { HP_POP(inter_rodex->hasnew, HP_inter_rodex_hasnew) }, + { HP_POP(inter_rodex->checkname, HP_inter_rodex_checkname) }, + { HP_POP(inter_rodex->savemessage, HP_inter_rodex_savemessage) }, /* inter_storage_interface */ { HP_POP(inter_storage->tosql, HP_inter_storage_tosql) }, { HP_POP(inter_storage->fromsql, HP_inter_storage_fromsql) }, @@ -584,6 +592,15 @@ struct HookingPointData HookingPoints[] = { { HP_POP(mapif->parse_quest_save, HP_mapif_parse_quest_save) }, { HP_POP(mapif->send_quests, HP_mapif_send_quests) }, { HP_POP(mapif->parse_quest_load, HP_mapif_parse_quest_load) }, + { HP_POP(mapif->parse_rodex_requestinbox, HP_mapif_parse_rodex_requestinbox) }, + { HP_POP(mapif->rodex_sendinbox, HP_mapif_rodex_sendinbox) }, + { HP_POP(mapif->parse_rodex_checkhasnew, HP_mapif_parse_rodex_checkhasnew) }, + { HP_POP(mapif->rodex_sendhasnew, HP_mapif_rodex_sendhasnew) }, + { HP_POP(mapif->parse_rodex_updatemail, HP_mapif_parse_rodex_updatemail) }, + { HP_POP(mapif->parse_rodex_send, HP_mapif_parse_rodex_send) }, + { HP_POP(mapif->rodex_send, HP_mapif_rodex_send) }, + { HP_POP(mapif->parse_rodex_checkname, HP_mapif_parse_rodex_checkname) }, + { HP_POP(mapif->rodex_checkname, HP_mapif_rodex_checkname) }, { HP_POP(mapif->load_guild_storage, HP_mapif_load_guild_storage) }, { HP_POP(mapif->save_guild_storage_ack, HP_mapif_save_guild_storage_ack) }, { HP_POP(mapif->parse_LoadGuildStorage, HP_mapif_parse_LoadGuildStorage) }, diff --git a/src/plugins/HPMHooking/HPMHooking_char.Hooks.inc b/src/plugins/HPMHooking/HPMHooking_char.Hooks.inc index a2a9fa8e2..b727d208b 100644 --- a/src/plugins/HPMHooking/HPMHooking_char.Hooks.inc +++ b/src/plugins/HPMHooking/HPMHooking_char.Hooks.inc @@ -8058,6 +8058,195 @@ int HP_inter_quest_parse_frommap(int fd) { } return retVal___; } +/* inter_rodex_interface */ +int HP_inter_rodex_sql_init(void) { + int hIndex = 0; + int retVal___ = 0; + if (HPMHooks.count.HP_inter_rodex_sql_init_pre > 0) { + int (*preHookFunc) (void); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_inter_rodex_sql_init_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_inter_rodex_sql_init_pre[hIndex].func; + retVal___ = preHookFunc(); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return retVal___; + } + } + { + retVal___ = HPMHooks.source.inter_rodex.sql_init(); + } + if (HPMHooks.count.HP_inter_rodex_sql_init_post > 0) { + int (*postHookFunc) (int retVal___); + for (hIndex = 0; hIndex < HPMHooks.count.HP_inter_rodex_sql_init_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_inter_rodex_sql_init_post[hIndex].func; + retVal___ = postHookFunc(retVal___); + } + } + return retVal___; +} +void HP_inter_rodex_sql_final(void) { + int hIndex = 0; + if (HPMHooks.count.HP_inter_rodex_sql_final_pre > 0) { + void (*preHookFunc) (void); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_inter_rodex_sql_final_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_inter_rodex_sql_final_pre[hIndex].func; + preHookFunc(); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return; + } + } + { + HPMHooks.source.inter_rodex.sql_final(); + } + if (HPMHooks.count.HP_inter_rodex_sql_final_post > 0) { + void (*postHookFunc) (void); + for (hIndex = 0; hIndex < HPMHooks.count.HP_inter_rodex_sql_final_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_inter_rodex_sql_final_post[hIndex].func; + postHookFunc(); + } + } + return; +} +int HP_inter_rodex_parse_frommap(int fd) { + int hIndex = 0; + int retVal___ = 0; + if (HPMHooks.count.HP_inter_rodex_parse_frommap_pre > 0) { + int (*preHookFunc) (int *fd); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_inter_rodex_parse_frommap_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_inter_rodex_parse_frommap_pre[hIndex].func; + retVal___ = preHookFunc(&fd); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return retVal___; + } + } + { + retVal___ = HPMHooks.source.inter_rodex.parse_frommap(fd); + } + if (HPMHooks.count.HP_inter_rodex_parse_frommap_post > 0) { + int (*postHookFunc) (int retVal___, int fd); + for (hIndex = 0; hIndex < HPMHooks.count.HP_inter_rodex_parse_frommap_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_inter_rodex_parse_frommap_post[hIndex].func; + retVal___ = postHookFunc(retVal___, fd); + } + } + return retVal___; +} +int HP_inter_rodex_fromsql(int char_id, int account_id, int8 opentype, int64 mail_id, struct rodex_maillist *mails) { + int hIndex = 0; + int retVal___ = 0; + if (HPMHooks.count.HP_inter_rodex_fromsql_pre > 0) { + int (*preHookFunc) (int *char_id, int *account_id, int8 *opentype, int64 *mail_id, struct rodex_maillist **mails); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_inter_rodex_fromsql_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_inter_rodex_fromsql_pre[hIndex].func; + retVal___ = preHookFunc(&char_id, &account_id, &opentype, &mail_id, &mails); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return retVal___; + } + } + { + retVal___ = HPMHooks.source.inter_rodex.fromsql(char_id, account_id, opentype, mail_id, mails); + } + if (HPMHooks.count.HP_inter_rodex_fromsql_post > 0) { + int (*postHookFunc) (int retVal___, int char_id, int account_id, int8 opentype, int64 mail_id, struct rodex_maillist *mails); + for (hIndex = 0; hIndex < HPMHooks.count.HP_inter_rodex_fromsql_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_inter_rodex_fromsql_post[hIndex].func; + retVal___ = postHookFunc(retVal___, char_id, account_id, opentype, mail_id, mails); + } + } + return retVal___; +} +bool HP_inter_rodex_hasnew(int char_id, int account_id) { + int hIndex = 0; + bool retVal___ = false; + if (HPMHooks.count.HP_inter_rodex_hasnew_pre > 0) { + bool (*preHookFunc) (int *char_id, int *account_id); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_inter_rodex_hasnew_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_inter_rodex_hasnew_pre[hIndex].func; + retVal___ = preHookFunc(&char_id, &account_id); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return retVal___; + } + } + { + retVal___ = HPMHooks.source.inter_rodex.hasnew(char_id, account_id); + } + if (HPMHooks.count.HP_inter_rodex_hasnew_post > 0) { + bool (*postHookFunc) (bool retVal___, int char_id, int account_id); + for (hIndex = 0; hIndex < HPMHooks.count.HP_inter_rodex_hasnew_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_inter_rodex_hasnew_post[hIndex].func; + retVal___ = postHookFunc(retVal___, char_id, account_id); + } + } + return retVal___; +} +bool HP_inter_rodex_checkname(const char *name, int *target_char_id, short *target_class, int *target_level) { + int hIndex = 0; + bool retVal___ = false; + if (HPMHooks.count.HP_inter_rodex_checkname_pre > 0) { + bool (*preHookFunc) (const char **name, int **target_char_id, short **target_class, int **target_level); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_inter_rodex_checkname_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_inter_rodex_checkname_pre[hIndex].func; + retVal___ = preHookFunc(&name, &target_char_id, &target_class, &target_level); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return retVal___; + } + } + { + retVal___ = HPMHooks.source.inter_rodex.checkname(name, target_char_id, target_class, target_level); + } + if (HPMHooks.count.HP_inter_rodex_checkname_post > 0) { + bool (*postHookFunc) (bool retVal___, const char *name, int *target_char_id, short *target_class, int *target_level); + for (hIndex = 0; hIndex < HPMHooks.count.HP_inter_rodex_checkname_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_inter_rodex_checkname_post[hIndex].func; + retVal___ = postHookFunc(retVal___, name, target_char_id, target_class, target_level); + } + } + return retVal___; +} +int64 HP_inter_rodex_savemessage(struct rodex_message *msg) { + int hIndex = 0; + int64 retVal___ = 0; + if (HPMHooks.count.HP_inter_rodex_savemessage_pre > 0) { + int64 (*preHookFunc) (struct rodex_message **msg); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_inter_rodex_savemessage_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_inter_rodex_savemessage_pre[hIndex].func; + retVal___ = preHookFunc(&msg); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return retVal___; + } + } + { + retVal___ = HPMHooks.source.inter_rodex.savemessage(msg); + } + if (HPMHooks.count.HP_inter_rodex_savemessage_post > 0) { + int64 (*postHookFunc) (int64 retVal___, struct rodex_message *msg); + for (hIndex = 0; hIndex < HPMHooks.count.HP_inter_rodex_savemessage_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_inter_rodex_savemessage_post[hIndex].func; + retVal___ = postHookFunc(retVal___, msg); + } + } + return retVal___; +} /* inter_storage_interface */ int HP_inter_storage_tosql(int account_id, const struct storage_data *p) { int hIndex = 0; @@ -14349,6 +14538,247 @@ int HP_mapif_parse_quest_load(int fd) { } return retVal___; } +int HP_mapif_parse_rodex_requestinbox(int fd) { + int hIndex = 0; + int retVal___ = 0; + if (HPMHooks.count.HP_mapif_parse_rodex_requestinbox_pre > 0) { + int (*preHookFunc) (int *fd); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_mapif_parse_rodex_requestinbox_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_mapif_parse_rodex_requestinbox_pre[hIndex].func; + retVal___ = preHookFunc(&fd); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return retVal___; + } + } + { + retVal___ = HPMHooks.source.mapif.parse_rodex_requestinbox(fd); + } + if (HPMHooks.count.HP_mapif_parse_rodex_requestinbox_post > 0) { + int (*postHookFunc) (int retVal___, int fd); + for (hIndex = 0; hIndex < HPMHooks.count.HP_mapif_parse_rodex_requestinbox_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_mapif_parse_rodex_requestinbox_post[hIndex].func; + retVal___ = postHookFunc(retVal___, fd); + } + } + return retVal___; +} +void HP_mapif_rodex_sendinbox(int fd, int char_id, int8 opentype, int8 flag, int count, struct rodex_maillist *mails) { + int hIndex = 0; + if (HPMHooks.count.HP_mapif_rodex_sendinbox_pre > 0) { + void (*preHookFunc) (int *fd, int *char_id, int8 *opentype, int8 *flag, int *count, struct rodex_maillist **mails); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_mapif_rodex_sendinbox_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_mapif_rodex_sendinbox_pre[hIndex].func; + preHookFunc(&fd, &char_id, &opentype, &flag, &count, &mails); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return; + } + } + { + HPMHooks.source.mapif.rodex_sendinbox(fd, char_id, opentype, flag, count, mails); + } + if (HPMHooks.count.HP_mapif_rodex_sendinbox_post > 0) { + void (*postHookFunc) (int fd, int char_id, int8 opentype, int8 flag, int count, struct rodex_maillist *mails); + for (hIndex = 0; hIndex < HPMHooks.count.HP_mapif_rodex_sendinbox_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_mapif_rodex_sendinbox_post[hIndex].func; + postHookFunc(fd, char_id, opentype, flag, count, mails); + } + } + return; +} +int HP_mapif_parse_rodex_checkhasnew(int fd) { + int hIndex = 0; + int retVal___ = 0; + if (HPMHooks.count.HP_mapif_parse_rodex_checkhasnew_pre > 0) { + int (*preHookFunc) (int *fd); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_mapif_parse_rodex_checkhasnew_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_mapif_parse_rodex_checkhasnew_pre[hIndex].func; + retVal___ = preHookFunc(&fd); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return retVal___; + } + } + { + retVal___ = HPMHooks.source.mapif.parse_rodex_checkhasnew(fd); + } + if (HPMHooks.count.HP_mapif_parse_rodex_checkhasnew_post > 0) { + int (*postHookFunc) (int retVal___, int fd); + for (hIndex = 0; hIndex < HPMHooks.count.HP_mapif_parse_rodex_checkhasnew_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_mapif_parse_rodex_checkhasnew_post[hIndex].func; + retVal___ = postHookFunc(retVal___, fd); + } + } + return retVal___; +} +void HP_mapif_rodex_sendhasnew(int fd, int char_id, bool has_new) { + int hIndex = 0; + if (HPMHooks.count.HP_mapif_rodex_sendhasnew_pre > 0) { + void (*preHookFunc) (int *fd, int *char_id, bool *has_new); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_mapif_rodex_sendhasnew_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_mapif_rodex_sendhasnew_pre[hIndex].func; + preHookFunc(&fd, &char_id, &has_new); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return; + } + } + { + HPMHooks.source.mapif.rodex_sendhasnew(fd, char_id, has_new); + } + if (HPMHooks.count.HP_mapif_rodex_sendhasnew_post > 0) { + void (*postHookFunc) (int fd, int char_id, bool has_new); + for (hIndex = 0; hIndex < HPMHooks.count.HP_mapif_rodex_sendhasnew_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_mapif_rodex_sendhasnew_post[hIndex].func; + postHookFunc(fd, char_id, has_new); + } + } + return; +} +int HP_mapif_parse_rodex_updatemail(int fd) { + int hIndex = 0; + int retVal___ = 0; + if (HPMHooks.count.HP_mapif_parse_rodex_updatemail_pre > 0) { + int (*preHookFunc) (int *fd); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_mapif_parse_rodex_updatemail_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_mapif_parse_rodex_updatemail_pre[hIndex].func; + retVal___ = preHookFunc(&fd); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return retVal___; + } + } + { + retVal___ = HPMHooks.source.mapif.parse_rodex_updatemail(fd); + } + if (HPMHooks.count.HP_mapif_parse_rodex_updatemail_post > 0) { + int (*postHookFunc) (int retVal___, int fd); + for (hIndex = 0; hIndex < HPMHooks.count.HP_mapif_parse_rodex_updatemail_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_mapif_parse_rodex_updatemail_post[hIndex].func; + retVal___ = postHookFunc(retVal___, fd); + } + } + return retVal___; +} +int HP_mapif_parse_rodex_send(int fd) { + int hIndex = 0; + int retVal___ = 0; + if (HPMHooks.count.HP_mapif_parse_rodex_send_pre > 0) { + int (*preHookFunc) (int *fd); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_mapif_parse_rodex_send_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_mapif_parse_rodex_send_pre[hIndex].func; + retVal___ = preHookFunc(&fd); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return retVal___; + } + } + { + retVal___ = HPMHooks.source.mapif.parse_rodex_send(fd); + } + if (HPMHooks.count.HP_mapif_parse_rodex_send_post > 0) { + int (*postHookFunc) (int retVal___, int fd); + for (hIndex = 0; hIndex < HPMHooks.count.HP_mapif_parse_rodex_send_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_mapif_parse_rodex_send_post[hIndex].func; + retVal___ = postHookFunc(retVal___, fd); + } + } + return retVal___; +} +void HP_mapif_rodex_send(int fd, int sender_id, int receiver_id, int receiver_accountid, bool result) { + int hIndex = 0; + if (HPMHooks.count.HP_mapif_rodex_send_pre > 0) { + void (*preHookFunc) (int *fd, int *sender_id, int *receiver_id, int *receiver_accountid, bool *result); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_mapif_rodex_send_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_mapif_rodex_send_pre[hIndex].func; + preHookFunc(&fd, &sender_id, &receiver_id, &receiver_accountid, &result); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return; + } + } + { + HPMHooks.source.mapif.rodex_send(fd, sender_id, receiver_id, receiver_accountid, result); + } + if (HPMHooks.count.HP_mapif_rodex_send_post > 0) { + void (*postHookFunc) (int fd, int sender_id, int receiver_id, int receiver_accountid, bool result); + for (hIndex = 0; hIndex < HPMHooks.count.HP_mapif_rodex_send_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_mapif_rodex_send_post[hIndex].func; + postHookFunc(fd, sender_id, receiver_id, receiver_accountid, result); + } + } + return; +} +int HP_mapif_parse_rodex_checkname(int fd) { + int hIndex = 0; + int retVal___ = 0; + if (HPMHooks.count.HP_mapif_parse_rodex_checkname_pre > 0) { + int (*preHookFunc) (int *fd); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_mapif_parse_rodex_checkname_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_mapif_parse_rodex_checkname_pre[hIndex].func; + retVal___ = preHookFunc(&fd); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return retVal___; + } + } + { + retVal___ = HPMHooks.source.mapif.parse_rodex_checkname(fd); + } + if (HPMHooks.count.HP_mapif_parse_rodex_checkname_post > 0) { + int (*postHookFunc) (int retVal___, int fd); + for (hIndex = 0; hIndex < HPMHooks.count.HP_mapif_parse_rodex_checkname_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_mapif_parse_rodex_checkname_post[hIndex].func; + retVal___ = postHookFunc(retVal___, fd); + } + } + return retVal___; +} +void HP_mapif_rodex_checkname(int fd, int reqchar_id, int target_char_id, short target_class, int target_level, ) { +/* Error: Unexpected character '+' */ +/* Error: Unhandled var type 'char name[(23+1)]' */ + int hIndex = 0; + if (HPMHooks.count.HP_mapif_rodex_checkname_pre > 0) { + void (*preHookFunc) (int *fd, int *reqchar_id, int *target_char_id, short *target_class, int *target_level, ); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_mapif_rodex_checkname_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_mapif_rodex_checkname_pre[hIndex].func; + preHookFunc(&fd, &reqchar_id, &target_char_id, &target_class, &target_level, ); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return; + } + } + { + HPMHooks.source.mapif.rodex_checkname(fd, reqchar_id, target_char_id, target_class, target_level, ); + } + if (HPMHooks.count.HP_mapif_rodex_checkname_post > 0) { + void (*postHookFunc) (int fd, int reqchar_id, int target_char_id, short target_class, int target_level, ); + for (hIndex = 0; hIndex < HPMHooks.count.HP_mapif_rodex_checkname_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_mapif_rodex_checkname_post[hIndex].func; + postHookFunc(fd, reqchar_id, target_char_id, target_class, target_level, ); + } + } + return; +} int HP_mapif_load_guild_storage(int fd, int account_id, int guild_id, char flag) { int hIndex = 0; int retVal___ = 0; diff --git a/src/plugins/HPMHooking/HPMHooking_char.sources.inc b/src/plugins/HPMHooking/HPMHooking_char.sources.inc index a7b1cff4e..b5e9afc08 100644 --- a/src/plugins/HPMHooking/HPMHooking_char.sources.inc +++ b/src/plugins/HPMHooking/HPMHooking_char.sources.inc @@ -43,6 +43,7 @@ HPMHooks.source.inter_mercenary = *inter_mercenary; HPMHooks.source.inter_party = *inter_party; HPMHooks.source.inter_pet = *inter_pet; HPMHooks.source.inter_quest = *inter_quest; +HPMHooks.source.inter_rodex = *inter_rodex; HPMHooks.source.inter_storage = *inter_storage; HPMHooks.source.libconfig = *libconfig; HPMHooks.source.loginif = *loginif; diff --git a/src/plugins/HPMHooking/HPMHooking_map.HPMHooksCore.inc b/src/plugins/HPMHooking/HPMHooking_map.HPMHooksCore.inc index 794d8e650..b7b161b6b 100644 --- a/src/plugins/HPMHooking/HPMHooking_map.HPMHooksCore.inc +++ b/src/plugins/HPMHooking/HPMHooking_map.HPMHooksCore.inc @@ -1876,6 +1876,58 @@ struct { struct HPMHookPoint *HP_clif_pSelectCart_post; struct HPMHookPoint *HP_clif_get_bl_name_pre; struct HPMHookPoint *HP_clif_get_bl_name_post; + struct HPMHookPoint *HP_clif_pRodexOpenWriteMail_pre; + struct HPMHookPoint *HP_clif_pRodexOpenWriteMail_post; + struct HPMHookPoint *HP_clif_rodex_open_write_mail_pre; + struct HPMHookPoint *HP_clif_rodex_open_write_mail_post; + struct HPMHookPoint *HP_clif_pRodexAddItem_pre; + struct HPMHookPoint *HP_clif_pRodexAddItem_post; + struct HPMHookPoint *HP_clif_rodex_add_item_result_pre; + struct HPMHookPoint *HP_clif_rodex_add_item_result_post; + struct HPMHookPoint *HP_clif_pRodexRemoveItem_pre; + struct HPMHookPoint *HP_clif_pRodexRemoveItem_post; + struct HPMHookPoint *HP_clif_rodex_remove_item_result_pre; + struct HPMHookPoint *HP_clif_rodex_remove_item_result_post; + struct HPMHookPoint *HP_clif_pRodexSendMail_pre; + struct HPMHookPoint *HP_clif_pRodexSendMail_post; + struct HPMHookPoint *HP_clif_rodex_send_mail_result_pre; + struct HPMHookPoint *HP_clif_rodex_send_mail_result_post; + struct HPMHookPoint *HP_clif_rodex_send_maillist_pre; + struct HPMHookPoint *HP_clif_rodex_send_maillist_post; + struct HPMHookPoint *HP_clif_rodex_send_refresh_pre; + struct HPMHookPoint *HP_clif_rodex_send_refresh_post; + struct HPMHookPoint *HP_clif_pRodexReadMail_pre; + struct HPMHookPoint *HP_clif_pRodexReadMail_post; + struct HPMHookPoint *HP_clif_rodex_read_mail_pre; + struct HPMHookPoint *HP_clif_rodex_read_mail_post; + struct HPMHookPoint *HP_clif_pRodexNextMaillist_pre; + struct HPMHookPoint *HP_clif_pRodexNextMaillist_post; + struct HPMHookPoint *HP_clif_pRodexCloseMailbox_pre; + struct HPMHookPoint *HP_clif_pRodexCloseMailbox_post; + struct HPMHookPoint *HP_clif_pRodexCancelWriteMail_pre; + struct HPMHookPoint *HP_clif_pRodexCancelWriteMail_post; + struct HPMHookPoint *HP_clif_pRodexOpenMailbox_pre; + struct HPMHookPoint *HP_clif_pRodexOpenMailbox_post; + struct HPMHookPoint *HP_clif_pRodexCheckName_pre; + struct HPMHookPoint *HP_clif_pRodexCheckName_post; + struct HPMHookPoint *HP_clif_rodex_checkname_result_pre; + struct HPMHookPoint *HP_clif_rodex_checkname_result_post; + struct HPMHookPoint *HP_clif_pRodexDeleteMail_pre; + struct HPMHookPoint *HP_clif_pRodexDeleteMail_post; + struct HPMHookPoint *HP_clif_rodex_delete_mail_pre; + struct HPMHookPoint *HP_clif_rodex_delete_mail_post; + struct HPMHookPoint *HP_clif_pRodexRefreshMaillist_pre; + struct HPMHookPoint *HP_clif_pRodexRefreshMaillist_post; + struct HPMHookPoint *HP_clif_pRodexRequestZeny_pre; + struct HPMHookPoint *HP_clif_pRodexRequestZeny_post; + struct HPMHookPoint *HP_clif_rodex_request_zeny_pre; + struct HPMHookPoint *HP_clif_rodex_request_zeny_post; + struct HPMHookPoint *HP_clif_pRodexRequestItems_pre; + struct HPMHookPoint *HP_clif_pRodexRequestItems_post; + struct HPMHookPoint *HP_clif_rodex_request_items_pre; + struct HPMHookPoint *HP_clif_rodex_request_items_post; + struct HPMHookPoint *HP_clif_rodex_icon_pre; + struct HPMHookPoint *HP_clif_rodex_icon_post; struct HPMHookPoint *HP_cmdline_init_pre; struct HPMHookPoint *HP_cmdline_init_post; struct HPMHookPoint *HP_cmdline_final_pre; @@ -2508,6 +2560,16 @@ struct { struct HPMHookPoint *HP_intif_elemental_delete_post; struct HPMHookPoint *HP_intif_elemental_save_pre; struct HPMHookPoint *HP_intif_elemental_save_post; + struct HPMHookPoint *HP_intif_rodex_requestinbox_pre; + struct HPMHookPoint *HP_intif_rodex_requestinbox_post; + struct HPMHookPoint *HP_intif_rodex_checkhasnew_pre; + struct HPMHookPoint *HP_intif_rodex_checkhasnew_post; + struct HPMHookPoint *HP_intif_rodex_updatemail_pre; + struct HPMHookPoint *HP_intif_rodex_updatemail_post; + struct HPMHookPoint *HP_intif_rodex_sendmail_pre; + struct HPMHookPoint *HP_intif_rodex_sendmail_post; + struct HPMHookPoint *HP_intif_rodex_checkname_pre; + struct HPMHookPoint *HP_intif_rodex_checkname_post; struct HPMHookPoint *HP_intif_request_accinfo_pre; struct HPMHookPoint *HP_intif_request_accinfo_post; struct HPMHookPoint *HP_intif_CheckForCharServer_pre; @@ -2640,6 +2702,14 @@ struct { struct HPMHookPoint *HP_intif_pSaveHomunculusOk_post; struct HPMHookPoint *HP_intif_pDeleteHomunculusOk_pre; struct HPMHookPoint *HP_intif_pDeleteHomunculusOk_post; + struct HPMHookPoint *HP_intif_pRequestRodexOpenInbox_pre; + struct HPMHookPoint *HP_intif_pRequestRodexOpenInbox_post; + struct HPMHookPoint *HP_intif_pRodexHasNew_pre; + struct HPMHookPoint *HP_intif_pRodexHasNew_post; + struct HPMHookPoint *HP_intif_pRodexSendMail_pre; + struct HPMHookPoint *HP_intif_pRodexSendMail_post; + struct HPMHookPoint *HP_intif_pRodexCheckName_pre; + struct HPMHookPoint *HP_intif_pRodexCheckName_post; struct HPMHookPoint *HP_ircbot_init_pre; struct HPMHookPoint *HP_ircbot_init_post; struct HPMHookPoint *HP_ircbot_final_pre; @@ -4566,6 +4636,40 @@ struct { struct HPMHookPoint *HP_rnd_uniform_post; struct HPMHookPoint *HP_rnd_uniform53_pre; struct HPMHookPoint *HP_rnd_uniform53_post; + struct HPMHookPoint *HP_rodex_init_pre; + struct HPMHookPoint *HP_rodex_init_post; + struct HPMHookPoint *HP_rodex_final_pre; + struct HPMHookPoint *HP_rodex_final_post; + struct HPMHookPoint *HP_rodex_isenabled_pre; + struct HPMHookPoint *HP_rodex_isenabled_post; + struct HPMHookPoint *HP_rodex_open_pre; + struct HPMHookPoint *HP_rodex_open_post; + struct HPMHookPoint *HP_rodex_next_page_pre; + struct HPMHookPoint *HP_rodex_next_page_post; + struct HPMHookPoint *HP_rodex_refresh_pre; + struct HPMHookPoint *HP_rodex_refresh_post; + struct HPMHookPoint *HP_rodex_add_item_pre; + struct HPMHookPoint *HP_rodex_add_item_post; + struct HPMHookPoint *HP_rodex_remove_item_pre; + struct HPMHookPoint *HP_rodex_remove_item_post; + struct HPMHookPoint *HP_rodex_check_player_pre; + struct HPMHookPoint *HP_rodex_check_player_post; + struct HPMHookPoint *HP_rodex_send_mail_pre; + struct HPMHookPoint *HP_rodex_send_mail_post; + struct HPMHookPoint *HP_rodex_send_mail_result_pre; + struct HPMHookPoint *HP_rodex_send_mail_result_post; + struct HPMHookPoint *HP_rodex_get_mail_pre; + struct HPMHookPoint *HP_rodex_get_mail_post; + struct HPMHookPoint *HP_rodex_read_mail_pre; + struct HPMHookPoint *HP_rodex_read_mail_post; + struct HPMHookPoint *HP_rodex_get_zeny_pre; + struct HPMHookPoint *HP_rodex_get_zeny_post; + struct HPMHookPoint *HP_rodex_get_items_pre; + struct HPMHookPoint *HP_rodex_get_items_post; + struct HPMHookPoint *HP_rodex_delete_mail_pre; + struct HPMHookPoint *HP_rodex_delete_mail_post; + struct HPMHookPoint *HP_rodex_clean_pre; + struct HPMHookPoint *HP_rodex_clean_post; struct HPMHookPoint *HP_script_init_pre; struct HPMHookPoint *HP_script_init_post; struct HPMHookPoint *HP_script_final_pre; @@ -7967,6 +8071,58 @@ struct { int HP_clif_pSelectCart_post; int HP_clif_get_bl_name_pre; int HP_clif_get_bl_name_post; + int HP_clif_pRodexOpenWriteMail_pre; + int HP_clif_pRodexOpenWriteMail_post; + int HP_clif_rodex_open_write_mail_pre; + int HP_clif_rodex_open_write_mail_post; + int HP_clif_pRodexAddItem_pre; + int HP_clif_pRodexAddItem_post; + int HP_clif_rodex_add_item_result_pre; + int HP_clif_rodex_add_item_result_post; + int HP_clif_pRodexRemoveItem_pre; + int HP_clif_pRodexRemoveItem_post; + int HP_clif_rodex_remove_item_result_pre; + int HP_clif_rodex_remove_item_result_post; + int HP_clif_pRodexSendMail_pre; + int HP_clif_pRodexSendMail_post; + int HP_clif_rodex_send_mail_result_pre; + int HP_clif_rodex_send_mail_result_post; + int HP_clif_rodex_send_maillist_pre; + int HP_clif_rodex_send_maillist_post; + int HP_clif_rodex_send_refresh_pre; + int HP_clif_rodex_send_refresh_post; + int HP_clif_pRodexReadMail_pre; + int HP_clif_pRodexReadMail_post; + int HP_clif_rodex_read_mail_pre; + int HP_clif_rodex_read_mail_post; + int HP_clif_pRodexNextMaillist_pre; + int HP_clif_pRodexNextMaillist_post; + int HP_clif_pRodexCloseMailbox_pre; + int HP_clif_pRodexCloseMailbox_post; + int HP_clif_pRodexCancelWriteMail_pre; + int HP_clif_pRodexCancelWriteMail_post; + int HP_clif_pRodexOpenMailbox_pre; + int HP_clif_pRodexOpenMailbox_post; + int HP_clif_pRodexCheckName_pre; + int HP_clif_pRodexCheckName_post; + int HP_clif_rodex_checkname_result_pre; + int HP_clif_rodex_checkname_result_post; + int HP_clif_pRodexDeleteMail_pre; + int HP_clif_pRodexDeleteMail_post; + int HP_clif_rodex_delete_mail_pre; + int HP_clif_rodex_delete_mail_post; + int HP_clif_pRodexRefreshMaillist_pre; + int HP_clif_pRodexRefreshMaillist_post; + int HP_clif_pRodexRequestZeny_pre; + int HP_clif_pRodexRequestZeny_post; + int HP_clif_rodex_request_zeny_pre; + int HP_clif_rodex_request_zeny_post; + int HP_clif_pRodexRequestItems_pre; + int HP_clif_pRodexRequestItems_post; + int HP_clif_rodex_request_items_pre; + int HP_clif_rodex_request_items_post; + int HP_clif_rodex_icon_pre; + int HP_clif_rodex_icon_post; int HP_cmdline_init_pre; int HP_cmdline_init_post; int HP_cmdline_final_pre; @@ -8599,6 +8755,16 @@ struct { int HP_intif_elemental_delete_post; int HP_intif_elemental_save_pre; int HP_intif_elemental_save_post; + int HP_intif_rodex_requestinbox_pre; + int HP_intif_rodex_requestinbox_post; + int HP_intif_rodex_checkhasnew_pre; + int HP_intif_rodex_checkhasnew_post; + int HP_intif_rodex_updatemail_pre; + int HP_intif_rodex_updatemail_post; + int HP_intif_rodex_sendmail_pre; + int HP_intif_rodex_sendmail_post; + int HP_intif_rodex_checkname_pre; + int HP_intif_rodex_checkname_post; int HP_intif_request_accinfo_pre; int HP_intif_request_accinfo_post; int HP_intif_CheckForCharServer_pre; @@ -8731,6 +8897,14 @@ struct { int HP_intif_pSaveHomunculusOk_post; int HP_intif_pDeleteHomunculusOk_pre; int HP_intif_pDeleteHomunculusOk_post; + int HP_intif_pRequestRodexOpenInbox_pre; + int HP_intif_pRequestRodexOpenInbox_post; + int HP_intif_pRodexHasNew_pre; + int HP_intif_pRodexHasNew_post; + int HP_intif_pRodexSendMail_pre; + int HP_intif_pRodexSendMail_post; + int HP_intif_pRodexCheckName_pre; + int HP_intif_pRodexCheckName_post; int HP_ircbot_init_pre; int HP_ircbot_init_post; int HP_ircbot_final_pre; @@ -10657,6 +10831,40 @@ struct { int HP_rnd_uniform_post; int HP_rnd_uniform53_pre; int HP_rnd_uniform53_post; + int HP_rodex_init_pre; + int HP_rodex_init_post; + int HP_rodex_final_pre; + int HP_rodex_final_post; + int HP_rodex_isenabled_pre; + int HP_rodex_isenabled_post; + int HP_rodex_open_pre; + int HP_rodex_open_post; + int HP_rodex_next_page_pre; + int HP_rodex_next_page_post; + int HP_rodex_refresh_pre; + int HP_rodex_refresh_post; + int HP_rodex_add_item_pre; + int HP_rodex_add_item_post; + int HP_rodex_remove_item_pre; + int HP_rodex_remove_item_post; + int HP_rodex_check_player_pre; + int HP_rodex_check_player_post; + int HP_rodex_send_mail_pre; + int HP_rodex_send_mail_post; + int HP_rodex_send_mail_result_pre; + int HP_rodex_send_mail_result_post; + int HP_rodex_get_mail_pre; + int HP_rodex_get_mail_post; + int HP_rodex_read_mail_pre; + int HP_rodex_read_mail_post; + int HP_rodex_get_zeny_pre; + int HP_rodex_get_zeny_post; + int HP_rodex_get_items_pre; + int HP_rodex_get_items_post; + int HP_rodex_delete_mail_pre; + int HP_rodex_delete_mail_post; + int HP_rodex_clean_pre; + int HP_rodex_clean_post; int HP_script_init_pre; int HP_script_init_post; int HP_script_final_pre; @@ -12254,6 +12462,7 @@ struct { struct pet_interface pet; struct quest_interface quest; struct rnd_interface rnd; + struct rodex_interface rodex; struct script_interface script; struct searchstore_interface searchstore; struct showmsg_interface showmsg; diff --git a/src/plugins/HPMHooking/HPMHooking_map.HookingPoints.inc b/src/plugins/HPMHooking/HPMHooking_map.HookingPoints.inc index 618765f47..37a3efb19 100644 --- a/src/plugins/HPMHooking/HPMHooking_map.HookingPoints.inc +++ b/src/plugins/HPMHooking/HPMHooking_map.HookingPoints.inc @@ -960,6 +960,32 @@ struct HookingPointData HookingPoints[] = { { HP_POP(clif->selectcart, HP_clif_selectcart) }, { HP_POP(clif->pSelectCart, HP_clif_pSelectCart) }, { HP_POP(clif->get_bl_name, HP_clif_get_bl_name) }, + { HP_POP(clif->pRodexOpenWriteMail, HP_clif_pRodexOpenWriteMail) }, + { HP_POP(clif->rodex_open_write_mail, HP_clif_rodex_open_write_mail) }, + { HP_POP(clif->pRodexAddItem, HP_clif_pRodexAddItem) }, + { HP_POP(clif->rodex_add_item_result, HP_clif_rodex_add_item_result) }, + { HP_POP(clif->pRodexRemoveItem, HP_clif_pRodexRemoveItem) }, + { HP_POP(clif->rodex_remove_item_result, HP_clif_rodex_remove_item_result) }, + { HP_POP(clif->pRodexSendMail, HP_clif_pRodexSendMail) }, + { HP_POP(clif->rodex_send_mail_result, HP_clif_rodex_send_mail_result) }, + { HP_POP(clif->rodex_send_maillist, HP_clif_rodex_send_maillist) }, + { HP_POP(clif->rodex_send_refresh, HP_clif_rodex_send_refresh) }, + { HP_POP(clif->pRodexReadMail, HP_clif_pRodexReadMail) }, + { HP_POP(clif->rodex_read_mail, HP_clif_rodex_read_mail) }, + { HP_POP(clif->pRodexNextMaillist, HP_clif_pRodexNextMaillist) }, + { HP_POP(clif->pRodexCloseMailbox, HP_clif_pRodexCloseMailbox) }, + { HP_POP(clif->pRodexCancelWriteMail, HP_clif_pRodexCancelWriteMail) }, + { HP_POP(clif->pRodexOpenMailbox, HP_clif_pRodexOpenMailbox) }, + { HP_POP(clif->pRodexCheckName, HP_clif_pRodexCheckName) }, + { HP_POP(clif->rodex_checkname_result, HP_clif_rodex_checkname_result) }, + { HP_POP(clif->pRodexDeleteMail, HP_clif_pRodexDeleteMail) }, + { HP_POP(clif->rodex_delete_mail, HP_clif_rodex_delete_mail) }, + { HP_POP(clif->pRodexRefreshMaillist, HP_clif_pRodexRefreshMaillist) }, + { HP_POP(clif->pRodexRequestZeny, HP_clif_pRodexRequestZeny) }, + { HP_POP(clif->rodex_request_zeny, HP_clif_rodex_request_zeny) }, + { HP_POP(clif->pRodexRequestItems, HP_clif_pRodexRequestItems) }, + { HP_POP(clif->rodex_request_items, HP_clif_rodex_request_items) }, + { HP_POP(clif->rodex_icon, HP_clif_rodex_icon) }, /* cmdline_interface */ { HP_POP(cmdline->init, HP_cmdline_init) }, { HP_POP(cmdline->final, HP_cmdline_final) }, @@ -1289,6 +1315,11 @@ struct HookingPointData HookingPoints[] = { { HP_POP(intif->elemental_request, HP_intif_elemental_request) }, { HP_POP(intif->elemental_delete, HP_intif_elemental_delete) }, { HP_POP(intif->elemental_save, HP_intif_elemental_save) }, + { HP_POP(intif->rodex_requestinbox, HP_intif_rodex_requestinbox) }, + { HP_POP(intif->rodex_checkhasnew, HP_intif_rodex_checkhasnew) }, + { HP_POP(intif->rodex_updatemail, HP_intif_rodex_updatemail) }, + { HP_POP(intif->rodex_sendmail, HP_intif_rodex_sendmail) }, + { HP_POP(intif->rodex_checkname, HP_intif_rodex_checkname) }, { HP_POP(intif->request_accinfo, HP_intif_request_accinfo) }, { HP_POP(intif->CheckForCharServer, HP_intif_CheckForCharServer) }, { HP_POP(intif->pWisMessage, HP_intif_pWisMessage) }, @@ -1355,6 +1386,10 @@ struct HookingPointData HookingPoints[] = { { HP_POP(intif->pRecvHomunculusData, HP_intif_pRecvHomunculusData) }, { HP_POP(intif->pSaveHomunculusOk, HP_intif_pSaveHomunculusOk) }, { HP_POP(intif->pDeleteHomunculusOk, HP_intif_pDeleteHomunculusOk) }, + { HP_POP(intif->pRequestRodexOpenInbox, HP_intif_pRequestRodexOpenInbox) }, + { HP_POP(intif->pRodexHasNew, HP_intif_pRodexHasNew) }, + { HP_POP(intif->pRodexSendMail, HP_intif_pRodexSendMail) }, + { HP_POP(intif->pRodexCheckName, HP_intif_pRodexCheckName) }, /* irc_bot_interface */ { HP_POP(ircbot->init, HP_ircbot_init) }, { HP_POP(ircbot->final, HP_ircbot_final) }, @@ -2342,6 +2377,24 @@ struct HookingPointData HookingPoints[] = { { HP_POP(rnd->value, HP_rnd_value) }, { HP_POP(rnd->uniform, HP_rnd_uniform) }, { HP_POP(rnd->uniform53, HP_rnd_uniform53) }, +/* rodex_interface */ + { HP_POP(rodex->init, HP_rodex_init) }, + { HP_POP(rodex->final, HP_rodex_final) }, + { HP_POP(rodex->isenabled, HP_rodex_isenabled) }, + { HP_POP(rodex->open, HP_rodex_open) }, + { HP_POP(rodex->next_page, HP_rodex_next_page) }, + { HP_POP(rodex->refresh, HP_rodex_refresh) }, + { HP_POP(rodex->add_item, HP_rodex_add_item) }, + { HP_POP(rodex->remove_item, HP_rodex_remove_item) }, + { HP_POP(rodex->check_player, HP_rodex_check_player) }, + { HP_POP(rodex->send_mail, HP_rodex_send_mail) }, + { HP_POP(rodex->send_mail_result, HP_rodex_send_mail_result) }, + { HP_POP(rodex->get_mail, HP_rodex_get_mail) }, + { HP_POP(rodex->read_mail, HP_rodex_read_mail) }, + { HP_POP(rodex->get_zeny, HP_rodex_get_zeny) }, + { HP_POP(rodex->get_items, HP_rodex_get_items) }, + { HP_POP(rodex->delete_mail, HP_rodex_delete_mail) }, + { HP_POP(rodex->clean, HP_rodex_clean) }, /* script_interface */ { HP_POP(script->init, HP_script_init) }, { HP_POP(script->final, HP_script_final) }, diff --git a/src/plugins/HPMHooking/HPMHooking_map.Hooks.inc b/src/plugins/HPMHooking/HPMHooking_map.Hooks.inc index ef3bb4b90..d16268841 100644 --- a/src/plugins/HPMHooking/HPMHooking_map.Hooks.inc +++ b/src/plugins/HPMHooking/HPMHooking_map.Hooks.inc @@ -24411,6 +24411,682 @@ const char* HP_clif_get_bl_name(const struct block_list *bl) { } return retVal___; } +void HP_clif_pRodexOpenWriteMail(int fd, struct map_session_data *sd) { + int hIndex = 0; + if (HPMHooks.count.HP_clif_pRodexOpenWriteMail_pre > 0) { + void (*preHookFunc) (int *fd, struct map_session_data **sd); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_pRodexOpenWriteMail_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_clif_pRodexOpenWriteMail_pre[hIndex].func; + preHookFunc(&fd, &sd); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return; + } + } + { + HPMHooks.source.clif.pRodexOpenWriteMail(fd, sd); + } + if (HPMHooks.count.HP_clif_pRodexOpenWriteMail_post > 0) { + void (*postHookFunc) (int fd, struct map_session_data *sd); + for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_pRodexOpenWriteMail_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_clif_pRodexOpenWriteMail_post[hIndex].func; + postHookFunc(fd, sd); + } + } + return; +} +void HP_clif_rodex_open_write_mail(int fd, const char *receiver_name, int8 result) { + int hIndex = 0; + if (HPMHooks.count.HP_clif_rodex_open_write_mail_pre > 0) { + void (*preHookFunc) (int *fd, const char **receiver_name, int8 *result); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_rodex_open_write_mail_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_clif_rodex_open_write_mail_pre[hIndex].func; + preHookFunc(&fd, &receiver_name, &result); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return; + } + } + { + HPMHooks.source.clif.rodex_open_write_mail(fd, receiver_name, result); + } + if (HPMHooks.count.HP_clif_rodex_open_write_mail_post > 0) { + void (*postHookFunc) (int fd, const char *receiver_name, int8 result); + for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_rodex_open_write_mail_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_clif_rodex_open_write_mail_post[hIndex].func; + postHookFunc(fd, receiver_name, result); + } + } + return; +} +void HP_clif_pRodexAddItem(int fd, struct map_session_data *sd) { + int hIndex = 0; + if (HPMHooks.count.HP_clif_pRodexAddItem_pre > 0) { + void (*preHookFunc) (int *fd, struct map_session_data **sd); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_pRodexAddItem_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_clif_pRodexAddItem_pre[hIndex].func; + preHookFunc(&fd, &sd); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return; + } + } + { + HPMHooks.source.clif.pRodexAddItem(fd, sd); + } + if (HPMHooks.count.HP_clif_pRodexAddItem_post > 0) { + void (*postHookFunc) (int fd, struct map_session_data *sd); + for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_pRodexAddItem_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_clif_pRodexAddItem_post[hIndex].func; + postHookFunc(fd, sd); + } + } + return; +} +void HP_clif_rodex_add_item_result(struct map_session_data *sd, int16 idx, int16 amount, int8 result) { + int hIndex = 0; + if (HPMHooks.count.HP_clif_rodex_add_item_result_pre > 0) { + void (*preHookFunc) (struct map_session_data **sd, int16 *idx, int16 *amount, int8 *result); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_rodex_add_item_result_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_clif_rodex_add_item_result_pre[hIndex].func; + preHookFunc(&sd, &idx, &amount, &result); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return; + } + } + { + HPMHooks.source.clif.rodex_add_item_result(sd, idx, amount, result); + } + if (HPMHooks.count.HP_clif_rodex_add_item_result_post > 0) { + void (*postHookFunc) (struct map_session_data *sd, int16 idx, int16 amount, int8 result); + for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_rodex_add_item_result_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_clif_rodex_add_item_result_post[hIndex].func; + postHookFunc(sd, idx, amount, result); + } + } + return; +} +void HP_clif_pRodexRemoveItem(int fd, struct map_session_data *sd) { + int hIndex = 0; + if (HPMHooks.count.HP_clif_pRodexRemoveItem_pre > 0) { + void (*preHookFunc) (int *fd, struct map_session_data **sd); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_pRodexRemoveItem_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_clif_pRodexRemoveItem_pre[hIndex].func; + preHookFunc(&fd, &sd); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return; + } + } + { + HPMHooks.source.clif.pRodexRemoveItem(fd, sd); + } + if (HPMHooks.count.HP_clif_pRodexRemoveItem_post > 0) { + void (*postHookFunc) (int fd, struct map_session_data *sd); + for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_pRodexRemoveItem_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_clif_pRodexRemoveItem_post[hIndex].func; + postHookFunc(fd, sd); + } + } + return; +} +void HP_clif_rodex_remove_item_result(struct map_session_data *sd, int16 idx, int16 amount) { + int hIndex = 0; + if (HPMHooks.count.HP_clif_rodex_remove_item_result_pre > 0) { + void (*preHookFunc) (struct map_session_data **sd, int16 *idx, int16 *amount); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_rodex_remove_item_result_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_clif_rodex_remove_item_result_pre[hIndex].func; + preHookFunc(&sd, &idx, &amount); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return; + } + } + { + HPMHooks.source.clif.rodex_remove_item_result(sd, idx, amount); + } + if (HPMHooks.count.HP_clif_rodex_remove_item_result_post > 0) { + void (*postHookFunc) (struct map_session_data *sd, int16 idx, int16 amount); + for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_rodex_remove_item_result_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_clif_rodex_remove_item_result_post[hIndex].func; + postHookFunc(sd, idx, amount); + } + } + return; +} +void HP_clif_pRodexSendMail(int fd, struct map_session_data *sd) { + int hIndex = 0; + if (HPMHooks.count.HP_clif_pRodexSendMail_pre > 0) { + void (*preHookFunc) (int *fd, struct map_session_data **sd); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_pRodexSendMail_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_clif_pRodexSendMail_pre[hIndex].func; + preHookFunc(&fd, &sd); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return; + } + } + { + HPMHooks.source.clif.pRodexSendMail(fd, sd); + } + if (HPMHooks.count.HP_clif_pRodexSendMail_post > 0) { + void (*postHookFunc) (int fd, struct map_session_data *sd); + for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_pRodexSendMail_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_clif_pRodexSendMail_post[hIndex].func; + postHookFunc(fd, sd); + } + } + return; +} +void HP_clif_rodex_send_mail_result(int fd, struct map_session_data *sd, int8 result) { + int hIndex = 0; + if (HPMHooks.count.HP_clif_rodex_send_mail_result_pre > 0) { + void (*preHookFunc) (int *fd, struct map_session_data **sd, int8 *result); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_rodex_send_mail_result_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_clif_rodex_send_mail_result_pre[hIndex].func; + preHookFunc(&fd, &sd, &result); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return; + } + } + { + HPMHooks.source.clif.rodex_send_mail_result(fd, sd, result); + } + if (HPMHooks.count.HP_clif_rodex_send_mail_result_post > 0) { + void (*postHookFunc) (int fd, struct map_session_data *sd, int8 result); + for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_rodex_send_mail_result_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_clif_rodex_send_mail_result_post[hIndex].func; + postHookFunc(fd, sd, result); + } + } + return; +} +void HP_clif_rodex_send_maillist(int fd, struct map_session_data *sd, int8 open_type, int64 page_start) { + int hIndex = 0; + if (HPMHooks.count.HP_clif_rodex_send_maillist_pre > 0) { + void (*preHookFunc) (int *fd, struct map_session_data **sd, int8 *open_type, int64 *page_start); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_rodex_send_maillist_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_clif_rodex_send_maillist_pre[hIndex].func; + preHookFunc(&fd, &sd, &open_type, &page_start); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return; + } + } + { + HPMHooks.source.clif.rodex_send_maillist(fd, sd, open_type, page_start); + } + if (HPMHooks.count.HP_clif_rodex_send_maillist_post > 0) { + void (*postHookFunc) (int fd, struct map_session_data *sd, int8 open_type, int64 page_start); + for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_rodex_send_maillist_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_clif_rodex_send_maillist_post[hIndex].func; + postHookFunc(fd, sd, open_type, page_start); + } + } + return; +} +void HP_clif_rodex_send_refresh(int fd, struct map_session_data *sd, int8 open_type, int count) { + int hIndex = 0; + if (HPMHooks.count.HP_clif_rodex_send_refresh_pre > 0) { + void (*preHookFunc) (int *fd, struct map_session_data **sd, int8 *open_type, int *count); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_rodex_send_refresh_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_clif_rodex_send_refresh_pre[hIndex].func; + preHookFunc(&fd, &sd, &open_type, &count); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return; + } + } + { + HPMHooks.source.clif.rodex_send_refresh(fd, sd, open_type, count); + } + if (HPMHooks.count.HP_clif_rodex_send_refresh_post > 0) { + void (*postHookFunc) (int fd, struct map_session_data *sd, int8 open_type, int count); + for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_rodex_send_refresh_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_clif_rodex_send_refresh_post[hIndex].func; + postHookFunc(fd, sd, open_type, count); + } + } + return; +} +void HP_clif_pRodexReadMail(int fd, struct map_session_data *sd) { + int hIndex = 0; + if (HPMHooks.count.HP_clif_pRodexReadMail_pre > 0) { + void (*preHookFunc) (int *fd, struct map_session_data **sd); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_pRodexReadMail_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_clif_pRodexReadMail_pre[hIndex].func; + preHookFunc(&fd, &sd); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return; + } + } + { + HPMHooks.source.clif.pRodexReadMail(fd, sd); + } + if (HPMHooks.count.HP_clif_pRodexReadMail_post > 0) { + void (*postHookFunc) (int fd, struct map_session_data *sd); + for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_pRodexReadMail_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_clif_pRodexReadMail_post[hIndex].func; + postHookFunc(fd, sd); + } + } + return; +} +void HP_clif_rodex_read_mail(struct map_session_data *sd, int8 opentype, struct rodex_message *msg) { + int hIndex = 0; + if (HPMHooks.count.HP_clif_rodex_read_mail_pre > 0) { + void (*preHookFunc) (struct map_session_data **sd, int8 *opentype, struct rodex_message **msg); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_rodex_read_mail_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_clif_rodex_read_mail_pre[hIndex].func; + preHookFunc(&sd, &opentype, &msg); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return; + } + } + { + HPMHooks.source.clif.rodex_read_mail(sd, opentype, msg); + } + if (HPMHooks.count.HP_clif_rodex_read_mail_post > 0) { + void (*postHookFunc) (struct map_session_data *sd, int8 opentype, struct rodex_message *msg); + for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_rodex_read_mail_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_clif_rodex_read_mail_post[hIndex].func; + postHookFunc(sd, opentype, msg); + } + } + return; +} +void HP_clif_pRodexNextMaillist(int fd, struct map_session_data *sd) { + int hIndex = 0; + if (HPMHooks.count.HP_clif_pRodexNextMaillist_pre > 0) { + void (*preHookFunc) (int *fd, struct map_session_data **sd); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_pRodexNextMaillist_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_clif_pRodexNextMaillist_pre[hIndex].func; + preHookFunc(&fd, &sd); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return; + } + } + { + HPMHooks.source.clif.pRodexNextMaillist(fd, sd); + } + if (HPMHooks.count.HP_clif_pRodexNextMaillist_post > 0) { + void (*postHookFunc) (int fd, struct map_session_data *sd); + for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_pRodexNextMaillist_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_clif_pRodexNextMaillist_post[hIndex].func; + postHookFunc(fd, sd); + } + } + return; +} +void HP_clif_pRodexCloseMailbox(int fd, struct map_session_data *sd) { + int hIndex = 0; + if (HPMHooks.count.HP_clif_pRodexCloseMailbox_pre > 0) { + void (*preHookFunc) (int *fd, struct map_session_data **sd); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_pRodexCloseMailbox_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_clif_pRodexCloseMailbox_pre[hIndex].func; + preHookFunc(&fd, &sd); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return; + } + } + { + HPMHooks.source.clif.pRodexCloseMailbox(fd, sd); + } + if (HPMHooks.count.HP_clif_pRodexCloseMailbox_post > 0) { + void (*postHookFunc) (int fd, struct map_session_data *sd); + for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_pRodexCloseMailbox_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_clif_pRodexCloseMailbox_post[hIndex].func; + postHookFunc(fd, sd); + } + } + return; +} +void HP_clif_pRodexCancelWriteMail(int fd, struct map_session_data *sd) { + int hIndex = 0; + if (HPMHooks.count.HP_clif_pRodexCancelWriteMail_pre > 0) { + void (*preHookFunc) (int *fd, struct map_session_data **sd); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_pRodexCancelWriteMail_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_clif_pRodexCancelWriteMail_pre[hIndex].func; + preHookFunc(&fd, &sd); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return; + } + } + { + HPMHooks.source.clif.pRodexCancelWriteMail(fd, sd); + } + if (HPMHooks.count.HP_clif_pRodexCancelWriteMail_post > 0) { + void (*postHookFunc) (int fd, struct map_session_data *sd); + for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_pRodexCancelWriteMail_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_clif_pRodexCancelWriteMail_post[hIndex].func; + postHookFunc(fd, sd); + } + } + return; +} +void HP_clif_pRodexOpenMailbox(int fd, struct map_session_data *sd) { + int hIndex = 0; + if (HPMHooks.count.HP_clif_pRodexOpenMailbox_pre > 0) { + void (*preHookFunc) (int *fd, struct map_session_data **sd); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_pRodexOpenMailbox_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_clif_pRodexOpenMailbox_pre[hIndex].func; + preHookFunc(&fd, &sd); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return; + } + } + { + HPMHooks.source.clif.pRodexOpenMailbox(fd, sd); + } + if (HPMHooks.count.HP_clif_pRodexOpenMailbox_post > 0) { + void (*postHookFunc) (int fd, struct map_session_data *sd); + for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_pRodexOpenMailbox_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_clif_pRodexOpenMailbox_post[hIndex].func; + postHookFunc(fd, sd); + } + } + return; +} +void HP_clif_pRodexCheckName(int fd, struct map_session_data *sd) { + int hIndex = 0; + if (HPMHooks.count.HP_clif_pRodexCheckName_pre > 0) { + void (*preHookFunc) (int *fd, struct map_session_data **sd); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_pRodexCheckName_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_clif_pRodexCheckName_pre[hIndex].func; + preHookFunc(&fd, &sd); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return; + } + } + { + HPMHooks.source.clif.pRodexCheckName(fd, sd); + } + if (HPMHooks.count.HP_clif_pRodexCheckName_post > 0) { + void (*postHookFunc) (int fd, struct map_session_data *sd); + for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_pRodexCheckName_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_clif_pRodexCheckName_post[hIndex].func; + postHookFunc(fd, sd); + } + } + return; +} +void HP_clif_rodex_checkname_result(struct map_session_data *sd, int char_id, short class_, int base_level, const char *name) { + int hIndex = 0; + if (HPMHooks.count.HP_clif_rodex_checkname_result_pre > 0) { + void (*preHookFunc) (struct map_session_data **sd, int *char_id, short *class_, int *base_level, const char **name); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_rodex_checkname_result_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_clif_rodex_checkname_result_pre[hIndex].func; + preHookFunc(&sd, &char_id, &class_, &base_level, &name); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return; + } + } + { + HPMHooks.source.clif.rodex_checkname_result(sd, char_id, class_, base_level, name); + } + if (HPMHooks.count.HP_clif_rodex_checkname_result_post > 0) { + void (*postHookFunc) (struct map_session_data *sd, int char_id, short class_, int base_level, const char *name); + for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_rodex_checkname_result_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_clif_rodex_checkname_result_post[hIndex].func; + postHookFunc(sd, char_id, class_, base_level, name); + } + } + return; +} +void HP_clif_pRodexDeleteMail(int fd, struct map_session_data *sd) { + int hIndex = 0; + if (HPMHooks.count.HP_clif_pRodexDeleteMail_pre > 0) { + void (*preHookFunc) (int *fd, struct map_session_data **sd); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_pRodexDeleteMail_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_clif_pRodexDeleteMail_pre[hIndex].func; + preHookFunc(&fd, &sd); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return; + } + } + { + HPMHooks.source.clif.pRodexDeleteMail(fd, sd); + } + if (HPMHooks.count.HP_clif_pRodexDeleteMail_post > 0) { + void (*postHookFunc) (int fd, struct map_session_data *sd); + for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_pRodexDeleteMail_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_clif_pRodexDeleteMail_post[hIndex].func; + postHookFunc(fd, sd); + } + } + return; +} +void HP_clif_rodex_delete_mail(struct map_session_data *sd, int8 opentype, int64 mail_id) { + int hIndex = 0; + if (HPMHooks.count.HP_clif_rodex_delete_mail_pre > 0) { + void (*preHookFunc) (struct map_session_data **sd, int8 *opentype, int64 *mail_id); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_rodex_delete_mail_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_clif_rodex_delete_mail_pre[hIndex].func; + preHookFunc(&sd, &opentype, &mail_id); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return; + } + } + { + HPMHooks.source.clif.rodex_delete_mail(sd, opentype, mail_id); + } + if (HPMHooks.count.HP_clif_rodex_delete_mail_post > 0) { + void (*postHookFunc) (struct map_session_data *sd, int8 opentype, int64 mail_id); + for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_rodex_delete_mail_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_clif_rodex_delete_mail_post[hIndex].func; + postHookFunc(sd, opentype, mail_id); + } + } + return; +} +void HP_clif_pRodexRefreshMaillist(int fd, struct map_session_data *sd) { + int hIndex = 0; + if (HPMHooks.count.HP_clif_pRodexRefreshMaillist_pre > 0) { + void (*preHookFunc) (int *fd, struct map_session_data **sd); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_pRodexRefreshMaillist_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_clif_pRodexRefreshMaillist_pre[hIndex].func; + preHookFunc(&fd, &sd); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return; + } + } + { + HPMHooks.source.clif.pRodexRefreshMaillist(fd, sd); + } + if (HPMHooks.count.HP_clif_pRodexRefreshMaillist_post > 0) { + void (*postHookFunc) (int fd, struct map_session_data *sd); + for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_pRodexRefreshMaillist_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_clif_pRodexRefreshMaillist_post[hIndex].func; + postHookFunc(fd, sd); + } + } + return; +} +void HP_clif_pRodexRequestZeny(int fd, struct map_session_data *sd) { + int hIndex = 0; + if (HPMHooks.count.HP_clif_pRodexRequestZeny_pre > 0) { + void (*preHookFunc) (int *fd, struct map_session_data **sd); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_pRodexRequestZeny_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_clif_pRodexRequestZeny_pre[hIndex].func; + preHookFunc(&fd, &sd); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return; + } + } + { + HPMHooks.source.clif.pRodexRequestZeny(fd, sd); + } + if (HPMHooks.count.HP_clif_pRodexRequestZeny_post > 0) { + void (*postHookFunc) (int fd, struct map_session_data *sd); + for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_pRodexRequestZeny_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_clif_pRodexRequestZeny_post[hIndex].func; + postHookFunc(fd, sd); + } + } + return; +} +void HP_clif_rodex_request_zeny(struct map_session_data *sd, int8 opentype, int64 mail_id, int8 result) { + int hIndex = 0; + if (HPMHooks.count.HP_clif_rodex_request_zeny_pre > 0) { + void (*preHookFunc) (struct map_session_data **sd, int8 *opentype, int64 *mail_id, int8 *result); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_rodex_request_zeny_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_clif_rodex_request_zeny_pre[hIndex].func; + preHookFunc(&sd, &opentype, &mail_id, &result); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return; + } + } + { + HPMHooks.source.clif.rodex_request_zeny(sd, opentype, mail_id, result); + } + if (HPMHooks.count.HP_clif_rodex_request_zeny_post > 0) { + void (*postHookFunc) (struct map_session_data *sd, int8 opentype, int64 mail_id, int8 result); + for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_rodex_request_zeny_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_clif_rodex_request_zeny_post[hIndex].func; + postHookFunc(sd, opentype, mail_id, result); + } + } + return; +} +void HP_clif_pRodexRequestItems(int fd, struct map_session_data *sd) { + int hIndex = 0; + if (HPMHooks.count.HP_clif_pRodexRequestItems_pre > 0) { + void (*preHookFunc) (int *fd, struct map_session_data **sd); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_pRodexRequestItems_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_clif_pRodexRequestItems_pre[hIndex].func; + preHookFunc(&fd, &sd); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return; + } + } + { + HPMHooks.source.clif.pRodexRequestItems(fd, sd); + } + if (HPMHooks.count.HP_clif_pRodexRequestItems_post > 0) { + void (*postHookFunc) (int fd, struct map_session_data *sd); + for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_pRodexRequestItems_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_clif_pRodexRequestItems_post[hIndex].func; + postHookFunc(fd, sd); + } + } + return; +} +void HP_clif_rodex_request_items(struct map_session_data *sd, int8 opentype, int64 mail_id, int8 result) { + int hIndex = 0; + if (HPMHooks.count.HP_clif_rodex_request_items_pre > 0) { + void (*preHookFunc) (struct map_session_data **sd, int8 *opentype, int64 *mail_id, int8 *result); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_rodex_request_items_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_clif_rodex_request_items_pre[hIndex].func; + preHookFunc(&sd, &opentype, &mail_id, &result); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return; + } + } + { + HPMHooks.source.clif.rodex_request_items(sd, opentype, mail_id, result); + } + if (HPMHooks.count.HP_clif_rodex_request_items_post > 0) { + void (*postHookFunc) (struct map_session_data *sd, int8 opentype, int64 mail_id, int8 result); + for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_rodex_request_items_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_clif_rodex_request_items_post[hIndex].func; + postHookFunc(sd, opentype, mail_id, result); + } + } + return; +} +void HP_clif_rodex_icon(int fd, bool show) { + int hIndex = 0; + if (HPMHooks.count.HP_clif_rodex_icon_pre > 0) { + void (*preHookFunc) (int *fd, bool *show); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_rodex_icon_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_clif_rodex_icon_pre[hIndex].func; + preHookFunc(&fd, &show); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return; + } + } + { + HPMHooks.source.clif.rodex_icon(fd, show); + } + if (HPMHooks.count.HP_clif_rodex_icon_post > 0) { + void (*postHookFunc) (int fd, bool show); + for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_rodex_icon_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_clif_rodex_icon_post[hIndex].func; + postHookFunc(fd, show); + } + } + return; +} /* cmdline_interface */ void HP_cmdline_init(void) { int hIndex = 0; @@ -32965,6 +33641,141 @@ int HP_intif_elemental_save(struct s_elemental *ele) { } return retVal___; } +int HP_intif_rodex_requestinbox(int char_id, int account_id, int8 flag, int8 opentype, int64 mail_id) { + int hIndex = 0; + int retVal___ = 0; + if (HPMHooks.count.HP_intif_rodex_requestinbox_pre > 0) { + int (*preHookFunc) (int *char_id, int *account_id, int8 *flag, int8 *opentype, int64 *mail_id); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_intif_rodex_requestinbox_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_intif_rodex_requestinbox_pre[hIndex].func; + retVal___ = preHookFunc(&char_id, &account_id, &flag, &opentype, &mail_id); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return retVal___; + } + } + { + retVal___ = HPMHooks.source.intif.rodex_requestinbox(char_id, account_id, flag, opentype, mail_id); + } + if (HPMHooks.count.HP_intif_rodex_requestinbox_post > 0) { + int (*postHookFunc) (int retVal___, int char_id, int account_id, int8 flag, int8 opentype, int64 mail_id); + for (hIndex = 0; hIndex < HPMHooks.count.HP_intif_rodex_requestinbox_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_intif_rodex_requestinbox_post[hIndex].func; + retVal___ = postHookFunc(retVal___, char_id, account_id, flag, opentype, mail_id); + } + } + return retVal___; +} +int HP_intif_rodex_checkhasnew(struct map_session_data *sd) { + int hIndex = 0; + int retVal___ = 0; + if (HPMHooks.count.HP_intif_rodex_checkhasnew_pre > 0) { + int (*preHookFunc) (struct map_session_data **sd); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_intif_rodex_checkhasnew_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_intif_rodex_checkhasnew_pre[hIndex].func; + retVal___ = preHookFunc(&sd); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return retVal___; + } + } + { + retVal___ = HPMHooks.source.intif.rodex_checkhasnew(sd); + } + if (HPMHooks.count.HP_intif_rodex_checkhasnew_post > 0) { + int (*postHookFunc) (int retVal___, struct map_session_data *sd); + for (hIndex = 0; hIndex < HPMHooks.count.HP_intif_rodex_checkhasnew_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_intif_rodex_checkhasnew_post[hIndex].func; + retVal___ = postHookFunc(retVal___, sd); + } + } + return retVal___; +} +int HP_intif_rodex_updatemail(int64 mail_id, int8 flag) { + int hIndex = 0; + int retVal___ = 0; + if (HPMHooks.count.HP_intif_rodex_updatemail_pre > 0) { + int (*preHookFunc) (int64 *mail_id, int8 *flag); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_intif_rodex_updatemail_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_intif_rodex_updatemail_pre[hIndex].func; + retVal___ = preHookFunc(&mail_id, &flag); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return retVal___; + } + } + { + retVal___ = HPMHooks.source.intif.rodex_updatemail(mail_id, flag); + } + if (HPMHooks.count.HP_intif_rodex_updatemail_post > 0) { + int (*postHookFunc) (int retVal___, int64 mail_id, int8 flag); + for (hIndex = 0; hIndex < HPMHooks.count.HP_intif_rodex_updatemail_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_intif_rodex_updatemail_post[hIndex].func; + retVal___ = postHookFunc(retVal___, mail_id, flag); + } + } + return retVal___; +} +int HP_intif_rodex_sendmail(struct rodex_message *msg) { + int hIndex = 0; + int retVal___ = 0; + if (HPMHooks.count.HP_intif_rodex_sendmail_pre > 0) { + int (*preHookFunc) (struct rodex_message **msg); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_intif_rodex_sendmail_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_intif_rodex_sendmail_pre[hIndex].func; + retVal___ = preHookFunc(&msg); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return retVal___; + } + } + { + retVal___ = HPMHooks.source.intif.rodex_sendmail(msg); + } + if (HPMHooks.count.HP_intif_rodex_sendmail_post > 0) { + int (*postHookFunc) (int retVal___, struct rodex_message *msg); + for (hIndex = 0; hIndex < HPMHooks.count.HP_intif_rodex_sendmail_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_intif_rodex_sendmail_post[hIndex].func; + retVal___ = postHookFunc(retVal___, msg); + } + } + return retVal___; +} +int HP_intif_rodex_checkname(struct map_session_data *sd, const char *name) { + int hIndex = 0; + int retVal___ = 0; + if (HPMHooks.count.HP_intif_rodex_checkname_pre > 0) { + int (*preHookFunc) (struct map_session_data **sd, const char **name); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_intif_rodex_checkname_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_intif_rodex_checkname_pre[hIndex].func; + retVal___ = preHookFunc(&sd, &name); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return retVal___; + } + } + { + retVal___ = HPMHooks.source.intif.rodex_checkname(sd, name); + } + if (HPMHooks.count.HP_intif_rodex_checkname_post > 0) { + int (*postHookFunc) (int retVal___, struct map_session_data *sd, const char *name); + for (hIndex = 0; hIndex < HPMHooks.count.HP_intif_rodex_checkname_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_intif_rodex_checkname_post[hIndex].func; + retVal___ = postHookFunc(retVal___, sd, name); + } + } + return retVal___; +} void HP_intif_request_accinfo(int u_fd, int aid, int group_lv, char *query) { int hIndex = 0; if (HPMHooks.count.HP_intif_request_accinfo_pre > 0) { @@ -34689,6 +35500,110 @@ void HP_intif_pDeleteHomunculusOk(int fd) { } return; } +void HP_intif_pRequestRodexOpenInbox(int fd) { + int hIndex = 0; + if (HPMHooks.count.HP_intif_pRequestRodexOpenInbox_pre > 0) { + void (*preHookFunc) (int *fd); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_intif_pRequestRodexOpenInbox_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_intif_pRequestRodexOpenInbox_pre[hIndex].func; + preHookFunc(&fd); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return; + } + } + { + HPMHooks.source.intif.pRequestRodexOpenInbox(fd); + } + if (HPMHooks.count.HP_intif_pRequestRodexOpenInbox_post > 0) { + void (*postHookFunc) (int fd); + for (hIndex = 0; hIndex < HPMHooks.count.HP_intif_pRequestRodexOpenInbox_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_intif_pRequestRodexOpenInbox_post[hIndex].func; + postHookFunc(fd); + } + } + return; +} +void HP_intif_pRodexHasNew(int fd) { + int hIndex = 0; + if (HPMHooks.count.HP_intif_pRodexHasNew_pre > 0) { + void (*preHookFunc) (int *fd); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_intif_pRodexHasNew_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_intif_pRodexHasNew_pre[hIndex].func; + preHookFunc(&fd); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return; + } + } + { + HPMHooks.source.intif.pRodexHasNew(fd); + } + if (HPMHooks.count.HP_intif_pRodexHasNew_post > 0) { + void (*postHookFunc) (int fd); + for (hIndex = 0; hIndex < HPMHooks.count.HP_intif_pRodexHasNew_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_intif_pRodexHasNew_post[hIndex].func; + postHookFunc(fd); + } + } + return; +} +void HP_intif_pRodexSendMail(int fd) { + int hIndex = 0; + if (HPMHooks.count.HP_intif_pRodexSendMail_pre > 0) { + void (*preHookFunc) (int *fd); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_intif_pRodexSendMail_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_intif_pRodexSendMail_pre[hIndex].func; + preHookFunc(&fd); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return; + } + } + { + HPMHooks.source.intif.pRodexSendMail(fd); + } + if (HPMHooks.count.HP_intif_pRodexSendMail_post > 0) { + void (*postHookFunc) (int fd); + for (hIndex = 0; hIndex < HPMHooks.count.HP_intif_pRodexSendMail_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_intif_pRodexSendMail_post[hIndex].func; + postHookFunc(fd); + } + } + return; +} +void HP_intif_pRodexCheckName(int fd) { + int hIndex = 0; + if (HPMHooks.count.HP_intif_pRodexCheckName_pre > 0) { + void (*preHookFunc) (int *fd); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_intif_pRodexCheckName_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_intif_pRodexCheckName_pre[hIndex].func; + preHookFunc(&fd); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return; + } + } + { + HPMHooks.source.intif.pRodexCheckName(fd); + } + if (HPMHooks.count.HP_intif_pRodexCheckName_post > 0) { + void (*postHookFunc) (int fd); + for (hIndex = 0; hIndex < HPMHooks.count.HP_intif_pRodexCheckName_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_intif_pRodexCheckName_post[hIndex].func; + postHookFunc(fd); + } + } + return; +} /* irc_bot_interface */ void HP_ircbot_init(bool minimal) { int hIndex = 0; @@ -60871,6 +61786,452 @@ double HP_rnd_uniform53(void) { } return retVal___; } +/* rodex_interface */ +void HP_rodex_init(bool minimal) { + int hIndex = 0; + if (HPMHooks.count.HP_rodex_init_pre > 0) { + void (*preHookFunc) (bool *minimal); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_rodex_init_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_rodex_init_pre[hIndex].func; + preHookFunc(&minimal); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return; + } + } + { + HPMHooks.source.rodex.init(minimal); + } + if (HPMHooks.count.HP_rodex_init_post > 0) { + void (*postHookFunc) (bool minimal); + for (hIndex = 0; hIndex < HPMHooks.count.HP_rodex_init_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_rodex_init_post[hIndex].func; + postHookFunc(minimal); + } + } + return; +} +void HP_rodex_final(void) { + int hIndex = 0; + if (HPMHooks.count.HP_rodex_final_pre > 0) { + void (*preHookFunc) (void); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_rodex_final_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_rodex_final_pre[hIndex].func; + preHookFunc(); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return; + } + } + { + HPMHooks.source.rodex.final(); + } + if (HPMHooks.count.HP_rodex_final_post > 0) { + void (*postHookFunc) (void); + for (hIndex = 0; hIndex < HPMHooks.count.HP_rodex_final_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_rodex_final_post[hIndex].func; + postHookFunc(); + } + } + return; +} +bool HP_rodex_isenabled(void) { + int hIndex = 0; + bool retVal___ = false; + if (HPMHooks.count.HP_rodex_isenabled_pre > 0) { + bool (*preHookFunc) (void); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_rodex_isenabled_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_rodex_isenabled_pre[hIndex].func; + retVal___ = preHookFunc(); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return retVal___; + } + } + { + retVal___ = HPMHooks.source.rodex.isenabled(); + } + if (HPMHooks.count.HP_rodex_isenabled_post > 0) { + bool (*postHookFunc) (bool retVal___); + for (hIndex = 0; hIndex < HPMHooks.count.HP_rodex_isenabled_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_rodex_isenabled_post[hIndex].func; + retVal___ = postHookFunc(retVal___); + } + } + return retVal___; +} +void HP_rodex_open(struct map_session_data *sd, int8 open_type) { + int hIndex = 0; + if (HPMHooks.count.HP_rodex_open_pre > 0) { + void (*preHookFunc) (struct map_session_data **sd, int8 *open_type); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_rodex_open_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_rodex_open_pre[hIndex].func; + preHookFunc(&sd, &open_type); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return; + } + } + { + HPMHooks.source.rodex.open(sd, open_type); + } + if (HPMHooks.count.HP_rodex_open_post > 0) { + void (*postHookFunc) (struct map_session_data *sd, int8 open_type); + for (hIndex = 0; hIndex < HPMHooks.count.HP_rodex_open_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_rodex_open_post[hIndex].func; + postHookFunc(sd, open_type); + } + } + return; +} +void HP_rodex_next_page(struct map_session_data *sd, int8 open_type, int64 last_mail_id) { + int hIndex = 0; + if (HPMHooks.count.HP_rodex_next_page_pre > 0) { + void (*preHookFunc) (struct map_session_data **sd, int8 *open_type, int64 *last_mail_id); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_rodex_next_page_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_rodex_next_page_pre[hIndex].func; + preHookFunc(&sd, &open_type, &last_mail_id); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return; + } + } + { + HPMHooks.source.rodex.next_page(sd, open_type, last_mail_id); + } + if (HPMHooks.count.HP_rodex_next_page_post > 0) { + void (*postHookFunc) (struct map_session_data *sd, int8 open_type, int64 last_mail_id); + for (hIndex = 0; hIndex < HPMHooks.count.HP_rodex_next_page_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_rodex_next_page_post[hIndex].func; + postHookFunc(sd, open_type, last_mail_id); + } + } + return; +} +void HP_rodex_refresh(struct map_session_data *sd, int8 open_type, int64 first_mail_id) { + int hIndex = 0; + if (HPMHooks.count.HP_rodex_refresh_pre > 0) { + void (*preHookFunc) (struct map_session_data **sd, int8 *open_type, int64 *first_mail_id); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_rodex_refresh_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_rodex_refresh_pre[hIndex].func; + preHookFunc(&sd, &open_type, &first_mail_id); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return; + } + } + { + HPMHooks.source.rodex.refresh(sd, open_type, first_mail_id); + } + if (HPMHooks.count.HP_rodex_refresh_post > 0) { + void (*postHookFunc) (struct map_session_data *sd, int8 open_type, int64 first_mail_id); + for (hIndex = 0; hIndex < HPMHooks.count.HP_rodex_refresh_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_rodex_refresh_post[hIndex].func; + postHookFunc(sd, open_type, first_mail_id); + } + } + return; +} +void HP_rodex_add_item(struct map_session_data *sd, int16 idx, int16 amount) { + int hIndex = 0; + if (HPMHooks.count.HP_rodex_add_item_pre > 0) { + void (*preHookFunc) (struct map_session_data **sd, int16 *idx, int16 *amount); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_rodex_add_item_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_rodex_add_item_pre[hIndex].func; + preHookFunc(&sd, &idx, &amount); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return; + } + } + { + HPMHooks.source.rodex.add_item(sd, idx, amount); + } + if (HPMHooks.count.HP_rodex_add_item_post > 0) { + void (*postHookFunc) (struct map_session_data *sd, int16 idx, int16 amount); + for (hIndex = 0; hIndex < HPMHooks.count.HP_rodex_add_item_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_rodex_add_item_post[hIndex].func; + postHookFunc(sd, idx, amount); + } + } + return; +} +void HP_rodex_remove_item(struct map_session_data *sd, int16 idx, int16 amount) { + int hIndex = 0; + if (HPMHooks.count.HP_rodex_remove_item_pre > 0) { + void (*preHookFunc) (struct map_session_data **sd, int16 *idx, int16 *amount); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_rodex_remove_item_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_rodex_remove_item_pre[hIndex].func; + preHookFunc(&sd, &idx, &amount); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return; + } + } + { + HPMHooks.source.rodex.remove_item(sd, idx, amount); + } + if (HPMHooks.count.HP_rodex_remove_item_post > 0) { + void (*postHookFunc) (struct map_session_data *sd, int16 idx, int16 amount); + for (hIndex = 0; hIndex < HPMHooks.count.HP_rodex_remove_item_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_rodex_remove_item_post[hIndex].func; + postHookFunc(sd, idx, amount); + } + } + return; +} +void HP_rodex_check_player(struct map_session_data *sd, const char *name, int *base_level, int *char_id, short *class) { + int hIndex = 0; + if (HPMHooks.count.HP_rodex_check_player_pre > 0) { + void (*preHookFunc) (struct map_session_data **sd, const char **name, int **base_level, int **char_id, short **class); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_rodex_check_player_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_rodex_check_player_pre[hIndex].func; + preHookFunc(&sd, &name, &base_level, &char_id, &class); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return; + } + } + { + HPMHooks.source.rodex.check_player(sd, name, base_level, char_id, class); + } + if (HPMHooks.count.HP_rodex_check_player_post > 0) { + void (*postHookFunc) (struct map_session_data *sd, const char *name, int *base_level, int *char_id, short *class); + for (hIndex = 0; hIndex < HPMHooks.count.HP_rodex_check_player_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_rodex_check_player_post[hIndex].func; + postHookFunc(sd, name, base_level, char_id, class); + } + } + return; +} +int HP_rodex_send_mail(struct map_session_data *sd, const char *receiver_name, const char *body, const char *title, int64 zeny) { + int hIndex = 0; + int retVal___ = 0; + if (HPMHooks.count.HP_rodex_send_mail_pre > 0) { + int (*preHookFunc) (struct map_session_data **sd, const char **receiver_name, const char **body, const char **title, int64 *zeny); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_rodex_send_mail_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_rodex_send_mail_pre[hIndex].func; + retVal___ = preHookFunc(&sd, &receiver_name, &body, &title, &zeny); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return retVal___; + } + } + { + retVal___ = HPMHooks.source.rodex.send_mail(sd, receiver_name, body, title, zeny); + } + if (HPMHooks.count.HP_rodex_send_mail_post > 0) { + int (*postHookFunc) (int retVal___, struct map_session_data *sd, const char *receiver_name, const char *body, const char *title, int64 zeny); + for (hIndex = 0; hIndex < HPMHooks.count.HP_rodex_send_mail_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_rodex_send_mail_post[hIndex].func; + retVal___ = postHookFunc(retVal___, sd, receiver_name, body, title, zeny); + } + } + return retVal___; +} +void HP_rodex_send_mail_result(struct map_session_data *ssd, struct map_session_data *rsd, bool result) { + int hIndex = 0; + if (HPMHooks.count.HP_rodex_send_mail_result_pre > 0) { + void (*preHookFunc) (struct map_session_data **ssd, struct map_session_data **rsd, bool *result); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_rodex_send_mail_result_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_rodex_send_mail_result_pre[hIndex].func; + preHookFunc(&ssd, &rsd, &result); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return; + } + } + { + HPMHooks.source.rodex.send_mail_result(ssd, rsd, result); + } + if (HPMHooks.count.HP_rodex_send_mail_result_post > 0) { + void (*postHookFunc) (struct map_session_data *ssd, struct map_session_data *rsd, bool result); + for (hIndex = 0; hIndex < HPMHooks.count.HP_rodex_send_mail_result_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_rodex_send_mail_result_post[hIndex].func; + postHookFunc(ssd, rsd, result); + } + } + return; +} +struct rodex_message* HP_rodex_get_mail(struct map_session_data *sd, int64 mail_id) { + int hIndex = 0; + struct rodex_message* retVal___ = NULL; + if (HPMHooks.count.HP_rodex_get_mail_pre > 0) { + struct rodex_message* (*preHookFunc) (struct map_session_data **sd, int64 *mail_id); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_rodex_get_mail_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_rodex_get_mail_pre[hIndex].func; + retVal___ = preHookFunc(&sd, &mail_id); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return retVal___; + } + } + { + retVal___ = HPMHooks.source.rodex.get_mail(sd, mail_id); + } + if (HPMHooks.count.HP_rodex_get_mail_post > 0) { + struct rodex_message* (*postHookFunc) (struct rodex_message* retVal___, struct map_session_data *sd, int64 mail_id); + for (hIndex = 0; hIndex < HPMHooks.count.HP_rodex_get_mail_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_rodex_get_mail_post[hIndex].func; + retVal___ = postHookFunc(retVal___, sd, mail_id); + } + } + return retVal___; +} +void HP_rodex_read_mail(struct map_session_data *sd, int64 mail_id) { + int hIndex = 0; + if (HPMHooks.count.HP_rodex_read_mail_pre > 0) { + void (*preHookFunc) (struct map_session_data **sd, int64 *mail_id); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_rodex_read_mail_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_rodex_read_mail_pre[hIndex].func; + preHookFunc(&sd, &mail_id); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return; + } + } + { + HPMHooks.source.rodex.read_mail(sd, mail_id); + } + if (HPMHooks.count.HP_rodex_read_mail_post > 0) { + void (*postHookFunc) (struct map_session_data *sd, int64 mail_id); + for (hIndex = 0; hIndex < HPMHooks.count.HP_rodex_read_mail_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_rodex_read_mail_post[hIndex].func; + postHookFunc(sd, mail_id); + } + } + return; +} +void HP_rodex_get_zeny(struct map_session_data *sd, int8 opentype, int64 mail_id) { + int hIndex = 0; + if (HPMHooks.count.HP_rodex_get_zeny_pre > 0) { + void (*preHookFunc) (struct map_session_data **sd, int8 *opentype, int64 *mail_id); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_rodex_get_zeny_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_rodex_get_zeny_pre[hIndex].func; + preHookFunc(&sd, &opentype, &mail_id); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return; + } + } + { + HPMHooks.source.rodex.get_zeny(sd, opentype, mail_id); + } + if (HPMHooks.count.HP_rodex_get_zeny_post > 0) { + void (*postHookFunc) (struct map_session_data *sd, int8 opentype, int64 mail_id); + for (hIndex = 0; hIndex < HPMHooks.count.HP_rodex_get_zeny_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_rodex_get_zeny_post[hIndex].func; + postHookFunc(sd, opentype, mail_id); + } + } + return; +} +void HP_rodex_get_items(struct map_session_data *sd, int8 opentype, int64 mail_id) { + int hIndex = 0; + if (HPMHooks.count.HP_rodex_get_items_pre > 0) { + void (*preHookFunc) (struct map_session_data **sd, int8 *opentype, int64 *mail_id); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_rodex_get_items_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_rodex_get_items_pre[hIndex].func; + preHookFunc(&sd, &opentype, &mail_id); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return; + } + } + { + HPMHooks.source.rodex.get_items(sd, opentype, mail_id); + } + if (HPMHooks.count.HP_rodex_get_items_post > 0) { + void (*postHookFunc) (struct map_session_data *sd, int8 opentype, int64 mail_id); + for (hIndex = 0; hIndex < HPMHooks.count.HP_rodex_get_items_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_rodex_get_items_post[hIndex].func; + postHookFunc(sd, opentype, mail_id); + } + } + return; +} +void HP_rodex_delete_mail(struct map_session_data *sd, int64 mail_id) { + int hIndex = 0; + if (HPMHooks.count.HP_rodex_delete_mail_pre > 0) { + void (*preHookFunc) (struct map_session_data **sd, int64 *mail_id); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_rodex_delete_mail_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_rodex_delete_mail_pre[hIndex].func; + preHookFunc(&sd, &mail_id); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return; + } + } + { + HPMHooks.source.rodex.delete_mail(sd, mail_id); + } + if (HPMHooks.count.HP_rodex_delete_mail_post > 0) { + void (*postHookFunc) (struct map_session_data *sd, int64 mail_id); + for (hIndex = 0; hIndex < HPMHooks.count.HP_rodex_delete_mail_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_rodex_delete_mail_post[hIndex].func; + postHookFunc(sd, mail_id); + } + } + return; +} +void HP_rodex_clean(struct map_session_data *sd, int8 flag) { + int hIndex = 0; + if (HPMHooks.count.HP_rodex_clean_pre > 0) { + void (*preHookFunc) (struct map_session_data **sd, int8 *flag); + *HPMforce_return = false; + for (hIndex = 0; hIndex < HPMHooks.count.HP_rodex_clean_pre; hIndex++) { + preHookFunc = HPMHooks.list.HP_rodex_clean_pre[hIndex].func; + preHookFunc(&sd, &flag); + } + if (*HPMforce_return) { + *HPMforce_return = false; + return; + } + } + { + HPMHooks.source.rodex.clean(sd, flag); + } + if (HPMHooks.count.HP_rodex_clean_post > 0) { + void (*postHookFunc) (struct map_session_data *sd, int8 flag); + for (hIndex = 0; hIndex < HPMHooks.count.HP_rodex_clean_post; hIndex++) { + postHookFunc = HPMHooks.list.HP_rodex_clean_post[hIndex].func; + postHookFunc(sd, flag); + } + } + return; +} /* script_interface */ void HP_script_init(bool minimal) { int hIndex = 0; diff --git a/src/plugins/HPMHooking/HPMHooking_map.sources.inc b/src/plugins/HPMHooking/HPMHooking_map.sources.inc index f00ffa7a9..ada63e53d 100644 --- a/src/plugins/HPMHooking/HPMHooking_map.sources.inc +++ b/src/plugins/HPMHooking/HPMHooking_map.sources.inc @@ -71,6 +71,7 @@ HPMHooks.source.libpcre = *libpcre; HPMHooks.source.pet = *pet; HPMHooks.source.quest = *quest; HPMHooks.source.rnd = *rnd; +HPMHooks.source.rodex = *rodex; HPMHooks.source.script = *script; HPMHooks.source.searchstore = *searchstore; HPMHooks.source.showmsg = *showmsg; |