OSDN Git Service

[Refactor] #38861 cptr を concptrに改名 / rename cptr to concptr.
[hengband/hengband.git] / src / cmd1.c
index df65047..6fe3d66 100644 (file)
  */
 
 #include "angband.h"
+#include "melee.h"
 #include "trap.h"
 
 
@@ -279,13 +280,11 @@ static MULTIPLY mult_brand(MULTIPLY mult, const BIT_FLAGS* flgs, const monster_t
  * Note that most brands and slays are x3, except Slay Animal (x2),\n
  * Slay Evil (x2), and Kill dragon (x5).\n
  */
-s16b tot_dam_aux(object_type *o_ptr, int tdam, monster_type *m_ptr, BIT_FLAGS mode, bool thrown)
+HIT_POINT tot_dam_aux(object_type *o_ptr, HIT_POINT tdam, monster_type *m_ptr, BIT_FLAGS mode, bool thrown)
 {
        MULTIPLY mult = 10;
 
        BIT_FLAGS flgs[TR_FLAG_SIZE];
-
-       /* Extract the flags */
        object_flags(o_ptr, flgs);
        torch_flags(o_ptr, flgs); /* torches has secret flags */
 
@@ -358,8 +357,6 @@ static void discover_hidden_things(POSITION y, POSITION x)
 {
        OBJECT_IDX this_o_idx, next_o_idx = 0;
        cave_type *c_ptr;
-
-       /* Access the grid */
        c_ptr = &cave[y][x];
 
        /* Invisible trap */
@@ -368,32 +365,26 @@ static void discover_hidden_things(POSITION y, POSITION x)
                /* Pick a trap */
                disclose_grid(y, x);
 
-               /* Message */
                msg_print(_("トラップを発見した。", "You have found a trap."));
 
-               /* Disturb */
-               disturb(0, 1);
+               disturb(FALSE, TRUE);
        }
 
        /* Secret door */
        if (is_hidden_door(c_ptr))
        {
-               /* Message */
                msg_print(_("隠しドアを発見した。", "You have found a secret door."));
 
                /* Disclose */
                disclose_grid(y, x);
 
-               /* Disturb */
-               disturb(0, 0);
+               disturb(FALSE, FALSE);
        }
 
        /* Scan all objects in the grid */
        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 */
@@ -408,14 +399,13 @@ static void discover_hidden_things(POSITION y, POSITION x)
                /* Identify once */
                if (!object_is_known(o_ptr))
                {
-                       /* Message */
                        msg_print(_("箱に仕掛けられたトラップを発見した!", "You have discovered a trap on the chest!"));
 
                        /* Know the trap */
                        object_known(o_ptr);
 
                        /* Notice it */
-                       disturb(0, 0);
+                       disturb(FALSE, FALSE);
                }
        }
 }
@@ -467,12 +457,12 @@ void py_pickup_aux(OBJECT_IDX o_idx)
        INVENTORY_IDX slot;
 
 #ifdef JP
-       char o_name[MAX_NLEN];
-       char old_name[MAX_NLEN];
+       GAME_TEXT o_name[MAX_NLEN];
+       GAME_TEXT old_name[MAX_NLEN];
        char kazu_str[80];
        int hirottakazu;
 #else
-       char o_name[MAX_NLEN];
+       GAME_TEXT o_name[MAX_NLEN];
 #endif
 
        object_type *o_ptr;
@@ -480,7 +470,6 @@ void py_pickup_aux(OBJECT_IDX o_idx)
        o_ptr = &o_list[o_idx];
 
 #ifdef JP
-       /* Describe the object */
        object_desc(old_name, o_ptr, OD_NAME_ONLY);
        object_desc_kosuu(kazu_str, o_ptr);
        hirottakazu = o_ptr->number;
@@ -491,7 +480,6 @@ void py_pickup_aux(OBJECT_IDX o_idx)
        /* Get the object again */
        o_ptr = &inventory[slot];
 
-       /* Delete the object */
        delete_object_idx(o_idx);
 
        if (p_ptr->pseikaku == SEIKAKU_MUNCHKIN)
@@ -505,10 +493,8 @@ void py_pickup_aux(OBJECT_IDX o_idx)
                if (o_ptr->marked & OM_AUTODESTROY) return;
        }
 
-       /* Describe the object */
        object_desc(o_name, o_ptr, 0);
 
