OSDN Git Service

[Refactor] #37353 型の置換。 / Type replacement. (BASE_STATUS / A_MAX)
[hengband/hengband.git] / src / effects.c
index 8cb29aa..03a1c7d 100644 (file)
  */
 
 #include "angband.h"
+#include "mutation.h"
+#include "quest.h"
+#include "avatar.h"
+#include "player-status.h"
+#include "spells-status.h"
+#include "realm-hex.h"
 
 /*!
  * @brief プレイヤーの継続行動を設定する。
@@ -116,11 +122,7 @@ void set_action(ACTION_IDX typ)
                        break;
                }
        }
-
-       /* Recalculate bonuses */
        p_ptr->update |= (PU_BONUS);
-
-       /* Redraw the state */
        p_ptr->redraw |= (PR_STATE);
 }
 
@@ -173,7 +175,6 @@ void reset_tim_flags(void)
        p_ptr->dustrobe = 0;
        p_ptr->action = ACTION_NONE;
 
-
        p_ptr->oppose_acid = 0;     /* Timed -- oppose acid */
        p_ptr->oppose_elec = 0;     /* Timed -- oppose lightning */
        p_ptr->oppose_fire = 0;     /* Timed -- oppose heat */
@@ -266,22 +267,15 @@ void dispel_player(void)
 
        if (music_singing_any() || hex_spelling_any())
        {
-               cptr str = (music_singing_any()) ? _("歌", "singing") : _("呪文", "spelling");
+               concptr str = (music_singing_any()) ? _("歌", "singing") : _("呪文", "spelling");
                INTERUPTING_SONG_EFFECT(p_ptr) = SINGING_SONG_EFFECT(p_ptr);
                SINGING_SONG_EFFECT(p_ptr) = MUSIC_NONE;
                msg_format(_("%sが途切れた。", "Your %s is interrupted."), str);
-               p_ptr->action = ACTION_NONE;
-
-               /* Recalculate bonuses */
-               p_ptr->update |= (PU_BONUS | PU_HP);
 
+               p_ptr->action = ACTION_NONE;
+               p_ptr->update |= (PU_BONUS | PU_HP | PU_MONSTERS);
                p_ptr->redraw |= (PR_MAP | PR_STATUS | PR_STATE);
-
-               /* Update monsters */
-               p_ptr->update |= (PU_MONSTERS);
-
                p_ptr->window |= (PW_OVERHEAD | PW_DUNGEON);
-
                p_ptr->energy_need += ENERGY_NEED();
        }
 }
