summaryrefslogtreecommitdiff
path: root/src/q_shroom.cc
diff options
context:
space:
mode:
Diffstat (limited to 'src/q_shroom.cc')
-rw-r--r--src/q_shroom.cc52
1 files changed, 25 insertions, 27 deletions
diff --git a/src/q_shroom.cc b/src/q_shroom.cc
index 627f2b39..10347512 100644
--- a/src/q_shroom.cc
+++ b/src/q_shroom.cc
@@ -18,8 +18,10 @@
#include "util.hpp"
#include "variable.hpp"
#include "z-rand.hpp"
+#include "z-term.hpp"
#include <cassert>
+#include <fmt/format.h>
#define cquest (quest[QUEST_SHROOM])
@@ -33,12 +35,11 @@ GENERATE_MONSTER_LOOKUP_FN(get_farmer_maggot, "Farmer Maggot")
static bool quest_shroom_town_gen_hook(void *, void *in_, void *)
{
- struct hook_wild_gen_in *in = static_cast<struct hook_wild_gen_in *>(in_);
+ auto in = static_cast<struct hook_wild_gen_in const *>(in_);
int m_idx, x = 1, y = 1, tries = 10000;
- bool_ small = in->small;
/* Generate the shrooms field */
- if ((!small) && (p_ptr->wilderness_y == 21) && (p_ptr->wilderness_x == 33))
+ if ((!in->small) && (p_ptr->wilderness_y == 21) && (p_ptr->wilderness_x == 33))
{
/* Create the field */
for (x = (cur_wid / 2) - 7; x <= (cur_wid / 2) + 7; x++)
@@ -64,30 +65,30 @@ static bool quest_shroom_town_gen_hook(void *, void *in_, void *)
/* Throw in some dogs ;) */
y = rand_range((cur_hgt / 2) - 5, (cur_hgt / 2) + 5);
x = rand_range((cur_wid / 2) - 7, (cur_wid / 2) + 7);
- m_allow_special[get_grip()] = TRUE;
- m_idx = place_monster_one(y, x, get_grip(), 0, FALSE, MSTATUS_ENEMY);
+ m_allow_special[get_grip()] = true;
+ m_idx = place_monster_one(y, x, get_grip(), 0, false, MSTATUS_ENEMY);
if (m_idx) m_list[m_idx].mflag |= MFLAG_QUEST;
- m_allow_special[get_grip()] = FALSE;
+ m_allow_special[get_grip()] = false;
y = rand_range((cur_hgt / 2) - 5, (cur_hgt / 2) + 5);
x = rand_range((cur_wid / 2) - 7, (cur_wid / 2) + 7);
- m_allow_special[get_wolf()] = TRUE;
- m_idx = place_monster_one(y, x, get_wolf(), 0, FALSE, MSTATUS_ENEMY);
+ m_allow_special[get_wolf()] = true;
+ m_idx = place_monster_one(y, x, get_wolf(), 0, false, MSTATUS_ENEMY);
if (m_idx) m_list[m_idx].mflag |= MFLAG_QUEST;
- m_allow_special[get_wolf()] = FALSE;
+ m_allow_special[get_wolf()] = false;
y = rand_range((cur_hgt / 2) - 5, (cur_hgt / 2) + 5);
x = rand_range((cur_wid / 2) - 7, (cur_wid / 2) + 7);
- m_allow_special[get_fang()] = TRUE;
- m_idx = place_monster_one(y, x, get_fang(), 0, FALSE, MSTATUS_ENEMY);
+ m_allow_special[get_fang()] = true;
+ m_idx = place_monster_one(y, x, get_fang(), 0, false, MSTATUS_ENEMY);
if (m_idx) m_list[m_idx].mflag |= MFLAG_QUEST;
- m_allow_special[get_fang()] = FALSE;
+ m_allow_special[get_fang()] = false;
msg_print("You hear frenzied barking.");
}
/* Generate maggot in town, in daylight */
- if ((bst(HOUR, turn) < 6) || (bst(HOUR, turn) >= 18) || (cquest.status > QUEST_STATUS_COMPLETED) || (small) || (p_ptr->town_num != 1))
+ if ((bst(HOUR, turn) < 6) || (bst(HOUR, turn) >= 18) || (cquest.status > QUEST_STATUS_COMPLETED) || in->small || (p_ptr->town_num != 1))
{
return false;
}
@@ -112,9 +113,9 @@ static bool quest_shroom_town_gen_hook(void *, void *in_, void *)
}
/* Place Farmer Maggot */
- m_allow_special[get_farmer_maggot()] = TRUE;
- place_monster_one(y, x, get_farmer_maggot(), 0, FALSE, MSTATUS_ENEMY);
- m_allow_special[get_farmer_maggot()] = FALSE;
+ m_allow_special[get_farmer_maggot()] = true;
+ place_monster_one(y, x, get_farmer_maggot(), 0, false, MSTATUS_ENEMY);
+ m_allow_special[get_farmer_maggot()] = false;
return false;
}
@@ -172,7 +173,7 @@ static bool quest_shroom_give_hook(void *, void *in_, void *)
del_hook_new(HOOK_GIVE, quest_shroom_give_hook);
del_hook_new(HOOK_CHAT, quest_shroom_speak_hook);
del_hook_new(HOOK_WILD_GEN, quest_shroom_town_gen_hook);
- process_hooks_restart = TRUE;
+ process_hooks_restart = true;
return true;
}
@@ -201,10 +202,10 @@ static bool quest_shroom_give_hook(void *, void *in_, void *)
object_aware(q_ptr);
object_known(q_ptr);
q_ptr->discount = 100;
- q_ptr->ident |= IDENT_STOREB;
+
if (inven_carry_okay(q_ptr))
{
- inven_carry(q_ptr, FALSE);
+ inven_carry(q_ptr, false);
}
else
{
@@ -217,19 +218,16 @@ static bool quest_shroom_give_hook(void *, void *in_, void *)
q_ptr->found = OBJ_FOUND_REWARD;
q_ptr->number = 1;
q_ptr->name1 = 149;
- apply_magic(q_ptr, -1, TRUE, TRUE, TRUE);
- object_aware(q_ptr);
- object_known(q_ptr);
+ apply_magic(q_ptr, -1, true, true, true);
q_ptr->discount = 100;
- q_ptr->ident |= IDENT_STOREB;
- inven_carry(q_ptr, FALSE);
+ inven_carry(q_ptr, false);
delete_monster_idx(m_idx);
cquest.status = QUEST_STATUS_FINISHED;
del_hook_new(HOOK_GIVE, quest_shroom_give_hook);
- process_hooks_restart = TRUE;
+ process_hooks_restart = true;
}
else
{
@@ -256,7 +254,7 @@ static void check_dogs_alive(s32b m_idx)
del_hook_new(HOOK_MON_SPEAK, quest_shroom_speak_hook);
del_hook_new(HOOK_CHAT, quest_shroom_chat_hook);
del_hook_new(HOOK_WILD_GEN, quest_shroom_town_gen_hook);
- process_hooks_restart = TRUE;
+ process_hooks_restart = true;
}
else
{
@@ -328,7 +326,7 @@ void quest_shroom_init_hook()
cquest.data[1] = rand_range(7, 14);
if (wizard)
{
- messages.add(format("Shrooms number %d", cquest.data[1]), TERM_BLUE);
+ messages.add(fmt::format("Shrooms number {}", cquest.data[1]), TERM_BLUE);
}
}