summaryrefslogtreecommitdiff
path: root/src/plugins
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins')
-rw-r--r--src/plugins/HPMHooking/HPMHooking.Defs.inc30
-rw-r--r--src/plugins/HPMHooking/HPMHooking_char.HPMHooksCore.inc8
-rw-r--r--src/plugins/HPMHooking/HPMHooking_char.HookingPoints.inc2
-rw-r--r--src/plugins/HPMHooking/HPMHooking_char.Hooks.inc60
-rw-r--r--src/plugins/HPMHooking/HPMHooking_map.HPMHooksCore.inc44
-rw-r--r--src/plugins/HPMHooking/HPMHooking_map.HookingPoints.inc11
-rw-r--r--src/plugins/HPMHooking/HPMHooking_map.Hooks.inc258
7 files changed, 390 insertions, 23 deletions
diff --git a/src/plugins/HPMHooking/HPMHooking.Defs.inc b/src/plugins/HPMHooking/HPMHooking.Defs.inc
index 1f34dfdd4..496da1518 100644
--- a/src/plugins/HPMHooking/HPMHooking.Defs.inc
+++ b/src/plugins/HPMHooking/HPMHooking.Defs.inc
@@ -2712,6 +2712,12 @@ typedef void (*HPMHOOK_pre_clif_pNPCBarterClosed) (int *fd, struct map_session_d
typedef void (*HPMHOOK_post_clif_pNPCBarterClosed) (int fd, struct map_session_data *sd);
typedef void (*HPMHOOK_pre_clif_pNPCBarterPurchase) (int *fd, struct map_session_data **sd);
typedef void (*HPMHOOK_post_clif_pNPCBarterPurchase) (int fd, struct map_session_data *sd);
+typedef void (*HPMHOOK_pre_clif_pNPCExpandedBarterClosed) (int *fd, struct map_session_data **sd);
+typedef void (*HPMHOOK_post_clif_pNPCExpandedBarterClosed) (int fd, struct map_session_data *sd);
+typedef void (*HPMHOOK_pre_clif_pNPCExpandedBarterPurchase) (int *fd, struct map_session_data **sd);
+typedef void (*HPMHOOK_post_clif_pNPCExpandedBarterPurchase) (int fd, struct map_session_data *sd);
+typedef void (*HPMHOOK_pre_clif_npc_expanded_barter_open) (struct map_session_data **sd, struct npc_data **nd);
+typedef void (*HPMHOOK_post_clif_npc_expanded_barter_open) (struct map_session_data *sd, struct npc_data *nd);
typedef void (*HPMHOOK_pre_clif_pClientVersion) (int *fd, struct map_session_data **sd);
typedef void (*HPMHOOK_post_clif_pClientVersion) (int fd, struct map_session_data *sd);
typedef void (*HPMHOOK_pre_clif_pPing) (int *fd, struct map_session_data **sd);
@@ -2844,8 +2850,8 @@ typedef void (*HPMHOOK_pre_duel_leave) (const unsigned int *did, struct map_sess
typedef void (*HPMHOOK_post_duel_leave) (const unsigned int did, struct map_session_data *sd);
typedef void (*HPMHOOK_pre_duel_showinfo) (const unsigned int *did, struct map_session_data **sd);
typedef void (*HPMHOOK_post_duel_showinfo) (const unsigned int did, struct map_session_data *sd);
-typedef int (*HPMHOOK_pre_duel_checktime) (struct map_session_data **sd);
-typedef int (*HPMHOOK_post_duel_checktime) (int retVal___, struct map_session_data *sd);
+typedef int64 (*HPMHOOK_pre_duel_difftime) (struct map_session_data **sd);
+typedef int64 (*HPMHOOK_post_duel_difftime) (int64 retVal___, struct map_session_data *sd);
typedef void (*HPMHOOK_pre_duel_init) (bool *minimal);
typedef void (*HPMHOOK_post_duel_init) (bool minimal);
typedef void (*HPMHOOK_pre_duel_final) (void);
@@ -3532,10 +3538,14 @@ typedef bool (*HPMHOOK_post_inter_mercenary_delete) (bool retVal___, int merc_id
#ifdef CHAR_INT_PARTY_H /* inter_party */
typedef int (*HPMHOOK_pre_inter_party_check_lv) (struct party_data **p);
typedef int (*HPMHOOK_post_inter_party_check_lv) (int retVal___, struct party_data *p);
+typedef int (*HPMHOOK_pre_inter_party_is_family_party) (struct party_data **p);
+typedef int (*HPMHOOK_post_inter_party_is_family_party) (int retVal___, struct party_data *p);
typedef void (*HPMHOOK_pre_inter_party_calc_state) (struct party_data **p);
typedef void (*HPMHOOK_post_inter_party_calc_state) (struct party_data *p);
typedef int (*HPMHOOK_pre_inter_party_tosql) (struct party **p, int *flag, int *index);
typedef int (*HPMHOOK_post_inter_party_tosql) (int retVal___, struct party *p, int flag, int index);
+typedef int (*HPMHOOK_pre_inter_party_del_nonexistent_party) (int *party_id);
+typedef int (*HPMHOOK_post_inter_party_del_nonexistent_party) (int retVal___, int party_id);
typedef struct party_data* (*HPMHOOK_pre_inter_party_fromsql) (int *party_id);
typedef struct party_data* (*HPMHOOK_post_inter_party_fromsql) (struct party_data* retVal___, int party_id);
typedef int (*HPMHOOK_pre_inter_party_sql_init) (void);
@@ -3562,8 +3572,8 @@ typedef bool (*HPMHOOK_pre_inter_party_add_member) (int *party_id, const struct
typedef bool (*HPMHOOK_post_inter_party_add_member) (bool retVal___, int party_id, const struct party_member *member);
typedef bool (*HPMHOOK_pre_inter_party_change_option) (int *party_id, int *account_id, int *exp, int *item, int *map_fd);
typedef bool (*HPMHOOK_post_inter_party_change_option) (bool retVal___, int party_id, int account_id, int exp, int item, int map_fd);
-typedef bool (*HPMHOOK_pre_inter_party_change_map) (int *party_id, int *account_id, int *char_id, unsigned short *map, int *online, unsigned int *lv);
-typedef bool (*HPMHOOK_post_inter_party_change_map) (bool retVal___, int party_id, int account_id, int char_id, unsigned short map, int online, unsigned int lv);
+typedef bool (*HPMHOOK_pre_inter_party_change_map) (int *party_id, int *account_id, int *char_id, unsigned short *map, int *online, int *lv);
+typedef bool (*HPMHOOK_post_inter_party_change_map) (bool retVal___, int party_id, int account_id, int char_id, unsigned short map, int online, int lv);
typedef bool (*HPMHOOK_pre_inter_party_disband) (int *party_id);
typedef bool (*HPMHOOK_post_inter_party_disband) (bool retVal___, int party_id);
typedef bool (*HPMHOOK_pre_inter_party_change_leader) (int *party_id, int *account_id, int *char_id);
@@ -5778,6 +5788,8 @@ typedef enum market_buy_result (*HPMHOOK_pre_npc_market_buylist) (struct map_ses
typedef enum market_buy_result (*HPMHOOK_post_npc_market_buylist) (enum market_buy_result retVal___, struct map_session_data *sd, struct itemlist *item_list);
typedef int (*HPMHOOK_pre_npc_barter_buylist) (struct map_session_data **sd, struct barteritemlist **item_list);
typedef int (*HPMHOOK_post_npc_barter_buylist) (int retVal___, struct map_session_data *sd, struct barteritemlist *item_list);
+typedef int (*HPMHOOK_pre_npc_expanded_barter_buylist) (struct map_session_data **sd, struct barteritemlist **item_list);
+typedef int (*HPMHOOK_post_npc_expanded_barter_buylist) (int retVal___, struct map_session_data *sd, struct barteritemlist *item_list);
typedef bool (*HPMHOOK_pre_npc_trader_open) (struct map_session_data **sd, struct npc_data **nd);
typedef bool (*HPMHOOK_post_npc_trader_open) (bool retVal___, struct map_session_data *sd, struct npc_data *nd);
typedef void (*HPMHOOK_pre_npc_market_fromsql) (void);
@@ -5796,6 +5808,14 @@ typedef void (*HPMHOOK_pre_npc_barter_delfromsql) (struct npc_data **nd, int *in
typedef void (*HPMHOOK_post_npc_barter_delfromsql) (struct npc_data *nd, int index);
typedef void (*HPMHOOK_pre_npc_barter_delfromsql_sub) (const char **npcname, int *itemId, int *itemId2, int *amount2);
typedef void (*HPMHOOK_post_npc_barter_delfromsql_sub) (const char *npcname, int itemId, int itemId2, int amount2);
+typedef void (*HPMHOOK_pre_npc_expanded_barter_fromsql) (void);
+typedef void (*HPMHOOK_post_npc_expanded_barter_fromsql) (void);
+typedef void (*HPMHOOK_pre_npc_expanded_barter_tosql) (struct npc_data **nd, int *index);
+typedef void (*HPMHOOK_post_npc_expanded_barter_tosql) (struct npc_data *nd, int index);
+typedef void (*HPMHOOK_pre_npc_expanded_barter_delfromsql) (struct npc_data **nd, int *index);
+typedef void (*HPMHOOK_post_npc_expanded_barter_delfromsql) (struct npc_data *nd, int index);
+typedef void (*HPMHOOK_pre_npc_expanded_barter_delfromsql_sub) (const char **npcname, int *itemId, int *zeny, int *currencyCount, struct npc_barter_currency **currency);
+typedef void (*HPMHOOK_post_npc_expanded_barter_delfromsql_sub) (const char *npcname, int itemId, int zeny, int currencyCount, struct npc_barter_currency *currency);
typedef bool (*HPMHOOK_pre_npc_db_checkid) (const int *id);
typedef bool (*HPMHOOK_post_npc_db_checkid) (bool retVal___, const int id);
typedef void (*HPMHOOK_pre_npc_refresh) (struct npc_data **nd);
@@ -7110,6 +7130,8 @@ typedef void (*HPMHOOK_pre_script_run_item_rental_start_script) (struct map_sess
typedef void (*HPMHOOK_post_script_run_item_rental_start_script) (struct map_session_data *sd, struct item_data *data, int oid);
typedef void (*HPMHOOK_pre_script_run_item_lapineddukddak_script) (struct map_session_data **sd, struct item_data **data, int *oid);
typedef void (*HPMHOOK_post_script_run_item_lapineddukddak_script) (struct map_session_data *sd, struct item_data *data, int oid);
+typedef bool (*HPMHOOK_pre_script_sellitemcurrency_add) (struct npc_data **nd, struct script_state **st, int *argIndex);
+typedef bool (*HPMHOOK_post_script_sellitemcurrency_add) (bool retVal___, struct npc_data *nd, struct script_state *st, int argIndex);
#endif // MAP_SCRIPT_H
#ifdef MAP_SEARCHSTORE_H /* searchstore */
typedef bool (*HPMHOOK_pre_searchstore_open) (struct map_session_data **sd, unsigned int *uses, unsigned short *effect);
diff --git a/src/plugins/HPMHooking/HPMHooking_char.HPMHooksCore.inc b/src/plugins/HPMHooking/HPMHooking_char.HPMHooksCore.inc
index a9a83511e..20f57dcb9 100644
--- a/src/plugins/HPMHooking/HPMHooking_char.HPMHooksCore.inc
+++ b/src/plugins/HPMHooking/HPMHooking_char.HPMHooksCore.inc
@@ -674,10 +674,14 @@ struct {
struct HPMHookPoint *HP_inter_mercenary_delete_post;
struct HPMHookPoint *HP_inter_party_check_lv_pre;
struct HPMHookPoint *HP_inter_party_check_lv_post;
+ struct HPMHookPoint *HP_inter_party_is_family_party_pre;
+ struct HPMHookPoint *HP_inter_party_is_family_party_post;
struct HPMHookPoint *HP_inter_party_calc_state_pre;
struct HPMHookPoint *HP_inter_party_calc_state_post;
struct HPMHookPoint *HP_inter_party_tosql_pre;
struct HPMHookPoint *HP_inter_party_tosql_post;
+ struct HPMHookPoint *HP_inter_party_del_nonexistent_party_pre;
+ struct HPMHookPoint *HP_inter_party_del_nonexistent_party_post;
struct HPMHookPoint *HP_inter_party_fromsql_pre;
struct HPMHookPoint *HP_inter_party_fromsql_post;
struct HPMHookPoint *HP_inter_party_sql_init_pre;
@@ -2295,10 +2299,14 @@ struct {
int HP_inter_mercenary_delete_post;
int HP_inter_party_check_lv_pre;
int HP_inter_party_check_lv_post;
+ int HP_inter_party_is_family_party_pre;
+ int HP_inter_party_is_family_party_post;
int HP_inter_party_calc_state_pre;
int HP_inter_party_calc_state_post;
int HP_inter_party_tosql_pre;
int HP_inter_party_tosql_post;
+ int HP_inter_party_del_nonexistent_party_pre;
+ int HP_inter_party_del_nonexistent_party_post;
int HP_inter_party_fromsql_pre;
int HP_inter_party_fromsql_post;
int HP_inter_party_sql_init_pre;
diff --git a/src/plugins/HPMHooking/HPMHooking_char.HookingPoints.inc b/src/plugins/HPMHooking/HPMHooking_char.HookingPoints.inc
index 7f52ebe46..e8e211f8b 100644
--- a/src/plugins/HPMHooking/HPMHooking_char.HookingPoints.inc
+++ b/src/plugins/HPMHooking/HPMHooking_char.HookingPoints.inc
@@ -368,8 +368,10 @@ struct HookingPointData HookingPoints[] = {
{ HP_POP(inter_mercenary->delete, HP_inter_mercenary_delete) },
/* inter_party_interface */
{ HP_POP(inter_party->check_lv, HP_inter_party_check_lv) },
+ { HP_POP(inter_party->is_family_party, HP_inter_party_is_family_party) },
{ HP_POP(inter_party->calc_state, HP_inter_party_calc_state) },
{ HP_POP(inter_party->tosql, HP_inter_party_tosql) },
+ { HP_POP(inter_party->del_nonexistent_party, HP_inter_party_del_nonexistent_party) },
{ HP_POP(inter_party->fromsql, HP_inter_party_fromsql) },
{ HP_POP(inter_party->sql_init, HP_inter_party_sql_init) },
{ HP_POP(inter_party->sql_final, HP_inter_party_sql_final) },
diff --git a/src/plugins/HPMHooking/HPMHooking_char.Hooks.inc b/src/plugins/HPMHooking/HPMHooking_char.Hooks.inc
index d5297c29c..a022abb54 100644
--- a/src/plugins/HPMHooking/HPMHooking_char.Hooks.inc
+++ b/src/plugins/HPMHooking/HPMHooking_char.Hooks.inc
@@ -8712,6 +8712,33 @@ int HP_inter_party_check_lv(struct party_data *p) {
}
return retVal___;
}
+int HP_inter_party_is_family_party(struct party_data *p) {
+ int hIndex = 0;
+ int retVal___ = 0;
+ if (HPMHooks.count.HP_inter_party_is_family_party_pre > 0) {
+ int (*preHookFunc) (struct party_data **p);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_inter_party_is_family_party_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_inter_party_is_family_party_pre[hIndex].func;
+ retVal___ = preHookFunc(&p);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return retVal___;
+ }
+ }
+ {
+ retVal___ = HPMHooks.source.inter_party.is_family_party(p);
+ }
+ if (HPMHooks.count.HP_inter_party_is_family_party_post > 0) {
+ int (*postHookFunc) (int retVal___, struct party_data *p);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_inter_party_is_family_party_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_inter_party_is_family_party_post[hIndex].func;
+ retVal___ = postHookFunc(retVal___, p);
+ }
+ }
+ return retVal___;
+}
void HP_inter_party_calc_state(struct party_data *p) {
int hIndex = 0;
if (HPMHooks.count.HP_inter_party_calc_state_pre > 0) {
@@ -8765,6 +8792,33 @@ int HP_inter_party_tosql(struct party *p, int flag, int index) {
}
return retVal___;
}
+int HP_inter_party_del_nonexistent_party(int party_id) {
+ int hIndex = 0;
+ int retVal___ = 0;
+ if (HPMHooks.count.HP_inter_party_del_nonexistent_party_pre > 0) {
+ int (*preHookFunc) (int *party_id);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_inter_party_del_nonexistent_party_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_inter_party_del_nonexistent_party_pre[hIndex].func;
+ retVal___ = preHookFunc(&party_id);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return retVal___;
+ }
+ }
+ {
+ retVal___ = HPMHooks.source.inter_party.del_nonexistent_party(party_id);
+ }
+ if (HPMHooks.count.HP_inter_party_del_nonexistent_party_post > 0) {
+ int (*postHookFunc) (int retVal___, int party_id);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_inter_party_del_nonexistent_party_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_inter_party_del_nonexistent_party_post[hIndex].func;
+ retVal___ = postHookFunc(retVal___, party_id);
+ }
+ }
+ return retVal___;
+}
struct party_data* HP_inter_party_fromsql(int party_id) {
int hIndex = 0;
struct party_data* retVal___ = NULL;
@@ -9115,11 +9169,11 @@ bool HP_inter_party_change_option(int party_id, int account_id, int exp, int ite
}
return retVal___;
}
-bool HP_inter_party_change_map(int party_id, int account_id, int char_id, unsigned short map, int online, unsigned int lv) {
+bool HP_inter_party_change_map(int party_id, int account_id, int char_id, unsigned short map, int online, int lv) {
int hIndex = 0;
bool retVal___ = false;
if (HPMHooks.count.HP_inter_party_change_map_pre > 0) {
- bool (*preHookFunc) (int *party_id, int *account_id, int *char_id, unsigned short *map, int *online, unsigned int *lv);
+ bool (*preHookFunc) (int *party_id, int *account_id, int *char_id, unsigned short *map, int *online, int *lv);
*HPMforce_return = false;
for (hIndex = 0; hIndex < HPMHooks.count.HP_inter_party_change_map_pre; hIndex++) {
preHookFunc = HPMHooks.list.HP_inter_party_change_map_pre[hIndex].func;
@@ -9134,7 +9188,7 @@ bool HP_inter_party_change_map(int party_id, int account_id, int char_id, unsign
retVal___ = HPMHooks.source.inter_party.change_map(party_id, account_id, char_id, map, online, lv);
}
if (HPMHooks.count.HP_inter_party_change_map_post > 0) {
- bool (*postHookFunc) (bool retVal___, int party_id, int account_id, int char_id, unsigned short map, int online, unsigned int lv);
+ bool (*postHookFunc) (bool retVal___, int party_id, int account_id, int char_id, unsigned short map, int online, int lv);
for (hIndex = 0; hIndex < HPMHooks.count.HP_inter_party_change_map_post; hIndex++) {
postHookFunc = HPMHooks.list.HP_inter_party_change_map_post[hIndex].func;
retVal___ = postHookFunc(retVal___, party_id, account_id, char_id, map, online, lv);
diff --git a/src/plugins/HPMHooking/HPMHooking_map.HPMHooksCore.inc b/src/plugins/HPMHooking/HPMHooking_map.HPMHooksCore.inc
index eccf2a277..f8a25a649 100644
--- a/src/plugins/HPMHooking/HPMHooking_map.HPMHooksCore.inc
+++ b/src/plugins/HPMHooking/HPMHooking_map.HPMHooksCore.inc
@@ -2302,6 +2302,12 @@ struct {
struct HPMHookPoint *HP_clif_pNPCBarterClosed_post;
struct HPMHookPoint *HP_clif_pNPCBarterPurchase_pre;
struct HPMHookPoint *HP_clif_pNPCBarterPurchase_post;
+ struct HPMHookPoint *HP_clif_pNPCExpandedBarterClosed_pre;
+ struct HPMHookPoint *HP_clif_pNPCExpandedBarterClosed_post;
+ struct HPMHookPoint *HP_clif_pNPCExpandedBarterPurchase_pre;
+ struct HPMHookPoint *HP_clif_pNPCExpandedBarterPurchase_post;
+ struct HPMHookPoint *HP_clif_npc_expanded_barter_open_pre;
+ struct HPMHookPoint *HP_clif_npc_expanded_barter_open_post;
struct HPMHookPoint *HP_clif_pClientVersion_pre;
struct HPMHookPoint *HP_clif_pClientVersion_post;
struct HPMHookPoint *HP_clif_pPing_pre;
@@ -2422,8 +2428,8 @@ struct {
struct HPMHookPoint *HP_duel_leave_post;
struct HPMHookPoint *HP_duel_showinfo_pre;
struct HPMHookPoint *HP_duel_showinfo_post;
- struct HPMHookPoint *HP_duel_checktime_pre;
- struct HPMHookPoint *HP_duel_checktime_post;
+ struct HPMHookPoint *HP_duel_difftime_pre;
+ struct HPMHookPoint *HP_duel_difftime_post;
struct HPMHookPoint *HP_duel_init_pre;
struct HPMHookPoint *HP_duel_init_post;
struct HPMHookPoint *HP_duel_final_pre;
@@ -4374,6 +4380,8 @@ struct {
struct HPMHookPoint *HP_npc_market_buylist_post;
struct HPMHookPoint *HP_npc_barter_buylist_pre;
struct HPMHookPoint *HP_npc_barter_buylist_post;
+ struct HPMHookPoint *HP_npc_expanded_barter_buylist_pre;
+ struct HPMHookPoint *HP_npc_expanded_barter_buylist_post;
struct HPMHookPoint *HP_npc_trader_open_pre;
struct HPMHookPoint *HP_npc_trader_open_post;
struct HPMHookPoint *HP_npc_market_fromsql_pre;
@@ -4392,6 +4400,14 @@ struct {
struct HPMHookPoint *HP_npc_barter_delfromsql_post;
struct HPMHookPoint *HP_npc_barter_delfromsql_sub_pre;
struct HPMHookPoint *HP_npc_barter_delfromsql_sub_post;
+ struct HPMHookPoint *HP_npc_expanded_barter_fromsql_pre;
+ struct HPMHookPoint *HP_npc_expanded_barter_fromsql_post;
+ struct HPMHookPoint *HP_npc_expanded_barter_tosql_pre;
+ struct HPMHookPoint *HP_npc_expanded_barter_tosql_post;
+ struct HPMHookPoint *HP_npc_expanded_barter_delfromsql_pre;
+ struct HPMHookPoint *HP_npc_expanded_barter_delfromsql_post;
+ struct HPMHookPoint *HP_npc_expanded_barter_delfromsql_sub_pre;
+ struct HPMHookPoint *HP_npc_expanded_barter_delfromsql_sub_post;
struct HPMHookPoint *HP_npc_db_checkid_pre;
struct HPMHookPoint *HP_npc_db_checkid_post;
struct HPMHookPoint *HP_npc_refresh_pre;
@@ -5644,6 +5660,8 @@ struct {
struct HPMHookPoint *HP_script_run_item_rental_start_script_post;
struct HPMHookPoint *HP_script_run_item_lapineddukddak_script_pre;
struct HPMHookPoint *HP_script_run_item_lapineddukddak_script_post;
+ struct HPMHookPoint *HP_script_sellitemcurrency_add_pre;
+ struct HPMHookPoint *HP_script_sellitemcurrency_add_post;
struct HPMHookPoint *HP_searchstore_open_pre;
struct HPMHookPoint *HP_searchstore_open_post;
struct HPMHookPoint *HP_searchstore_query_pre;
@@ -9147,6 +9165,12 @@ struct {
int HP_clif_pNPCBarterClosed_post;
int HP_clif_pNPCBarterPurchase_pre;
int HP_clif_pNPCBarterPurchase_post;
+ int HP_clif_pNPCExpandedBarterClosed_pre;
+ int HP_clif_pNPCExpandedBarterClosed_post;
+ int HP_clif_pNPCExpandedBarterPurchase_pre;
+ int HP_clif_pNPCExpandedBarterPurchase_post;
+ int HP_clif_npc_expanded_barter_open_pre;
+ int HP_clif_npc_expanded_barter_open_post;
int HP_clif_pClientVersion_pre;
int HP_clif_pClientVersion_post;
int HP_clif_pPing_pre;
@@ -9267,8 +9291,8 @@ struct {
int HP_duel_leave_post;
int HP_duel_showinfo_pre;
int HP_duel_showinfo_post;
- int HP_duel_checktime_pre;
- int HP_duel_checktime_post;
+ int HP_duel_difftime_pre;
+ int HP_duel_difftime_post;
int HP_duel_init_pre;
int HP_duel_init_post;
int HP_duel_final_pre;
@@ -11219,6 +11243,8 @@ struct {
int HP_npc_market_buylist_post;
int HP_npc_barter_buylist_pre;
int HP_npc_barter_buylist_post;
+ int HP_npc_expanded_barter_buylist_pre;
+ int HP_npc_expanded_barter_buylist_post;
int HP_npc_trader_open_pre;
int HP_npc_trader_open_post;
int HP_npc_market_fromsql_pre;
@@ -11237,6 +11263,14 @@ struct {
int HP_npc_barter_delfromsql_post;
int HP_npc_barter_delfromsql_sub_pre;
int HP_npc_barter_delfromsql_sub_post;
+ int HP_npc_expanded_barter_fromsql_pre;
+ int HP_npc_expanded_barter_fromsql_post;
+ int HP_npc_expanded_barter_tosql_pre;
+ int HP_npc_expanded_barter_tosql_post;
+ int HP_npc_expanded_barter_delfromsql_pre;
+ int HP_npc_expanded_barter_delfromsql_post;
+ int HP_npc_expanded_barter_delfromsql_sub_pre;
+ int HP_npc_expanded_barter_delfromsql_sub_post;
int HP_npc_db_checkid_pre;
int HP_npc_db_checkid_post;
int HP_npc_refresh_pre;
@@ -12489,6 +12523,8 @@ struct {
int HP_script_run_item_rental_start_script_post;
int HP_script_run_item_lapineddukddak_script_pre;
int HP_script_run_item_lapineddukddak_script_post;
+ int HP_script_sellitemcurrency_add_pre;
+ int HP_script_sellitemcurrency_add_post;
int HP_searchstore_open_pre;
int HP_searchstore_open_post;
int HP_searchstore_query_pre;
diff --git a/src/plugins/HPMHooking/HPMHooking_map.HookingPoints.inc b/src/plugins/HPMHooking/HPMHooking_map.HookingPoints.inc
index b8d5f3482..7af336fdc 100644
--- a/src/plugins/HPMHooking/HPMHooking_map.HookingPoints.inc
+++ b/src/plugins/HPMHooking/HPMHooking_map.HookingPoints.inc
@@ -1175,6 +1175,9 @@ struct HookingPointData HookingPoints[] = {
{ HP_POP(clif->npc_barter_open, HP_clif_npc_barter_open) },
{ HP_POP(clif->pNPCBarterClosed, HP_clif_pNPCBarterClosed) },
{ HP_POP(clif->pNPCBarterPurchase, HP_clif_pNPCBarterPurchase) },
+ { HP_POP(clif->pNPCExpandedBarterClosed, HP_clif_pNPCExpandedBarterClosed) },
+ { HP_POP(clif->pNPCExpandedBarterPurchase, HP_clif_pNPCExpandedBarterPurchase) },
+ { HP_POP(clif->npc_expanded_barter_open, HP_clif_npc_expanded_barter_open) },
{ HP_POP(clif->pClientVersion, HP_clif_pClientVersion) },
{ HP_POP(clif->pPing, HP_clif_pPing) },
{ HP_POP(clif->ping, HP_clif_ping) },
@@ -1241,7 +1244,7 @@ struct HookingPointData HookingPoints[] = {
{ HP_POP(duel->reject, HP_duel_reject) },
{ HP_POP(duel->leave, HP_duel_leave) },
{ HP_POP(duel->showinfo, HP_duel_showinfo) },
- { HP_POP(duel->checktime, HP_duel_checktime) },
+ { HP_POP(duel->difftime, HP_duel_difftime) },
{ HP_POP(duel->init, HP_duel_init) },
{ HP_POP(duel->final, HP_duel_final) },
/* elemental_interface */
@@ -2239,6 +2242,7 @@ struct HookingPointData HookingPoints[] = {
{ HP_POP(npc->trader_update, HP_npc_trader_update) },
{ HP_POP(npc->market_buylist, HP_npc_market_buylist) },
{ HP_POP(npc->barter_buylist, HP_npc_barter_buylist) },
+ { HP_POP(npc->expanded_barter_buylist, HP_npc_expanded_barter_buylist) },
{ HP_POP(npc->trader_open, HP_npc_trader_open) },
{ HP_POP(npc->market_fromsql, HP_npc_market_fromsql) },
{ HP_POP(npc->market_tosql, HP_npc_market_tosql) },
@@ -2248,6 +2252,10 @@ struct HookingPointData HookingPoints[] = {
{ HP_POP(npc->barter_tosql, HP_npc_barter_tosql) },
{ HP_POP(npc->barter_delfromsql, HP_npc_barter_delfromsql) },
{ HP_POP(npc->barter_delfromsql_sub, HP_npc_barter_delfromsql_sub) },
+ { HP_POP(npc->expanded_barter_fromsql, HP_npc_expanded_barter_fromsql) },
+ { HP_POP(npc->expanded_barter_tosql, HP_npc_expanded_barter_tosql) },
+ { HP_POP(npc->expanded_barter_delfromsql, HP_npc_expanded_barter_delfromsql) },
+ { HP_POP(npc->expanded_barter_delfromsql_sub, HP_npc_expanded_barter_delfromsql_sub) },
{ HP_POP(npc->db_checkid, HP_npc_db_checkid) },
{ HP_POP(npc->refresh, HP_npc_refresh) },
{ HP_POP(npc->questinfo_clear, HP_npc_questinfo_clear) },
@@ -2888,6 +2896,7 @@ struct HookingPointData HookingPoints[] = {
{ HP_POP(script->run_item_rental_end_script, HP_script_run_item_rental_end_script) },
{ HP_POP(script->run_item_rental_start_script, HP_script_run_item_rental_start_script) },
{ HP_POP(script->run_item_lapineddukddak_script, HP_script_run_item_lapineddukddak_script) },
+ { HP_POP(script->sellitemcurrency_add, HP_script_sellitemcurrency_add) },
/* searchstore_interface */
{ HP_POP(searchstore->open, HP_searchstore_open) },
{ HP_POP(searchstore->query, HP_searchstore_query) },
diff --git a/src/plugins/HPMHooking/HPMHooking_map.Hooks.inc b/src/plugins/HPMHooking/HPMHooking_map.Hooks.inc
index e24b00f78..ccc11d52b 100644
--- a/src/plugins/HPMHooking/HPMHooking_map.Hooks.inc
+++ b/src/plugins/HPMHooking/HPMHooking_map.Hooks.inc
@@ -30003,6 +30003,84 @@ void HP_clif_pNPCBarterPurchase(int fd, struct map_session_data *sd) {
}
return;
}
+void HP_clif_pNPCExpandedBarterClosed(int fd, struct map_session_data *sd) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_clif_pNPCExpandedBarterClosed_pre > 0) {
+ void (*preHookFunc) (int *fd, struct map_session_data **sd);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_pNPCExpandedBarterClosed_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_clif_pNPCExpandedBarterClosed_pre[hIndex].func;
+ preHookFunc(&fd, &sd);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.clif.pNPCExpandedBarterClosed(fd, sd);
+ }
+ if (HPMHooks.count.HP_clif_pNPCExpandedBarterClosed_post > 0) {
+ void (*postHookFunc) (int fd, struct map_session_data *sd);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_pNPCExpandedBarterClosed_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_clif_pNPCExpandedBarterClosed_post[hIndex].func;
+ postHookFunc(fd, sd);
+ }
+ }
+ return;
+}
+void HP_clif_pNPCExpandedBarterPurchase(int fd, struct map_session_data *sd) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_clif_pNPCExpandedBarterPurchase_pre > 0) {
+ void (*preHookFunc) (int *fd, struct map_session_data **sd);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_pNPCExpandedBarterPurchase_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_clif_pNPCExpandedBarterPurchase_pre[hIndex].func;
+ preHookFunc(&fd, &sd);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.clif.pNPCExpandedBarterPurchase(fd, sd);
+ }
+ if (HPMHooks.count.HP_clif_pNPCExpandedBarterPurchase_post > 0) {
+ void (*postHookFunc) (int fd, struct map_session_data *sd);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_pNPCExpandedBarterPurchase_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_clif_pNPCExpandedBarterPurchase_post[hIndex].func;
+ postHookFunc(fd, sd);
+ }
+ }
+ return;
+}
+void HP_clif_npc_expanded_barter_open(struct map_session_data *sd, struct npc_data *nd) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_clif_npc_expanded_barter_open_pre > 0) {
+ void (*preHookFunc) (struct map_session_data **sd, struct npc_data **nd);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_npc_expanded_barter_open_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_clif_npc_expanded_barter_open_pre[hIndex].func;
+ preHookFunc(&sd, &nd);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.clif.npc_expanded_barter_open(sd, nd);
+ }
+ if (HPMHooks.count.HP_clif_npc_expanded_barter_open_post > 0) {
+ void (*postHookFunc) (struct map_session_data *sd, struct npc_data *nd);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_clif_npc_expanded_barter_open_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_clif_npc_expanded_barter_open_post[hIndex].func;
+ postHookFunc(sd, nd);
+ }
+ }
+ return;
+}
void HP_clif_pClientVersion(int fd, struct map_session_data *sd) {
int hIndex = 0;
if (HPMHooks.count.HP_clif_pClientVersion_pre > 0) {
@@ -31601,14 +31679,14 @@ void HP_duel_showinfo(const unsigned int did, struct map_session_data *sd) {
}
return;
}
-int HP_duel_checktime(struct map_session_data *sd) {
+int64 HP_duel_difftime(struct map_session_data *sd) {
int hIndex = 0;
- int retVal___ = 0;
- if (HPMHooks.count.HP_duel_checktime_pre > 0) {
- int (*preHookFunc) (struct map_session_data **sd);
+ int64 retVal___ = 0;
+ if (HPMHooks.count.HP_duel_difftime_pre > 0) {
+ int64 (*preHookFunc) (struct map_session_data **sd);
*HPMforce_return = false;
- for (hIndex = 0; hIndex < HPMHooks.count.HP_duel_checktime_pre; hIndex++) {
- preHookFunc = HPMHooks.list.HP_duel_checktime_pre[hIndex].func;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_duel_difftime_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_duel_difftime_pre[hIndex].func;
retVal___ = preHookFunc(&sd);
}
if (*HPMforce_return) {
@@ -31617,12 +31695,12 @@ int HP_duel_checktime(struct map_session_data *sd) {
}
}
{
- retVal___ = HPMHooks.source.duel.checktime(sd);
+ retVal___ = HPMHooks.source.duel.difftime(sd);
}
- if (HPMHooks.count.HP_duel_checktime_post > 0) {
- int (*postHookFunc) (int retVal___, struct map_session_data *sd);
- for (hIndex = 0; hIndex < HPMHooks.count.HP_duel_checktime_post; hIndex++) {
- postHookFunc = HPMHooks.list.HP_duel_checktime_post[hIndex].func;
+ if (HPMHooks.count.HP_duel_difftime_post > 0) {
+ int64 (*postHookFunc) (int64 retVal___, struct map_session_data *sd);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_duel_difftime_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_duel_difftime_post[hIndex].func;
retVal___ = postHookFunc(retVal___, sd);
}
}
@@ -58109,6 +58187,33 @@ int HP_npc_barter_buylist(struct map_session_data *sd, struct barteritemlist *it
}
return retVal___;
}
+int HP_npc_expanded_barter_buylist(struct map_session_data *sd, struct barteritemlist *item_list) {
+ int hIndex = 0;
+ int retVal___ = 0;
+ if (HPMHooks.count.HP_npc_expanded_barter_buylist_pre > 0) {
+ int (*preHookFunc) (struct map_session_data **sd, struct barteritemlist **item_list);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_npc_expanded_barter_buylist_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_npc_expanded_barter_buylist_pre[hIndex].func;
+ retVal___ = preHookFunc(&sd, &item_list);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return retVal___;
+ }
+ }
+ {
+ retVal___ = HPMHooks.source.npc.expanded_barter_buylist(sd, item_list);
+ }
+ if (HPMHooks.count.HP_npc_expanded_barter_buylist_post > 0) {
+ int (*postHookFunc) (int retVal___, struct map_session_data *sd, struct barteritemlist *item_list);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_npc_expanded_barter_buylist_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_npc_expanded_barter_buylist_post[hIndex].func;
+ retVal___ = postHookFunc(retVal___, sd, item_list);
+ }
+ }
+ return retVal___;
+}
bool HP_npc_trader_open(struct map_session_data *sd, struct npc_data *nd) {
int hIndex = 0;
bool retVal___ = false;
@@ -58344,6 +58449,110 @@ void HP_npc_barter_delfromsql_sub(const char *npcname, int itemId, int itemId2,
}
return;
}
+void HP_npc_expanded_barter_fromsql(void) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_npc_expanded_barter_fromsql_pre > 0) {
+ void (*preHookFunc) (void);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_npc_expanded_barter_fromsql_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_npc_expanded_barter_fromsql_pre[hIndex].func;
+ preHookFunc();
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.npc.expanded_barter_fromsql();
+ }
+ if (HPMHooks.count.HP_npc_expanded_barter_fromsql_post > 0) {
+ void (*postHookFunc) (void);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_npc_expanded_barter_fromsql_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_npc_expanded_barter_fromsql_post[hIndex].func;
+ postHookFunc();
+ }
+ }
+ return;
+}
+void HP_npc_expanded_barter_tosql(struct npc_data *nd, int index) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_npc_expanded_barter_tosql_pre > 0) {
+ void (*preHookFunc) (struct npc_data **nd, int *index);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_npc_expanded_barter_tosql_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_npc_expanded_barter_tosql_pre[hIndex].func;
+ preHookFunc(&nd, &index);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.npc.expanded_barter_tosql(nd, index);
+ }
+ if (HPMHooks.count.HP_npc_expanded_barter_tosql_post > 0) {
+ void (*postHookFunc) (struct npc_data *nd, int index);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_npc_expanded_barter_tosql_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_npc_expanded_barter_tosql_post[hIndex].func;
+ postHookFunc(nd, index);
+ }
+ }
+ return;
+}
+void HP_npc_expanded_barter_delfromsql(struct npc_data *nd, int index) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_npc_expanded_barter_delfromsql_pre > 0) {
+ void (*preHookFunc) (struct npc_data **nd, int *index);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_npc_expanded_barter_delfromsql_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_npc_expanded_barter_delfromsql_pre[hIndex].func;
+ preHookFunc(&nd, &index);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.npc.expanded_barter_delfromsql(nd, index);
+ }
+ if (HPMHooks.count.HP_npc_expanded_barter_delfromsql_post > 0) {
+ void (*postHookFunc) (struct npc_data *nd, int index);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_npc_expanded_barter_delfromsql_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_npc_expanded_barter_delfromsql_post[hIndex].func;
+ postHookFunc(nd, index);
+ }
+ }
+ return;
+}
+void HP_npc_expanded_barter_delfromsql_sub(const char *npcname, int itemId, int zeny, int currencyCount, struct npc_barter_currency *currency) {
+ int hIndex = 0;
+ if (HPMHooks.count.HP_npc_expanded_barter_delfromsql_sub_pre > 0) {
+ void (*preHookFunc) (const char **npcname, int *itemId, int *zeny, int *currencyCount, struct npc_barter_currency **currency);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_npc_expanded_barter_delfromsql_sub_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_npc_expanded_barter_delfromsql_sub_pre[hIndex].func;
+ preHookFunc(&npcname, &itemId, &zeny, &currencyCount, &currency);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.npc.expanded_barter_delfromsql_sub(npcname, itemId, zeny, currencyCount, currency);
+ }
+ if (HPMHooks.count.HP_npc_expanded_barter_delfromsql_sub_post > 0) {
+ void (*postHookFunc) (const char *npcname, int itemId, int zeny, int currencyCount, struct npc_barter_currency *currency);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_npc_expanded_barter_delfromsql_sub_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_npc_expanded_barter_delfromsql_sub_post[hIndex].func;
+ postHookFunc(npcname, itemId, zeny, currencyCount, currency);
+ }
+ }
+ return;
+}
bool HP_npc_db_checkid(const int id) {
int hIndex = 0;
bool retVal___ = false;
@@ -75306,6 +75515,33 @@ void HP_script_run_item_lapineddukddak_script(struct map_session_data *sd, struc
}
return;
}
+bool HP_script_sellitemcurrency_add(struct npc_data *nd, struct script_state *st, int argIndex) {
+ int hIndex = 0;
+ bool retVal___ = false;
+ if (HPMHooks.count.HP_script_sellitemcurrency_add_pre > 0) {
+ bool (*preHookFunc) (struct npc_data **nd, struct script_state **st, int *argIndex);
+ *HPMforce_return = false;
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_script_sellitemcurrency_add_pre; hIndex++) {
+ preHookFunc = HPMHooks.list.HP_script_sellitemcurrency_add_pre[hIndex].func;
+ retVal___ = preHookFunc(&nd, &st, &argIndex);
+ }
+ if (*HPMforce_return) {
+ *HPMforce_return = false;
+ return retVal___;
+ }
+ }
+ {
+ retVal___ = HPMHooks.source.script.sellitemcurrency_add(nd, st, argIndex);
+ }
+ if (HPMHooks.count.HP_script_sellitemcurrency_add_post > 0) {
+ bool (*postHookFunc) (bool retVal___, struct npc_data *nd, struct script_state *st, int argIndex);
+ for (hIndex = 0; hIndex < HPMHooks.count.HP_script_sellitemcurrency_add_post; hIndex++) {
+ postHookFunc = HPMHooks.list.HP_script_sellitemcurrency_add_post[hIndex].func;
+ retVal___ = postHookFunc(retVal___, nd, st, argIndex);
+ }
+ }
+ return retVal___;
+}
/* searchstore_interface */
bool HP_searchstore_open(struct map_session_data *sd, unsigned int uses, unsigned short effect) {
int hIndex = 0;