OSDN Git Service

[Refactor] #37353 コメント整理。 / Refactor comments.
[hengband/hengband.git] / src / spells2.c
index 8d5b444..effed82 100644 (file)
@@ -14,6 +14,8 @@
 #include "angband.h"
 #include "grid.h"
 #include "trap.h"
+#include "monsterrace-hook.h"
+#include "melee.h"
 
 
 /*!
@@ -25,8 +27,8 @@
  */
 static bool detect_feat_flag(POSITION range, int flag, bool known)
 {
-       int       x, y;
-       bool      detect = FALSE;
+       POSITION x, y;
+       bool detect = FALSE;
        cave_type *c_ptr;
 
        if (d_info[dungeon_type].flags1 & DF1_DARKNESS) range /= 3;
@@ -38,8 +40,6 @@ static bool detect_feat_flag(POSITION range, int flag, bool known)
                {
                        int dist = distance(p_ptr->y, p_ptr->x, y, x);
                        if (dist > range) continue;
-
-                       /* Access the grid */
                        c_ptr = &cave[y][x];
 
                        /* Hack -- Safe */
@@ -52,7 +52,6 @@ static bool detect_feat_flag(POSITION range, int flag, bool known)
 
                                        c_ptr->info &= ~(CAVE_UNSAFE);
 
-                                       /* Redraw */
                                        lite_spot(y, x);
                                }
                        }
@@ -66,16 +65,12 @@ static bool detect_feat_flag(POSITION range, int flag, bool known)
                                /* Hack -- Memorize */
                                c_ptr->info |= (CAVE_MARK);
 
-                               /* Redraw */
                                lite_spot(y, x);
 
-                               /* Obvious */
                                detect = TRUE;
                        }
                }
        }
-
-       /* Result */
        return detect;
 }
 
@@ -93,14 +88,10 @@ bool detect_traps(POSITION range, bool known)
        if (known) p_ptr->dtrap = TRUE;
 
        if (music_singing(MUSIC_DETECT) && SINGING_COUNT(p_ptr) > 0) detect = FALSE;
-
-       /* Describe */
        if (detect)
        {
                msg_print(_("トラップの存在を感じとった!", "You sense the presence of traps!"));
        }
-
-       /* Result */
        return detect;
 }
 
@@ -115,14 +106,10 @@ bool detect_doors(POSITION range)
        bool detect = detect_feat_flag(range, FF_DOOR, TRUE);
 
        if (music_singing(MUSIC_DETECT) && SINGING_COUNT(p_ptr) > 0) detect = FALSE;
-
-       /* Describe */
        if (detect)
        {
                msg_print(_("ドアの存在を感じとった!", "You sense the presence of doors!"));
        }
-
-       /* Result */
        return detect;
 }
 
@@ -137,14 +124,10 @@ bool detect_stairs(POSITION range)
        bool detect = detect_feat_flag(range, FF_STAIRS, TRUE);
 
        if (music_singing(MUSIC_DETECT) && SINGING_COUNT(p_ptr) > 0) detect = FALSE;
-
-       /* Describe */
        if (detect)
        {
                msg_print(_("階段の存在を感じとった!", "You sense the presence of stairs!"));
        }
-
-       /* Result */
        return detect;
 }
 
@@ -159,14 +142,10 @@ bool detect_treasure(POSITION range)
        bool detect = detect_feat_flag(range, FF_HAS_GOLD, TRUE);
 
        if (music_singing(MUSIC_DETECT) && SINGING_COUNT(p_ptr) > 6) detect = FALSE;
-
-       /* Describe */
        if (detect)
        {
                msg_print(_("埋蔵された財宝の存在を感じとった!", "You sense the presence of buried treasure!"));
        }
-
-       /* Result */
        return detect;
 }
 
@@ -178,7 +157,8 @@ bool detect_treasure(POSITION range)
  */
 bool detect_objects_gold(POSITION range)
 {
-       int i, y, x;
+       OBJECT_IDX i;
+       POSITION y, x;
        POSITION range2 = range;
 
        bool detect = FALSE;
@@ -205,20 +185,13 @@ bool detect_objects_gold(POSITION range)
                /* Detect "gold" objects */
                if (o_ptr->tval == TV_GOLD)
                {
-                       /* Hack -- memorize it */
                        o_ptr->marked |= OM_FOUND;
-
-                       /* Redraw */
                        lite_spot(y, x);
-
-                       /* Detect */
                        detect = TRUE;
                }
        }
 
        if (music_singing(MUSIC_DETECT) && SINGING_COUNT(p_ptr) > 6) detect = FALSE;