-       /* Message */
 #ifdef JP
        if ((o_ptr->name1 == ART_CRIMSON) && (p_ptr->pseikaku == SEIKAKU_COMBAT))
        {
@@ -557,45 +543,33 @@ void carry(bool pickup)
 {
        cave_type *c_ptr = &cave[p_ptr->y][p_ptr->x];
 
-       s16b this_o_idx, next_o_idx = 0;
+       OBJECT_IDX this_o_idx, next_o_idx = 0;
 
-       char    o_name[MAX_NLEN];
+       GAME_TEXT o_name[MAX_NLEN];
 
        /* Recenter the map around the player */
        verify_panel();
 
-       /* Update stuff */
        p_ptr->update |= (PU_MONSTERS);
 
-       /* Redraw map */
        p_ptr->redraw |= (PR_MAP);
 
-       /* Window stuff */
        p_ptr->window |= (PW_OVERHEAD);
-
-       /* Handle stuff */
        handle_stuff();
 
        /* Automatically pickup/destroy/inscribe items */
        autopick_pickup_items(c_ptr);
 
-
-#ifdef ALLOW_EASY_FLOOR
-
        if (easy_floor)
        {
                py_pickup_floor(pickup);
                return;
        }
 
-#endif /* ALLOW_EASY_FLOOR */
-
        /* Scan the pile of objects */
        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];
 
 #ifdef ALLOW_EASY_SENSE /* TNB */
@@ -609,14 +583,13 @@ void carry(bool pickup)
 
 #endif /* ALLOW_EASY_SENSE -- TNB */
 
-               /* Describe the object */
                object_desc(o_name, o_ptr, 0);
 
                /* Acquire next object */
                next_o_idx = o_ptr->next_o_idx;
 
                /* Hack -- disturb */
-               disturb(0, 0);
+               disturb(FALSE, FALSE);
 
                /* Pick up gold */
                if (o_ptr->tval == TV_GOLD)
@@ -626,7 +599,6 @@ void carry(bool pickup)
                        /* Delete the gold */
                        delete_object_idx(this_o_idx);
 
-                       /* Message */
                        msg_format(_(" $%ld の価値がある%sを見つけた。", "You collect %ld gold pieces worth of %s."),
                           (long)value, o_name);
 
@@ -638,7 +610,6 @@ void carry(bool pickup)
                        /* Redraw gold */
                        p_ptr->redraw |= (PR_GOLD);
 
-                       /* Window stuff */
                        p_ptr->window |= (PW_PLAYER);
                }
 
@@ -651,7 +622,6 @@ void carry(bool pickup)
                                /* Clear the flag. */
                                o_ptr->marked &= ~OM_NOMSG;
                        }
-                       /* Describe the object */
                        else if (!pickup)
                        {
                                msg_format(_("%sがある。", "You see %s."), o_name);
@@ -823,19 +793,17 @@ bool pattern_seq(POSITION c_y, POSITION c_x, POSITION n_y, POSITION n_x)
  * @param mode 移動に関するオプションフラグ
  * @return 移動可能ならばTRUEを返す
  */
-bool player_can_enter(s16b feature, u16b mode)
+bool player_can_enter(FEAT_IDX feature, BIT_FLAGS16 mode)
 {
        feature_type *f_ptr = &f_info[feature];
 
        if (p_ptr->riding) return monster_can_cross_terrain(feature, &r_info[m_list[p_ptr->riding].r_idx], mode | CEM_RIDING);
 
-       /* Pattern */
        if (have_flag(f_ptr->flags, FF_PATTERN))
        {
                if (!(mode & CEM_P_CAN_ENTER_PATTERN)) return FALSE;
        }
 
-       /* "CAN" flags */
        if (have_flag(f_ptr->flags, FF_CAN_FLY) && p_ptr->levitation) return TRUE;
        if (have_flag(f_ptr->flags, FF_CAN_SWIM) && p_ptr->can_swim) return TRUE;
        if (have_flag(f_ptr->flags, FF_CAN_PASS) && p_ptr->pass_wall) return TRUE;
@@ -853,7 +821,7 @@ bool player_can_enter(s16b feature, u16b mode)
  * @param mpe_mode 移動オプションフラグ
  * @return プレイヤーが死亡やフロア離脱を行わず、実際に移動が可能ならばTRUEを返す。
  */
-bool move_player_effect(POSITION ny, POSITION nx, u32b mpe_mode)
+bool move_player_effect(POSITION ny, POSITION nx, BIT_FLAGS mpe_mode)
 {
        cave_type *c_ptr = &cave[ny][nx];
        feature_type *f_ptr = &f_info[c_ptr->feat];
@@ -863,8 +831,8 @@ bool move_player_effect(POSITION ny, POSITION nx, u32b mpe_mode)
                POSITION oy = p_ptr->y;
                POSITION ox = p_ptr->x;
                cave_type *oc_ptr = &cave[oy][ox];
-               IDX om_idx = oc_ptr->m_idx;
-               IDX nm_idx = c_ptr->m_idx;
+               MONSTER_IDX om_idx = oc_ptr->m_idx;
+               MONSTER_IDX nm_idx = c_ptr->m_idx;
 
                /* Move the player */
                p_ptr->y = ny;
@@ -882,7 +850,7 @@ bool move_player_effect(POSITION ny, POSITION nx, u32b mpe_mode)
                                monster_type *om_ptr = &m_list[om_idx];
                                om_ptr->fy = ny;
                                om_ptr->fx = nx;
-                               update_mon(om_idx, TRUE);
+                               update_monster(om_idx, TRUE);
                        }
 
                        if (nm_idx > 0) /* Monster on new spot */
@@ -890,14 +858,11 @@ bool move_player_effect(POSITION ny, POSITION nx, u32b mpe_mode)
                                monster_type *nm_ptr = &m_list[nm_idx];
                                nm_ptr->fy = oy;
                                nm_ptr->fx = ox;
-                               update_mon(nm_idx, TRUE);
+                               update_monster(nm_idx, TRUE);
                        }
                }
 
