summaryrefslogtreecommitdiff
path: root/src/q_one.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/q_one.cc')
-rw-r--r--src/q_one.cc16
1 files changed, 8 insertions, 8 deletions
diff --git a/src/q_one.cc b/src/q_one.cc
index a1f37f76..f7994c8a 100644
--- a/src/q_one.cc
+++ b/src/q_one.cc
@@ -151,19 +151,19 @@ static bool_ quest_one_wield_hook(void *, void *in_, void *)
return FALSE;
}
-static bool_ quest_one_hp_hook(const char *fmt)
+static bool_ quest_one_hp_hook(void *, void *in_, void *out_)
{
+ struct hook_calculate_hp_in *in = static_cast<struct hook_calculate_hp_in *>(in_);
+ struct hook_calculate_hp_out *out = static_cast<struct hook_calculate_hp_out *>(out_);
+
if (cquest.status == QUEST_STATUS_FAILED_DONE)
{
- s32b mhp;
- int i;
-
- mhp = get_next_arg(fmt);
+ s32b mhp = in->mhp;
- for (i = 0; i < p_ptr->lives + 1; i++)
+ for (int i = 0; i < p_ptr->lives + 1; i++)
mhp = (mhp * 2) / 3;
- process_hooks_return[0].num = mhp;
+ out->mhp = mhp;
return (TRUE);
}
return (FALSE);
@@ -349,7 +349,7 @@ bool_ quest_one_init_hook(int q_idx)
add_hook_new(HOOK_MOVE, quest_one_move_hook, "one_move", NULL);
}
add_hook_new(HOOK_CHAR_DUMP, quest_one_dump_hook, "one_dump", NULL);
- add_hook (HOOK_CALC_HP, quest_one_hp_hook, "one_hp");
+ add_hook_new(HOOK_CALC_HP, quest_one_hp_hook, "one_hp", NULL);
add_hook (HOOK_DIE, quest_one_die_hook, "one_die");
return (FALSE);
}