-
-       /* Describe */
        if (detect)
        {
                msg_print(_("財宝の存在を感じとった!", "You sense the presence of treasure!"));
@@ -228,8 +201,6 @@ bool detect_objects_gold(POSITION range)
        {
                detect = TRUE;
        }
-
-       /* Result */
        return (detect);
 }
 
@@ -241,7 +212,8 @@ bool detect_objects_gold(POSITION range)
  */
 bool detect_objects_normal(POSITION range)
 {
-       int i, y, x;
+       OBJECT_IDX i;
+       POSITION y, x;
        POSITION range2 = range;
 
        bool detect = FALSE;
@@ -268,20 +240,13 @@ bool detect_objects_normal(POSITION range)
                /* Detect "real" objects */
                if (o_ptr->tval != TV_GOLD)
                {
-                       /* Hack -- memorize it */
                        o_ptr->marked |= OM_FOUND;
-
-                       /* Redraw */
                        lite_spot(y, x);
-
-                       /* Detect */
                        detect = TRUE;
                }
        }
 
        if (music_singing(MUSIC_DETECT) && SINGING_COUNT(p_ptr) > 6) detect = FALSE;
-
-       /* Describe */
        if (detect)
        {
                msg_print(_("アイテムの存在を感じとった!", "You sense the presence of objects!"));
@@ -291,8 +256,6 @@ bool detect_objects_normal(POSITION range)
        {
                detect = TRUE;
        }
-
-       /* Result */
        return (detect);
 }
 
@@ -312,7 +275,9 @@ bool detect_objects_normal(POSITION range)
  */
 bool detect_objects_magic(POSITION range)
 {
-       int i, y, x, tv;
+       OBJECT_TYPE_VALUE tv;
+       OBJECT_IDX i;
+       POSITION y, x;
 
        bool detect = FALSE;
 
@@ -366,16 +331,10 @@ bool detect_objects_magic(POSITION range)
                {
                        /* Memorize the item */
                        o_ptr->marked |= OM_FOUND;
-
-                       /* Redraw */
                        lite_spot(y, x);
-
-                       /* Detect */
                        detect = TRUE;
                }
        }
-
-       /* Describe */
        if (detect)
        {
                msg_print(_("魔法のアイテムの存在を感じとった!", "You sense the presence of magic objects!"));
@@ -395,12 +354,10 @@ bool detect_monsters_normal(POSITION range)
 {
        MONSTER_IDX i;
        POSITION y, x;
-
        bool flag = FALSE;
 
        if (d_info[dungeon_type].flags1 & DF1_DARKNESS) range /= 3;
 
-       /* Scan monsters */
        for (i = 1; i < m_max; i++)
        {
                monster_type *m_ptr = &m_list[i];
@@ -421,27 +378,17 @@ bool detect_monsters_normal(POSITION range)
                        /* Repair visibility later */
                        repair_monsters = TRUE;
 
-                       /* Hack -- Detect monster */
                        m_ptr->mflag2 |= (MFLAG2_MARK | MFLAG2_SHOW);
-
-                       /* Update the monster */
-                       update_mon(i, FALSE);
-
-                       /* Detect */
+                       update_monster(i, FALSE);
                        flag = TRUE;
                }
        }
 
        if (music_singing(MUSIC_DETECT) && SINGING_COUNT(p_ptr) > 3) flag = FALSE;
-
-       /* Describe */
        if (flag)
        {
-               /* Describe result */
                msg_print(_("モンスターの存在を感じとった!", "You sense the presence of monsters!"));
        }
-
-       /* Result */
        return (flag);
 }
 
@@ -459,7 +406,6 @@ bool detect_monsters_invis(POSITION range)
 
        if (d_info[dungeon_type].flags1 & DF1_DARKNESS) range /= 3;
 
-       /* Scan monsters */
        for (i = 1; i < m_max; i++)
        {
                monster_type *m_ptr = &m_list[i];
@@ -486,27 +432,17 @@ bool detect_monsters_invis(POSITION range)
                        /* Repair visibility later */
                        repair_monsters = TRUE;
 
-                       /* Hack -- Detect monster */
                        m_ptr->mflag2 |= (MFLAG2_MARK | MFLAG2_SHOW);
-
-                       /* Update the monster */
-                       update_mon(i, FALSE);
-
-                       /* Detect */
+                       update_monster(i, FALSE);
                        flag = TRUE;
                }
        }
 
        if (music_singing(MUSIC_DETECT) && SINGING_COUNT(p_ptr) > 3) flag = FALSE;