-               /* Redraw old spot */
                lite_spot(oy, ox);
-
-               /* Redraw new spot */
                lite_spot(ny, nx);
 
                /* Check for new panel (redraw map) */
@@ -907,17 +872,11 @@ bool move_player_effect(POSITION ny, POSITION nx, u32b mpe_mode)
                {
                        forget_flow();
 
-                       /* Mega-Hack -- Forget the view */
                        p_ptr->update |= (PU_UN_VIEW);
-
-                       /* Redraw map */
                        p_ptr->redraw |= (PR_MAP);
                }
 
-               /* Update stuff */
                p_ptr->update |= (PU_VIEW | PU_LITE | PU_FLOW | PU_MON_LITE | PU_DISTANCE);
-
-               /* Window stuff */
                p_ptr->window |= (PW_OVERHEAD | PW_DUNGEON);
 
                /* Remove "unsafe" flag */
@@ -925,8 +884,6 @@ bool move_player_effect(POSITION ny, POSITION nx, u32b mpe_mode)
 
                /* For get everything when requested hehe I'm *NASTY* */
                if (dun_level && (d_info[dungeon_type].flags1 & DF1_FORGET)) wiz_dark();
-
-               /* Handle stuff */
                if (mpe_mode & MPE_HANDLE_STUFF) handle_stuff();
 
                if (p_ptr->pclass == CLASS_NINJA)
