summaryrefslogtreecommitdiff
path: root/src/plugins/HPMHooking
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/HPMHooking')
-rw-r--r--src/plugins/HPMHooking/HPMHooking_map.HPMHooksCore.inc4
-rw-r--r--src/plugins/HPMHooking/HPMHooking_map.HookingPoints.inc1
-rw-r--r--src/plugins/HPMHooking/HPMHooking_map.Hooks.inc26
3 files changed, 31 insertions, 0 deletions
diff --git a/src/plugins/HPMHooking/HPMHooking_map.HPMHooksCore.inc b/src/plugins/HPMHooking/HPMHooking_map.HPMHooksCore.inc
index f3e3711c1..650f31d35 100644
--- a/src/plugins/HPMHooking/HPMHooking_map.HPMHooksCore.inc
+++ b/src/plugins/HPMHooking/HPMHooking_map.HPMHooksCore.inc
@@ -4941,6 +4941,8 @@ struct {
struct HPMHookPoint *HP_status_calc_pet__post;
struct HPMHookPoint *HP_status_calc_pc__pre;
struct HPMHookPoint *HP_status_calc_pc__post;
+ struct HPMHookPoint *HP_status_calc_pc_additional_pre;
+ struct HPMHookPoint *HP_status_calc_pc_additional_post;
struct HPMHookPoint *HP_status_calc_homunculus__pre;
struct HPMHookPoint *HP_status_calc_homunculus__post;
struct HPMHookPoint *HP_status_calc_mercenary__pre;
@@ -10160,6 +10162,8 @@ struct {
int HP_status_calc_pet__post;
int HP_status_calc_pc__pre;
int HP_status_calc_pc__post;
+ int HP_status_calc_pc_additional_pre;
+ int HP_status_calc_pc_additional_post;
int HP_status_calc_homunculus__pre;
int HP_status_calc_homunculus__post;
int HP_status_calc_mercenary__pre;
diff --git a/src/plugins/HPMHooking/HPMHooking_map.HookingPoints.inc b/src/plugins/HPMHooking/HPMHooking_map.HookingPoints.inc
index 4e23425ec..33e6cd053 100644
--- a/src/plugins/HPMHooking/HPMHooking_map.HookingPoints.inc
+++ b/src/plugins/HPMHooking/HPMHooking_map.HookingPoints.inc
@@ -2508,6 +2508,7 @@ struct HookingPointData HookingPoints[] = {
{ HP_POP(status->calc_mob_, HP_status_calc_mob_) },
{ HP_POP(status->calc_pet_, HP_status_calc_pet_) },
{ HP_POP(status->calc_pc_, HP_status_calc_pc_) },
+ { HP_POP(status->calc_pc_additional, HP_status_calc_pc_additional) },
{ HP_POP(status->calc_homunculus_, HP_status_calc_homunculus_) },
{ HP_POP(status->calc_mercenary_, HP_status_calc_mercenary_) },
{ HP_POP(status->calc_elemental_, HP_status_calc_elemental_) },
diff --git a/src/plugins/HPMHooking/HPMHooking_map.Hooks.inc b/src/plugins/HPMHooking/HPMHooking_map.Hooks.inc
index 85f477bec..b8dd9db2f 100644
--- a/src/plugins/HPMHooking/HPMHooking_map.Hooks.inc
+++ b/src/plugins/HPMHooking/HPMHooking_map.Hooks.inc
@@ -66453,6 +66453,32 @@ int HP_status_calc_pc_(struct map_session_data *sd, enum e_status_calc_opt opt)
}
return retVal___;
}
+void HP_status_calc_pc_additional(struct map_session_data *sd, enum e_status_calc_opt opt) {
+ int hIndex = 0;
+ if( HPMHooks.count.HP_status_calc_pc_additional_pre ) {
+ void (*preHookFunc) (struct map_session_data *sd, enum e_status_calc_opt *opt);
+ *HPMforce_return = false;
+ for(hIndex = 0; hIndex < HPMHooks.count.HP_status_calc_pc_additional_pre; hIndex++ ) {
+ preHookFunc = HPMHooks.list.HP_status_calc_pc_additional_pre[hIndex].func;
+ preHookFunc(sd, &opt);
+ }
+ if( *HPMforce_return ) {
+ *HPMforce_return = false;
+ return;
+ }
+ }
+ {
+ HPMHooks.source.status.calc_pc_additional(sd, opt);
+ }
+ if( HPMHooks.count.HP_status_calc_pc_additional_post ) {
+ void (*postHookFunc) (struct map_session_data *sd, enum e_status_calc_opt *opt);
+ for(hIndex = 0; hIndex < HPMHooks.count.HP_status_calc_pc_additional_post; hIndex++ ) {
+ postHookFunc = HPMHooks.list.HP_status_calc_pc_additional_post[hIndex].func;
+ postHookFunc(sd, &opt);
+ }
+ }
+ return;
+}
int HP_status_calc_homunculus_(struct homun_data *hd, enum e_status_calc_opt opt) {
int hIndex = 0;
int retVal___ = 0;