-
-       /* Describe */
        if (flag)
        {
-               /* Describe result */
                msg_print(_("透明な生物の存在を感じとった!", "You sense the presence of invisible creatures!"));
        }
-
-       /* Result */
        return (flag);
 }
 
@@ -523,7 +459,6 @@ bool detect_monsters_evil(POSITION range)
 
        if (d_info[dungeon_type].flags1 & DF1_DARKNESS) range /= 3;
 
-       /* Scan monsters */
        for (i = 1; i < m_max; i++)
        {
                monster_type *m_ptr = &m_list[i];
@@ -556,25 +491,15 @@ bool detect_monsters_evil(POSITION range)
                        /* Repair visibility later */
                        repair_monsters = TRUE;
 
-                       /* Hack -- Detect monster */
                        m_ptr->mflag2 |= (MFLAG2_MARK | MFLAG2_SHOW);
-
-                       /* Update the monster */
-                       update_mon(i, FALSE);
-
-                       /* Detect */
+                       update_monster(i, FALSE);
                        flag = TRUE;
                }
        }
-
-       /* Describe */
        if (flag)
        {
-               /* Describe result */
                msg_print(_("邪悪なる生物の存在を感じとった!", "You sense the presence of evil creatures!"));
        }
-
-       /* Result */
        return (flag);
 }
 
@@ -591,11 +516,9 @@ bool detect_monsters_nonliving(POSITION range)
 
        if (d_info[dungeon_type].flags1 & DF1_DARKNESS) range /= 3;
 
-       /* Scan monsters */
        for (i = 1; i < m_max; i++)
        {
                monster_type *m_ptr = &m_list[i];
-               monster_race *r_ptr = &r_info[m_ptr->r_idx];
 
                /* Skip dead monsters */
                if (!m_ptr->r_idx) continue;
@@ -607,7 +530,7 @@ bool detect_monsters_nonliving(POSITION range)
                if (distance(p_ptr->y, p_ptr->x, y, x) > range) continue;
 
                /* Detect non-living monsters */
-               if (!monster_living(r_ptr))
+               if (!monster_living(m_ptr->r_idx))
                {
                        /* Update monster recall window */
                        if (p_ptr->monster_race_idx == m_ptr->r_idx)
@@ -618,25 +541,15 @@ bool detect_monsters_nonliving(POSITION range)
                        /* Repair visibility later */
                        repair_monsters = TRUE;
 
-                       /* Hack -- Detect monster */
                        m_ptr->mflag2 |= (MFLAG2_MARK | MFLAG2_SHOW);
-
-                       /* Update the monster */
-                       update_mon(i, FALSE);
-
-                       /* Detect */
+                       update_monster(i, FALSE);
                        flag = TRUE;
                }
        }
-
-       /* Describe */
        if (flag)
        {
-               /* Describe result */
                msg_print(_("自然でないモンスターの存在を感じた!", "You sense the presence of unnatural beings!"));
        }
-
-       /* Result */
        return (flag);
 }
 
@@ -649,11 +562,10 @@ bool detect_monsters_mind(POSITION range)
 {
        MONSTER_IDX i;
        POSITION y, x;
-       bool    flag = FALSE;
+       bool flag = FALSE;
 
        if (d_info[dungeon_type].flags1 & DF1_DARKNESS) range /= 3;
 
-       /* Scan monsters */
        for (i = 1; i < m_max; i++)
        {
                monster_type *m_ptr = &m_list[i];
@@ -680,25 +592,15 @@ bool detect_monsters_mind(POSITION range)
                        /* Repair visibility later */
                        repair_monsters = TRUE;
 
-                       /* Hack -- Detect monster */
                        m_ptr->mflag2 |= (MFLAG2_MARK | MFLAG2_SHOW);
-
-                       /* Update the monster */
-                       update_mon(i, FALSE);
-
-                       /* Detect */
+                       update_monster(i, FALSE);
                        flag = TRUE;
                }
        }
-
-       /* Describe */
        if (flag)
        {
-               /* Describe result */
                msg_print(_("殺気を感じとった!", "You sense the presence of someone's mind!"));
        }