@@ -976,8 +933,7 @@ bool move_player_effect(POSITION ny, POSITION nx, u32b mpe_mode)
        /* Handle "store doors" */
        if (have_flag(f_ptr->flags, FF_STORE))
        {
-               /* Disturb */
-               disturb(0, 1);
+               disturb(FALSE, TRUE);
 
                p_ptr->energy_use = 0;
                /* Hack -- Enter store */
@@ -987,8 +943,7 @@ bool move_player_effect(POSITION ny, POSITION nx, u32b mpe_mode)
        /* Handle "building doors" -KMW- */
        else if (have_flag(f_ptr->flags, FF_BLDG))
        {
-               /* Disturb */
-               disturb(0, 1);
+               disturb(FALSE, TRUE);
 
                p_ptr->energy_use = 0;
                /* Hack -- Enter building */
@@ -998,8 +953,7 @@ bool move_player_effect(POSITION ny, POSITION nx, u32b mpe_mode)
        /* Handle quest areas -KMW- */
        else if (have_flag(f_ptr->flags, FF_QUEST_ENTER))
        {
-               /* Disturb */
-               disturb(0, 1);
+               disturb(FALSE, TRUE);
 
                p_ptr->energy_use = 0;
                /* Hack -- Enter quest level */
@@ -1026,13 +980,11 @@ bool move_player_effect(POSITION ny, POSITION nx, u32b mpe_mode)
        /* Set off a trap */
        else if (have_flag(f_ptr->flags, FF_HIT_TRAP) && !(mpe_mode & MPE_STAYING))
        {
-               /* Disturb */
-               disturb(0, 1);
+               disturb(FALSE, TRUE);
 
                /* Hidden trap */
                if (c_ptr->mimic || have_flag(f_ptr->flags, FF_SECRET))
                {
-                       /* Message */
                        msg_print(_("トラップだ!", "You found a trap!"));
 
                        /* Pick a trap */
@@ -1060,7 +1012,7 @@ bool move_player_effect(POSITION ny, POSITION nx, u32b mpe_mode)
                                msg_print(_("* 注意:この先はトラップの感知範囲外です! *", "*Leaving trap detect region!*"));
                        }
 
-                       if (disturb_trap_detect) disturb(0, 1);
+                       if (disturb_trap_detect) disturb(FALSE, TRUE);
                }
        }
 
@@ -1072,7 +1024,7 @@ bool move_player_effect(POSITION ny, POSITION nx, u32b mpe_mode)
  * @param feat 地形ID
  * @return トラップが自動的に無効ならばTRUEを返す
  */
-bool trap_can_be_ignored(int feat)
+bool trap_can_be_ignored(FEAT_IDX feat)
 {
        feature_type *f_ptr = &f_info[feat];
 
@@ -1153,7 +1105,7 @@ void move_player(DIRECTION dir, bool do_pickup, bool break_trap)
        monster_type *riding_m_ptr = &m_list[p_ptr->riding];
        monster_race *riding_r_ptr = &r_info[p_ptr->riding ? riding_m_ptr->r_idx : 0]; /* Paranoia */
 
-       char m_name[80];
+       GAME_TEXT m_name[MAX_NLEN];
 
        bool p_can_enter = player_can_enter(c_ptr->feat, CEM_P_CAN_ENTER_PATTERN);
        bool p_can_kill_walls = FALSE;
@@ -1322,24 +1274,20 @@ void move_player(DIRECTION dir, bool do_pickup, bool break_trap)
                        msg_print(_("動けない!", "Can't move!"));
                        p_ptr->energy_use = 0;
                        oktomove = FALSE;
-                       disturb(0, 1);
+                       disturb(FALSE, TRUE);
                }
                else if (MON_MONFEAR(riding_m_ptr))
                {
-                       char steed_name[80];
-
-                       /* Acquire the monster name */
+                       GAME_TEXT steed_name[MAX_NLEN];
                        monster_desc(steed_name, riding_m_ptr, 0);
-
-                       /* Dump a message */
                        msg_format(_("%sが恐怖していて制御できない。", "%^s is too scared to control."), steed_name);
                        oktomove = FALSE;
-                       disturb(0, 1);
+                       disturb(FALSE, TRUE);
                }
                else if (p_ptr->riding_ryoute)
                {
                        oktomove = FALSE;
-                       disturb(0, 1);
+                       disturb(FALSE, TRUE);
                }
                else if (have_flag(f_ptr->flags, FF_CAN_FLY) && (riding_r_ptr->flags7 & RF7_CAN_FLY))
                {
@@ -1356,30 +1304,30 @@ void move_player(DIRECTION dir, bool do_pickup, bool break_trap)
                        msg_format(_("%sの上に行けない。", "Can't swim."), f_name + f_info[get_feat_mimic(c_ptr)].name);
                        p_ptr->energy_use = 0;
                        oktomove = FALSE;
-                       disturb(0, 1);
+                       disturb(FALSE, TRUE);
                }
                else if (!have_flag(f_ptr->flags, FF_WATER) && (riding_r_ptr->flags7 & RF7_AQUATIC))
                {
                        msg_format(_("%sから上がれない。", "Can't land."), f_name + f_info[get_feat_mimic(&cave[p_ptr->y][p_ptr->x])].name);
                        p_ptr->energy_use = 0;
                        oktomove = FALSE;
-                       disturb(0, 1);
+                       disturb(FALSE, TRUE);
                }
                else if (have_flag(f_ptr->flags, FF_LAVA) && !(riding_r_ptr->flagsr & RFR_EFF_IM_FIRE_MASK))
                {
                        msg_format(_("%sの上に行けない。", "Too hot to go through."), f_name + f_info[get_feat_mimic(c_ptr)].name);
                        p_ptr->energy_use = 0;
                        oktomove = FALSE;
-                       disturb(0, 1);
+                       disturb(FALSE, TRUE);
                }
 
                if (oktomove && MON_STUNNED(riding_m_ptr) && one_in_(2))
                {
-                       char steed_name[80];
+                       GAME_TEXT steed_name[MAX_NLEN];
                        monster_desc(steed_name, riding_m_ptr, 0);
                        msg_format(_("%sが朦朧としていてうまく動けない!", "You cannot control stunned %s!"), steed_name);
                        oktomove = FALSE;
-                       disturb(0, 1);
+                       disturb(FALSE, TRUE);
                }
        }
 
@@ -1405,7 +1353,6 @@ void move_player(DIRECTION dir, bool do_pickup, bool break_trap)
                if ((p_ptr->pclass != CLASS_RANGER) && !p_ptr->levitation && (!p_ptr->riding || !(riding_r_ptr->flags8 & RF8_WILD_WOOD))) p_ptr->energy_use *= 2;
        }
 
