summaryrefslogtreecommitdiff
path: root/src/q_invas.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/q_invas.cc')
-rw-r--r--src/q_invas.cc19
1 files changed, 9 insertions, 10 deletions
diff --git a/src/q_invas.cc b/src/q_invas.cc
index 03281ba6..983e84fb 100644
--- a/src/q_invas.cc
+++ b/src/q_invas.cc
@@ -46,13 +46,12 @@ static bool_ quest_invasion_gen_hook(void *, void *, void *)
return TRUE;
}
-static bool_ quest_invasion_ai_hook(const char *fmt)
+static bool_ quest_invasion_ai_hook(void *, void *in_, void *out_)
{
- monster_type *m_ptr;
- s32b m_idx;
-
- m_idx = get_next_arg(fmt);
- m_ptr = &m_list[m_idx];
+ struct hook_monster_ai_in *in = static_cast<struct hook_monster_ai_in *>(in_);
+ struct hook_monster_ai_out *out = static_cast<struct hook_monster_ai_out *>(out_);
+ monster_type *m_ptr = in->m_ptr;
+ s32b m_idx = in->m_idx;
if (p_ptr->inside_quest != QUEST_INVASION) return FALSE;
@@ -77,8 +76,8 @@ static bool_ quest_invasion_ai_hook(const char *fmt)
}
else
{
- process_hooks_return[0].num = cquest.data[0];
- process_hooks_return[1].num = cquest.data[1];
+ out->y = cquest.data[0];
+ out->x = cquest.data[1];
return (TRUE);
}
}
@@ -198,8 +197,8 @@ bool_ quest_invasion_init_hook(int q_idx)
add_hook_new(HOOK_CHAR_DUMP, quest_invasion_dump_hook, "invasion_dump", NULL);
if ((cquest.status >= QUEST_STATUS_TAKEN) && (cquest.status < QUEST_STATUS_FINISHED))
{
- add_hook (HOOK_MONSTER_AI, quest_invasion_ai_hook, "invasion_ai");
- add_hook_new(HOOK_GEN_QUEST, quest_invasion_gen_hook, "invasion_gen", NULL);
+ add_hook_new(HOOK_MONSTER_AI, quest_invasion_ai_hook, "invasion_ai", NULL);
+ add_hook_new(HOOK_GEN_QUEST, quest_invasion_gen_hook, "invasion_gen", NULL);
add_hook_new(HOOK_MONSTER_DEATH, quest_invasion_death_hook, "invasion_death", NULL);
add_hook_new(HOOK_STAIR, quest_invasion_stair_hook, "invasion_stair", NULL);
}