-
-       /* Result */
        return (flag);
 }
 
@@ -717,7 +619,6 @@ bool detect_monsters_string(POSITION range, cptr Match)
 
        if (d_info[dungeon_type].flags1 & DF1_DARKNESS) range /= 3;
 
-       /* Scan monsters */
        for (i = 1; i < m_max; i++)
        {
                monster_type *m_ptr = &m_list[i];
@@ -744,27 +645,17 @@ bool detect_monsters_string(POSITION range, cptr Match)
                        /* Repair visibility later */
                        repair_monsters = TRUE;
 
-                       /* Hack -- Detect monster */
                        m_ptr->mflag2 |= (MFLAG2_MARK | MFLAG2_SHOW);
-
-                       /* Update the monster */
-                       update_mon(i, FALSE);
-
-                       /* Detect */
+                       update_monster(i, FALSE);
                        flag = TRUE;
                }
        }
 
        if (music_singing(MUSIC_DETECT) && SINGING_COUNT(p_ptr) > 3) flag = FALSE;
-
-       /* Describe */
        if (flag)
        {
-               /* Describe result */
                msg_print(_("モンスターの存在を感じとった!", "You sense the presence of monsters!"));
        }
-
-       /* Result */
        return (flag);
 }
 
@@ -783,7 +674,6 @@ bool detect_monsters_xxx(POSITION range, u32b match_flag)
 
        if (d_info[dungeon_type].flags1 & DF1_DARKNESS) range /= 3;
 
-       /* Scan monsters */
        for (i = 1; i < m_max; i++)
        {
                monster_type *m_ptr = &m_list[i];
@@ -816,18 +706,11 @@ bool detect_monsters_xxx(POSITION range, u32b match_flag)
                        /* Repair visibility later */
                        repair_monsters = TRUE;
 
-                       /* Hack -- Detect monster */
                        m_ptr->mflag2 |= (MFLAG2_MARK | MFLAG2_SHOW);
-
-                       /* Update the monster */
-                       update_mon(i, FALSE);
-
-                       /* Detect */
+                       update_monster(i, FALSE);
                        flag = TRUE;
                }
        }
-
-       /* Describe */
        if (flag)
        {
                switch (match_flag)
@@ -840,12 +723,9 @@ bool detect_monsters_xxx(POSITION range, u32b match_flag)
                                break;
                }
 
-               /* Describe result */
                msg_format(_("%sの存在を感じとった!", "You sense the presence of %s!"), desc_monsters);
                msg_print(NULL);
        }
-
-       /* Result */
        return (flag);
 }
 
@@ -871,8 +751,6 @@ bool detect_all(POSITION range)
        if (detect_objects_normal(range)) detect = TRUE;
        if (detect_monsters_invis(range)) detect = TRUE;
        if (detect_monsters_normal(range)) detect = TRUE;
-
-       /* Result */
        return (detect);
 }
 
@@ -933,8 +811,6 @@ bool project_hack(EFFECT_ID typ, HIT_POINT dam)
                /* Jump directly to the target monster */
                if (project(0, 0, y, x, dam, typ, flg, -1)) obvious = TRUE;
        }
-
-       /* Result */
        return (obvious);
 }
 