-#ifdef ALLOW_EASY_DISARM /* TNB */
 
        /* Disarm a visible trap */
        else if ((do_pickup != easy_disarm) && have_flag(f_ptr->flags, FF_DISARM) && !c_ptr->mimic)
@@ -1417,15 +1364,14 @@ void move_player(DIRECTION dir, bool do_pickup, bool break_trap)
                }
        }
 
-#endif /* ALLOW_EASY_DISARM -- TNB */
 
        /* Player can not walk through "walls" unless in wraith form...*/
        else if (!p_can_enter && !p_can_kill_walls)
        {
                /* Feature code (applying "mimic" field) */
-               s16b feat = get_feat_mimic(c_ptr);
+               FEAT_IDX feat = get_feat_mimic(c_ptr);
                feature_type *mimic_f_ptr = &f_info[feat];
-               cptr name = f_name + mimic_f_ptr->name;
+               concptr name = f_name + mimic_f_ptr->name;
 
                oktomove = FALSE;
 
@@ -1467,10 +1413,8 @@ void move_player(DIRECTION dir, bool do_pickup, bool break_trap)
                        /* Wall (or secret door) */
                        else
                        {
-#ifdef ALLOW_EASY_OPEN
                                /* Closed doors */
                                if (easy_open && is_closed_door(feat) && easy_open_door(y, x)) return;
-#endif /* ALLOW_EASY_OPEN */
 
 #ifdef JP
                                msg_format("%sが行く手をはばんでいる。", name);
@@ -1489,8 +1433,7 @@ void move_player(DIRECTION dir, bool do_pickup, bool break_trap)
                        }
                }
 
-               /* Disturb the player */
-               disturb(0, 1);
+               disturb(FALSE, TRUE);
 
                if (!boundary_floor(c_ptr, f_ptr, mimic_f_ptr)) sound(SOUND_HITWALL);
        }
@@ -1504,7 +1447,7 @@ void move_player(DIRECTION dir, bool do_pickup, bool break_trap)
                }
 
                /* To avoid a loop with running */
-               disturb(0, 1);
+               disturb(FALSE, TRUE);
 
                oktomove = FALSE;
        }
@@ -1549,16 +1492,7 @@ void move_player(DIRECTION dir, bool do_pickup, bool break_trap)
 
                /* sound(SOUND_WALK); */
 
-#ifdef ALLOW_EASY_DISARM /* TNB */
-
                if (do_pickup != always_pickup) mpe_mode |= MPE_DO_PICKUP;
-
-#else /* ALLOW_EASY_DISARM -- TNB */
-
-               if (do_pickup) mpe_mode |= MPE_DO_PICKUP;
-
-#endif /* ALLOW_EASY_DISARM -- TNB */
-
                if (break_trap) mpe_mode |= MPE_BREAK_TRAP;
 
                /* Move the player */
@@ -1642,21 +1576,15 @@ static bool see_nothing(DIRECTION dir, POSITION y, POSITION x)
 }
 
 
-
-
-
-
 /*
  * Hack -- allow quick "cycling" through the legal directions
  */
-static byte cycle[] =
-{ 1, 2, 3, 6, 9, 8, 7, 4, 1, 2, 3, 6, 9, 8, 7, 4, 1 };
+static byte cycle[] = { 1, 2, 3, 6, 9, 8, 7, 4, 1, 2, 3, 6, 9, 8, 7, 4, 1 };
 
 /*
  * Hack -- map each direction into the "middle" of the "cycle[]" array
  */