@@ -297,8 +291,6 @@ void dispel_player(void)
 bool set_mimic(TIME_EFFECT v, IDX p, bool do_dec)
 {
        bool notice = FALSE;
-
-       /* Hack -- Force good values */
        v = (v > 10000) ? 10000 : (v < 0) ? 0 : v;
 
        if (p_ptr->is_dead) return FALSE;
@@ -335,15 +327,11 @@ bool set_mimic(TIME_EFFECT v, IDX p, bool do_dec)
        p_ptr->tim_mimic = v;
 
        /* Nothing to notice */
-       if (!notice)
-               return (FALSE);
+       if (!notice) return (FALSE);
 
        if (disturb_state) disturb(FALSE, TRUE);
 
-       /* Redraw title */
        p_ptr->redraw |= (PR_BASIC | PR_STATUS);
-
-       /* Recalculate bonuses */
        p_ptr->update |= (PU_BONUS | PU_HP);
 
        handle_stuff();
@@ -363,8 +351,6 @@ bool set_mimic(TIME_EFFECT v, IDX p, bool do_dec)
 bool set_blind(TIME_EFFECT v)
 {
        bool notice = FALSE;
-
-       /* Hack -- Force good values */
        v = (v > 10000) ? 10000 : (v < 0) ? 0 : v;
 
        if (p_ptr->is_dead) return FALSE;
@@ -408,23 +394,16 @@ bool set_blind(TIME_EFFECT v)
 
        /* Use the value */
        p_ptr->blind = v;
-
-       /* Redraw status bar */
        p_ptr->redraw |= (PR_STATUS);
 
        /* Nothing to notice */
        if (!notice) return (FALSE);
-
        if (disturb_state) disturb(FALSE, FALSE);
 
        /* Fully update the visuals */
        p_ptr->update |= (PU_UN_VIEW | PU_UN_LITE | PU_VIEW | PU_LITE | PU_MONSTERS | PU_MON_LITE);
-
        p_ptr->redraw |= (PR_MAP);
-
        p_ptr->window |= (PW_OVERHEAD | PW_DUNGEON);
-
-       /* Handle stuff */
        handle_stuff();
        return (TRUE);
 }
@@ -438,8 +417,6 @@ bool set_blind(TIME_EFFECT v)
 bool set_confused(TIME_EFFECT v)
 {
        bool notice = FALSE;
-
-       /* Hack -- Force good values */
        v = (v > 10000) ? 10000 : (v < 0) ? 0 : v;
 
        if (p_ptr->is_dead) return FALSE;
@@ -503,16 +480,12 @@ bool set_confused(TIME_EFFECT v)
 
        /* Use the value */
        p_ptr->confused = v;
-
-       /* Redraw status bar */
        p_ptr->redraw |= (PR_STATUS);
 
        /* Nothing to notice */
        if (!notice) return (FALSE);
 
        if (disturb_state) disturb(FALSE, FALSE);
-
-       /* Handle stuff */
        handle_stuff();
        return (TRUE);
 }
@@ -526,8 +499,6 @@ bool set_confused(TIME_EFFECT v)
 bool set_poisoned(TIME_EFFECT v)
 {
        bool notice = FALSE;
-
-       /* Hack -- Force good values */
        v = (v > 10000) ? 10000 : (v < 0) ? 0 : v;
 
        if (p_ptr->is_dead) return FALSE;
@@ -554,16 +525,12 @@ bool set_poisoned(TIME_EFFECT v)
 
        /* Use the value */
        p_ptr->poisoned = v;
-
-       /* Redraw status bar */
        p_ptr->redraw |= (PR_STATUS);
 
        /* Nothing to notice */
        if (!notice) return (FALSE);
 
        if (disturb_state) disturb(FALSE, FALSE);
-
-       /* Handle stuff */
        handle_stuff();
        return (TRUE);
 }
@@ -577,8 +544,6 @@ bool set_poisoned(TIME_EFFECT v)
 bool set_afraid(TIME_EFFECT v)
 {
        bool notice = FALSE;
-
-       /* Hack -- Force good values */
        v = (v > 10000) ? 10000 : (v < 0) ? 0 : v;
 
        if (p_ptr->is_dead) return FALSE;
@@ -619,16 +584,12 @@ bool set_afraid(TIME_EFFECT v)
 
        /* Use the value */
        p_ptr->afraid = v;
-
-       /* Redraw status bar */
        p_ptr->redraw |= (PR_STATUS);
 
        /* Nothing to notice */
        if (!notice) return (FALSE);
 
        if (disturb_state) disturb(FALSE, FALSE);
-
-       /* Handle stuff */
        handle_stuff();
        return (TRUE);
 }
@@ -641,8 +602,6 @@ bool set_afraid(TIME_EFFECT v)
 bool set_paralyzed(TIME_EFFECT v)
 {
        bool notice = FALSE;
-
-       /* Hack -- Force good values */
        v = (v > 10000) ? 10000 : (v < 0) ? 0 : v;
 
        if (p_ptr->is_dead) return FALSE;
@@ -676,19 +635,13 @@ bool set_paralyzed(TIME_EFFECT v)
 
        /* Use the value */
        p_ptr->paralyzed = v;
-
-       /* Redraw status bar */
        p_ptr->redraw |= (PR_STATUS);
 
        /* Nothing to notice */
        if (!notice) return (FALSE);
 
        if (disturb_state) disturb(FALSE, FALSE);
-
-       /* Redraw the state */
        p_ptr->redraw |= (PR_STATE);
-
-       /* Handle stuff */
        handle_stuff();
        return (TRUE);
 }
@@ -702,11 +655,10 @@ bool set_paralyzed(TIME_EFFECT v)
 bool set_image(TIME_EFFECT v)
 {
        bool notice = FALSE;
-
-       /* Hack -- Force good values */
        v = (v > 10000) ? 10000 : (v < 0) ? 0 : v;
 
        if (p_ptr->is_dead) return FALSE;
+       if (p_ptr->pseikaku == SEIKAKU_CHARGEMAN) v = 0;
 
 
        /* Open */
@@ -737,8 +689,6 @@ bool set_image(TIME_EFFECT v)
 
        /* Use the value */
        p_ptr->image = v;
-
-       /* Redraw status bar */
        p_ptr->redraw |= (PR_STATUS);
 
        /* Nothing to notice */
@@ -746,17 +696,9 @@ bool set_image(TIME_EFFECT v)
 
        if (disturb_state) disturb(FALSE, TRUE);
 
-       p_ptr->redraw |= (PR_MAP);
-
-       /* Update the health bar */
-       p_ptr->redraw |= (PR_HEALTH | PR_UHEALTH);
-
-       /* Update monsters */
+       p_ptr->redraw |= (PR_MAP | PR_HEALTH | PR_UHEALTH);
        p_ptr->update |= (PU_MONSTERS);
-
        p_ptr->window |= (PW_OVERHEAD | PW_DUNGEON);
-
-       /* Handle stuff */
        handle_stuff();
        return (TRUE);
 }
@@ -770,8 +712,6 @@ bool set_image(TIME_EFFECT v)
 bool set_fast(TIME_EFFECT v, bool do_dec)
 {
        bool notice = FALSE;
-
-       /* Hack -- Force good values */
        v = (v > 10000) ? 10000 : (v < 0) ? 0 : v;
 
        if (p_ptr->is_dead) return FALSE;
@@ -809,11 +749,7 @@ bool set_fast(TIME_EFFECT v, bool do_dec)
        if (!notice) return (FALSE);
 
        if (disturb_state) disturb(FALSE, FALSE);
-
-       /* Recalculate bonuses */
        p_ptr->update |= (PU_BONUS);
-
-       /* Handle stuff */
        handle_stuff();
        return (TRUE);
 }
@@ -827,8 +763,6 @@ bool set_fast(TIME_EFFECT v, bool do_dec)
 bool set_lightspeed(TIME_EFFECT v, bool do_dec)
 {
        bool notice = FALSE;
-
-       /* Hack -- Force good values */
        v = (v > 10000) ? 10000 : (v < 0) ? 0 : v;
 
        if (p_ptr->is_dead) return FALSE;
@@ -868,11 +802,7 @@ bool set_lightspeed(TIME_EFFECT v, bool do_dec)
        if (!notice) return (FALSE);
 
        if (disturb_state) disturb(FALSE, FALSE);
-
-       /* Recalculate bonuses */
        p_ptr->update |= (PU_BONUS);
-
-       /* Handle stuff */
        handle_stuff();
        return (TRUE);
 }
@@ -886,8 +816,6 @@ bool set_lightspeed(TIME_EFFECT v, bool do_dec)
 bool set_slow(TIME_EFFECT v, bool do_dec)
 {
        bool notice = FALSE;
-
-       /* Hack -- Force good values */
        v = (v > 10000) ? 10000 : (v < 0) ? 0 : v;
 
        if (p_ptr->is_dead) return FALSE;
@@ -923,11 +851,7 @@ bool set_slow(TIME_EFFECT v, bool do_dec)
        if (!notice) return (FALSE);
 
        if (disturb_state) disturb(FALSE, FALSE);
-
-       /* Recalculate bonuses */
        p_ptr->update |= (PU_BONUS);
-
-       /* Handle stuff */
        handle_stuff();
        return (TRUE);
 }
@@ -942,8 +866,6 @@ bool set_slow(TIME_EFFECT v, bool do_dec)
 bool set_shield(TIME_EFFECT v, bool do_dec)
 {
        bool notice = FALSE;
-
-       /* Hack -- Force good values */
        v = (v > 10000) ? 10000 : (v < 0) ? 0 : v;
 
        if (p_ptr->is_dead) return FALSE;
@@ -974,19 +896,13 @@ bool set_shield(TIME_EFFECT v, bool do_dec)
 
        /* Use the value */
        p_ptr->shield = v;
-
-       /* Redraw status bar */
        p_ptr->redraw |= (PR_STATUS);
 
        /* Nothing to notice */
        if (!notice) return (FALSE);
 
        if (disturb_state) disturb(FALSE, FALSE);
-
-       /* Recalculate bonuses */
        p_ptr->update |= (PU_BONUS);
-
-       /* Handle stuff */
        handle_stuff();
        return (TRUE);
 }
@@ -1001,8 +917,6 @@ bool set_shield(TIME_EFFECT v, bool do_dec)
 bool set_tsubureru(TIME_EFFECT v, bool do_dec)
 {
        bool notice = FALSE;
-
-       /* Hack -- Force good values */
        v = (v > 10000) ? 10000 : (v < 0) ? 0 : v;
 
        if (p_ptr->is_dead) return FALSE;
@@ -1033,19 +947,13 @@ bool set_tsubureru(TIME_EFFECT v, bool do_dec)
 
        /* Use the value */
        p_ptr->tsubureru = v;
-
-       /* Redraw status bar */
        p_ptr->redraw |= (PR_STATUS);
 
        /* Nothing to notice */
        if (!notice) return (FALSE);
 
        if (disturb_state) disturb(FALSE, FALSE);
-
-       /* Recalculate bonuses */
        p_ptr->update |= (PU_BONUS);
-
-       /* Handle stuff */
        handle_stuff();
        return (TRUE);
 }
@@ -1060,8 +968,6 @@ bool set_tsubureru(TIME_EFFECT v, bool do_dec)
 bool set_magicdef(TIME_EFFECT v, bool do_dec)
 {
        bool notice = FALSE;
-
-       /* Hack -- Force good values */
        v = (v > 10000) ? 10000 : (v < 0) ? 0 : v;
 
        if (p_ptr->is_dead) return FALSE;
@@ -1092,19 +998,13 @@ bool set_magicdef(TIME_EFFECT v, bool do_dec)
 
        /* Use the value */
        p_ptr->magicdef = v;
-
-       /* Redraw status bar */
        p_ptr->redraw |= (PR_STATUS);
 
        /* Nothing to notice */
        if (!notice) return (FALSE);
 
        if (disturb_state) disturb(FALSE, FALSE);
-
-       /* Recalculate bonuses */
        p_ptr->update |= (PU_BONUS);
-
-       /* Handle stuff */
        handle_stuff();
        return (TRUE);
 }
@@ -1118,8 +1018,6 @@ bool set_magicdef(TIME_EFFECT v, bool do_dec)
 bool set_blessed(TIME_EFFECT v, bool do_dec)
 {
        bool notice = FALSE;
-
-       /* Hack -- Force good values */
        v = (v > 10000) ? 10000 : (v < 0) ? 0 : v;
 
        if (p_ptr->is_dead) return FALSE;
@@ -1150,19 +1048,13 @@ bool set_blessed(TIME_EFFECT v, bool do_dec)
 
        /* Use the value */
        p_ptr->blessed = v;
-
-       /* Redraw status bar */
        p_ptr->redraw |= (PR_STATUS);
 
        /* Nothing to notice */
        if (!notice) return (FALSE);
 
        if (disturb_state) disturb(FALSE, FALSE);
-
-       /* Recalculate bonuses */
        p_ptr->update |= (PU_BONUS);
-
-       /* Handle stuff */
        handle_stuff();
        return (TRUE);
 }
@@ -1177,8 +1069,6 @@ bool set_blessed(TIME_EFFECT v, bool do_dec)
 bool set_hero(TIME_EFFECT v, bool do_dec)
 {
        bool notice = FALSE;
-
-       /* Hack -- Force good values */
        v = (v > 10000) ? 10000 : (v < 0) ? 0 : v;
 
        if (p_ptr->is_dead) return FALSE;
@@ -1209,22 +1099,16 @@ bool set_hero(TIME_EFFECT v, bool do_dec)
 
        /* Use the value */
        p_ptr->hero = v;
-
-       /* Redraw status bar */
        p_ptr->redraw |= (PR_STATUS);
 
        /* Nothing to notice */
        if (!notice) return (FALSE);
 
        if (disturb_state) disturb(FALSE, FALSE);
-
-       /* Recalculate bonuses */
        p_ptr->update |= (PU_BONUS);
 
        /* Recalculate hitpoints */
        p_ptr->update |= (PU_HP);
-
-       /* Handle stuff */
        handle_stuff();
        return (TRUE);
 }
@@ -1238,8 +1122,6 @@ bool set_hero(TIME_EFFECT v, bool do_dec)
 bool set_shero(TIME_EFFECT v, bool do_dec)
 {
        bool notice = FALSE;
-
-       /* Hack -- Force good values */
        v = (v > 10000) ? 10000 : (v < 0) ? 0 : v;
 
        if (p_ptr->is_dead) return FALSE;
@@ -1271,22 +1153,16 @@ bool set_shero(TIME_EFFECT v, bool do_dec)
 
        /* Use the value */
        p_ptr->shero = v;
-
-       /* Redraw status bar */
        p_ptr->redraw |= (PR_STATUS);
 
        /* Nothing to notice */
        if (!notice) return (FALSE);
 
        if (disturb_state) disturb(FALSE, FALSE);
-
-       /* Recalculate bonuses */
        p_ptr->update |= (PU_BONUS);
 
        /* Recalculate hitpoints */
        p_ptr->update |= (PU_HP);
-
-       /* Handle stuff */
        handle_stuff();
        return (TRUE);
 }
@@ -1300,8 +1176,6 @@ bool set_shero(TIME_EFFECT v, bool do_dec)
 bool set_protevil(TIME_EFFECT v, bool do_dec)
 {
        bool notice = FALSE;
-
-       /* Hack -- Force good values */
        v = (v > 10000) ? 10000 : (v < 0) ? 0 : v;
 
        if (p_ptr->is_dead) return FALSE;
@@ -1332,16 +1206,12 @@ bool set_protevil(TIME_EFFECT v, bool do_dec)
 
        /* Use the value */
        p_ptr->protevil = v;
-
-       /* Redraw status bar */
        p_ptr->redraw |= (PR_STATUS);
 
        /* Nothing to notice */
        if (!notice) return (FALSE);
 
        if (disturb_state) disturb(FALSE, FALSE);
-
-       /* Handle stuff */
        handle_stuff();
        return (TRUE);
 }
@@ -1355,8 +1225,6 @@ bool set_protevil(TIME_EFFECT v, bool do_dec)
 bool set_wraith_form(TIME_EFFECT v, bool do_dec)
 {
        bool notice = FALSE;
-
-       /* Hack -- Force good values */
        v = (v > 10000) ? 10000 : (v < 0) ? 0 : v;
 
        if (p_ptr->is_dead) return FALSE;
@@ -1378,8 +1246,6 @@ bool set_wraith_form(TIME_EFFECT v, bool do_dec)
                        chg_virtue(V_VALOUR, -5);
 
                        p_ptr->redraw |= (PR_MAP);
-
-                       /* Update monsters */
                        p_ptr->update |= (PU_MONSTERS);
 
                        p_ptr->window |= (PW_OVERHEAD | PW_DUNGEON);
@@ -1395,8 +1261,6 @@ bool set_wraith_form(TIME_EFFECT v, bool do_dec)
                        notice = TRUE;
 
                        p_ptr->redraw |= (PR_MAP);
-
-                       /* Update monsters */
                        p_ptr->update |= (PU_MONSTERS);
 
                        p_ptr->window |= (PW_OVERHEAD | PW_DUNGEON);
@@ -1405,19 +1269,13 @@ bool set_wraith_form(TIME_EFFECT v, bool do_dec)
 
        /* Use the value */
        p_ptr->wraith_form = v;
-
-       /* Redraw status bar */
        p_ptr->redraw |= (PR_STATUS);
 
        /* Nothing to notice */
        if (!notice) return (FALSE);
 
        if (disturb_state) disturb(FALSE, FALSE);
-
-       /* Recalculate bonuses */
        p_ptr->update |= (PU_BONUS);
-
-       /* Handle stuff */
        handle_stuff();
        return (TRUE);
 
@@ -1432,8 +1290,6 @@ bool set_wraith_form(TIME_EFFECT v, bool do_dec)
 bool set_invuln(TIME_EFFECT v, bool do_dec)
 {
        bool notice = FALSE;
-
-       /* Hack -- Force good values */
        v = (v > 10000) ? 10000 : (v < 0) ? 0 : v;
 
        if (p_ptr->is_dead) return FALSE;
@@ -1456,8 +1312,6 @@ bool set_invuln(TIME_EFFECT v, bool do_dec)
                        chg_virtue(V_VALOUR, -5);
 
                        p_ptr->redraw |= (PR_MAP);
-
-                       /* Update monsters */
                        p_ptr->update |= (PU_MONSTERS);
 
                        p_ptr->window |= (PW_OVERHEAD | PW_DUNGEON);
@@ -1473,8 +1327,6 @@ bool set_invuln(TIME_EFFECT v, bool do_dec)
                        notice = TRUE;
 
                        p_ptr->redraw |= (PR_MAP);
-
-                       /* Update monsters */
                        p_ptr->update |= (PU_MONSTERS);
 
                        p_ptr->window |= (PW_OVERHEAD | PW_DUNGEON);
@@ -1485,19 +1337,13 @@ bool set_invuln(TIME_EFFECT v, bool do_dec)
 
        /* Use the value */
        p_ptr->invuln = v;
-
-       /* Redraw status bar */
        p_ptr->redraw |= (PR_STATUS);
 
        /* Nothing to notice */
        if (!notice) return (FALSE);
 
        if (disturb_state) disturb(FALSE, FALSE);
-
-       /* Recalculate bonuses */
        p_ptr->update |= (PU_BONUS);
-
-       /* Handle stuff */
        handle_stuff();
        return (TRUE);
 }
@@ -1511,8 +1357,6 @@ bool set_invuln(TIME_EFFECT v, bool do_dec)
 bool set_tim_esp(TIME_EFFECT v, bool do_dec)
 {
        bool notice = FALSE;
-
-       /* Hack -- Force good values */
        v = (v > 10000) ? 10000 : (v < 0) ? 0 : v;
 
        if (p_ptr->is_dead) return FALSE;
@@ -1543,22 +1387,14 @@ bool set_tim_esp(TIME_EFFECT v, bool do_dec)
 
        /* Use the value */
        p_ptr->tim_esp = v;
-
-       /* Redraw status bar */
        p_ptr->redraw |= (PR_STATUS);
 
        /* Nothing to notice */
        if (!notice) return (FALSE);
 
        if (disturb_state) disturb(FALSE, FALSE);
-
-       /* Recalculate bonuses */
        p_ptr->update |= (PU_BONUS);
-
-       /* Update the monsters */
        p_ptr->update |= (PU_MONSTERS);
-
-       /* Handle stuff */
        handle_stuff();
        return (TRUE);
 }
@@ -1572,8 +1408,6 @@ bool set_tim_esp(TIME_EFFECT v, bool do_dec)
 bool set_tim_invis(TIME_EFFECT v, bool do_dec)
 {
        bool notice = FALSE;
-
-       /* Hack -- Force good values */
        v = (v > 10000) ? 10000 : (v < 0) ? 0 : v;
 
        if (p_ptr->is_dead) return FALSE;
@@ -1604,22 +1438,16 @@ bool set_tim_invis(TIME_EFFECT v, bool do_dec)
 
        /* Use the value */
        p_ptr->tim_invis = v;
-
-       /* Redraw status bar */
        p_ptr->redraw |= (PR_STATUS);
 
        /* Nothing to notice */
        if (!notice) return (FALSE);
 
        if (disturb_state) disturb(FALSE, FALSE);
-
-       /* Recalculate bonuses */
        p_ptr->update |= (PU_BONUS);
 
        /* Update the monsters */
        p_ptr->update |= (PU_MONSTERS);
-
-       /* Handle stuff */
        handle_stuff();
        return (TRUE);
 }
@@ -1633,8 +1461,6 @@ bool set_tim_invis(TIME_EFFECT v, bool do_dec)
 bool set_tim_infra(TIME_EFFECT v, bool do_dec)
 {
        bool notice = FALSE;
-
-       /* Hack -- Force good values */
        v = (v > 10000) ? 10000 : (v < 0) ? 0 : v;
 
        if (p_ptr->is_dead) return FALSE;
@@ -1665,22 +1491,16 @@ bool set_tim_infra(TIME_EFFECT v, bool do_dec)
 
        /* Use the value */
        p_ptr->tim_infra = v;
-
-       /* Redraw status bar */
        p_ptr->redraw |= (PR_STATUS);
 
        /* Nothing to notice */
        if (!notice) return (FALSE);
 
        if (disturb_state) disturb(FALSE, FALSE);
-
-       /* Recalculate bonuses */
        p_ptr->update |= (PU_BONUS);
 
        /* Update the monsters */
        p_ptr->update |= (PU_MONSTERS);
-
-       /* Handle stuff */
        handle_stuff();
        return (TRUE);
 }
@@ -1694,8 +1514,6 @@ bool set_tim_infra(TIME_EFFECT v, bool do_dec)
 bool set_tim_regen(TIME_EFFECT v, bool do_dec)
 {
        bool notice = FALSE;
-
-       /* Hack -- Force good values */
        v = (v > 10000) ? 10000 : (v < 0) ? 0 : v;
 
        if (p_ptr->is_dead) return FALSE;
@@ -1726,19 +1544,13 @@ bool set_tim_regen(TIME_EFFECT v, bool do_dec)
 
        /* Use the value */
        p_ptr->tim_regen = v;
-
-       /* Redraw status bar */
        p_ptr->redraw |= (PR_STATUS);
 
        /* Nothing to notice */
        if (!notice) return (FALSE);
 
        if (disturb_state) disturb(FALSE, FALSE);
-
-       /* Recalculate bonuses */
        p_ptr->update |= (PU_BONUS);
-
-       /* Handle stuff */
        handle_stuff();
        return (TRUE);
 }
@@ -1752,8 +1564,6 @@ bool set_tim_regen(TIME_EFFECT v, bool do_dec)
 bool set_tim_stealth(TIME_EFFECT v, bool do_dec)
 {
        bool notice = FALSE;
-
-       /* Hack -- Force good values */
        v = (v > 10000) ? 10000 : (v < 0) ? 0 : v;
 
        if (p_ptr->is_dead) return FALSE;
@@ -1784,19 +1594,13 @@ bool set_tim_stealth(TIME_EFFECT v, bool do_dec)
 
        /* Use the value */
        p_ptr->tim_stealth = v;
-
-       /* Redraw status bar */
        p_ptr->redraw |= (PR_STATUS);
 
        /* Nothing to notice */
        if (!notice) return (FALSE);
 
        if (disturb_state) disturb(FALSE, FALSE);
-
-       /* Recalculate bonuses */
        p_ptr->update |= (PU_BONUS);
-
-       /* Handle stuff */
        handle_stuff();
        return (TRUE);
 }
@@ -1850,8 +1654,6 @@ bool set_superstealth(bool set)
 
        /* Nothing to notice */
        if (!notice) return (FALSE);
-
-       /* Redraw status bar */
        p_ptr->redraw |= (PR_STATUS);
 
        if (disturb_state) disturb(FALSE, FALSE);
@@ -1867,8 +1669,6 @@ bool set_superstealth(bool set)
 bool set_tim_levitation(TIME_EFFECT v, bool do_dec)
 {
        bool notice = FALSE;
-
-       /* Hack -- Force good values */
        v = (v > 10000) ? 10000 : (v < 0) ? 0 : v;
 
        if (p_ptr->is_dead) return FALSE;
@@ -1899,19 +1699,13 @@ bool set_tim_levitation(TIME_EFFECT v, bool do_dec)
 
        /* Use the value */
        p_ptr->tim_levitation = v;
-
-       /* Redraw status bar */
        p_ptr->redraw |= (PR_STATUS);
 
        /* Nothing to notice */
        if (!notice) return (FALSE);
 
        if (disturb_state) disturb(FALSE, FALSE);
-
-       /* Recalculate bonuses */
        p_ptr->update |= (PU_BONUS);
-
-       /* Handle stuff */
        handle_stuff();
        return (TRUE);
 }
@@ -1925,8 +1719,6 @@ bool set_tim_levitation(TIME_EFFECT v, bool do_dec)
 bool set_tim_sh_touki(TIME_EFFECT v, bool do_dec)
 {
        bool notice = FALSE;
-
-       /* Hack -- Force good values */
        v = (v > 10000) ? 10000 : (v < 0) ? 0 : v;
 
        if (p_ptr->is_dead) return FALSE;
@@ -1957,16 +1749,12 @@ bool set_tim_sh_touki(TIME_EFFECT v, bool do_dec)
 
        /* Use the value */
        p_ptr->tim_sh_touki = v;
-
-       /* Redraw status bar */
        p_ptr->redraw |= (PR_STATUS);
 
        /* Nothing to notice */
        if (!notice) return (FALSE);
 
        if (disturb_state) disturb(FALSE, FALSE);
-
-       /* Handle stuff */
        handle_stuff();
        return (TRUE);
 }
@@ -1980,8 +1768,6 @@ bool set_tim_sh_touki(TIME_EFFECT v, bool do_dec)
 bool set_tim_sh_fire(TIME_EFFECT v, bool do_dec)
 {
        bool notice = FALSE;
-
-       /* Hack -- Force good values */
        v = (v > 10000) ? 10000 : (v < 0) ? 0 : v;
 
        if (p_ptr->is_dead) return FALSE;
@@ -2012,19 +1798,13 @@ bool set_tim_sh_fire(TIME_EFFECT v, bool do_dec)
 
        /* Use the value */
        p_ptr->tim_sh_fire = v;
-
-       /* Redraw status bar */
        p_ptr->redraw |= (PR_STATUS);
 
        /* Nothing to notice */
        if (!notice) return (FALSE);
 
        if (disturb_state) disturb(FALSE, FALSE);
-
-       /* Recalculate bonuses */
        p_ptr->update |= (PU_BONUS);
-
-       /* Handle stuff */
        handle_stuff();
        return (TRUE);
 }
@@ -2038,8 +1818,6 @@ bool set_tim_sh_fire(TIME_EFFECT v, bool do_dec)
 bool set_tim_sh_holy(TIME_EFFECT v, bool do_dec)
 {
        bool notice = FALSE;
-
-       /* Hack -- Force good values */
        v = (v > 10000) ? 10000 : (v < 0) ? 0 : v;
 
        if (p_ptr->is_dead) return FALSE;
@@ -2070,19 +1848,13 @@ bool set_tim_sh_holy(TIME_EFFECT v, bool do_dec)
 
        /* Use the value */
        p_ptr->tim_sh_holy = v;
-
-       /* Redraw status bar */
        p_ptr->redraw |= (PR_STATUS);
 
        /* Nothing to notice */
        if (!notice) return (FALSE);
 
        if (disturb_state) disturb(FALSE, FALSE);
-
-       /* Recalculate bonuses */
        p_ptr->update |= (PU_BONUS);
-
-       /* Handle stuff */
        handle_stuff();
        return (TRUE);
 }
@@ -2096,8 +1868,6 @@ bool set_tim_sh_holy(TIME_EFFECT v, bool do_dec)
 bool set_tim_eyeeye(TIME_EFFECT v, bool do_dec)
 {
        bool notice = FALSE;
-
-       /* Hack -- Force good values */
        v = (v > 10000) ? 10000 : (v < 0) ? 0 : v;
 
        if (p_ptr->is_dead) return FALSE;
@@ -2128,19 +1898,13 @@ bool set_tim_eyeeye(TIME_EFFECT v, bool do_dec)
 
        /* Use the value */
        p_ptr->tim_eyeeye = v;
-
-       /* Redraw status bar */
        p_ptr->redraw |= (PR_STATUS);
 
        /* Nothing to notice */
        if (!notice) return (FALSE);
 
        if (disturb_state) disturb(FALSE, FALSE);
-
-       /* Recalculate bonuses */
        p_ptr->update |= (PU_BONUS);
-
-       /* Handle stuff */
        handle_stuff();
        return (TRUE);
 }
@@ -2155,8 +1919,6 @@ bool set_tim_eyeeye(TIME_EFFECT v, bool do_dec)
 bool set_resist_magic(TIME_EFFECT v, bool do_dec)
 {
        bool notice = FALSE;
-
-       /* Hack -- Force good values */
        v = (v > 10000) ? 10000 : (v < 0) ? 0 : v;
 
        if (p_ptr->is_dead) return FALSE;
@@ -2187,19 +1949,13 @@ bool set_resist_magic(TIME_EFFECT v, bool do_dec)
 
        /* Use the value */
        p_ptr->resist_magic = v;
-
-       /* Redraw status bar */
        p_ptr->redraw |= (PR_STATUS);
 
        /* Nothing to notice */
        if (!notice) return (FALSE);
 
        if (disturb_state) disturb(FALSE, FALSE);
-
-       /* Recalculate bonuses */
        p_ptr->update |= (PU_BONUS);
-
-       /* Handle stuff */
        handle_stuff();
        return (TRUE);
 }
@@ -2213,8 +1969,6 @@ bool set_resist_magic(TIME_EFFECT v, bool do_dec)
 bool set_tim_reflect(TIME_EFFECT v, bool do_dec)
 {
        bool notice = FALSE;
-
-       /* Hack -- Force good values */
        v = (v > 10000) ? 10000 : (v < 0) ? 0 : v;
 
        if (p_ptr->is_dead) return FALSE;
@@ -2245,19 +1999,13 @@ bool set_tim_reflect(TIME_EFFECT v, bool do_dec)
 
        /* Use the value */
        p_ptr->tim_reflect = v;
-
-       /* Redraw status bar */
        p_ptr->redraw |= (PR_STATUS);
 
        /* Nothing to notice */
        if (!notice) return (FALSE);
 
        if (disturb_state) disturb(FALSE, FALSE);
-
-       /* Recalculate bonuses */
        p_ptr->update |= (PU_BONUS);
-
-       /* Handle stuff */
        handle_stuff();
        return (TRUE);
 }
@@ -2269,8 +2017,6 @@ bool set_tim_reflect(TIME_EFFECT v, bool do_dec)
 bool set_multishadow(TIME_EFFECT v, bool do_dec)
 {
        bool notice = FALSE;
-
-       /* Hack -- Force good values */
        v = (v > 10000) ? 10000 : (v < 0) ? 0 : v;
 
        if (p_ptr->is_dead) return FALSE;
@@ -2301,19 +2047,13 @@ bool set_multishadow(TIME_EFFECT v, bool do_dec)
 
        /* Use the value */
        p_ptr->multishadow = v;
-
-       /* Redraw status bar */
        p_ptr->redraw |= (PR_STATUS);
 
        /* Nothing to notice */
        if (!notice) return (FALSE);
 
        if (disturb_state) disturb(FALSE, FALSE);
-
-       /* Recalculate bonuses */
        p_ptr->update |= (PU_BONUS);
-
-       /* Handle stuff */
        handle_stuff();
        return (TRUE);
 }
@@ -2327,8 +2067,6 @@ bool set_multishadow(TIME_EFFECT v, bool do_dec)
 bool set_dustrobe(TIME_EFFECT v, bool do_dec)
 {
        bool notice = FALSE;
-
-       /* Hack -- Force good values */
        v = (v > 10000) ? 10000 : (v < 0) ? 0 : v;
 
        if (p_ptr->is_dead) return FALSE;
@@ -2359,19 +2097,13 @@ bool set_dustrobe(TIME_EFFECT v, bool do_dec)
 
        /* Use the value */
        p_ptr->dustrobe = v;
-
-       /* Redraw status bar */
        p_ptr->redraw |= (PR_STATUS);
 
        /* Nothing to notice */
        if (!notice) return (FALSE);
 
        if (disturb_state) disturb(FALSE, FALSE);
-
-       /* Recalculate bonuses */
        p_ptr->update |= (PU_BONUS);
-
-       /* Handle stuff */
        handle_stuff();
        return (TRUE);
 }
@@ -2385,8 +2117,6 @@ bool set_dustrobe(TIME_EFFECT v, bool do_dec)
 bool set_kabenuke(TIME_EFFECT v, bool do_dec)
 {
        bool notice = FALSE;
-
-       /* Hack -- Force good values */
        v = (v > 10000) ? 10000 : (v < 0) ? 0 : v;
 
        if (p_ptr->is_dead) return FALSE;
@@ -2417,19 +2147,13 @@ bool set_kabenuke(TIME_EFFECT v, bool do_dec)
 
        /* Use the value */
        p_ptr->kabenuke = v;
-
-       /* Redraw status bar */
        p_ptr->redraw |= (PR_STATUS);
 
        /* Nothing to notice */
        if (!notice) return (FALSE);
 
        if (disturb_state) disturb(FALSE, FALSE);
-
-       /* Recalculate bonuses */
        p_ptr->update |= (PU_BONUS);
-
-       /* Handle stuff */
        handle_stuff();
        return (TRUE);
 }
@@ -2443,8 +2167,6 @@ bool set_kabenuke(TIME_EFFECT v, bool do_dec)
 bool set_tsuyoshi(TIME_EFFECT v, bool do_dec)
 {
        bool notice = FALSE;
-
-       /* Hack -- Force good values */
        v = (v > 10000) ? 10000 : (v < 0) ? 0 : v;
 
        if (p_ptr->is_dead) return FALSE;
@@ -2481,22 +2203,16 @@ bool set_tsuyoshi(TIME_EFFECT v, bool do_dec)
 
        /* Use the value */
        p_ptr->tsuyoshi = v;
-
-       /* Redraw status bar */
        p_ptr->redraw |= (PR_STATUS);
 
        /* Nothing to notice */
        if (!notice) return (FALSE);
 
        if (disturb_state) disturb(FALSE, FALSE);
-
-       /* Recalculate bonuses */
        p_ptr->update |= (PU_BONUS);
 
        /* Recalculate hitpoints */
        p_ptr->update |= (PU_HP);
-
-       /* Handle stuff */
        handle_stuff();
        return (TRUE);
 }
@@ -2509,7 +2225,6 @@ bool set_tsuyoshi(TIME_EFFECT v, bool do_dec)
  */
 bool set_ele_attack(u32b attack_type, TIME_EFFECT v)
 {
-       /* Hack -- Force good values */
        v = (v > 10000) ? 10000 : (v < 0) ? 0 : v;
 
        /* Clear all elemental attacks (only one is allowed at a time). */
@@ -2547,7 +2262,6 @@ bool set_ele_attack(u32b attack_type, TIME_EFFECT v)
                /* Set duration. */
                p_ptr->ele_attack = v;
 
-               /* Message. */
 #ifdef JP
                msg_format("%sで攻撃できるようになった!",
                             ((attack_type == ATTACK_ACID) ? "酸" :
@@ -2568,13 +2282,9 @@ bool set_ele_attack(u32b attack_type, TIME_EFFECT v)
        }
 
        if (disturb_state) disturb(FALSE, FALSE);
-
-       /* Redraw status bar */
        p_ptr->redraw |= (PR_STATUS);
 
        p_ptr->update |= (PU_BONUS);
-
-       /* Handle stuff */
        handle_stuff();
 
        return (TRUE);
@@ -2588,7 +2298,6 @@ bool set_ele_attack(u32b attack_type, TIME_EFFECT v)
  */
 bool set_ele_immune(u32b immune_type, TIME_EFFECT v)
 {
-       /* Hack -- Force good values */
        v = (v > 10000) ? 10000 : (v < 0) ? 0 : v;
 
        /* Clear all elemental attacks (only one is allowed at a time). */
@@ -2626,34 +2335,18 @@ bool set_ele_immune(u32b immune_type, TIME_EFFECT v)
                /* Set duration. */
                p_ptr->ele_immune = v;
 
-               /* Message. */
-#ifdef JP
-               msg_format("%sの攻撃を受けつけなくなった!",
-                            ((immune_type == DEFENSE_ACID) ? "酸" :
-                             ((immune_type == DEFENSE_ELEC) ? "電撃" :
-                              ((immune_type == DEFENSE_FIRE) ? "火炎" : 
-                               ((immune_type == DEFENSE_COLD) ? "冷気" : 
-                                ((immune_type == DEFENSE_POIS) ? "毒" : 
-                                       "(なし)"))))));
-#else
-               msg_format("For a while, You are immune to %s",
-                            ((immune_type == DEFENSE_ACID) ? "acid!" :
-                             ((immune_type == DEFENSE_ELEC) ? "electricity!" :
-                              ((immune_type == DEFENSE_FIRE) ? "fire!" : 
-                               ((immune_type == DEFENSE_COLD) ? "cold!" : 
-                                ((immune_type == DEFENSE_POIS) ? "poison!" : 
-                                       "do nothing special."))))));
-#endif
+               msg_format(_("%sの攻撃を受けつけなくなった!", "For a while, You are immune to %s"),
+                            ((immune_type == DEFENSE_ACID) ? _("酸", "acid!") :
+                             ((immune_type == DEFENSE_ELEC) ? _("電撃", "electricity!") :
+                              ((immune_type == DEFENSE_FIRE) ? _("火炎", "fire!") : 
+                               ((immune_type == DEFENSE_COLD) ? _("冷気", "cold!") : 
+                                ((immune_type == DEFENSE_POIS) ? _("毒", "poison!") : 
+                                       _("(なし)", "do nothing special.")))))));
        }
 
        if (disturb_state) disturb(FALSE, FALSE);
-
-       /* Redraw status bar */
        p_ptr->redraw |= (PR_STATUS);
-
        p_ptr->update |= (PU_BONUS);
-
-       /* Handle stuff */
        handle_stuff();
 
        return (TRUE);
@@ -2668,8 +2361,6 @@ bool set_ele_immune(u32b immune_type, TIME_EFFECT v)
 bool set_oppose_acid(TIME_EFFECT v, bool do_dec)
 {
        bool notice = FALSE;
-
-       /* Hack -- Force good values */
        v = (v > 10000) ? 10000 : (v < 0) ? 0 : v;
 
        if (p_ptr->is_dead) return FALSE;
@@ -2703,13 +2394,9 @@ bool set_oppose_acid(TIME_EFFECT v, bool do_dec)
 
        /* Nothing to notice */
        if (!notice) return (FALSE);
-
-       /* Redraw status bar */
        p_ptr->redraw |= (PR_STATUS);
 
        if (disturb_state) disturb(FALSE, FALSE);
-
-       /* Handle stuff */
        handle_stuff();
        return (TRUE);
 }
@@ -2723,8 +2410,6 @@ bool set_oppose_acid(TIME_EFFECT v, bool do_dec)
 bool set_oppose_elec(TIME_EFFECT v, bool do_dec)
 {
        bool notice = FALSE;
-
-       /* Hack -- Force good values */
        v = (v > 10000) ? 10000 : (v < 0) ? 0 : v;
 
        if (p_ptr->is_dead) return FALSE;
@@ -2758,13 +2443,9 @@ bool set_oppose_elec(TIME_EFFECT v, bool do_dec)
 
        /* Nothing to notice */
        if (!notice) return (FALSE);
-
-       /* Redraw status bar */
        p_ptr->redraw |= (PR_STATUS);
 
        if (disturb_state) disturb(FALSE, FALSE);
-
-       /* Handle stuff */
        handle_stuff();
        return (TRUE);
 }
@@ -2778,8 +2459,6 @@ bool set_oppose_elec(TIME_EFFECT v, bool do_dec)
 bool set_oppose_fire(TIME_EFFECT v, bool do_dec)
 {
        bool notice = FALSE;
-
-       /* Hack -- Force good values */
        v = (v > 10000) ? 10000 : (v < 0) ? 0 : v;
 
        if (p_ptr->is_dead) return FALSE;
@@ -2814,13 +2493,9 @@ bool set_oppose_fire(TIME_EFFECT v, bool do_dec)
 
        /* Nothing to notice */
        if (!notice) return (FALSE);
-
-       /* Redraw status bar */
        p_ptr->redraw |= (PR_STATUS);
 
        if (disturb_state) disturb(FALSE, FALSE);
-
-       /* Handle stuff */
        handle_stuff();
        return (TRUE);
 }
@@ -2834,8 +2509,6 @@ bool set_oppose_fire(TIME_EFFECT v, bool do_dec)
 bool set_oppose_cold(TIME_EFFECT v, bool do_dec)
 {
        bool notice = FALSE;
-
-       /* Hack -- Force good values */
        v = (v > 10000) ? 10000 : (v < 0) ? 0 : v;
 
        if (p_ptr->is_dead) return FALSE;
@@ -2869,13 +2542,9 @@ bool set_oppose_cold(TIME_EFFECT v, bool do_dec)
 
        /* Nothing to notice */
        if (!notice) return (FALSE);
-
-       /* Redraw status bar */
        p_ptr->redraw |= (PR_STATUS);
 
        if (disturb_state) disturb(FALSE, FALSE);
-
-       /* Handle stuff */
        handle_stuff();
        return (TRUE);
 }
@@ -2889,8 +2558,6 @@ bool set_oppose_cold(TIME_EFFECT v, bool do_dec)
 bool set_oppose_pois(TIME_EFFECT v, bool do_dec)
 {
        bool notice = FALSE;
-
-       /* Hack -- Force good values */
        v = (v > 10000) ? 10000 : (v < 0) ? 0 : v;
 
        if ((p_ptr->pclass == CLASS_NINJA) && (p_ptr->lev > 44)) v = 1;
@@ -2925,13 +2592,9 @@ bool set_oppose_pois(TIME_EFFECT v, bool do_dec)
 
        /* Nothing to notice */
        if (!notice) return (FALSE);
-
-       /* Redraw status bar */
        p_ptr->redraw |= (PR_STATUS);
 
        if (disturb_state) disturb(FALSE, FALSE);
-
-       /* Handle stuff */
        handle_stuff();
        return (TRUE);
 }
@@ -2947,13 +2610,9 @@ bool set_stun(TIME_EFFECT v)
 {
        int old_aux, new_aux;
        bool notice = FALSE;
-
-
-       /* Hack -- Force good values */
        v = (v > 10000) ? 10000 : (v < 0) ? 0 : v;
 
        if (p_ptr->is_dead) return FALSE;
-
        if (prace_is_(RACE_GOLEM) || ((p_ptr->pclass == CLASS_BERSERKER) && (p_ptr->lev > 34))) v = 0;
 
        /* Knocked out */
@@ -3082,14 +2741,10 @@ bool set_stun(TIME_EFFECT v)
        if (!notice) return (FALSE);
 
        if (disturb_state) disturb(FALSE, FALSE);
-
-       /* Recalculate bonuses */
        p_ptr->update |= (PU_BONUS);
 
        /* Redraw the "stun" */
        p_ptr->redraw |= (PR_STUN);
-
-       /* Handle stuff */
        handle_stuff();
        return (TRUE);
 }
@@ -3106,8 +2761,6 @@ bool set_cut(TIME_EFFECT v)
 {
        int old_aux, new_aux;
        bool notice = FALSE;
-
-       /* Hack -- Force good values */
        v = (v > 10000) ? 10000 : (v < 0) ? 0 : v;
 
        if (p_ptr->is_dead) return FALSE;
@@ -3279,14 +2932,10 @@ bool set_cut(TIME_EFFECT v)
        if (!notice) return (FALSE);
 
        if (disturb_state) disturb(FALSE, FALSE);
-
-       /* Recalculate bonuses */
        p_ptr->update |= (PU_BONUS);
 
        /* Redraw the "cut" */
        p_ptr->redraw |= (PR_CUT);
-
-       /* Handle stuff */
        handle_stuff();
        return (TRUE);
 }
@@ -3322,8 +2971,6 @@ bool set_food(TIME_EFFECT v)
        int old_aux, new_aux;
 
        bool notice = FALSE;
-
-       /* Hack -- Force good values */
        v = (v > 20000) ? 20000 : (v < 0) ? 0 : v;
 
        /* Fainting / Starving */
@@ -3477,14 +3124,10 @@ bool set_food(TIME_EFFECT v)
        if (!notice) return (FALSE);
 
        if (disturb_state) disturb(FALSE, FALSE);
-
-       /* Recalculate bonuses */
        p_ptr->update |= (PU_BONUS);
 
        /* Redraw hunger */
        p_ptr->redraw |= (PR_HUNGER);
-
-       /* Handle stuff */
        handle_stuff();
        return (TRUE);
 }
@@ -3544,8 +3187,6 @@ bool inc_stat(int stat)
                {
                        p_ptr->stat_max[stat] = value;
                }
-
-               /* Recalculate bonuses */
                p_ptr->update |= (PU_BONUS);
 
                /* Success */
@@ -3677,10 +3318,7 @@ bool dec_stat(int stat, int amount, int permanent)
                p_ptr->stat_cur[stat] = cur;
                p_ptr->stat_max[stat] = max;
 
-               /* Redisplay the stats later */
                p_ptr->redraw |= (PR_STATS);
-
-               /* Recalculate bonuses */
                p_ptr->update |= (PU_BONUS);
        }
 
@@ -3698,13 +3336,8 @@ bool res_stat(int stat)
        /* Restore if needed */
        if (p_ptr->stat_cur[stat] != p_ptr->stat_max[stat])
        {
-               /* Restore */
                p_ptr->stat_cur[stat] = p_ptr->stat_max[stat];
-
-               /* Recalculate bonuses */
                p_ptr->update |= (PU_BONUS);
-
-               /* Redisplay the stats later */
                p_ptr->redraw |= (PR_STATS);
 
                /* Success */
@@ -3745,7 +3378,6 @@ bool hp_player(int num)
                        p_ptr->chp_frac = 0;
                }
 
-               /* Redraw */
                p_ptr->redraw |= (PR_HP);
 
                p_ptr->window |= (PW_PLAYER);
@@ -3785,7 +3417,7 @@ bool hp_player(int num)
 /*
  * Array of stat "descriptions"
  */
-static cptr desc_stat_pos[] =
+static concptr desc_stat_pos[] =
 {
        _("強く", "strong"),
        _("知的に", "smart"),
@@ -3799,7 +3431,7 @@ static cptr desc_stat_pos[] =
 /*
  * Array of stat "descriptions"
  */
-static cptr desc_stat_neg[] =
+static concptr desc_stat_neg[] =
 {
        _("弱く", "weak"),
        _("無知に", "stupid"),
@@ -3971,12 +3603,8 @@ bool lose_all_info(void)
                /* Hack -- Clear the "felt" flag */
                o_ptr->ident &= ~(IDENT_SENSE);
        }
-
-       /* Recalculate bonuses */
        p_ptr->update |= (PU_BONUS);
-
-       /* Combine / Reorder the pack (later) */
-       p_ptr->notice |= (PN_COMBINE | PN_REORDER);
+       p_ptr->update |= (PU_COMBINE | PU_REORDER);
 
        p_ptr->window |= (PW_INVEN | PW_EQUIP | PW_PLAYER);
 
@@ -4016,9 +3644,9 @@ void do_poly_wounds(void)
 /*
  * Change player race
  */
-void change_race(CHARACTER_IDX new_race, cptr effect_msg)
+void change_race(CHARACTER_IDX new_race, concptr effect_msg)
 {
-       cptr title = race_info[new_race].title;
+       concptr title = race_info[new_race].title;
        int  old_race = p_ptr->prace;
 
 #ifdef JP
@@ -4119,7 +3747,7 @@ void do_poly_self(void)
                        /* Harmful deformity */
                        power -= 15;
 
-                       while (tmp < 6)
+                       while (tmp < A_MAX)
                        {
                                if (one_in_(2))
                                {
@@ -4170,7 +3798,7 @@ void do_poly_self(void)
                power -= 20;
                msg_format(_("%sの構成が変化した!", "Your internal organs are rearranged!"), p_ptr->prace == RACE_ANDROID ? "機械" : "内臓");
 
-               while (tmp < 6)
+               while (tmp < A_MAX)
                {
                        (void)dec_stat(tmp, randint1(6) + 6, one_in_(3));
                        tmp++;
@@ -4223,7 +3851,7 @@ void do_poly_self(void)
  * setting the player to "dead".
  */
 
-int take_hit(int damage_type, HIT_POINT damage, cptr hit_from, int monspell)
+int take_hit(int damage_type, HIT_POINT damage, concptr hit_from, int monspell)
 {
        int old_chp = p_ptr->chp;
 
@@ -4346,7 +3974,7 @@ int take_hit(int damage_type, HIT_POINT damage, cptr hit_from, int monspell)
 
                if (p_ptr->inside_arena)
                {
-                       cptr m_name = r_name+r_info[arena_info[p_ptr->arena_number].r_idx].name;
+                       concptr m_name = r_name+r_info[arena_info[p_ptr->arena_number].r_idx].name;
                        msg_format(_("あなたは%sの前に敗れ去った。", "You are beaten by %s."), m_name);
                        msg_print(NULL);
                        if (record_arena) do_cmd_write_nikki(NIKKI_ARENA, -1 - p_ptr->arena_number, m_name);
@@ -4474,7 +4102,7 @@ int take_hit(int damage_type, HIT_POINT damage, cptr hit_from, int monspell)
                                        int h = Term->hgt;
                                        int msg_pos_x[9] = {  5,  7,  9, 12,  14,  17,  19,  21, 23};
                                        int msg_pos_y[9] = {  3,  4,  5,  4,   5,   4,   5,   6,  4};
-                                       cptr str;
+                                       concptr str;
                                        char* str2;
 
                                        Term_clear();
@@ -4683,7 +4311,7 @@ void calc_android_exp(void)
                        if (value > 100000L)
                                exp += (value - 100000L) / 4  * level;
                }
-               if ((((i == INVEN_RARM) || (i == INVEN_LARM)) && (buki_motteruka(i))) || (i == INVEN_BOW)) total_exp += exp / 48;
+               if ((((i == INVEN_RARM) || (i == INVEN_LARM)) && (has_melee_weapon(i))) || (i == INVEN_BOW)) total_exp += exp / 48;
                else total_exp += exp / 16;
                if (i == INVEN_BODY) total_exp += exp / 32;
        }
@@ -4747,8 +4375,6 @@ bool drain_exp(s32b drain, s32b slip, int hold_exp_prob)
 bool set_ultimate_res(TIME_EFFECT v, bool do_dec)
 {
        bool notice = FALSE;
-
-       /* Hack -- Force good values */
        v = (v > 10000) ? 10000 : (v < 0) ? 0 : v;
 
        if (p_ptr->is_dead) return FALSE;
@@ -4779,19 +4405,13 @@ bool set_ultimate_res(TIME_EFFECT v, bool do_dec)
 
        /* Use the value */
        p_ptr->ult_res = v;
-
-       /* Redraw status bar */
        p_ptr->redraw |= (PR_STATUS);
 
        /* Nothing to notice */
        if (!notice) return (FALSE);
 
        if (disturb_state) disturb(FALSE, FALSE);
-
-       /* Recalculate bonuses */
        p_ptr->update |= (PU_BONUS);
-
-       /* Handle stuff */
        handle_stuff();
        return (TRUE);
 }
@@ -4799,8 +4419,6 @@ bool set_ultimate_res(TIME_EFFECT v, bool do_dec)
 bool set_tim_res_nether(TIME_EFFECT v, bool do_dec)
 {
        bool notice = FALSE;
-
-       /* Hack -- Force good values */
        v = (v > 10000) ? 10000 : (v < 0) ? 0 : v;
 
        if (p_ptr->is_dead) return FALSE;
@@ -4831,19 +4449,13 @@ bool set_tim_res_nether(TIME_EFFECT v, bool do_dec)
 
        /* Use the value */
        p_ptr->tim_res_nether = v;
-
-       /* Redraw status bar */
        p_ptr->redraw |= (PR_STATUS);
 
        /* Nothing to notice */
        if (!notice) return (FALSE);
 
        if (disturb_state) disturb(FALSE, FALSE);
-
-       /* Recalculate bonuses */
        p_ptr->update |= (PU_BONUS);
-
-       /* Handle stuff */
        handle_stuff();
        return (TRUE);
 }
@@ -4851,8 +4463,6 @@ bool set_tim_res_nether(TIME_EFFECT v, bool do_dec)
 bool set_tim_res_time(TIME_EFFECT v, bool do_dec)
 {
        bool notice = FALSE;
-
-       /* Hack -- Force good values */
        v = (v > 10000) ? 10000 : (v < 0) ? 0 : v;
 
        if (p_ptr->is_dead) return FALSE;
@@ -4883,19 +4493,13 @@ bool set_tim_res_time(TIME_EFFECT v, bool do_dec)
 
        /* Use the value */
        p_ptr->tim_res_time = v;
-
-       /* Redraw status bar */
        p_ptr->redraw |= (PR_STATUS);
 
        /* Nothing to notice */
        if (!notice) return (FALSE);
 
        if (disturb_state) disturb(FALSE, FALSE);
-
-       /* Recalculate bonuses */
        p_ptr->update |= (PU_BONUS);
-
-       /* Handle stuff */
        handle_stuff();
        return (TRUE);
 }
@@ -4910,13 +4514,11 @@ bool choose_ele_attack(void)
 
        char choice;
 
-       if (!buki_motteruka(INVEN_RARM) && !buki_motteruka(INVEN_LARM))
+       if (!has_melee_weapon(INVEN_RARM) && !has_melee_weapon(INVEN_LARM))
        {
                msg_format(_("武器を持たないと魔法剣は使えない。", "You cannot use temporary branding with no weapon."));
                return FALSE;
        }
-
-       /* Save screen */
        screen_save();
 
        num = (p_ptr->lev - 20) / 5;
@@ -4967,7 +4569,6 @@ bool choose_ele_attack(void)
                screen_load();
                return FALSE;
        }
-       /* Load screen */
        screen_load();
        return TRUE;
 }
@@ -4979,8 +4580,6 @@ bool choose_ele_attack(void)
 bool choose_ele_immune(TIME_EFFECT immune_turn)
 {
        char choice;
-
-       /* Save screen */
        screen_save();
 
        c_prt(TERM_RED,    _("        a) 火炎", "        a) Immune Fire"), 2, 14);
@@ -5012,7 +4611,6 @@ bool choose_ele_immune(TIME_EFFECT immune_turn)
                screen_load();
                return FALSE;
        }
-       /* Load screen */
        screen_load();
        return TRUE;
 }