@@ -1067,8 +943,7 @@ void aggravate_monsters(MONSTER_IDX who)
        /* Aggravate everyone nearby */
        for (i = 1; i < m_max; i++)
        {
-               monster_type    *m_ptr = &m_list[i];
-/*             monster_race    *r_ptr = &r_info[m_ptr->r_idx]; */
+               monster_type *m_ptr = &m_list[i];
 
                /* Paranoia -- Skip dead monsters */
                if (!m_ptr->r_idx) continue;
@@ -1176,25 +1051,18 @@ bool genocide_aux(MONSTER_IDX m_idx, int power, bool player_cast, int dam_side,
 
        if (player_cast)
        {
-               /* Take damage */
                take_hit(DAMAGE_GENO, randint1(dam_side), format(_("%^sの呪文を唱えた疲労", "the strain of casting %^s"), spell_name), -1);
        }
 
        /* Visual feedback */
        move_cursor_relative(p_ptr->y, p_ptr->x);
 
-       /* Redraw */
        p_ptr->redraw |= (PR_HP);
-
        p_ptr->window |= (PW_PLAYER);
 
-       /* Handle */
        handle_stuff();
-
-       /* Fresh */
        Term_fresh();
 
-       /* Delay */
        Term_xtra(TERM_XTRA_DELAY, msec);
 
        return !resist;
@@ -1341,7 +1209,8 @@ bool mass_genocide_undead(int power, bool player_cast)
  */
 bool probing(void)
 {
-       int i, speed;
+       int i;
+       int speed; /* TODO */
        bool_hack cu, cv;
        bool probe = FALSE;
        char buf[256];
@@ -1425,8 +1294,9 @@ bool probing(void)
 
                        /* HACK : Add the line to message buffer */
                        message_add(buf);
+
                        p_ptr->window |= (PW_MESSAGE);
-                       window_stuff();
+                       handle_stuff();
 
                        if (m_ptr->ml) move_cursor_relative(m_ptr->fy, m_ptr->fx);
                        inkey();
@@ -1467,8 +1337,6 @@ bool probing(void)
                chg_virtue(V_KNOWLEDGE, 1);
                msg_print(_("これで全部です。", "That's all."));
        }
-
-       /* Result */
        return (probe);
 }
 
@@ -1494,7 +1362,7 @@ bool destroy_area(POSITION y1, POSITION x1, POSITION r, bool in_generate)
        POSITION y, x;
        int k, t;
        cave_type *c_ptr;
-       bool      flag = FALSE;
+       bool flag = FALSE;
 
        /* Prevent destruction of quest levels and town */
        if ((p_ptr->inside_quest && is_fixed_quest_idx(p_ptr->inside_quest)) || !dun_level)
@@ -1518,8 +1386,6 @@ bool destroy_area(POSITION y1, POSITION x1, POSITION r, bool in_generate)
 
                        /* Stay in the circle of death */
                        if (k > r) continue;
-
-                       /* Access the grid */
                        c_ptr = &cave[y][x];
 
                        /* Lose room and vault */
@@ -1589,8 +1455,6 @@ bool destroy_area(POSITION y1, POSITION x1, POSITION r, bool in_generate)
                                for (this_o_idx = c_ptr->o_idx; this_o_idx; this_o_idx = next_o_idx)
                                {
                                        object_type *o_ptr;
-
-                                       /* Acquire object */
                                        o_ptr = &o_list[this_o_idx];
 
                                        /* Acquire next object */
@@ -1694,8 +1558,6 @@ bool destroy_area(POSITION y1, POSITION x1, POSITION r, bool in_generate)
 
                                /* Stay in the circle of death */
                                if (k > r) continue;
-
-                               /* Access the grid */
                                c_ptr = &cave[y][x];
 
                                if (is_mirror_grid(c_ptr)) c_ptr->info |= CAVE_GLOW;
@@ -1740,7 +1602,6 @@ bool destroy_area(POSITION y1, POSITION x1, POSITION r, bool in_generate)
 
                p_ptr->update |= (PU_VIEW | PU_LITE | PU_FLOW | PU_MON_LITE | PU_MONSTERS);
 
-               /* Redraw map */
                p_ptr->redraw |= (PR_MAP);
 
                p_ptr->window |= (PW_OVERHEAD | PW_DUNGEON);
@@ -1828,8 +1689,6 @@ bool earthquake_aux(POSITION cy, POSITION cx, POSITION r, MONSTER_IDX m_idx)
 
                        /* Skip distant grids */
                        if (distance(cy, cx, yy, xx) > r) continue;
-
-                       /* Access the grid */
                        c_ptr = &cave[yy][xx];
 
                        /* Lose room and vault */
@@ -1943,7 +1802,6 @@ bool earthquake_aux(POSITION cy, POSITION cx, POSITION r, MONSTER_IDX m_idx)
                /* Important -- no wall on player */
                map[16+p_ptr->y-cy][16+p_ptr->x-cx] = FALSE;
 
-               /* Take some damage */
                if (damage)
                {
                        cptr killer;
@@ -1978,8 +1836,6 @@ bool earthquake_aux(POSITION cy, POSITION cx, POSITION r, MONSTER_IDX m_idx)
 
                        /* Skip unaffected grids */
                        if (!map[16+yy-cy][16+xx-cx]) continue;
-
-                       /* Access the grid */
                        c_ptr = &cave[yy][xx];
 
                        if (c_ptr->m_idx == p_ptr->riding) continue;
@@ -2014,7 +1870,6 @@ bool earthquake_aux(POSITION cy, POSITION cx, POSITION r, MONSTER_IDX m_idx)
                                                /* Look for safety */
                                                for (i = 0; i < 8; i++)
                                                {
-                                                       /* Access the grid */
                                                        y = yy + ddy_ddd[i];
                                                        x = xx + ddx_ddd[i];
 
@@ -2100,7 +1955,7 @@ bool earthquake_aux(POSITION cy, POSITION cx, POSITION r, MONSTER_IDX m_idx)
                                                m_ptr->fx = sx;
 
                                                /* Update the monster (new location) */
-                                               update_mon(m_idx, TRUE);
+                                               update_monster(m_idx, TRUE);
 
                                                /* Redraw the old grid */
                                                lite_spot(yy, xx);
@@ -2189,8 +2044,6 @@ bool earthquake_aux(POSITION cy, POSITION cx, POSITION r, MONSTER_IDX m_idx)
 
                        /* Skip distant grids */
                        if (distance(cy, cx, yy, xx) > r) continue;
-
-                       /* Access the grid */
                        c_ptr = &cave[yy][xx];
 
                        if (is_mirror_grid(c_ptr)) c_ptr->info |= CAVE_GLOW;
@@ -2224,7 +2077,6 @@ bool earthquake_aux(POSITION cy, POSITION cx, POSITION r, MONSTER_IDX m_idx)
        /* Update the health bar */
        p_ptr->redraw |= (PR_HEALTH | PR_UHEALTH);
 
-       /* Redraw map */
        p_ptr->redraw |= (PR_MAP);
 
        p_ptr->window |= (PW_OVERHEAD | PW_DUNGEON);
@@ -2355,9 +2207,7 @@ static void cave_temp_room_lite(void)
                        monster_type    *m_ptr = &m_list[c_ptr->m_idx];
 
                        monster_race    *r_ptr = &r_info[m_ptr->r_idx];
-
-                       /* Update the monster */
-                       update_mon(c_ptr->m_idx, FALSE);
+                       update_monster(c_ptr->m_idx, FALSE);
 
                        /* Stupid monsters rarely wake up */
                        if (r_ptr->flags2 & (RF2_STUPID)) chance = 10;
@@ -2375,11 +2225,7 @@ static void cave_temp_room_lite(void)
                                if (m_ptr->ml)
                                {
                                        char m_name[80];
-
-                                       /* Acquire the monster name */
                                        monster_desc(m_name, m_ptr, 0);
-
-                                       /* Dump a message */
                                        msg_format(_("%^sが目を覚ました。", "%^s wakes up."), m_name);
                                }
                        }
@@ -2388,7 +2234,6 @@ static void cave_temp_room_lite(void)
                /* Note */
                note_spot(y, x);
 
-               /* Redraw */
                lite_spot(y, x);
 
                update_local_illumination(y, x);
@@ -2468,11 +2313,9 @@ static void cave_temp_room_unlite(void)
                        /* Process affected monsters */
                        if (c_ptr->m_idx)
                        {
-                               /* Update the monster */
-                               update_mon(c_ptr->m_idx, FALSE);
+                               update_monster(c_ptr->m_idx, FALSE);
                        }
 
-                       /* Redraw */
                        lite_spot(y, x);
 
                        update_local_illumination(y, x);
@@ -3459,7 +3302,6 @@ bool wall_stone(void)
 
        p_ptr->update |= (PU_FLOW);
 
-       /* Redraw map */
        p_ptr->redraw |= (PR_MAP);
 
        return dummy;
@@ -4134,9 +3976,7 @@ bool rush_attack(bool *mdeath)
 
                /* Move player before updating the monster */
                if (!player_bold(ty, tx)) teleport_player_to(ty, tx, TELEPORT_NONMAGICAL);
-
-               /* Update the monster */
-               update_mon(cave[ny][nx].m_idx, TRUE);
+               update_monster(cave[ny][nx].m_idx, TRUE);
 
                /* Found a monster */
                m_ptr = &m_list[cave[ny][nx].m_idx];
@@ -4937,7 +4777,7 @@ bool_hack life_stream(bool_hack message, bool_hack virtue)
        (void)set_cut(0);
        (void)restore_all_status();
        (void)set_shero(0, TRUE);
-       update_stuff();
+       handle_stuff();
        hp_player(5000);
 
        return TRUE;