-static byte chome[] =
-{ 0, 8, 9, 10, 7, 0, 11, 6, 5, 4 };
+static byte chome[] = { 0, 8, 9, 10, 7, 0, 11, 6, 5, 4 };
 
 /*
  * The direction we are running
@@ -1679,8 +1607,6 @@ static bool find_openarea;
 static bool find_breakright;
 static bool find_breakleft;
 
-
-
 /*!
  * @brief ダッシュ処理の導入 /
  * Initialize the running algorithm for a new direction.
@@ -1699,9 +1625,8 @@ static bool find_breakleft;
  */
 static void run_init(DIRECTION dir)
 {
-       int             row, col, deepleft, deepright;
-       int             i, shortleft, shortright;
-
+       int row, col, deepleft, deepright;
+       int i, shortleft, shortright;
 
        /* Save the direction */
        find_current = dir;
@@ -1799,12 +1724,12 @@ static void run_init(DIRECTION dir)
  */
 static bool run_test(void)
 {
-       int         prev_dir, new_dir, check_dir = 0;
-       int         row, col;
-       int         i, max, inv;
-       int         option = 0, option2 = 0;
-       cave_type   *c_ptr;
-       s16b        feat;
+       DIRECTION prev_dir, new_dir, check_dir = 0;
+       int row, col;
+       int i, max, inv;
+       int option = 0, option2 = 0;
+       cave_type *c_ptr;
+       FEAT_IDX feat;
        feature_type *f_ptr;
 
        /* Where we came from */
@@ -1840,7 +1765,7 @@ static bool run_test(void)
        /* Look at every newly adjacent square. */
        for (i = -max; i <= max; i++)
        {
-               s16b this_o_idx, next_o_idx = 0;
+               OBJECT_IDX this_o_idx, next_o_idx = 0;
 
                /* New direction */
                new_dir = cycle[chome[prev_dir] + i];
@@ -1869,8 +1794,6 @@ static bool run_test(void)
                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 */
@@ -2147,17 +2070,13 @@ void run_step(DIRECTION dir)
                {
                        sound(SOUND_HITWALL);
 
-                       /* Message */
                        msg_print(_("その方向には走れません。", "You cannot run in that direction."));
 
-                       /* Disturb */
-                       disturb(0, 0);
+                       disturb(FALSE, FALSE);
 
-                       /* Done */
                        return;
                }
 
-               /* Initialize */
                run_init(dir);
        }
 
@@ -2167,10 +2086,8 @@ void run_step(DIRECTION dir)
                /* Update run */
                if (run_test())
                {
-                       /* Disturb */
-                       disturb(0, 0);
+                       disturb(FALSE, FALSE);
 
-                       /* Done */
                        return;
                }
        }
@@ -2182,21 +2099,13 @@ void run_step(DIRECTION dir)
        p_ptr->energy_use = 100;
 
        /* Move the player, using the "pickup" flag */
-#ifdef ALLOW_EASY_DISARM /* TNB */
-
        move_player(find_current, FALSE, FALSE);
 
-#else /* ALLOW_EASY_DISARM -- TNB */
-
-       move_player(find_current, always_pickup, FALSE);
-
-#endif /* ALLOW_EASY_DISARM -- TNB */
-
        if (player_bold(p_ptr->run_py, p_ptr->run_px))
        {
                p_ptr->run_py = 0;
                p_ptr->run_px = 0;
-               disturb(0, 0);
+               disturb(FALSE, FALSE);
        }
 }
 
@@ -2211,7 +2120,7 @@ void run_step(DIRECTION dir)
  */
 static DIRECTION travel_test(DIRECTION prev_dir)
 {
-       int new_dir = 0;
+       DIRECTION new_dir = 0;
        int i, max;
        const cave_type *c_ptr;
        int cost;
@@ -2256,8 +2165,8 @@ static DIRECTION travel_test(DIRECTION prev_dir)
                DIRECTION dir = cycle[chome[prev_dir] + i];
 
                /* New location */
-               int row = p_ptr->y + ddy[dir];
-               int col = p_ptr->x + ddx[dir];
+               POSITION row = p_ptr->y + ddy[dir];
+               POSITION col = p_ptr->x + ddx[dir];
 
                /* Access grid */
                c_ptr = &cave[row][col];
@@ -2313,7 +2222,6 @@ void travel_step(void)
        /* Get travel direction */
        travel.dir = travel_test(travel.dir);
 
-       /* disturb */
        if (!travel.dir)
        {
                if (travel.run == 255)
@@ -2321,7 +2229,7 @@ void travel_step(void)
                        msg_print(_("道筋が見つかりません!", "No route is found!"));
                        travel.y = travel.x = 0;
                }
-               disturb(0, 1);
+               disturb(FALSE, TRUE);
                return;
        }