OSDN Git Service

[Refactor] enum classの型名変更 MUTA -> PlayerMutationType
authordis- <dis.rogue@gmail.com>
Fri, 12 Nov 2021 06:14:27 +0000 (15:14 +0900)
committerdis- <dis.rogue@gmail.com>
Fri, 12 Nov 2021 09:04:17 +0000 (18:04 +0900)
 #1824にて議論されていたフォーマット統一処理。
MUTAをPlayerMutationTypeに名称変更する。

40 files changed:
src/action/movement-execution.cpp
src/action/mutation-execution.cpp
src/action/mutation-execution.h
src/cmd-action/cmd-attack.cpp
src/cmd-action/cmd-racial.cpp
src/cmd-building/cmd-building.cpp
src/io/mutations-dump.cpp
src/mutation/gain-mutation-switcher.cpp
src/mutation/lose-mutation-switcher.cpp
src/mutation/mutation-flag-types.h
src/mutation/mutation-investor-remover.cpp
src/mutation/mutation-processor.cpp
src/mutation/mutation-util.cpp
src/mutation/mutation-util.h
src/object-enchant/apply-magic.cpp
src/perception/simple-perception.cpp
src/player-ability/player-charisma.cpp
src/player-ability/player-constitution.cpp
src/player-ability/player-dexterity.cpp
src/player-ability/player-intelligence.cpp
src/player-ability/player-strength.cpp
src/player-ability/player-wisdom.cpp
src/player-info/mutation-info.cpp
src/player-status/player-infravision.cpp
src/player-status/player-speed.cpp
src/player-status/player-stealth.cpp
src/player/eldritch-horror.cpp
src/player/patron.cpp
src/player/permanent-resistances.cpp
src/player/player-status-flags.cpp
src/player/player-status.cpp
src/player/race-resistances.cpp
src/racial/mutation-racial-selector.cpp
src/racial/racial-util.cpp
src/racial/racial-util.h
src/spell-kind/spells-teleport.cpp
src/system/player-type-definition.h
src/view/display-player-stat-info.cpp
src/view/display-player.cpp
src/view/status-first-page.cpp

index afd61de..8e33f19 100644 (file)
@@ -160,7 +160,7 @@ void exe_movement(player_type *player_ptr, DIRECTION dir, bool do_pickup, bool b
         monster_race *r_ptr = &r_info[m_ptr->r_idx];
         auto effects = player_ptr->effects();
         auto is_stunned = effects->stun()->is_stunned();
-        if (!is_hostile(m_ptr) && !(player_ptr->confused || player_ptr->hallucinated || !m_ptr->ml || is_stunned || (player_ptr->muta.has(MUTA::BERS_RAGE) && is_shero(player_ptr))) && pattern_seq(player_ptr, player_ptr->y, player_ptr->x, y, x) && (p_can_enter || p_can_kill_walls)) {
+        if (!is_hostile(m_ptr) && !(player_ptr->confused || player_ptr->hallucinated || !m_ptr->ml || is_stunned || (player_ptr->muta.has(PlayerMutationType::BERS_RAGE) && is_shero(player_ptr))) && pattern_seq(player_ptr, player_ptr->y, player_ptr->x, y, x) && (p_can_enter || p_can_kill_walls)) {
             (void)set_monster_csleep(player_ptr, g_ptr->m_idx, 0);
             monster_desc(player_ptr, m_name, m_ptr, 0);
             if (m_ptr->ml) {
index 0315a98..0122e2e 100644 (file)
  * @param power 発動させる突然変異レイシャルのID
  * @return レイシャルを実行した場合TRUE、キャンセルした場合FALSEを返す
  */
-bool exe_mutation_power(player_type *player_ptr, MUTA power)
+bool exe_mutation_power(player_type *player_ptr, PlayerMutationType power)
 {
     DIRECTION dir = 0;
     PLAYER_LEVEL lvl = player_ptr->lev;
     switch (power) {
-    case MUTA::SPIT_ACID:
+    case PlayerMutationType::SPIT_ACID:
         if (!get_aim_dir(player_ptr, &dir))
             return false;
 
@@ -74,7 +74,7 @@ bool exe_mutation_power(player_type *player_ptr, MUTA power)
         msg_print(_("酸を吐きかけた...", "You spit acid..."));
         fire_ball(player_ptr, AttributeType::ACID, dir, lvl, 1 + (lvl / 30));
         return true;
-    case MUTA::BR_FIRE:
+    case PlayerMutationType::BR_FIRE:
         if (!get_aim_dir(player_ptr, &dir))
             return false;
 
@@ -82,52 +82,52 @@ bool exe_mutation_power(player_type *player_ptr, MUTA power)
         msg_print(_("あなたは火炎のブレスを吐いた...", "You breathe fire..."));
         fire_breath(player_ptr, AttributeType::FIRE, dir, lvl * 2, 1 + (lvl / 20));
         return true;
-    case MUTA::HYPN_GAZE:
+    case PlayerMutationType::HYPN_GAZE:
         if (!get_aim_dir(player_ptr, &dir))
             return false;
 
         msg_print(_("あなたの目は幻惑的になった...", "Your eyes look mesmerizing..."));
         (void)charm_monster(player_ptr, dir, lvl);
         return true;
-    case MUTA::TELEKINES:
+    case PlayerMutationType::TELEKINES:
         if (!get_aim_dir(player_ptr, &dir))
             return false;
 
         msg_print(_("集中している...", "You concentrate..."));
         fetch_item(player_ptr, dir, lvl * 10, true);
         return true;
-    case MUTA::VTELEPORT:
+    case PlayerMutationType::VTELEPORT:
         msg_print(_("集中している...", "You concentrate..."));
         teleport_player(player_ptr, 10 + 4 * lvl, TELEPORT_SPONTANEOUS);
         return true;
-    case MUTA::MIND_BLST:
+    case PlayerMutationType::MIND_BLST:
         if (!get_aim_dir(player_ptr, &dir))
             return false;
 
         msg_print(_("集中している...", "You concentrate..."));
         fire_bolt(player_ptr, AttributeType::PSI, dir, damroll(3 + ((lvl - 1) / 5), 3));
         return true;
-    case MUTA::RADIATION:
+    case PlayerMutationType::RADIATION:
         msg_print(_("体から放射能が発生した!", "Radiation flows from your body!"));
         fire_ball(player_ptr, AttributeType::NUKE, 0, (lvl * 2), 3 + (lvl / 20));
         return true;
-    case MUTA::VAMPIRISM:
+    case PlayerMutationType::VAMPIRISM:
         vampirism(player_ptr);
         return true;
-    case MUTA::SMELL_MET:
+    case PlayerMutationType::SMELL_MET:
         stop_mouth(player_ptr);
         (void)detect_treasure(player_ptr, DETECT_RAD_DEFAULT);
         return true;
-    case MUTA::SMELL_MON:
+    case PlayerMutationType::SMELL_MON:
         stop_mouth(player_ptr);
         (void)detect_monsters_normal(player_ptr, DETECT_RAD_DEFAULT);
         return true;
-    case MUTA::BLINK:
+    case PlayerMutationType::BLINK:
         teleport_player(player_ptr, 10, TELEPORT_SPONTANEOUS);
         return true;
-    case MUTA::EAT_ROCK:
+    case PlayerMutationType::EAT_ROCK:
         return eat_rock(player_ptr);
-    case MUTA::SWAP_POS:
+    case PlayerMutationType::SWAP_POS:
         project_length = -1;
         if (!get_aim_dir(player_ptr, &dir)) {
             project_length = 0;
@@ -137,15 +137,15 @@ bool exe_mutation_power(player_type *player_ptr, MUTA power)
         (void)teleport_swap(player_ptr, dir);
         project_length = 0;
         return true;
-    case MUTA::SHRIEK:
+    case PlayerMutationType::SHRIEK:
         stop_mouth(player_ptr);
         (void)fire_ball(player_ptr, AttributeType::SOUND, 0, 2 * lvl, 8);
         (void)aggravate_monsters(player_ptr, 0);
         return true;
-    case MUTA::ILLUMINE:
+    case PlayerMutationType::ILLUMINE:
         (void)lite_area(player_ptr, damroll(2, (lvl / 2)), (lvl / 10) + 1);
         return true;
-    case MUTA::DET_CURSE:
+    case PlayerMutationType::DET_CURSE:
         for (int i = 0; i < INVEN_TOTAL; i++) {
             object_type *o_ptr = &player_ptr->inventory_list[i];
             if ((o_ptr->k_idx == 0) || !o_ptr->is_cursed())
@@ -155,23 +155,23 @@ bool exe_mutation_power(player_type *player_ptr, MUTA power)
         }
 
         return true;
-    case MUTA::BERSERK:
+    case PlayerMutationType::BERSERK:
         (void)berserk(player_ptr, randint1(25) + 25);
         return true;
-    case MUTA::POLYMORPH:
+    case PlayerMutationType::POLYMORPH:
         if (!get_check(_("変身します。よろしいですか?", "You will polymorph your self. Are you sure? ")))
             return false;
 
         do_poly_self(player_ptr);
         return true;
-    case MUTA::MIDAS_TCH:
+    case PlayerMutationType::MIDAS_TCH:
         return alchemy(player_ptr);
-    case MUTA::GROW_MOLD:
+    case PlayerMutationType::GROW_MOLD:
         for (DIRECTION i = 0; i < 8; i++)
             summon_specific(player_ptr, -1, player_ptr->y, player_ptr->x, lvl, SUMMON_MOLD, PM_FORCE_PET);
 
         return true;
-    case MUTA::RESIST: {
+    case PlayerMutationType::RESIST: {
         int num = lvl / 10;
         TIME_EFFECT dur = randint1(20) + 20;
         if (randint0(5) < num) {
@@ -201,35 +201,35 @@ bool exe_mutation_power(player_type *player_ptr, MUTA power)
 
         return true;
     }
-    case MUTA::EARTHQUAKE:
+    case PlayerMutationType::EARTHQUAKE:
         (void)earthquake(player_ptr, player_ptr->y, player_ptr->x, 10, 0);
         return true;
-    case MUTA::EAT_MAGIC:
+    case PlayerMutationType::EAT_MAGIC:
         return eat_magic(player_ptr, player_ptr->lev * 2);
-    case MUTA::WEIGH_MAG:
+    case PlayerMutationType::WEIGH_MAG:
         report_magics(player_ptr);
         return true;
-    case MUTA::STERILITY:
+    case PlayerMutationType::STERILITY:
         msg_print(_("突然頭が痛くなった!", "You suddenly have a headache!"));
         take_hit(player_ptr, DAMAGE_LOSELIFE, randint1(17) + 17, _("禁欲を強いた疲労", "the strain of forcing abstinence"));
         player_ptr->current_floor_ptr->num_repro += MAX_REPRO;
         return true;
-    case MUTA::HIT_AND_AWAY:
+    case PlayerMutationType::HIT_AND_AWAY:
         return hit_and_away(player_ptr);
-    case MUTA::DAZZLE:
+    case PlayerMutationType::DAZZLE:
         stun_monsters(player_ptr, lvl * 4);
         confuse_monsters(player_ptr, lvl * 4);
         turn_monsters(player_ptr, lvl * 4);
         return true;
-    case MUTA::LASER_EYE:
+    case PlayerMutationType::LASER_EYE:
         if (!get_aim_dir(player_ptr, &dir))
             return false;
 
         fire_beam(player_ptr, AttributeType::LITE, dir, 2 * lvl);
         return true;
-    case MUTA::RECALL:
+    case PlayerMutationType::RECALL:
         return recall_player(player_ptr, randint0(21) + 15);
-    case MUTA::BANISH: {
+    case PlayerMutationType::BANISH: {
         if (!get_direction(player_ptr, &dir, false, false))
             return false;
 
@@ -266,7 +266,7 @@ bool exe_mutation_power(player_type *player_ptr, MUTA power)
 
         return true;
     }
-    case MUTA::COLD_TOUCH: {
+    case PlayerMutationType::COLD_TOUCH: {
         if (!get_direction(player_ptr, &dir, false, false))
             return false;
 
@@ -282,7 +282,7 @@ bool exe_mutation_power(player_type *player_ptr, MUTA power)
         fire_bolt(player_ptr, AttributeType::COLD, dir, 2 * lvl);
         return true;
     }
-    case MUTA::LAUNCHER: {
+    case PlayerMutationType::LAUNCHER: {
         return ThrowCommand(player_ptr).do_cmd_throw(2 + lvl / 40, false, -1);
     }
     default:
index 75bee66..28ca648 100644 (file)
@@ -4,6 +4,6 @@
  * @brief プレイヤーの変異能力実行ヘッダ
  */
 
-enum class MUTA;
+enum class PlayerMutationType;
 struct player_type;
-bool exe_mutation_power(player_type *player_ptr, MUTA power);
+bool exe_mutation_power(player_type *player_ptr, PlayerMutationType power);
index 45cc627..2bc2049 100644 (file)
@@ -66,7 +66,7 @@
  * @param fear 攻撃を受けたモンスターが恐慌状態に陥ったかを返す参照ポインタ
  * @param mdeath 攻撃を受けたモンスターが死亡したかを返す参照ポインタ
  */
-static void natural_attack(player_type *player_ptr, MONSTER_IDX m_idx, MUTA attack, bool *fear, bool *mdeath)
+static void natural_attack(player_type *player_ptr, MONSTER_IDX m_idx, PlayerMutationType attack, bool *fear, bool *mdeath)
 {
     WEIGHT n_weight = 0;
     monster_type *m_ptr = &player_ptr->current_floor_ptr->m_list[m_idx];
@@ -75,31 +75,31 @@ static void natural_attack(player_type *player_ptr, MONSTER_IDX m_idx, MUTA atta
     int dice_num, dice_side;
     concptr atk_desc;
     switch (attack) {
-    case MUTA::SCOR_TAIL:
+    case PlayerMutationType::SCOR_TAIL:
         dice_num = 3;
         dice_side = 7;
         n_weight = 5;
         atk_desc = _("尻尾", "tail");
         break;
-    case MUTA::HORNS:
+    case PlayerMutationType::HORNS:
         dice_num = 2;
         dice_side = 6;
         n_weight = 15;
         atk_desc = _("角", "horns");
         break;
-    case MUTA::BEAK:
+    case PlayerMutationType::BEAK:
         dice_num = 2;
         dice_side = 4;
         n_weight = 5;
         atk_desc = _("クチバシ", "beak");
         break;
-    case MUTA::TRUNK:
+    case PlayerMutationType::TRUNK:
         dice_num = 1;
         dice_side = 4;
         n_weight = 35;
         atk_desc = _("象の鼻", "trunk");
         break;
-    case MUTA::TENTACLES:
+    case PlayerMutationType::TENTACLES:
         dice_num = 2;
         dice_side = 5;
         n_weight = 5;
@@ -140,14 +140,14 @@ static void natural_attack(player_type *player_ptr, MONSTER_IDX m_idx, MUTA atta
         anger_monster(player_ptr, m_ptr);
 
     switch (attack) {
-    case MUTA::SCOR_TAIL:
+    case PlayerMutationType::SCOR_TAIL:
         project(player_ptr, 0, 0, m_ptr->fy, m_ptr->fx, k, AttributeType::POIS, PROJECT_KILL);
         *mdeath = (m_ptr->r_idx == 0);
         break;
-    case MUTA::HORNS:
-    case MUTA::BEAK:
-    case MUTA::TRUNK:
-    case MUTA::TENTACLES:
+    case PlayerMutationType::HORNS:
+    case PlayerMutationType::BEAK:
+    case PlayerMutationType::TRUNK:
+    case PlayerMutationType::TENTACLES:
     default: {
         MonsterDamageProcessor mdp(player_ptr, m_idx, k, fear, AttributeType::ATTACK);
         *mdeath = mdp.mon_take_hit(nullptr);
@@ -174,7 +174,7 @@ bool do_cmd_attack(player_type *player_ptr, POSITION y, POSITION x, combat_optio
     monster_race *r_ptr = &r_info[m_ptr->r_idx];
     GAME_TEXT m_name[MAX_NLEN];
 
-    const std::initializer_list<MUTA> mutation_attack_methods = { MUTA::HORNS, MUTA::BEAK, MUTA::SCOR_TAIL, MUTA::TRUNK, MUTA::TENTACLES };
+    const std::initializer_list<PlayerMutationType> mutation_attack_methods = { PlayerMutationType::HORNS, PlayerMutationType::BEAK, PlayerMutationType::SCOR_TAIL, PlayerMutationType::TRUNK, PlayerMutationType::TENTACLES };
 
     disturb(player_ptr, false, true);
 
index b83ce6d..4a23eab 100644 (file)
@@ -382,7 +382,7 @@ static void racial_power_cast_power(player_type *player_ptr, rc_type *rc_ptr)
         if (rpi_ptr->number < 0)
             rc_ptr->cast = exe_racial_power(player_ptr, rpi_ptr->number);
         else
-            rc_ptr->cast = exe_mutation_power(player_ptr, i2enum<MUTA>(rpi_ptr->number));
+            rc_ptr->cast = exe_mutation_power(player_ptr, i2enum<PlayerMutationType>(rpi_ptr->number));
         break;
     case RACIAL_FAILURE:
         rc_ptr->cast = true;
index 31327a0..4eeab53 100644 (file)
@@ -217,7 +217,7 @@ static void bldg_process_command(player_type *player_ptr, building_type *bldg, i
         auto muta = player_ptr->muta;
         if (player_ptr->ppersonality == PERSONALITY_LUCKY) {
             // ラッキーマンの白オーラは突然変異治療の対象外
-            muta.reset(MUTA::GOOD_LUCK);
+            muta.reset(PlayerMutationType::GOOD_LUCK);
         }
         if (muta.any()) {
             while (!lose_mutation(player_ptr, 0))
index d985197..39c7810 100644 (file)
@@ -19,292 +19,292 @@ void dump_mutations(player_type *player_ptr, FILE *out_file)
         return;
 
     if (player_ptr->muta.any() || has_good_luck(player_ptr)) {
-        if (player_ptr->muta.has(MUTA::SPIT_ACID))
+        if (player_ptr->muta.has(PlayerMutationType::SPIT_ACID))
             fprintf(out_file, _(" あなたは酸を吹きかけることができる。(ダメージ レベルX1)\n", " You can spit acid (dam lvl).\n"));
 
-        if (player_ptr->muta.has(MUTA::BR_FIRE))
+        if (player_ptr->muta.has(PlayerMutationType::BR_FIRE))
             fprintf(out_file, _(" あなたは炎のブレスを吐くことができる。(ダメージ レベルX2)\n", " You can breathe fire (dam lvl * 2).\n"));
 
-        if (player_ptr->muta.has(MUTA::HYPN_GAZE))
+        if (player_ptr->muta.has(PlayerMutationType::HYPN_GAZE))
             fprintf(out_file, _(" あなたの睨みは催眠効果をもつ。\n", " Your gaze is hypnotic.\n"));
 
-        if (player_ptr->muta.has(MUTA::TELEKINES))
+        if (player_ptr->muta.has(PlayerMutationType::TELEKINES))
             fprintf(out_file, _(" あなたは念動力をもっている。\n", " You are telekinetic.\n"));
 
-        if (player_ptr->muta.has(MUTA::VTELEPORT))
+        if (player_ptr->muta.has(PlayerMutationType::VTELEPORT))
             fprintf(out_file, _(" あなたは自分の意思でテレポートできる。\n", " You can teleport at will.\n"));
 
-        if (player_ptr->muta.has(MUTA::MIND_BLST))
+        if (player_ptr->muta.has(PlayerMutationType::MIND_BLST))
             fprintf(out_file, _(" あなたは敵を精神攻撃できる。\n", " You can Mind Blast your enemies.\n"));
 
-        if (player_ptr->muta.has(MUTA::RADIATION))
+        if (player_ptr->muta.has(PlayerMutationType::RADIATION))
             fprintf(out_file, _(" あなたは自分の意思で放射能を発生することができる。\n", " You can emit hard radiation at will.\n"));
 
-        if (player_ptr->muta.has(MUTA::VAMPIRISM))
+        if (player_ptr->muta.has(PlayerMutationType::VAMPIRISM))
             fprintf(out_file, _(" あなたは吸血鬼のように敵から生命力を吸収することができる。\n", " You can drain life from a foe like a vampire.\n"));
 
-        if (player_ptr->muta.has(MUTA::SMELL_MET))
+        if (player_ptr->muta.has(PlayerMutationType::SMELL_MET))
             fprintf(out_file, _(" あなたは近くにある貴金属をかぎ分けることができる。\n", " You can smell nearby precious metal.\n"));
 
-        if (player_ptr->muta.has(MUTA::SMELL_MON))
+        if (player_ptr->muta.has(PlayerMutationType::SMELL_MON))
             fprintf(out_file, _(" あなたは近くのモンスターの存在をかぎ分けることができる。\n", " You can smell nearby monsters.\n"));
 
-        if (player_ptr->muta.has(MUTA::BLINK))
+        if (player_ptr->muta.has(PlayerMutationType::BLINK))
             fprintf(out_file, _(" あなたは短い距離をテレポートできる。\n", " You can teleport yourself short distances.\n"));
 
-        if (player_ptr->muta.has(MUTA::EAT_ROCK))
+        if (player_ptr->muta.has(PlayerMutationType::EAT_ROCK))
             fprintf(out_file, _(" あなたは硬い岩を食べることができる。\n", " You can consume solid rock.\n"));
 
-        if (player_ptr->muta.has(MUTA::SWAP_POS))
+        if (player_ptr->muta.has(PlayerMutationType::SWAP_POS))
             fprintf(out_file, _(" あなたは他の者と場所を入れ替わることができる。\n", " You can switch locations with another being.\n"));
 
-        if (player_ptr->muta.has(MUTA::SHRIEK))
+        if (player_ptr->muta.has(PlayerMutationType::SHRIEK))
             fprintf(out_file, _(" あなたは身の毛もよだつ叫び声を発することができる。\n", " You can emit a horrible shriek.\n"));
 
-        if (player_ptr->muta.has(MUTA::ILLUMINE))
+        if (player_ptr->muta.has(PlayerMutationType::ILLUMINE))
             fprintf(out_file, _(" あなたは明るい光を放つことができる。\n", " You can emit bright light.\n"));
 
-        if (player_ptr->muta.has(MUTA::DET_CURSE))
+        if (player_ptr->muta.has(PlayerMutationType::DET_CURSE))
             fprintf(out_file, _(" あなたは邪悪な魔法の危険を感じとることができる。\n", " You can feel the danger of evil magic.\n"));
 
-        if (player_ptr->muta.has(MUTA::BERSERK))
+        if (player_ptr->muta.has(PlayerMutationType::BERSERK))
             fprintf(out_file, _(" あなたは自分の意思で狂乱戦闘状態になることができる。\n", " You can drive yourself into a berserk frenzy.\n"));
 
-        if (player_ptr->muta.has(MUTA::POLYMORPH))
+        if (player_ptr->muta.has(PlayerMutationType::POLYMORPH))
             fprintf(out_file, _(" あなたは自分の意志で変化できる。\n", " You can polymorph yourself at will.\n"));
 
-        if (player_ptr->muta.has(MUTA::MIDAS_TCH))
+        if (player_ptr->muta.has(PlayerMutationType::MIDAS_TCH))
             fprintf(out_file, _(" あなたは通常アイテムを金に変えることができる。\n", " You can turn ordinary items to gold.\n"));
 
-        if (player_ptr->muta.has(MUTA::GROW_MOLD))
+        if (player_ptr->muta.has(PlayerMutationType::GROW_MOLD))
             fprintf(out_file, _(" あなたは周囲にキノコを生やすことができる。\n", " You can cause mold to grow near you.\n"));
 
-        if (player_ptr->muta.has(MUTA::RESIST))
+        if (player_ptr->muta.has(PlayerMutationType::RESIST))
             fprintf(out_file, _(" あなたは元素の攻撃に対して身を硬くすることができる。\n", " You can harden yourself to the ravages of the elements.\n"));
 
-        if (player_ptr->muta.has(MUTA::EARTHQUAKE))
+        if (player_ptr->muta.has(PlayerMutationType::EARTHQUAKE))
             fprintf(out_file, _(" あなたは周囲のダンジョンを崩壊させることができる。\n", " You can bring down the dungeon around your ears.\n"));
 
-        if (player_ptr->muta.has(MUTA::EAT_MAGIC))
+        if (player_ptr->muta.has(PlayerMutationType::EAT_MAGIC))
             fprintf(out_file, _(" あなたは魔法のエネルギーを自分の物として使用できる。\n", " You can consume magic energy for your own use.\n"));
 
-        if (player_ptr->muta.has(MUTA::WEIGH_MAG))
+        if (player_ptr->muta.has(PlayerMutationType::WEIGH_MAG))
             fprintf(out_file, _(" あなたは自分に影響を与える魔法の力を感じることができる。\n", " You can feel the strength of the magics affecting you.\n"));
 
-        if (player_ptr->muta.has(MUTA::STERILITY))
+        if (player_ptr->muta.has(PlayerMutationType::STERILITY))
             fprintf(out_file, _(" あなたは集団的生殖不能を起こすことができる。\n", " You can cause mass impotence.\n"));
 
-        if (player_ptr->muta.has(MUTA::HIT_AND_AWAY))
+        if (player_ptr->muta.has(PlayerMutationType::HIT_AND_AWAY))
             fprintf(out_file, _(" あなたは攻撃した後身を守るため逃げることができる。\n", " You can run for your life after hitting something.\n"));
 
-        if (player_ptr->muta.has(MUTA::DAZZLE))
+        if (player_ptr->muta.has(PlayerMutationType::DAZZLE))
             fprintf(out_file, _(" あなたは混乱と盲目を引き起こす放射能を発生することができる。 \n", " You can emit confusing, blinding radiation.\n"));
 
-        if (player_ptr->muta.has(MUTA::LASER_EYE))
+        if (player_ptr->muta.has(PlayerMutationType::LASER_EYE))
             fprintf(out_file, _(" あなたは目からレーザー光線を発射することができる。\n", " Your eyes can fire laser beams.\n"));
 
-        if (player_ptr->muta.has(MUTA::RECALL))
+        if (player_ptr->muta.has(PlayerMutationType::RECALL))
             fprintf(out_file, _(" あなたは街とダンジョンの間を行き来することができる。\n", " You can travel between town and the depths.\n"));
 
-        if (player_ptr->muta.has(MUTA::BANISH))
+        if (player_ptr->muta.has(PlayerMutationType::BANISH))
             fprintf(out_file, _(" あなたは邪悪なモンスターを地獄に落とすことができる。\n", " You can send evil creatures directly to Hell.\n"));
 
-        if (player_ptr->muta.has(MUTA::COLD_TOUCH))
+        if (player_ptr->muta.has(PlayerMutationType::COLD_TOUCH))
             fprintf(out_file, _(" あなたは物を触って凍らせることができる。\n", " You can freeze things with a touch.\n"));
 
-        if (player_ptr->muta.has(MUTA::LAUNCHER))
+        if (player_ptr->muta.has(PlayerMutationType::LAUNCHER))
             fprintf(out_file, _(" あなたはアイテムを力強く投げることができる。\n", " You can hurl objects with great force.\n"));
 
-        if (player_ptr->muta.has(MUTA::BERS_RAGE))
+        if (player_ptr->muta.has(PlayerMutationType::BERS_RAGE))
             fprintf(out_file, _(" あなたは狂戦士化の発作を起こす。\n", " You are subject to berserker fits.\n"));
 
-        if (player_ptr->muta.has(MUTA::COWARDICE))
+        if (player_ptr->muta.has(PlayerMutationType::COWARDICE))
             fprintf(out_file, _(" あなたは時々臆病になる。\n", " You are subject to cowardice.\n"));
 
-        if (player_ptr->muta.has(MUTA::RTELEPORT))
+        if (player_ptr->muta.has(PlayerMutationType::RTELEPORT))
             fprintf(out_file, _(" あなたはランダムにテレポートする。\n", " You sometimes randomly teleport.\n"));
 
-        if (player_ptr->muta.has(MUTA::ALCOHOL))
+        if (player_ptr->muta.has(PlayerMutationType::ALCOHOL))
             fprintf(out_file, _(" あなたの体はアルコールを分泌する。\n", " Your body produces alcohol.\n"));
 
-        if (player_ptr->muta.has(MUTA::HALLU))
+        if (player_ptr->muta.has(PlayerMutationType::HALLU))
             fprintf(out_file, _(" あなたは幻覚を引き起こす精神錯乱に侵されている。\n", " You have a hallucinatory insanity.\n"));
 
-        if (player_ptr->muta.has(MUTA::FLATULENT))
+        if (player_ptr->muta.has(PlayerMutationType::FLATULENT))
             fprintf(out_file, _(" あなたは制御できない強烈な屁をこく。\n", " You are subject to uncontrollable flatulence.\n"));
 
-        if (player_ptr->muta.has(MUTA::PROD_MANA))
+        if (player_ptr->muta.has(PlayerMutationType::PROD_MANA))
             fprintf(out_file, _(" あなたは制御不能な魔法のエネルギーを発している。\n", " You produce magical energy uncontrollably.\n"));
 
-        if (player_ptr->muta.has(MUTA::ATT_DEMON))
+        if (player_ptr->muta.has(PlayerMutationType::ATT_DEMON))
             fprintf(out_file, _(" あなたはデーモンを引きつける。\n", " You attract demons.\n"));
 
-        if (player_ptr->muta.has(MUTA::SCOR_TAIL))
+        if (player_ptr->muta.has(PlayerMutationType::SCOR_TAIL))
             fprintf(out_file, _(" あなたはサソリの尻尾が生えている。(毒、ダメージ 3d7)\n", " You have a scorpion tail (poison, 3d7).\n"));
 
-        if (player_ptr->muta.has(MUTA::HORNS))
+        if (player_ptr->muta.has(PlayerMutationType::HORNS))
             fprintf(out_file, _(" あなたは角が生えている。(ダメージ 2d6)\n", " You have horns (dam. 2d6).\n"));
 
-        if (player_ptr->muta.has(MUTA::BEAK))
+        if (player_ptr->muta.has(PlayerMutationType::BEAK))
             fprintf(out_file, _(" あなたはクチバシが生えている。(ダメージ 2d4)\n", " You have a beak (dam. 2d4).\n"));
 
-        if (player_ptr->muta.has(MUTA::SPEED_FLUX))
+        if (player_ptr->muta.has(PlayerMutationType::SPEED_FLUX))
             fprintf(out_file, _(" あなたはランダムに早く動いたり遅く動いたりする。\n", " You move faster or slower randomly.\n"));
 
-        if (player_ptr->muta.has(MUTA::BANISH_ALL))
+        if (player_ptr->muta.has(PlayerMutationType::BANISH_ALL))
             fprintf(out_file, _(" あなたは時々近くのモンスターを消滅させる。\n", " You sometimes cause nearby creatures to vanish.\n"));
 
-        if (player_ptr->muta.has(MUTA::EAT_LIGHT))
+        if (player_ptr->muta.has(PlayerMutationType::EAT_LIGHT))
             fprintf(out_file, _(" あなたは時々周囲の光を吸収して栄養にする。\n", " You sometimes feed off of the light around you.\n"));
 
-        if (player_ptr->muta.has(MUTA::TRUNK))
+        if (player_ptr->muta.has(PlayerMutationType::TRUNK))
             fprintf(out_file, _(" あなたは象のような鼻を持っている。(ダメージ 1d4)\n", " You have an elephantine trunk (dam 1d4).\n"));
 
-        if (player_ptr->muta.has(MUTA::ATT_ANIMAL))
+        if (player_ptr->muta.has(PlayerMutationType::ATT_ANIMAL))
             fprintf(out_file, _(" あなたは動物を引きつける。\n", " You attract animals.\n"));
 
-        if (player_ptr->muta.has(MUTA::TENTACLES))
+        if (player_ptr->muta.has(PlayerMutationType::TENTACLES))
             fprintf(out_file, _(" あなたは邪悪な触手を持っている。(ダメージ 2d5)\n", " You have evil looking tentacles (dam 2d5).\n"));
 
-        if (player_ptr->muta.has(MUTA::RAW_CHAOS))
+        if (player_ptr->muta.has(PlayerMutationType::RAW_CHAOS))
             fprintf(out_file, _(" あなたはしばしば純カオスに包まれる。\n", " You occasionally are surrounded with raw chaos.\n"));
 
-        if (player_ptr->muta.has(MUTA::NORMALITY))
+        if (player_ptr->muta.has(PlayerMutationType::NORMALITY))
             fprintf(out_file, _(" あなたは変異していたが、回復してきている。\n", " You may be mutated, but you're recovering.\n"));
 
-        if (player_ptr->muta.has(MUTA::WRAITH))
+        if (player_ptr->muta.has(PlayerMutationType::WRAITH))
             fprintf(out_file, _(" あなたの肉体は幽体化したり実体化したりする。\n", " You fade in and out of physical reality.\n"));
 
-        if (player_ptr->muta.has(MUTA::POLY_WOUND))
+        if (player_ptr->muta.has(PlayerMutationType::POLY_WOUND))
             fprintf(out_file, _(" あなたの健康はカオスの力に影響を受ける。\n", " Your health is subject to chaotic forces.\n"));
 
-        if (player_ptr->muta.has(MUTA::WASTING))
+        if (player_ptr->muta.has(PlayerMutationType::WASTING))
             fprintf(out_file, _(" あなたは衰弱する恐ろしい病気にかかっている。\n", " You have a horrible wasting disease.\n"));
 
-        if (player_ptr->muta.has(MUTA::ATT_DRAGON))
+        if (player_ptr->muta.has(PlayerMutationType::ATT_DRAGON))
             fprintf(out_file, _(" あなたはドラゴンを引きつける。\n", " You attract dragons.\n"));
 
-        if (player_ptr->muta.has(MUTA::WEIRD_MIND))
+        if (player_ptr->muta.has(PlayerMutationType::WEIRD_MIND))
             fprintf(out_file, _(" あなたの精神はランダムに拡大したり縮小したりしている。\n", " Your mind randomly expands and contracts.\n"));
 
-        if (player_ptr->muta.has(MUTA::NAUSEA))
+        if (player_ptr->muta.has(PlayerMutationType::NAUSEA))
             fprintf(out_file, _(" あなたの胃は非常に落ち着きがない。\n", " You have a seriously upset stomach.\n"));
 
-        if (player_ptr->muta.has(MUTA::CHAOS_GIFT))
+        if (player_ptr->muta.has(PlayerMutationType::CHAOS_GIFT))
             fprintf(out_file, _(" あなたはカオスの守護悪魔から褒美をうけとる。\n", " Chaos deities give you gifts.\n"));
 
-        if (player_ptr->muta.has(MUTA::WALK_SHAD))
+        if (player_ptr->muta.has(PlayerMutationType::WALK_SHAD))
             fprintf(out_file, _(" あなたはしばしば他の「影」に迷い込む。\n", " You occasionally stumble into other shadows.\n"));
 
-        if (player_ptr->muta.has(MUTA::WARNING))
+        if (player_ptr->muta.has(PlayerMutationType::WARNING))
             fprintf(out_file, _(" あなたは敵に関する警告を感じる。\n", " You receive warnings about your foes.\n"));
 
-        if (player_ptr->muta.has(MUTA::INVULN))
+        if (player_ptr->muta.has(PlayerMutationType::INVULN))
             fprintf(out_file, _(" あなたは時々負け知らずな気分になる。\n", " You occasionally feel invincible.\n"));
 
-        if (player_ptr->muta.has(MUTA::SP_TO_HP))
+        if (player_ptr->muta.has(PlayerMutationType::SP_TO_HP))
             fprintf(out_file, _(" あなたは時々血が筋肉にどっと流れる。\n", " Your blood sometimes rushes to your muscles.\n"));
 
-        if (player_ptr->muta.has(MUTA::HP_TO_SP))
+        if (player_ptr->muta.has(PlayerMutationType::HP_TO_SP))
             fprintf(out_file, _(" あなたは時々頭に血がどっと流れる。\n", " Your blood sometimes rushes to your head.\n"));
 
-        if (player_ptr->muta.has(MUTA::DISARM))
+        if (player_ptr->muta.has(PlayerMutationType::DISARM))
             fprintf(out_file, _(" あなたはよくつまづいて物を落とす。\n", " You occasionally stumble and drop things.\n"));
 
-        if (player_ptr->muta.has(MUTA::HYPER_STR))
+        if (player_ptr->muta.has(PlayerMutationType::HYPER_STR))
             fprintf(out_file, _(" あなたは超人的に強い。(腕力+4)\n", " You are superhumanly strong (+4 STR).\n"));
 
-        if (player_ptr->muta.has(MUTA::PUNY))
+        if (player_ptr->muta.has(PlayerMutationType::PUNY))
             fprintf(out_file, _(" あなたは虚弱だ。(腕力-4)\n", " You are puny (-4 STR).\n"));
 
-        if (player_ptr->muta.has(MUTA::HYPER_INT))
+        if (player_ptr->muta.has(PlayerMutationType::HYPER_INT))
             fprintf(out_file, _(" あなたの脳は生体コンピュータだ。(知能&賢さ+4)\n", " Your brain is a living computer (+4 INT/WIS).\n"));
 
-        if (player_ptr->muta.has(MUTA::MORONIC))
+        if (player_ptr->muta.has(PlayerMutationType::MORONIC))
             fprintf(out_file, _(" あなたは精神薄弱だ。(知能&賢さ-4)\n", " You are moronic (-4 INT/WIS).\n"));
 
-        if (player_ptr->muta.has(MUTA::RESILIENT))
+        if (player_ptr->muta.has(PlayerMutationType::RESILIENT))
             fprintf(out_file, _(" あなたの体は弾力性に富んでいる。(耐久+4)\n", " You are very resilient (+4 CON).\n"));
 
-        if (player_ptr->muta.has(MUTA::XTRA_FAT))
+        if (player_ptr->muta.has(PlayerMutationType::XTRA_FAT))
             fprintf(out_file, _(" あなたは極端に太っている。(耐久+2,スピード-2)\n", " You are extremely fat (+2 CON, -2 speed).\n"));
 
-        if (player_ptr->muta.has(MUTA::ALBINO))
+        if (player_ptr->muta.has(PlayerMutationType::ALBINO))
             fprintf(out_file, _(" あなたはアルビノだ。(耐久-4)\n", " You are albino (-4 CON).\n"));
 
-        if (player_ptr->muta.has(MUTA::FLESH_ROT))
+        if (player_ptr->muta.has(PlayerMutationType::FLESH_ROT))
             fprintf(out_file, _(" あなたの肉体は腐敗している。(耐久-2,魅力-1)\n", " Your flesh is rotting (-2 CON, -1 CHR).\n"));
 
-        if (player_ptr->muta.has(MUTA::SILLY_VOI))
+        if (player_ptr->muta.has(PlayerMutationType::SILLY_VOI))
             fprintf(out_file, _(" あなたの声は間抜けなキーキー声だ。(魅力-4)\n", " Your voice is a silly squeak (-4 CHR).\n"));
 
-        if (player_ptr->muta.has(MUTA::BLANK_FAC))
+        if (player_ptr->muta.has(PlayerMutationType::BLANK_FAC))
             fprintf(out_file, _(" あなたはのっぺらぼうだ。(魅力-1)\n", " Your face is featureless (-1 CHR).\n"));
 
-        if (player_ptr->muta.has(MUTA::ILL_NORM))
+        if (player_ptr->muta.has(PlayerMutationType::ILL_NORM))
             fprintf(out_file, _(" あなたは幻影に覆われている。\n", " Your appearance is masked with illusion.\n"));
 
-        if (player_ptr->muta.has(MUTA::XTRA_EYES))
+        if (player_ptr->muta.has(PlayerMutationType::XTRA_EYES))
             fprintf(out_file, _(" あなたは余分に二つの目を持っている。(探索+15)\n", " You have an extra pair of eyes (+15 search).\n"));
 
-        if (player_ptr->muta.has(MUTA::MAGIC_RES))
+        if (player_ptr->muta.has(PlayerMutationType::MAGIC_RES))
             fprintf(out_file, _(" あなたは魔法への耐性をもっている。\n", " You are resistant to magic.\n"));
 
-        if (player_ptr->muta.has(MUTA::XTRA_NOIS))
+        if (player_ptr->muta.has(PlayerMutationType::XTRA_NOIS))
             fprintf(out_file, _(" あなたは変な音を発している。(隠密-3)\n", " You make a lot of strange noise (-3 stealth).\n"));
 
-        if (player_ptr->muta.has(MUTA::INFRAVIS))
+        if (player_ptr->muta.has(PlayerMutationType::INFRAVIS))
             fprintf(out_file, _(" あなたは素晴らしい赤外線視力を持っている。(+3)\n", " You have remarkable infravision (+3).\n"));
 
-        if (player_ptr->muta.has(MUTA::XTRA_LEGS))
+        if (player_ptr->muta.has(PlayerMutationType::XTRA_LEGS))
             fprintf(out_file, _(" あなたは余分に二本の足が生えている。(加速+3)\n", " You have an extra pair of legs (+3 speed).\n"));
 
-        if (player_ptr->muta.has(MUTA::SHORT_LEG))
+        if (player_ptr->muta.has(PlayerMutationType::SHORT_LEG))
             fprintf(out_file, _(" あなたの足は短い突起だ。(加速-3)\n", " Your legs are short stubs (-3 speed).\n"));
 
-        if (player_ptr->muta.has(MUTA::ELEC_TOUC))
+        if (player_ptr->muta.has(PlayerMutationType::ELEC_TOUC))
             fprintf(out_file, _(" あなたの血管には電流が流れている。\n", " Electricity runs through your veins.\n"));
 
-        if (player_ptr->muta.has(MUTA::FIRE_BODY))
+        if (player_ptr->muta.has(PlayerMutationType::FIRE_BODY))
             fprintf(out_file, _(" あなたの体は炎につつまれている。\n", " Your body is enveloped in flames.\n"));
 
-        if (player_ptr->muta.has(MUTA::WART_SKIN))
+        if (player_ptr->muta.has(PlayerMutationType::WART_SKIN))
             fprintf(out_file, _(" あなたの肌はイボに被われている。(魅力-2, AC+5)\n", " Your skin is covered with warts (-2 CHR, +5 AC).\n"));
 
-        if (player_ptr->muta.has(MUTA::SCALES))
+        if (player_ptr->muta.has(PlayerMutationType::SCALES))
             fprintf(out_file, _(" あなたの肌は鱗になっている。(魅力-1, AC+10)\n", " Your skin has turned into scales (-1 CHR, +10 AC).\n"));
 
-        if (player_ptr->muta.has(MUTA::IRON_SKIN))
+        if (player_ptr->muta.has(PlayerMutationType::IRON_SKIN))
             fprintf(out_file, _(" あなたの肌は鉄でできている。(器用-1, AC+25)\n", " Your skin is made of steel (-1 DEX, +25 AC).\n"));
 
-        if (player_ptr->muta.has(MUTA::WINGS))
+        if (player_ptr->muta.has(PlayerMutationType::WINGS))
             fprintf(out_file, _(" あなたは羽を持っている。\n", " You have wings.\n"));
 
-        if (player_ptr->muta.has(MUTA::FEARLESS))
+        if (player_ptr->muta.has(PlayerMutationType::FEARLESS))
             fprintf(out_file, _(" あなたは全く恐怖を感じない。\n", " You are completely fearless.\n"));
 
-        if (player_ptr->muta.has(MUTA::REGEN))
+        if (player_ptr->muta.has(PlayerMutationType::REGEN))
             fprintf(out_file, _(" あなたは急速に回復する。\n", " You are regenerating.\n"));
 
-        if (player_ptr->muta.has(MUTA::ESP))
+        if (player_ptr->muta.has(PlayerMutationType::ESP))
             fprintf(out_file, _(" あなたはテレパシーを持っている。\n", " You are telepathic.\n"));
 
-        if (player_ptr->muta.has(MUTA::LIMBER))
+        if (player_ptr->muta.has(PlayerMutationType::LIMBER))
             fprintf(out_file, _(" あなたの体は非常にしなやかだ。(器用+3)\n", " Your body is very limber (+3 DEX).\n"));
 
-        if (player_ptr->muta.has(MUTA::ARTHRITIS))
+        if (player_ptr->muta.has(PlayerMutationType::ARTHRITIS))
             fprintf(out_file, _(" あなたはいつも関節に痛みを感じている。(器用-3)\n", " Your joints ache constantly (-3 DEX).\n"));
 
-        if (player_ptr->muta.has(MUTA::VULN_ELEM))
+        if (player_ptr->muta.has(PlayerMutationType::VULN_ELEM))
             fprintf(out_file, _(" あなたは元素の攻撃に弱い。\n", " You are susceptible to damage from the elements.\n"));
 
-        if (player_ptr->muta.has(MUTA::MOTION))
+        if (player_ptr->muta.has(PlayerMutationType::MOTION))
             fprintf(out_file, _(" あなたの動作は正確で力強い。(隠密+1)\n", " Your movements are precise and forceful (+1 STL).\n"));
 
         if (has_good_luck(player_ptr))
             fprintf(out_file, _(" あなたは白いオーラにつつまれている。\n", " There is a white aura surrounding you.\n"));
 
-        if (player_ptr->muta.has(MUTA::BAD_LUCK))
+        if (player_ptr->muta.has(PlayerMutationType::BAD_LUCK))
             fprintf(out_file, _(" あなたは黒いオーラにつつまれている。\n", " There is a black aura surrounding you.\n"));
     }
 }
index b3182b6..54b545c 100644 (file)
@@ -10,280 +10,280 @@ void switch_gain_mutation(player_type *player_ptr, glm_type *glm_ptr)
     case 2:
     case 3:
     case 4:
-        glm_ptr->muta_which = MUTA::SPIT_ACID;
+        glm_ptr->muta_which = PlayerMutationType::SPIT_ACID;
         glm_ptr->muta_desc = _("酸を吐く能力を得た。", "You gain the ability to spit acid.");
         break;
     case 5:
     case 6:
     case 7:
-        glm_ptr->muta_which = MUTA::BR_FIRE;
+        glm_ptr->muta_which = PlayerMutationType::BR_FIRE;
         glm_ptr->muta_desc = _("火を吐く能力を得た。", "You gain the ability to breathe fire.");
         break;
     case 8:
     case 9:
-        glm_ptr->muta_which = MUTA::HYPN_GAZE;
+        glm_ptr->muta_which = PlayerMutationType::HYPN_GAZE;
         glm_ptr->muta_desc = _("催眠眼の能力を得た。", "Your eyes look mesmerizing...");
         break;
     case 10:
     case 11:
-        glm_ptr->muta_which = MUTA::TELEKINES;
+        glm_ptr->muta_which = PlayerMutationType::TELEKINES;
         glm_ptr->muta_desc = _("物体を念動力で動かす能力を得た。", "You gain the ability to move objects telekinetically.");
         break;
     case 12:
     case 13:
     case 14:
-        glm_ptr->muta_which = MUTA::VTELEPORT;
+        glm_ptr->muta_which = PlayerMutationType::VTELEPORT;
         glm_ptr->muta_desc = _("自分の意思でテレポートする能力を得た。", "You gain the power of teleportation at will.");
         break;
     case 15:
     case 16:
-        glm_ptr->muta_which = MUTA::MIND_BLST;
+        glm_ptr->muta_which = PlayerMutationType::MIND_BLST;
         glm_ptr->muta_desc = _("精神攻撃の能力を得た。", "You gain the power of Mind Blast.");
         break;
     case 17:
     case 18:
-        glm_ptr->muta_which = MUTA::RADIATION;
+        glm_ptr->muta_which = PlayerMutationType::RADIATION;
         glm_ptr->muta_desc = _("あなたは強い放射線を発生し始めた。", "You start emitting hard radiation.");
         break;
     case 19:
     case 20:
-        glm_ptr->muta_which = MUTA::VAMPIRISM;
+        glm_ptr->muta_which = PlayerMutationType::VAMPIRISM;
         glm_ptr->muta_desc = _("生命力を吸収できるようになった。", "You become vampiric.");
         break;
     case 21:
     case 22:
     case 23:
-        glm_ptr->muta_which = MUTA::SMELL_MET;
+        glm_ptr->muta_which = PlayerMutationType::SMELL_MET;
         glm_ptr->muta_desc = _("金属の匂いを嗅ぎ分けられるようになった。", "You smell a metallic odor.");
         break;
     case 24:
     case 25:
     case 26:
     case 27:
-        glm_ptr->muta_which = MUTA::SMELL_MON;
+        glm_ptr->muta_which = PlayerMutationType::SMELL_MON;
         glm_ptr->muta_desc = _("モンスターの臭いを嗅ぎ分けられるようになった。", "You smell filthy monsters.");
         break;
     case 28:
     case 29:
     case 30:
-        glm_ptr->muta_which = MUTA::BLINK;
+        glm_ptr->muta_which = PlayerMutationType::BLINK;
         glm_ptr->muta_desc = _("近距離テレポートの能力を得た。", "You gain the power of minor teleportation.");
         break;
     case 31:
     case 32:
-        glm_ptr->muta_which = MUTA::EAT_ROCK;
+        glm_ptr->muta_which = PlayerMutationType::EAT_ROCK;
         glm_ptr->muta_desc = _("壁が美味しそうに見える。", "The walls look delicious.");
         break;
     case 33:
     case 34:
-        glm_ptr->muta_which = MUTA::SWAP_POS;
+        glm_ptr->muta_which = PlayerMutationType::SWAP_POS;
         glm_ptr->muta_desc = _("他人の靴で一マイル歩くような気分がする。", "You feel like walking a mile in someone else's shoes.");
         break;
     case 35:
     case 36:
     case 37:
-        glm_ptr->muta_which = MUTA::SHRIEK;
+        glm_ptr->muta_which = PlayerMutationType::SHRIEK;
         glm_ptr->muta_desc = _("あなたの声は相当強くなった。", "Your vocal cords get much tougher.");
         break;
     case 38:
     case 39:
     case 40:
-        glm_ptr->muta_which = MUTA::ILLUMINE;
+        glm_ptr->muta_which = PlayerMutationType::ILLUMINE;
         glm_ptr->muta_desc = _("あなたは光り輝いて部屋を明るくするようになった。", "You can light up rooms with your presence.");
         break;
     case 41:
     case 42:
-        glm_ptr->muta_which = MUTA::DET_CURSE;
+        glm_ptr->muta_which = PlayerMutationType::DET_CURSE;
         glm_ptr->muta_desc = _("邪悪な魔法を感知できるようになった。", "You can feel evil magics.");
         break;
     case 43:
     case 44:
     case 45:
-        glm_ptr->muta_which = MUTA::BERSERK;
+        glm_ptr->muta_which = PlayerMutationType::BERSERK;
         glm_ptr->muta_desc = _("制御できる激情を感じる。", "You feel a controlled rage.");
         break;
     case 46:
-        glm_ptr->muta_which = MUTA::POLYMORPH;
+        glm_ptr->muta_which = PlayerMutationType::POLYMORPH;
         glm_ptr->muta_desc = _("体が変異しやすくなった。", "Your body seems mutable.");
         break;
     case 47:
     case 48:
-        glm_ptr->muta_which = MUTA::MIDAS_TCH;
+        glm_ptr->muta_which = PlayerMutationType::MIDAS_TCH;
         glm_ptr->muta_desc = _("「ミダス王の手」の能力を得た。", "You gain the Midas touch."); /*トゥームレイダースにありましたね。 */
         break;
     case 49:
-        glm_ptr->muta_which = MUTA::GROW_MOLD;
+        glm_ptr->muta_which = PlayerMutationType::GROW_MOLD;
         glm_ptr->muta_desc = _("突然カビに親しみを覚えた。", "You feel a sudden affinity for mold.");
         break;
     case 50:
     case 51:
     case 52:
-        glm_ptr->muta_which = MUTA::RESIST;
+        glm_ptr->muta_which = PlayerMutationType::RESIST;
         glm_ptr->muta_desc = _("あなたは自分自身を守れる気がする。", "You feel like you can protect yourself.");
         break;
     case 53:
     case 54:
     case 55:
-        glm_ptr->muta_which = MUTA::EARTHQUAKE;
+        glm_ptr->muta_which = PlayerMutationType::EARTHQUAKE;
         glm_ptr->muta_desc = _("ダンジョンを破壊する能力を得た。", "You gain the ability to wreck the dungeon.");
         break;
     case 56:
-        glm_ptr->muta_which = MUTA::EAT_MAGIC;
+        glm_ptr->muta_which = PlayerMutationType::EAT_MAGIC;
         glm_ptr->muta_desc = _("魔法のアイテムが美味そうに見える。", "Your magic items look delicious.");
         break;
     case 57:
     case 58:
-        glm_ptr->muta_which = MUTA::WEIGH_MAG;
+        glm_ptr->muta_which = PlayerMutationType::WEIGH_MAG;
         glm_ptr->muta_desc = _("あなたは周囲にある魔法をより良く理解できる気がする。", "You feel you can better understand the magic around you.");
         break;
     case 59:
-        glm_ptr->muta_which = MUTA::STERILITY;
+        glm_ptr->muta_which = PlayerMutationType::STERILITY;
         glm_ptr->muta_desc = _("周りの全ての者に頭痛を起こすことができる。", "You can give everything around you a headache.");
         break;
     case 60:
     case 61:
-        glm_ptr->muta_which = MUTA::HIT_AND_AWAY;
+        glm_ptr->muta_which = PlayerMutationType::HIT_AND_AWAY;
         glm_ptr->muta_desc = _("突然、泥棒の気分が分かるようになった。", "You suddenly understand how thieves feel.");
         break;
     case 62:
     case 63:
     case 64:
-        glm_ptr->muta_which = MUTA::DAZZLE;
+        glm_ptr->muta_which = PlayerMutationType::DAZZLE;
         glm_ptr->muta_desc = _("眩い閃光を発する能力を得た。", "You gain the ability to emit dazzling lights.");
         break;
     case 65:
     case 66:
     case 67:
-        glm_ptr->muta_which = MUTA::LASER_EYE;
+        glm_ptr->muta_which = PlayerMutationType::LASER_EYE;
         glm_ptr->muta_desc = _("あなたの目は一瞬焼け付いた。", "Your eyes burn for a moment.");
         break;
     case 68:
     case 69:
-        glm_ptr->muta_which = MUTA::RECALL;
+        glm_ptr->muta_which = PlayerMutationType::RECALL;
         glm_ptr->muta_desc = _("少しだけホームシックになったが、すぐ直った。", "You feel briefly homesick, but it passes.");
         break;
     case 70:
-        glm_ptr->muta_which = MUTA::BANISH;
+        glm_ptr->muta_which = PlayerMutationType::BANISH;
         glm_ptr->muta_desc = _("神聖な怒りの力に満たされた。", "You feel a holy wrath fill you.");
         break;
     case 71:
     case 72:
-        glm_ptr->muta_which = MUTA::COLD_TOUCH;
+        glm_ptr->muta_which = PlayerMutationType::COLD_TOUCH;
         glm_ptr->muta_desc = _("あなたの両手はとても冷たくなった。", "Your hands get very cold.");
         break;
     case 73:
     case 74:
-        glm_ptr->muta_which = MUTA::LAUNCHER;
+        glm_ptr->muta_which = PlayerMutationType::LAUNCHER;
         glm_ptr->muta_desc = _("あなたの物を投げる手はかなり強くなった気がする。", "Your throwing arm feels much stronger.");
         break;
     case 75:
-        glm_ptr->muta_which = MUTA::BERS_RAGE;
+        glm_ptr->muta_which = PlayerMutationType::BERS_RAGE;
         glm_ptr->muta_desc = _("あなたは狂暴化の発作を起こすようになった!", "You become subject to fits of berserk rage!");
         break;
     case 76:
-        glm_ptr->muta_which = MUTA::COWARDICE;
+        glm_ptr->muta_which = PlayerMutationType::COWARDICE;
         glm_ptr->muta_desc = _("信じられないくらい臆病になった!", "You become an incredible coward!");
         break;
     case 77:
-        glm_ptr->muta_which = MUTA::RTELEPORT;
+        glm_ptr->muta_which = PlayerMutationType::RTELEPORT;
         glm_ptr->muta_desc = _("あなたの位置は非常に不確定になった。", "Your position seems very uncertain...");
         break;
     case 78:
-        glm_ptr->muta_which = MUTA::ALCOHOL;
+        glm_ptr->muta_which = PlayerMutationType::ALCOHOL;
         glm_ptr->muta_desc = _("あなたはアルコールを分泌するようになった。", "Your body starts producing alcohol!");
         break;
     case 79:
-        glm_ptr->muta_which = MUTA::HALLU;
+        glm_ptr->muta_which = PlayerMutationType::HALLU;
         glm_ptr->muta_desc = _("あなたは幻覚を引き起こす精神錯乱に侵された。", "You are afflicted by a hallucinatory insanity!");
         break;
     case 80:
-        glm_ptr->muta_which = MUTA::FLATULENT;
+        glm_ptr->muta_which = PlayerMutationType::FLATULENT;
         glm_ptr->muta_desc = _("あなたは制御不能な強烈な屁をこくようになった。", "You become subject to uncontrollable flatulence.");
         break;
     case 81:
     case 82:
-        glm_ptr->muta_which = MUTA::SCOR_TAIL;
+        glm_ptr->muta_which = PlayerMutationType::SCOR_TAIL;
         glm_ptr->muta_desc = _("サソリの尻尾が生えてきた!", "You grow a scorpion tail!");
         break;
     case 83:
     case 84:
-        glm_ptr->muta_which = MUTA::HORNS;
+        glm_ptr->muta_which = PlayerMutationType::HORNS;
         glm_ptr->muta_desc = _("額に角が生えた!", "Horns pop forth into your forehead!");
         break;
     case 85:
     case 86:
-        glm_ptr->muta_which = MUTA::BEAK;
+        glm_ptr->muta_which = PlayerMutationType::BEAK;
         glm_ptr->muta_desc = _("口が鋭く強いクチバシに変化した!", "Your mouth turns into a sharp, powerful beak!");
         break;
     case 87:
     case 88:
-        glm_ptr->muta_which = MUTA::ATT_DEMON;
+        glm_ptr->muta_which = PlayerMutationType::ATT_DEMON;
         glm_ptr->muta_desc = _("悪魔を引き付けるようになった。", "You start attracting demons.");
         break;
     case 89:
-        glm_ptr->muta_which = MUTA::PROD_MANA;
+        glm_ptr->muta_which = PlayerMutationType::PROD_MANA;
         glm_ptr->muta_desc = _("あなたは制御不能な魔法のエネルギーを発生するようになった。", "You start producing magical energy uncontrollably.");
         break;
     case 90:
     case 91:
-        glm_ptr->muta_which = MUTA::SPEED_FLUX;
+        glm_ptr->muta_which = PlayerMutationType::SPEED_FLUX;
         glm_ptr->muta_desc = _("あなたは躁鬱質になった。", "You become manic-depressive.");
         break;
     case 92:
     case 93:
-        glm_ptr->muta_which = MUTA::BANISH_ALL;
+        glm_ptr->muta_which = PlayerMutationType::BANISH_ALL;
         glm_ptr->muta_desc = _("恐ろしい力があなたの背後に潜んでいる気がする。", "You feel a terrifying power lurking behind you.");
         break;
     case 94:
-        glm_ptr->muta_which = MUTA::EAT_LIGHT;
+        glm_ptr->muta_which = PlayerMutationType::EAT_LIGHT;
         glm_ptr->muta_desc = _("あなたはウンゴリアントに奇妙な親しみを覚えるようになった。", "You feel a strange kinship with Ungoliant.");
         break;
     case 95:
     case 96:
-        glm_ptr->muta_which = MUTA::TRUNK;
+        glm_ptr->muta_which = PlayerMutationType::TRUNK;
         glm_ptr->muta_desc = _("あなたの鼻は伸びて象の鼻のようになった。", "Your nose grows into an elephant-like trunk.");
         break;
     case 97:
-        glm_ptr->muta_which = MUTA::ATT_ANIMAL;
+        glm_ptr->muta_which = PlayerMutationType::ATT_ANIMAL;
         glm_ptr->muta_desc = _("動物を引き付けるようになった。", "You start attracting animals.");
         break;
     case 98:
-        glm_ptr->muta_which = MUTA::TENTACLES;
+        glm_ptr->muta_which = PlayerMutationType::TENTACLES;
         glm_ptr->muta_desc = _("邪悪な触手が体の両側に生えてきた。", "Evil-looking tentacles sprout from your sides.");
         break;
     case 99:
-        glm_ptr->muta_which = MUTA::RAW_CHAOS;
+        glm_ptr->muta_which = PlayerMutationType::RAW_CHAOS;
         glm_ptr->muta_desc = _("周囲の空間が不安定になった気がする。", "You feel the universe is less stable around you.");
         break;
     case 100:
     case 101:
     case 102:
-        glm_ptr->muta_which = MUTA::NORMALITY;
+        glm_ptr->muta_which = PlayerMutationType::NORMALITY;
         glm_ptr->muta_desc = _("あなたは奇妙なほど普通になった気がする。", "You feel strangely normal.");
         break;
     case 103:
-        glm_ptr->muta_which = MUTA::WRAITH;
+        glm_ptr->muta_which = PlayerMutationType::WRAITH;
         glm_ptr->muta_desc = _("あなたは幽体化したり実体化したりするようになった。", "You start to fade in and out of the physical world.");
         break;
     case 104:
-        glm_ptr->muta_which = MUTA::POLY_WOUND;
+        glm_ptr->muta_which = PlayerMutationType::POLY_WOUND;
         glm_ptr->muta_desc = _("あなたはカオスの力が古い傷に入り込んでくるのを感じた。", "You feel forces of chaos entering your old scars.");
         break;
     case 105:
-        glm_ptr->muta_which = MUTA::WASTING;
+        glm_ptr->muta_which = PlayerMutationType::WASTING;
         glm_ptr->muta_desc = _("あなたは突然おぞましい衰弱病にかかった。", "You suddenly contract a horrible wasting disease.");
         break;
     case 106:
-        glm_ptr->muta_which = MUTA::ATT_DRAGON;
+        glm_ptr->muta_which = PlayerMutationType::ATT_DRAGON;
         glm_ptr->muta_desc = _("あなたはドラゴンを引きつけるようになった。", "You start attracting dragons.");
         break;
     case 107:
     case 108:
-        glm_ptr->muta_which = MUTA::WEIRD_MIND;
+        glm_ptr->muta_which = PlayerMutationType::WEIRD_MIND;
         glm_ptr->muta_desc = _("あなたの思考は突然おかしな方向に向き始めた。", "Your thoughts suddenly take off in strange directions.");
         break;
     case 109:
-        glm_ptr->muta_which = MUTA::NAUSEA;
+        glm_ptr->muta_which = PlayerMutationType::NAUSEA;
         glm_ptr->muta_desc = _("胃袋がピクピクしはじめた。", "Your stomach starts to roil nauseously.");
         break;
     case 110:
@@ -291,210 +291,210 @@ void switch_gain_mutation(player_type *player_ptr, glm_type *glm_ptr)
         if (player_ptr->pclass == PlayerClassType::CHAOS_WARRIOR)
             break;
 
-        glm_ptr->muta_which = MUTA::CHAOS_GIFT;
+        glm_ptr->muta_which = PlayerMutationType::CHAOS_GIFT;
         glm_ptr->muta_desc = _("あなたはカオスの守護悪魔の注意を惹くようになった。", "You attract the notice of a chaos deity!");
         break;
     case 112:
-        glm_ptr->muta_which = MUTA::WALK_SHAD;
+        glm_ptr->muta_which = PlayerMutationType::WALK_SHAD;
         glm_ptr->muta_desc = _("あなたは現実が紙のように薄いと感じるようになった。", "You feel like reality is as thin as paper.");
         break;
     case 113:
     case 114:
-        glm_ptr->muta_which = MUTA::WARNING;
+        glm_ptr->muta_which = PlayerMutationType::WARNING;
         glm_ptr->muta_desc = _("あなたは突然パラノイアになった気がする。", "You suddenly feel paranoid.");
         break;
     case 115:
-        glm_ptr->muta_which = MUTA::INVULN;
+        glm_ptr->muta_which = PlayerMutationType::INVULN;
         glm_ptr->muta_desc = _("あなたは祝福され、無敵状態になる発作を起こすようになった。", "You are blessed with fits of invulnerability.");
         break;
     case 116:
     case 117:
-        glm_ptr->muta_which = MUTA::SP_TO_HP;
+        glm_ptr->muta_which = PlayerMutationType::SP_TO_HP;
         glm_ptr->muta_desc = _("魔法の治癒の発作を起こすようになった。", "You are subject to fits of magical healing.");
         break;
     case 118:
-        glm_ptr->muta_which = MUTA::HP_TO_SP;
+        glm_ptr->muta_which = PlayerMutationType::HP_TO_SP;
         glm_ptr->muta_desc = _("痛みを伴う精神明瞭化の発作を起こすようになった。", "You are subject to fits of painful clarity.");
         break;
     case 119:
-        glm_ptr->muta_which = MUTA::DISARM;
+        glm_ptr->muta_which = PlayerMutationType::DISARM;
         glm_ptr->muta_desc = _("あなたの脚は長さが四倍になった。", "Your feet grow to four times their former size.");
         break;
     case 120:
     case 121:
     case 122:
-        glm_ptr->muta_which = MUTA::HYPER_STR;
+        glm_ptr->muta_which = PlayerMutationType::HYPER_STR;
         glm_ptr->muta_desc = _("超人的に強くなった!", "You turn into a superhuman he-man!");
         break;
     case 123:
     case 124:
     case 125:
-        glm_ptr->muta_which = MUTA::PUNY;
+        glm_ptr->muta_which = PlayerMutationType::PUNY;
         glm_ptr->muta_desc = _("筋肉が弱ってしまった...", "Your muscles wither away...");
         break;
     case 126:
     case 127:
     case 128:
-        glm_ptr->muta_which = MUTA::HYPER_INT;
+        glm_ptr->muta_which = PlayerMutationType::HYPER_INT;
         glm_ptr->muta_desc = _("あなたの脳は生体コンピュータに進化した!", "Your brain evolves into a living computer!");
         break;
     case 129:
     case 130:
     case 131:
-        glm_ptr->muta_which = MUTA::MORONIC;
+        glm_ptr->muta_which = PlayerMutationType::MORONIC;
         glm_ptr->muta_desc = _("脳が萎縮してしまった...", "Your brain withers away...");
         break;
     case 132:
     case 133:
-        glm_ptr->muta_which = MUTA::RESILIENT;
+        glm_ptr->muta_which = PlayerMutationType::RESILIENT;
         glm_ptr->muta_desc = _("並外れてタフになった。", "You become extraordinarily resilient.");
         break;
     case 134:
     case 135:
-        glm_ptr->muta_which = MUTA::XTRA_FAT;
+        glm_ptr->muta_which = PlayerMutationType::XTRA_FAT;
         glm_ptr->muta_desc = _("あなたは気持ち悪いくらい太った!", "You become sickeningly fat!");
         break;
     case 136:
     case 137:
-        glm_ptr->muta_which = MUTA::ALBINO;
+        glm_ptr->muta_which = PlayerMutationType::ALBINO;
         glm_ptr->muta_desc = _("アルビノになった!弱くなった気がする...", "You turn into an albino! You feel frail...");
         break;
     case 138:
     case 139:
     case 140:
-        glm_ptr->muta_which = MUTA::FLESH_ROT;
+        glm_ptr->muta_which = PlayerMutationType::FLESH_ROT;
         glm_ptr->muta_desc = _("あなたの肉体は腐敗する病気に侵された!", "Your flesh is afflicted by a rotting disease!");
         break;
     case 141:
     case 142:
-        glm_ptr->muta_which = MUTA::SILLY_VOI;
+        glm_ptr->muta_which = PlayerMutationType::SILLY_VOI;
         glm_ptr->muta_desc = _("声が間抜けなキーキー声になった!", "Your voice turns into a ridiculous squeak!");
         break;
     case 143:
     case 144:
-        glm_ptr->muta_which = MUTA::BLANK_FAC;
+        glm_ptr->muta_which = PlayerMutationType::BLANK_FAC;
         glm_ptr->muta_desc = _("のっぺらぼうになった!", "Your face becomes completely featureless!");
         break;
     case 145:
-        glm_ptr->muta_which = MUTA::ILL_NORM;
+        glm_ptr->muta_which = PlayerMutationType::ILL_NORM;
         glm_ptr->muta_desc = _("心の安らぐ幻影を映し出すようになった。", "You start projecting a reassuring image.");
         break;
     case 146:
     case 147:
     case 148:
-        glm_ptr->muta_which = MUTA::XTRA_EYES;
+        glm_ptr->muta_which = PlayerMutationType::XTRA_EYES;
         glm_ptr->muta_desc = _("新たに二つの目が出来た!", "You grow an extra pair of eyes!");
         break;
     case 149:
     case 150:
-        glm_ptr->muta_which = MUTA::MAGIC_RES;
+        glm_ptr->muta_which = PlayerMutationType::MAGIC_RES;
         glm_ptr->muta_desc = _("魔法への耐性がついた。", "You become resistant to magic.");
         break;
     case 151:
     case 152:
     case 153:
-        glm_ptr->muta_which = MUTA::XTRA_NOIS;
+        glm_ptr->muta_which = PlayerMutationType::XTRA_NOIS;
         glm_ptr->muta_desc = _("あなたは奇妙な音を立て始めた!", "You start making strange noise!");
         break;
     case 154:
     case 155:
     case 156:
-        glm_ptr->muta_which = MUTA::INFRAVIS;
+        glm_ptr->muta_which = PlayerMutationType::INFRAVIS;
         glm_ptr->muta_desc = _("赤外線視力が増した。", "Your infravision is improved.");
         break;
     case 157:
     case 158:
-        glm_ptr->muta_which = MUTA::XTRA_LEGS;
+        glm_ptr->muta_which = PlayerMutationType::XTRA_LEGS;
         glm_ptr->muta_desc = _("新たに二本の足が生えてきた!", "You grow an extra pair of legs!");
         break;
     case 159:
     case 160:
-        glm_ptr->muta_which = MUTA::SHORT_LEG;
+        glm_ptr->muta_which = PlayerMutationType::SHORT_LEG;
         glm_ptr->muta_desc = _("足が短い突起になってしまった!", "Your legs turn into short stubs!");
         break;
     case 161:
     case 162:
-        glm_ptr->muta_which = MUTA::ELEC_TOUC;
+        glm_ptr->muta_which = PlayerMutationType::ELEC_TOUC;
         glm_ptr->muta_desc = _("血管を電流が流れ始めた!", "Electricity starts running through you!");
         break;
     case 163:
     case 164:
-        glm_ptr->muta_which = MUTA::FIRE_BODY;
+        glm_ptr->muta_which = PlayerMutationType::FIRE_BODY;
         glm_ptr->muta_desc = _("あなたの体は炎につつまれている。", "Your body is enveloped in flames!");
         break;
     case 165:
     case 166:
     case 167:
-        glm_ptr->muta_which = MUTA::WART_SKIN;
+        glm_ptr->muta_which = PlayerMutationType::WART_SKIN;
         glm_ptr->muta_desc = _("気持ち悪いイボイボが体中にできた!", "Disgusting warts appear everywhere on you!");
         break;
     case 168:
     case 169:
     case 170:
-        glm_ptr->muta_which = MUTA::SCALES;
+        glm_ptr->muta_which = PlayerMutationType::SCALES;
         glm_ptr->muta_desc = _("肌が黒い鱗に変わった!", "Your skin turns into black scales!");
         break;
     case 171:
     case 172:
-        glm_ptr->muta_which = MUTA::IRON_SKIN;
+        glm_ptr->muta_which = PlayerMutationType::IRON_SKIN;
         glm_ptr->muta_desc = _("あなたの肌は鉄になった!", "Your skin turns to steel!");
         break;
     case 173:
     case 174:
-        glm_ptr->muta_which = MUTA::WINGS;
+        glm_ptr->muta_which = PlayerMutationType::WINGS;
         glm_ptr->muta_desc = _("背中に羽が生えた。", "You grow a pair of wings.");
         break;
     case 175:
     case 176:
     case 177:
-        glm_ptr->muta_which = MUTA::FEARLESS;
+        glm_ptr->muta_which = PlayerMutationType::FEARLESS;
         glm_ptr->muta_desc = _("完全に怖れ知らずになった。", "You become completely fearless.");
         break;
     case 178:
     case 179:
-        glm_ptr->muta_which = MUTA::REGEN;
+        glm_ptr->muta_which = PlayerMutationType::REGEN;
         glm_ptr->muta_desc = _("急速に回復し始めた。", "You start regenerating.");
         break;
     case 180:
     case 181:
-        glm_ptr->muta_which = MUTA::ESP;
+        glm_ptr->muta_which = PlayerMutationType::ESP;
         glm_ptr->muta_desc = _("テレパシーの能力を得た!", "You develop a telepathic ability!");
         break;
     case 182:
     case 183:
     case 184:
-        glm_ptr->muta_which = MUTA::LIMBER;
+        glm_ptr->muta_which = PlayerMutationType::LIMBER;
         glm_ptr->muta_desc = _("筋肉がしなやかになった。", "Your muscles become limber.");
         break;
     case 185:
     case 186:
     case 187:
-        glm_ptr->muta_which = MUTA::ARTHRITIS;
+        glm_ptr->muta_which = PlayerMutationType::ARTHRITIS;
         glm_ptr->muta_desc = _("関節が突然痛み出した。", "Your joints suddenly hurt.");
         break;
     case 188:
         if (player_ptr->ppersonality == PERSONALITY_LUCKY)
             break;
 
-        glm_ptr->muta_which = MUTA::BAD_LUCK;
+        glm_ptr->muta_which = PlayerMutationType::BAD_LUCK;
         glm_ptr->muta_desc = _("悪意に満ちた黒いオーラがあなたをとりまいた...", "There is a malignant black aura surrounding you...");
         break;
     case 189:
-        glm_ptr->muta_which = MUTA::VULN_ELEM;
+        glm_ptr->muta_which = PlayerMutationType::VULN_ELEM;
         glm_ptr->muta_desc = _("妙に無防備になった気がする。", "You feel strangely exposed.");
         break;
     case 190:
     case 191:
     case 192:
-        glm_ptr->muta_which = MUTA::MOTION;
+        glm_ptr->muta_which = PlayerMutationType::MOTION;
         glm_ptr->muta_desc = _("体の動作がより正確になった。", "You move with new assurance.");
         break;
     case 193:
-        glm_ptr->muta_which = MUTA::GOOD_LUCK;
+        glm_ptr->muta_which = PlayerMutationType::GOOD_LUCK;
         glm_ptr->muta_desc = _("慈悲深い白いオーラがあなたをとりまいた...", "There is a benevolent white aura surrounding you...");
         break;
     default:
-        glm_ptr->muta_which = MUTA::MAX;
+        glm_ptr->muta_which = PlayerMutationType::MAX;
         break;
     }
 }
index 77fe901..eed86c6 100644 (file)
@@ -10,488 +10,488 @@ void switch_lose_mutation(player_type *player_ptr, glm_type *glm_ptr)
     case 2:
     case 3:
     case 4:
-        glm_ptr->muta_which = MUTA::SPIT_ACID;
+        glm_ptr->muta_which = PlayerMutationType::SPIT_ACID;
         glm_ptr->muta_desc = _("酸を吹きかける能力を失った。", "You lose the ability to spit acid.");
         break;
     case 5:
     case 6:
     case 7:
-        glm_ptr->muta_which = MUTA::BR_FIRE;
+        glm_ptr->muta_which = PlayerMutationType::BR_FIRE;
         glm_ptr->muta_desc = _("炎のブレスを吐く能力を失った。", "You lose the ability to breathe fire.");
         break;
     case 8:
     case 9:
-        glm_ptr->muta_which = MUTA::HYPN_GAZE;
+        glm_ptr->muta_which = PlayerMutationType::HYPN_GAZE;
         glm_ptr->muta_desc = _("あなたの目はつまらない目になった。", "Your eyes look uninteresting.");
         break;
     case 10:
     case 11:
-        glm_ptr->muta_which = MUTA::TELEKINES;
+        glm_ptr->muta_which = PlayerMutationType::TELEKINES;
         glm_ptr->muta_desc = _("念動力で物を動かす能力を失った。", "You lose the ability to move objects telekinetically.");
         break;
     case 12:
     case 13:
     case 14:
-        glm_ptr->muta_which = MUTA::VTELEPORT;
+        glm_ptr->muta_which = PlayerMutationType::VTELEPORT;
         glm_ptr->muta_desc = _("自分の意思でテレポートする能力を失った。", "You lose the power of teleportation at will.");
         break;
     case 15:
     case 16:
-        glm_ptr->muta_which = MUTA::MIND_BLST;
+        glm_ptr->muta_which = PlayerMutationType::MIND_BLST;
         glm_ptr->muta_desc = _("精神攻撃の能力を失った。", "You lose the power of Mind Blast.");
         break;
     case 17:
     case 18:
-        glm_ptr->muta_which = MUTA::RADIATION;
+        glm_ptr->muta_which = PlayerMutationType::RADIATION;
         glm_ptr->muta_desc = _("あなたは放射能を発生しなくなった。", "You stop emitting hard radiation.");
         break;
     case 19:
     case 20:
-        glm_ptr->muta_which = MUTA::VAMPIRISM;
+        glm_ptr->muta_which = PlayerMutationType::VAMPIRISM;
         glm_ptr->muta_desc = _("吸血の能力を失った。", "You are no longer vampiric.");
         break;
     case 21:
     case 22:
     case 23:
-        glm_ptr->muta_which = MUTA::SMELL_MET;
+        glm_ptr->muta_which = PlayerMutationType::SMELL_MET;
         glm_ptr->muta_desc = _("金属の臭いを嗅げなくなった。", "You no longer smell a metallic odor.");
         break;
     case 24:
     case 25:
     case 26:
     case 27:
-        glm_ptr->muta_which = MUTA::SMELL_MON;
+        glm_ptr->muta_which = PlayerMutationType::SMELL_MON;
         glm_ptr->muta_desc = _("不潔なモンスターの臭いを嗅げなくなった。", "You no longer smell filthy monsters.");
         break;
     case 28:
     case 29:
     case 30:
-        glm_ptr->muta_which = MUTA::BLINK;
+        glm_ptr->muta_which = PlayerMutationType::BLINK;
         glm_ptr->muta_desc = _("近距離テレポートの能力を失った。", "You lose the power of minor teleportation.");
         break;
     case 31:
     case 32:
-        glm_ptr->muta_which = MUTA::EAT_ROCK;
+        glm_ptr->muta_which = PlayerMutationType::EAT_ROCK;
         glm_ptr->muta_desc = _("壁は美味しそうに見えなくなった。", "The walls look unappetizing.");
         break;
     case 33:
     case 34:
-        glm_ptr->muta_which = MUTA::SWAP_POS;
+        glm_ptr->muta_which = PlayerMutationType::SWAP_POS;
         glm_ptr->muta_desc = _("あなたは自分の靴に留まる感じがする。", "You feel like staying in your own shoes.");
         break;
     case 35:
     case 36:
     case 37:
-        glm_ptr->muta_which = MUTA::SHRIEK;
+        glm_ptr->muta_which = PlayerMutationType::SHRIEK;
         glm_ptr->muta_desc = _("あなたの声質は弱くなった。", "Your vocal cords get much weaker.");
         break;
     case 38:
     case 39:
     case 40:
-        glm_ptr->muta_which = MUTA::ILLUMINE;
+        glm_ptr->muta_which = PlayerMutationType::ILLUMINE;
         glm_ptr->muta_desc = _("部屋を明るく照らすことが出来なくなった。", "You can no longer light up rooms with your presence.");
         break;
     case 41:
     case 42:
-        glm_ptr->muta_which = MUTA::DET_CURSE;
+        glm_ptr->muta_which = PlayerMutationType::DET_CURSE;
         glm_ptr->muta_desc = _("邪悪な魔法を感じられなくなった。", "You can no longer feel evil magics.");
         break;
     case 43:
     case 44:
     case 45:
-        glm_ptr->muta_which = MUTA::BERSERK;
+        glm_ptr->muta_which = PlayerMutationType::BERSERK;
         glm_ptr->muta_desc = _("制御できる激情を感じなくなった。", "You no longer feel a controlled rage.");
         break;
     case 46:
-        glm_ptr->muta_which = MUTA::POLYMORPH;
+        glm_ptr->muta_which = PlayerMutationType::POLYMORPH;
         glm_ptr->muta_desc = _("あなたの体は安定したように見える。", "Your body seems stable.");
         break;
     case 47:
     case 48:
-        glm_ptr->muta_which = MUTA::MIDAS_TCH;
+        glm_ptr->muta_which = PlayerMutationType::MIDAS_TCH;
         glm_ptr->muta_desc = _("ミダスの手の能力を失った。", "You lose the Midas touch.");
         break;
     case 49:
-        glm_ptr->muta_which = MUTA::GROW_MOLD;
+        glm_ptr->muta_which = PlayerMutationType::GROW_MOLD;
         glm_ptr->muta_desc = _("突然カビが嫌いになった。", "You feel a sudden dislike for mold.");
         break;
     case 50:
     case 51:
     case 52:
-        glm_ptr->muta_which = MUTA::RESIST;
+        glm_ptr->muta_which = PlayerMutationType::RESIST;
         glm_ptr->muta_desc = _("傷つき易くなった気がする。", "You feel like you might be vulnerable.");
         break;
     case 53:
     case 54:
     case 55:
-        glm_ptr->muta_which = MUTA::EARTHQUAKE;
+        glm_ptr->muta_which = PlayerMutationType::EARTHQUAKE;
         glm_ptr->muta_desc = _("ダンジョンを壊す能力を失った。", "You lose the ability to wreck the dungeon.");
         break;
     case 56:
-        glm_ptr->muta_which = MUTA::EAT_MAGIC;
+        glm_ptr->muta_which = PlayerMutationType::EAT_MAGIC;
         glm_ptr->muta_desc = _("魔法のアイテムはもう美味しそうに見えなくなった。", "Your magic items no longer look delicious.");
         break;
     case 57:
     case 58:
-        glm_ptr->muta_which = MUTA::WEIGH_MAG;
+        glm_ptr->muta_which = PlayerMutationType::WEIGH_MAG;
         glm_ptr->muta_desc = _("魔力を感じられなくなった。", "You no longer sense magic.");
         break;
     case 59:
-        glm_ptr->muta_which = MUTA::STERILITY;
+        glm_ptr->muta_which = PlayerMutationType::STERILITY;
         glm_ptr->muta_desc = _("たくさんの安堵の吐息が聞こえた。", "You hear a massed sigh of relief.");
         break;
     case 60:
     case 61:
-        glm_ptr->muta_which = MUTA::HIT_AND_AWAY;
+        glm_ptr->muta_which = PlayerMutationType::HIT_AND_AWAY;
         glm_ptr->muta_desc = _("あちこちへ跳べる気分がなくなった。", "You no longer feel jumpy.");
         break;
     case 62:
     case 63:
     case 64:
-        glm_ptr->muta_which = MUTA::DAZZLE;
+        glm_ptr->muta_which = PlayerMutationType::DAZZLE;
         glm_ptr->muta_desc = _("まばゆい閃光を発する能力を失った。", "You lose the ability to emit dazzling lights.");
         break;
     case 65:
     case 66:
     case 67:
-        glm_ptr->muta_which = MUTA::LASER_EYE;
+        glm_ptr->muta_which = PlayerMutationType::LASER_EYE;
         glm_ptr->muta_desc = _("眼が少しの間焼き付いて、痛みが和らいだ。", "Your eyes burn for a moment, then feel soothed.");
         break;
     case 68:
     case 69:
-        glm_ptr->muta_which = MUTA::RECALL;
+        glm_ptr->muta_which = PlayerMutationType::RECALL;
         glm_ptr->muta_desc = _("少しの間ホームシックになった。", "You feel briefly homesick.");
         break;
     case 70:
-        glm_ptr->muta_which = MUTA::BANISH;
+        glm_ptr->muta_which = PlayerMutationType::BANISH;
         glm_ptr->muta_desc = _("神聖な怒りの力を感じなくなった。", "You no longer feel a holy wrath.");
         break;
     case 71:
     case 72:
-        glm_ptr->muta_which = MUTA::COLD_TOUCH;
+        glm_ptr->muta_which = PlayerMutationType::COLD_TOUCH;
         glm_ptr->muta_desc = _("手が暖かくなった。", "Your hands warm up.");
         break;
     case 73:
     case 74:
-        glm_ptr->muta_which = MUTA::LAUNCHER;
+        glm_ptr->muta_which = PlayerMutationType::LAUNCHER;
         glm_ptr->muta_desc = _("物を投げる手が弱くなった気がする。", "Your throwing arm feels much weaker.");
         break;
     case 75:
-        glm_ptr->muta_which = MUTA::BERS_RAGE;
+        glm_ptr->muta_which = PlayerMutationType::BERS_RAGE;
         glm_ptr->muta_desc = _("凶暴化の発作にさらされなくなった!", "You are no longer subject to fits of berserk rage!");
         break;
     case 76:
-        glm_ptr->muta_which = MUTA::COWARDICE;
+        glm_ptr->muta_which = PlayerMutationType::COWARDICE;
         glm_ptr->muta_desc = _("もう信じがたいほど臆病ではなくなった!", "You are no longer an incredible coward!");
         break;
     case 77:
-        glm_ptr->muta_which = MUTA::RTELEPORT;
+        glm_ptr->muta_which = PlayerMutationType::RTELEPORT;
         glm_ptr->muta_desc = _("あなたの位置はより確定的になった。", "Your position seems more certain.");
         break;
     case 78:
-        glm_ptr->muta_which = MUTA::ALCOHOL;
+        glm_ptr->muta_which = PlayerMutationType::ALCOHOL;
         glm_ptr->muta_desc = _("あなたはアルコールを分泌しなくなった!", "Your body stops producing alcohol!");
         break;
     case 79:
-        glm_ptr->muta_which = MUTA::HALLU;
+        glm_ptr->muta_which = PlayerMutationType::HALLU;
         glm_ptr->muta_desc = _("幻覚をひき起こす精神障害を起こさなくなった!", "You are no longer afflicted by a hallucinatory insanity!");
         break;
     case 80:
-        glm_ptr->muta_which = MUTA::FLATULENT;
+        glm_ptr->muta_which = PlayerMutationType::FLATULENT;
         glm_ptr->muta_desc = _("もう強烈な屁はこかなくなった。", "You are no longer subject to uncontrollable flatulence.");
         break;
     case 81:
     case 82:
-        glm_ptr->muta_which = MUTA::SCOR_TAIL;
+        glm_ptr->muta_which = PlayerMutationType::SCOR_TAIL;
         glm_ptr->muta_desc = _("サソリの尻尾がなくなった!", "You lose your scorpion tail!");
         break;
     case 83:
     case 84:
-        glm_ptr->muta_which = MUTA::HORNS;
+        glm_ptr->muta_which = PlayerMutationType::HORNS;
         glm_ptr->muta_desc = _("額から角が消えた!", "Your horns vanish from your forehead!");
         break;
     case 85:
     case 86:
-        glm_ptr->muta_which = MUTA::BEAK;
+        glm_ptr->muta_which = PlayerMutationType::BEAK;
         glm_ptr->muta_desc = _("口が普通に戻った!", "Your mouth reverts to normal!");
         break;
     case 87:
     case 88:
-        glm_ptr->muta_which = MUTA::ATT_DEMON;
+        glm_ptr->muta_which = PlayerMutationType::ATT_DEMON;
         glm_ptr->muta_desc = _("デーモンを引き寄せなくなった。", "You stop attracting demons.");
         break;
     case 89:
-        glm_ptr->muta_which = MUTA::PROD_MANA;
+        glm_ptr->muta_which = PlayerMutationType::PROD_MANA;
         glm_ptr->muta_desc = _("制御不能な魔法のエネルギーを発生しなくなった。", "You stop producing magical energy uncontrollably.");
         break;
     case 90:
     case 91:
-        glm_ptr->muta_which = MUTA::SPEED_FLUX;
+        glm_ptr->muta_which = PlayerMutationType::SPEED_FLUX;
         glm_ptr->muta_desc = _("躁鬱質でなくなった。", "You are no longer manic-depressive.");
         break;
     case 92:
     case 93:
-        glm_ptr->muta_which = MUTA::BANISH_ALL;
+        glm_ptr->muta_which = PlayerMutationType::BANISH_ALL;
         glm_ptr->muta_desc = _("背後に恐ろしい力を感じなくなった。", "You no longer feel a terrifying power lurking behind you.");
         break;
     case 94:
-        glm_ptr->muta_which = MUTA::EAT_LIGHT;
+        glm_ptr->muta_which = PlayerMutationType::EAT_LIGHT;
         glm_ptr->muta_desc = _("世界が明るいと感じる。", "You feel the world's a brighter place.");
         break;
     case 95:
     case 96:
-        glm_ptr->muta_which = MUTA::TRUNK;
+        glm_ptr->muta_which = PlayerMutationType::TRUNK;
         glm_ptr->muta_desc = _("鼻が普通の長さに戻った。", "Your nose returns to a normal length.");
         break;
     case 97:
-        glm_ptr->muta_which = MUTA::ATT_ANIMAL;
+        glm_ptr->muta_which = PlayerMutationType::ATT_ANIMAL;
         glm_ptr->muta_desc = _("動物を引き寄せなくなった。", "You stop attracting animals.");
         break;
     case 98:
-        glm_ptr->muta_which = MUTA::TENTACLES;
+        glm_ptr->muta_which = PlayerMutationType::TENTACLES;
         glm_ptr->muta_desc = _("触手が消えた。", "Your tentacles vanish from your sides.");
         break;
     case 99:
-        glm_ptr->muta_which = MUTA::RAW_CHAOS;
+        glm_ptr->muta_which = PlayerMutationType::RAW_CHAOS;
         glm_ptr->muta_desc = _("周囲の空間が安定した気がする。", "You feel the universe is more stable around you.");
         break;
     case 100:
     case 101:
     case 102:
-        glm_ptr->muta_which = MUTA::NORMALITY;
+        glm_ptr->muta_which = PlayerMutationType::NORMALITY;
         glm_ptr->muta_desc = _("普通に奇妙な感じがする。", "You feel normally strange.");
         break;
     case 103:
-        glm_ptr->muta_which = MUTA::WRAITH;
+        glm_ptr->muta_which = PlayerMutationType::WRAITH;
         glm_ptr->muta_desc = _("あなたは物質世界にしっかり存在している。", "You are firmly in the physical world.");
         break;
     case 104:
-        glm_ptr->muta_which = MUTA::POLY_WOUND;
+        glm_ptr->muta_which = PlayerMutationType::POLY_WOUND;
         glm_ptr->muta_desc = _("古い傷からカオスの力が去っていった。", "You feel forces of chaos departing your old scars.");
         break;
     case 105:
-        glm_ptr->muta_which = MUTA::WASTING;
+        glm_ptr->muta_which = PlayerMutationType::WASTING;
         glm_ptr->muta_desc = _("おぞましい衰弱病が治った!", "You are cured of the horrible wasting disease!");
         break;
     case 106:
-        glm_ptr->muta_which = MUTA::ATT_DRAGON;
+        glm_ptr->muta_which = PlayerMutationType::ATT_DRAGON;
         glm_ptr->muta_desc = _("ドラゴンを引き寄せなくなった。", "You stop attracting dragons.");
         break;
     case 107:
     case 108:
-        glm_ptr->muta_which = MUTA::WEIRD_MIND;
+        glm_ptr->muta_which = PlayerMutationType::WEIRD_MIND;
         glm_ptr->muta_desc = _("思考が退屈な方向に戻った。", "Your thoughts return to boring paths.");
         break;
     case 109:
-        glm_ptr->muta_which = MUTA::NAUSEA;
+        glm_ptr->muta_which = PlayerMutationType::NAUSEA;
         glm_ptr->muta_desc = _("胃が痙攣しなくなった。", "Your stomach stops roiling.");
         break;
     case 110:
     case 111:
-        glm_ptr->muta_which = MUTA::CHAOS_GIFT;
+        glm_ptr->muta_which = PlayerMutationType::CHAOS_GIFT;
         glm_ptr->muta_desc = _("混沌の神々の興味を惹かなくなった。", "You lose the attention of the chaos deities.");
         break;
     case 112:
-        glm_ptr->muta_which = MUTA::WALK_SHAD;
+        glm_ptr->muta_which = PlayerMutationType::WALK_SHAD;
         glm_ptr->muta_desc = _("物質世界に捕らわれている気がする。", "You feel like you're trapped in reality.");
         break;
     case 113:
     case 114:
-        glm_ptr->muta_which = MUTA::WARNING;
+        glm_ptr->muta_which = PlayerMutationType::WARNING;
         glm_ptr->muta_desc = _("パラノイアでなくなった。", "You no longer feel paranoid.");
         break;
     case 115:
-        glm_ptr->muta_which = MUTA::INVULN;
+        glm_ptr->muta_which = PlayerMutationType::INVULN;
         glm_ptr->muta_desc = _("無敵状態の発作を起こさなくなった。", "You are no longer blessed with fits of invulnerability.");
         break;
     case 116:
     case 117:
-        glm_ptr->muta_which = MUTA::SP_TO_HP;
+        glm_ptr->muta_which = PlayerMutationType::SP_TO_HP;
         glm_ptr->muta_desc = _("魔法の治癒の発作に襲われなくなった。", "You are no longer subject to fits of magical healing.");
         break;
     case 118:
-        glm_ptr->muta_which = MUTA::HP_TO_SP;
+        glm_ptr->muta_which = PlayerMutationType::HP_TO_SP;
         glm_ptr->muta_desc = _("痛みを伴う精神明瞭化の発作に襲われなくなった。", "You are no longer subject to fits of painful clarity.");
         break;
     case 119:
-        glm_ptr->muta_which = MUTA::DISARM;
+        glm_ptr->muta_which = PlayerMutationType::DISARM;
         glm_ptr->muta_desc = _("脚が元の大きさに戻った。", "Your feet shrink to their former size.");
         break;
     case 120:
     case 121:
     case 122:
-        glm_ptr->muta_which = MUTA::HYPER_STR;
+        glm_ptr->muta_which = PlayerMutationType::HYPER_STR;
         glm_ptr->muta_desc = _("筋肉が普通に戻った。", "Your muscles revert to normal.");
         break;
     case 123:
     case 124:
     case 125:
-        glm_ptr->muta_which = MUTA::PUNY;
+        glm_ptr->muta_which = PlayerMutationType::PUNY;
         glm_ptr->muta_desc = _("筋肉が普通に戻った。", "Your muscles revert to normal.");
         break;
     case 126:
     case 127:
     case 128:
-        glm_ptr->muta_which = MUTA::HYPER_INT;
+        glm_ptr->muta_which = PlayerMutationType::HYPER_INT;
         glm_ptr->muta_desc = _("脳が普通に戻った。", "Your brain reverts to normal.");
         break;
     case 129:
     case 130:
     case 131:
-        glm_ptr->muta_which = MUTA::MORONIC;
+        glm_ptr->muta_which = PlayerMutationType::MORONIC;
         glm_ptr->muta_desc = _("脳が普通に戻った。", "Your brain reverts to normal.");
         break;
     case 132:
     case 133:
-        glm_ptr->muta_which = MUTA::RESILIENT;
+        glm_ptr->muta_which = PlayerMutationType::RESILIENT;
         glm_ptr->muta_desc = _("普通の丈夫さに戻った。", "You become ordinarily resilient again.");
         break;
     case 134:
     case 135:
-        glm_ptr->muta_which = MUTA::XTRA_FAT;
+        glm_ptr->muta_which = PlayerMutationType::XTRA_FAT;
         glm_ptr->muta_desc = _("奇跡的なダイエットに成功した!", "You benefit from a miracle diet!");
         break;
     case 136:
     case 137:
-        glm_ptr->muta_which = MUTA::ALBINO;
+        glm_ptr->muta_which = PlayerMutationType::ALBINO;
         glm_ptr->muta_desc = _("アルビノでなくなった!", "You are no longer an albino!");
         break;
     case 138:
     case 139:
     case 140:
-        glm_ptr->muta_which = MUTA::FLESH_ROT;
+        glm_ptr->muta_which = PlayerMutationType::FLESH_ROT;
         glm_ptr->muta_desc = _("肉体を腐敗させる病気が治った!", "Your flesh is no longer afflicted by a rotting disease!");
         break;
     case 141:
     case 142:
-        glm_ptr->muta_which = MUTA::SILLY_VOI;
+        glm_ptr->muta_which = PlayerMutationType::SILLY_VOI;
         glm_ptr->muta_desc = _("声質が普通に戻った。", "Your voice returns to normal.");
         break;
     case 143:
     case 144:
-        glm_ptr->muta_which = MUTA::BLANK_FAC;
+        glm_ptr->muta_which = PlayerMutationType::BLANK_FAC;
         glm_ptr->muta_desc = _("顔に目鼻が戻った。", "Your facial features return.");
         break;
     case 145:
-        glm_ptr->muta_which = MUTA::ILL_NORM;
+        glm_ptr->muta_which = PlayerMutationType::ILL_NORM;
         glm_ptr->muta_desc = _("心が安らぐ幻影を映し出さなくなった。", "You stop projecting a reassuring image.");
         break;
     case 146:
     case 147:
     case 148:
-        glm_ptr->muta_which = MUTA::XTRA_EYES;
+        glm_ptr->muta_which = PlayerMutationType::XTRA_EYES;
         glm_ptr->muta_desc = _("余分な目が消えてしまった!", "Your extra eyes vanish!");
         break;
     case 149:
     case 150:
-        glm_ptr->muta_which = MUTA::MAGIC_RES;
+        glm_ptr->muta_which = PlayerMutationType::MAGIC_RES;
         glm_ptr->muta_desc = _("魔法に弱くなった。", "You become susceptible to magic again.");
         break;
     case 151:
     case 152:
     case 153:
-        glm_ptr->muta_which = MUTA::XTRA_NOIS;
+        glm_ptr->muta_which = PlayerMutationType::XTRA_NOIS;
         glm_ptr->muta_desc = _("奇妙な音を立てなくなった!", "You stop making strange noise!");
         break;
     case 154:
     case 155:
     case 156:
-        glm_ptr->muta_which = MUTA::INFRAVIS;
+        glm_ptr->muta_which = PlayerMutationType::INFRAVIS;
         glm_ptr->muta_desc = _("赤外線視力が落ちた。", "Your infravision is degraded.");
         break;
     case 157:
     case 158:
-        glm_ptr->muta_which = MUTA::XTRA_LEGS;
+        glm_ptr->muta_which = PlayerMutationType::XTRA_LEGS;
         glm_ptr->muta_desc = _("余分な脚が消えてしまった!", "Your extra legs disappear!");
         break;
     case 159:
     case 160:
-        glm_ptr->muta_which = MUTA::SHORT_LEG;
+        glm_ptr->muta_which = PlayerMutationType::SHORT_LEG;
         glm_ptr->muta_desc = _("脚の長さが普通に戻った。", "Your legs lengthen to normal.");
         break;
     case 161:
     case 162:
-        glm_ptr->muta_which = MUTA::ELEC_TOUC;
+        glm_ptr->muta_which = PlayerMutationType::ELEC_TOUC;
         glm_ptr->muta_desc = _("体を電流が流れなくなった。", "Electricity stops running through you.");
         break;
     case 163:
     case 164:
-        glm_ptr->muta_which = MUTA::FIRE_BODY;
+        glm_ptr->muta_which = PlayerMutationType::FIRE_BODY;
         glm_ptr->muta_desc = _("体が炎に包まれなくなった。", "Your body is no longer enveloped in flames.");
         break;
     case 165:
     case 166:
     case 167:
-        glm_ptr->muta_which = MUTA::WART_SKIN;
+        glm_ptr->muta_which = PlayerMutationType::WART_SKIN;
         glm_ptr->muta_desc = _("イボイボが消えた!", "Your warts disappear!");
         break;
     case 168:
     case 169:
     case 170:
-        glm_ptr->muta_which = MUTA::SCALES;
+        glm_ptr->muta_which = PlayerMutationType::SCALES;
         glm_ptr->muta_desc = _("鱗が消えた!", "Your scales vanish!");
         break;
     case 171:
     case 172:
-        glm_ptr->muta_which = MUTA::IRON_SKIN;
+        glm_ptr->muta_which = PlayerMutationType::IRON_SKIN;
         glm_ptr->muta_desc = _("肌が肉にもどった!", "Your skin reverts to flesh!");
         break;
     case 173:
     case 174:
-        glm_ptr->muta_which = MUTA::WINGS;
+        glm_ptr->muta_which = PlayerMutationType::WINGS;
         glm_ptr->muta_desc = _("背中の羽根が取れ落ちた。", "Your wings fall off.");
         break;
     case 175:
     case 176:
     case 177:
-        glm_ptr->muta_which = MUTA::FEARLESS;
+        glm_ptr->muta_which = PlayerMutationType::FEARLESS;
         glm_ptr->muta_desc = _("再び恐怖を感じるようになった。", "You begin to feel fear again.");
         break;
     case 178:
     case 179:
-        glm_ptr->muta_which = MUTA::REGEN;
+        glm_ptr->muta_which = PlayerMutationType::REGEN;
         glm_ptr->muta_desc = _("急速回復しなくなった。", "You stop regenerating.");
         break;
     case 180:
     case 181:
-        glm_ptr->muta_which = MUTA::ESP;
+        glm_ptr->muta_which = PlayerMutationType::ESP;
         glm_ptr->muta_desc = _("テレパシーの能力を失った!", "You lose your telepathic ability!");
         break;
     case 182:
     case 183:
     case 184:
-        glm_ptr->muta_which = MUTA::LIMBER;
+        glm_ptr->muta_which = PlayerMutationType::LIMBER;
         glm_ptr->muta_desc = _("筋肉が硬くなった。", "Your muscles stiffen.");
         break;
     case 185:
     case 186:
     case 187:
-        glm_ptr->muta_which = MUTA::ARTHRITIS;
+        glm_ptr->muta_which = PlayerMutationType::ARTHRITIS;
         glm_ptr->muta_desc = _("関節が痛くなくなった。", "Your joints stop hurting.");
         break;
     case 188:
-        glm_ptr->muta_which = MUTA::BAD_LUCK;
+        glm_ptr->muta_which = PlayerMutationType::BAD_LUCK;
         glm_ptr->muta_desc = _("黒いオーラは渦巻いて消えた。", "Your black aura swirls and fades.");
         break;
     case 189:
-        glm_ptr->muta_which = MUTA::VULN_ELEM;
+        glm_ptr->muta_which = PlayerMutationType::VULN_ELEM;
         glm_ptr->muta_desc = _("無防備な感じはなくなった。", "You feel less exposed.");
         break;
     case 190:
     case 191:
     case 192:
-        glm_ptr->muta_which = MUTA::MOTION;
+        glm_ptr->muta_which = PlayerMutationType::MOTION;
         glm_ptr->muta_desc = _("動作の正確さがなくなった。", "You move with less assurance.");
         break;
     case 193:
         if (player_ptr->ppersonality == PERSONALITY_LUCKY)
             break;
 
-        glm_ptr->muta_which = MUTA::GOOD_LUCK;
+        glm_ptr->muta_which = PlayerMutationType::GOOD_LUCK;
         glm_ptr->muta_desc = _("白いオーラは輝いて消えた。", "Your white aura shimmers and fades.");
         break;
     default:
-        glm_ptr->muta_which = MUTA::MAX;
+        glm_ptr->muta_which = PlayerMutationType::MAX;
         break;
     }
 }
index b01bb7d..9eb35dc 100644 (file)
@@ -1,6 +1,6 @@
 #pragma once
 
-enum class MUTA {
+enum class PlayerMutationType {
     SPIT_ACID = 0, /*!< 突然変異: 酸の唾 */
     BR_FIRE = 1, /*!< 突然変異: 炎のブレス */
     HYPN_GAZE = 2, /*!< 突然変異: 催眠睨み */
index 9c59865..f72c81a 100644 (file)
@@ -19,7 +19,7 @@ static void sweep_gain_mutation(player_type *player_ptr, glm_type *gm_ptr)
 
     while (attempts_left--) {
         switch_gain_mutation(player_ptr, gm_ptr);
-        if (gm_ptr->muta_which != MUTA::MAX && player_ptr->muta.has_not(gm_ptr->muta_which))
+        if (gm_ptr->muta_which != PlayerMutationType::MAX && player_ptr->muta.has_not(gm_ptr->muta_which))
             gm_ptr->muta_chosen = true;
 
         if (gm_ptr->muta_chosen)
@@ -32,142 +32,142 @@ static void race_dependent_mutation(player_type *player_ptr, glm_type *gm_ptr)
     if (gm_ptr->choose_mut != 0)
         return;
 
-    if (player_ptr->prace == PlayerRaceType::VAMPIRE && player_ptr->muta.has_not(MUTA::HYPN_GAZE) && (randint1(10) < 7)) {
-        gm_ptr->muta_which = MUTA::HYPN_GAZE;
+    if (player_ptr->prace == PlayerRaceType::VAMPIRE && player_ptr->muta.has_not(PlayerMutationType::HYPN_GAZE) && (randint1(10) < 7)) {
+        gm_ptr->muta_which = PlayerMutationType::HYPN_GAZE;
         gm_ptr->muta_desc = _("眼が幻惑的になった...", "Your eyes look mesmerizing...");
         return;
     }
 
-    if (player_ptr->prace == PlayerRaceType::IMP && player_ptr->muta.has_not(MUTA::HORNS) && (randint1(10) < 7)) {
-        gm_ptr->muta_which = MUTA::HORNS;
+    if (player_ptr->prace == PlayerRaceType::IMP && player_ptr->muta.has_not(PlayerMutationType::HORNS) && (randint1(10) < 7)) {
+        gm_ptr->muta_which = PlayerMutationType::HORNS;
         gm_ptr->muta_desc = _("角が額から生えてきた!", "Horns pop forth into your forehead!");
         return;
     }
 
-    if (player_ptr->prace == PlayerRaceType::YEEK && player_ptr->muta.has_not(MUTA::SHRIEK) && (randint1(10) < 7)) {
-        gm_ptr->muta_which = MUTA::SHRIEK;
+    if (player_ptr->prace == PlayerRaceType::YEEK && player_ptr->muta.has_not(PlayerMutationType::SHRIEK) && (randint1(10) < 7)) {
+        gm_ptr->muta_which = PlayerMutationType::SHRIEK;
         gm_ptr->muta_desc = _("声質がかなり強くなった。", "Your vocal cords get much tougher.");
         return;
     }
 
-    if (player_ptr->prace == PlayerRaceType::BEASTMAN && player_ptr->muta.has_not(MUTA::POLYMORPH) && (randint1(10) < 2)) {
-        gm_ptr->muta_which = MUTA::POLYMORPH;
+    if (player_ptr->prace == PlayerRaceType::BEASTMAN && player_ptr->muta.has_not(PlayerMutationType::POLYMORPH) && (randint1(10) < 2)) {
+        gm_ptr->muta_which = PlayerMutationType::POLYMORPH;
         gm_ptr->muta_desc = _("あなたの肉体は変化できるようになった、", "Your body seems mutable.");
         return;
     }
 
-    if (player_ptr->prace == PlayerRaceType::MIND_FLAYER && player_ptr->muta.has_not(MUTA::TENTACLES) && (randint1(10) < 7)) {
-        gm_ptr->muta_which = MUTA::TENTACLES;
+    if (player_ptr->prace == PlayerRaceType::MIND_FLAYER && player_ptr->muta.has_not(PlayerMutationType::TENTACLES) && (randint1(10) < 7)) {
+        gm_ptr->muta_which = PlayerMutationType::TENTACLES;
         gm_ptr->muta_desc = _("邪悪な触手が口の周りに生えた。", "Evil-looking tentacles sprout from your mouth.");
     }
 }
 
 static void neutralize_base_status(player_type *player_ptr, glm_type *gm_ptr)
 {
-    if (gm_ptr->muta_which == MUTA::PUNY) {
-        if (player_ptr->muta.has(MUTA::HYPER_STR)) {
+    if (gm_ptr->muta_which == PlayerMutationType::PUNY) {
+        if (player_ptr->muta.has(PlayerMutationType::HYPER_STR)) {
             msg_print(_("あなたはもう超人的に強くはない!", "You no longer feel super-strong!"));
-            player_ptr->muta.reset(MUTA::HYPER_STR);
+            player_ptr->muta.reset(PlayerMutationType::HYPER_STR);
         }
 
         return;
     }
 
-    if (gm_ptr->muta_which == MUTA::HYPER_STR) {
-        if (player_ptr->muta.has(MUTA::PUNY)) {
+    if (gm_ptr->muta_which == PlayerMutationType::HYPER_STR) {
+        if (player_ptr->muta.has(PlayerMutationType::PUNY)) {
             msg_print(_("あなたはもう虚弱ではない!", "You no longer feel puny!"));
-            player_ptr->muta.reset(MUTA::PUNY);
+            player_ptr->muta.reset(PlayerMutationType::PUNY);
         }
 
         return;
     }
 
-    if (gm_ptr->muta_which == MUTA::MORONIC) {
-        if (player_ptr->muta.has(MUTA::HYPER_INT)) {
+    if (gm_ptr->muta_which == PlayerMutationType::MORONIC) {
+        if (player_ptr->muta.has(PlayerMutationType::HYPER_INT)) {
             msg_print(_("あなたの脳はもう生体コンピュータではない。", "Your brain is no longer a living computer."));
-            player_ptr->muta.reset(MUTA::HYPER_INT);
+            player_ptr->muta.reset(PlayerMutationType::HYPER_INT);
         }
 
         return;
     }
 
-    if (gm_ptr->muta_which == MUTA::HYPER_INT) {
-        if (player_ptr->muta.has(MUTA::MORONIC)) {
+    if (gm_ptr->muta_which == PlayerMutationType::HYPER_INT) {
+        if (player_ptr->muta.has(PlayerMutationType::MORONIC)) {
             msg_print(_("あなたはもう精神薄弱ではない。", "You are no longer moronic."));
-            player_ptr->muta.reset(MUTA::MORONIC);
+            player_ptr->muta.reset(PlayerMutationType::MORONIC);
         }
 
         return;
     }
 
-    if (gm_ptr->muta_which == MUTA::IRON_SKIN) {
-        if (player_ptr->muta.has(MUTA::SCALES)) {
+    if (gm_ptr->muta_which == PlayerMutationType::IRON_SKIN) {
+        if (player_ptr->muta.has(PlayerMutationType::SCALES)) {
             msg_print(_("鱗がなくなった。", "You lose your scales."));
-            player_ptr->muta.reset(MUTA::SCALES);
+            player_ptr->muta.reset(PlayerMutationType::SCALES);
         }
 
-        if (player_ptr->muta.has(MUTA::FLESH_ROT)) {
+        if (player_ptr->muta.has(PlayerMutationType::FLESH_ROT)) {
             msg_print(_("肉体が腐乱しなくなった。", "Your flesh rots no longer."));
-            player_ptr->muta.reset(MUTA::FLESH_ROT);
+            player_ptr->muta.reset(PlayerMutationType::FLESH_ROT);
         }
 
-        if (player_ptr->muta.has(MUTA::WART_SKIN)) {
+        if (player_ptr->muta.has(PlayerMutationType::WART_SKIN)) {
             msg_print(_("肌のイボイボがなくなった。", "You lose your warts."));
-            player_ptr->muta.reset(MUTA::WART_SKIN);
+            player_ptr->muta.reset(PlayerMutationType::WART_SKIN);
         }
 
         return;
     }
 
-    if (gm_ptr->muta_which == MUTA::WART_SKIN || gm_ptr->muta_which == MUTA::SCALES || gm_ptr->muta_which == MUTA::FLESH_ROT) {
-        if (player_ptr->muta.has(MUTA::IRON_SKIN)) {
+    if (gm_ptr->muta_which == PlayerMutationType::WART_SKIN || gm_ptr->muta_which == PlayerMutationType::SCALES || gm_ptr->muta_which == PlayerMutationType::FLESH_ROT) {
+        if (player_ptr->muta.has(PlayerMutationType::IRON_SKIN)) {
             msg_print(_("あなたの肌はもう鉄ではない。", "Your skin is no longer made of steel."));
-            player_ptr->muta.reset(MUTA::IRON_SKIN);
+            player_ptr->muta.reset(PlayerMutationType::IRON_SKIN);
         }
 
         return;
     }
 
-    if (gm_ptr->muta_which == MUTA::FEARLESS) {
-        if (player_ptr->muta.has(MUTA::COWARDICE)) {
+    if (gm_ptr->muta_which == PlayerMutationType::FEARLESS) {
+        if (player_ptr->muta.has(PlayerMutationType::COWARDICE)) {
             msg_print(_("臆病でなくなった。", "You are no longer cowardly."));
-            player_ptr->muta.reset(MUTA::COWARDICE);
+            player_ptr->muta.reset(PlayerMutationType::COWARDICE);
         }
 
         return;
     }
 
-    if (gm_ptr->muta_which == MUTA::FLESH_ROT) {
-        if (player_ptr->muta.has(MUTA::REGEN)) {
+    if (gm_ptr->muta_which == PlayerMutationType::FLESH_ROT) {
+        if (player_ptr->muta.has(PlayerMutationType::REGEN)) {
             msg_print(_("急速に回復しなくなった。", "You stop regenerating."));
-            player_ptr->muta.reset(MUTA::REGEN);
+            player_ptr->muta.reset(PlayerMutationType::REGEN);
         }
 
         return;
     }
 
-    if (gm_ptr->muta_which == MUTA::REGEN) {
-        if (player_ptr->muta.has(MUTA::FLESH_ROT)) {
+    if (gm_ptr->muta_which == PlayerMutationType::REGEN) {
+        if (player_ptr->muta.has(PlayerMutationType::FLESH_ROT)) {
             msg_print(_("肉体が腐乱しなくなった。", "Your flesh stops rotting."));
-            player_ptr->muta.reset(MUTA::FLESH_ROT);
+            player_ptr->muta.reset(PlayerMutationType::FLESH_ROT);
         }
 
         return;
     }
 
-    if (gm_ptr->muta_which == MUTA::LIMBER) {
-        if (player_ptr->muta.has(MUTA::ARTHRITIS)) {
+    if (gm_ptr->muta_which == PlayerMutationType::LIMBER) {
+        if (player_ptr->muta.has(PlayerMutationType::ARTHRITIS)) {
             msg_print(_("関節が痛くなくなった。", "Your joints stop hurting."));
-            player_ptr->muta.reset(MUTA::ARTHRITIS);
+            player_ptr->muta.reset(PlayerMutationType::ARTHRITIS);
         }
 
         return;
     }
 
-    if (gm_ptr->muta_which == MUTA::ARTHRITIS) {
-        if (player_ptr->muta.has(MUTA::LIMBER)) {
+    if (gm_ptr->muta_which == PlayerMutationType::ARTHRITIS) {
+        if (player_ptr->muta.has(PlayerMutationType::LIMBER)) {
             msg_print(_("あなたはしなやかでなくなった。", "You no longer feel limber."));
-            player_ptr->muta.reset(MUTA::LIMBER);
+            player_ptr->muta.reset(PlayerMutationType::LIMBER);
         }
 
         return;
@@ -176,24 +176,24 @@ static void neutralize_base_status(player_type *player_ptr, glm_type *gm_ptr)
 
 static void neutralize_other_status(player_type *player_ptr, glm_type *gm_ptr)
 {
-    if (gm_ptr->muta_which == MUTA::COWARDICE) {
-        if (player_ptr->muta.has(MUTA::FEARLESS)) {
+    if (gm_ptr->muta_which == PlayerMutationType::COWARDICE) {
+        if (player_ptr->muta.has(PlayerMutationType::FEARLESS)) {
             msg_print(_("恐れ知らずでなくなった。", "You no longer feel fearless."));
-            player_ptr->muta.reset(MUTA::FEARLESS);
+            player_ptr->muta.reset(PlayerMutationType::FEARLESS);
         }
     }
 
-    if (gm_ptr->muta_which == MUTA::BEAK) {
-        if (player_ptr->muta.has(MUTA::TRUNK)) {
+    if (gm_ptr->muta_which == PlayerMutationType::BEAK) {
+        if (player_ptr->muta.has(PlayerMutationType::TRUNK)) {
             msg_print(_("あなたの鼻はもう象の鼻のようではなくなった。", "Your nose is no longer elephantine."));
-            player_ptr->muta.reset(MUTA::TRUNK);
+            player_ptr->muta.reset(PlayerMutationType::TRUNK);
         }
     }
 
-    if (gm_ptr->muta_which == MUTA::TRUNK) {
-        if (player_ptr->muta.has(MUTA::BEAK)) {
+    if (gm_ptr->muta_which == PlayerMutationType::TRUNK) {
+        if (player_ptr->muta.has(PlayerMutationType::BEAK)) {
             msg_print(_("硬いクチバシがなくなった。", "You no longer have a hard beak."));
-            player_ptr->muta.reset(MUTA::BEAK);
+            player_ptr->muta.reset(PlayerMutationType::BEAK);
         }
     }
 }
@@ -216,7 +216,7 @@ bool gain_mutation(player_type *player_ptr, MUTATION_IDX choose_mut)
     race_dependent_mutation(player_ptr, gm_ptr);
     msg_print(_("突然変異した!", "You mutate!"));
     msg_print(gm_ptr->muta_desc);
-    if (gm_ptr->muta_which != MUTA::MAX)
+    if (gm_ptr->muta_which != PlayerMutationType::MAX)
         player_ptr->muta.set(gm_ptr->muta_which);
 
     neutralize_base_status(player_ptr, gm_ptr);
@@ -236,7 +236,7 @@ static void sweep_lose_mutation(player_type *player_ptr, glm_type *glm_ptr)
 
     while (attempts_left--) {
         switch_lose_mutation(player_ptr, glm_ptr);
-        if (glm_ptr->muta_which != MUTA::MAX) {
+        if (glm_ptr->muta_which != PlayerMutationType::MAX) {
             if (player_ptr->muta.has(glm_ptr->muta_which)) {
                 glm_ptr->muta_chosen = true;
             }
@@ -260,7 +260,7 @@ bool lose_mutation(player_type *player_ptr, MUTATION_IDX choose_mut)
         return false;
 
     msg_print(glm_ptr->muta_desc);
-    if (glm_ptr->muta_which != MUTA::MAX)
+    if (glm_ptr->muta_which != PlayerMutationType::MAX)
         player_ptr->muta.reset(glm_ptr->muta_which);
 
     set_bits(player_ptr->update, PU_BONUS);
index d5a3f2f..cbe6ff4 100644 (file)
@@ -119,7 +119,7 @@ void process_world_aux_mutation(player_type *player_ptr)
     }
 
     BadStatusSetter bss(player_ptr);
-    if (player_ptr->muta.has(MUTA::BERS_RAGE) && one_in_(3000)) {
+    if (player_ptr->muta.has(PlayerMutationType::BERS_RAGE) && one_in_(3000)) {
         disturb(player_ptr, false, true);
         msg_print(_("ウガァァア!", "RAAAAGHH!"));
         msg_print(_("激怒の発作に襲われた!", "You feel a fit of rage coming over you!"));
@@ -127,7 +127,7 @@ void process_world_aux_mutation(player_type *player_ptr)
         (void)bss.afraidness(0);
     }
 
-    if (player_ptr->muta.has(MUTA::COWARDICE) && (randint1(3000) == 13)) {
+    if (player_ptr->muta.has(PlayerMutationType::COWARDICE) && (randint1(3000) == 13)) {
         if (!has_resist_fear(player_ptr)) {
             disturb(player_ptr, false, true);
             msg_print(_("とても暗い... とても恐い!", "It's so dark... so scary!"));
@@ -135,8 +135,8 @@ void process_world_aux_mutation(player_type *player_ptr)
         }
     }
 
-    if (player_ptr->muta.has(MUTA::RTELEPORT) && (randint1(5000) == 88)) {
-        if (!has_resist_nexus(player_ptr) && player_ptr->muta.has_not(MUTA::VTELEPORT) && !player_ptr->anti_tele) {
+    if (player_ptr->muta.has(PlayerMutationType::RTELEPORT) && (randint1(5000) == 88)) {
+        if (!has_resist_nexus(player_ptr) && player_ptr->muta.has_not(PlayerMutationType::VTELEPORT) && !player_ptr->anti_tele) {
             disturb(player_ptr, false, true);
             msg_print(_("あなたの位置は突然ひじょうに不確定になった...", "Your position suddenly seems very uncertain..."));
             msg_print(nullptr);
@@ -144,7 +144,7 @@ void process_world_aux_mutation(player_type *player_ptr)
         }
     }
 
-    if (player_ptr->muta.has(MUTA::ALCOHOL) && (randint1(6400) == 321)) {
+    if (player_ptr->muta.has(PlayerMutationType::ALCOHOL) && (randint1(6400) == 321)) {
         if (!has_resist_conf(player_ptr) && !has_resist_chaos(player_ptr)) {
             disturb(player_ptr, false, true);
             player_ptr->redraw |= PR_EXTRA;
@@ -175,7 +175,7 @@ void process_world_aux_mutation(player_type *player_ptr)
         }
     }
 
-    if (player_ptr->muta.has(MUTA::HALLU) && (randint1(6400) == 42)) {
+    if (player_ptr->muta.has(PlayerMutationType::HALLU) && (randint1(6400) == 42)) {
         if (!has_resist_chaos(player_ptr)) {
             disturb(player_ptr, false, true);
             player_ptr->redraw |= PR_EXTRA;
@@ -183,14 +183,14 @@ void process_world_aux_mutation(player_type *player_ptr)
         }
     }
 
-    if (player_ptr->muta.has(MUTA::FLATULENT) && (randint1(3000) == 13)) {
+    if (player_ptr->muta.has(PlayerMutationType::FLATULENT) && (randint1(3000) == 13)) {
         disturb(player_ptr, false, true);
         msg_print(_("ブゥーーッ!おっと。", "BRRAAAP! Oops."));
         msg_print(nullptr);
         fire_ball(player_ptr, AttributeType::POIS, 0, player_ptr->lev, 3);
     }
 
-    if (player_ptr->muta.has(MUTA::PROD_MANA) && !player_ptr->anti_magic && one_in_(9000)) {
+    if (player_ptr->muta.has(PlayerMutationType::PROD_MANA) && !player_ptr->anti_magic && one_in_(9000)) {
         int dire = 0;
         disturb(player_ptr, false, true);
         msg_print(_("魔法のエネルギーが突然あなたの中に流れ込んできた!エネルギーを解放しなければならない!",
@@ -202,7 +202,7 @@ void process_world_aux_mutation(player_type *player_ptr)
         fire_ball(player_ptr, AttributeType::MANA, dire, player_ptr->lev * 2, 3);
     }
 
-    if (player_ptr->muta.has(MUTA::ATT_DEMON) && !player_ptr->anti_magic && (randint1(6666) == 666)) {
+    if (player_ptr->muta.has(PlayerMutationType::ATT_DEMON) && !player_ptr->anti_magic && (randint1(6666) == 666)) {
         bool pet = one_in_(6);
         BIT_FLAGS mode = PM_ALLOW_GROUP;
 
@@ -217,7 +217,7 @@ void process_world_aux_mutation(player_type *player_ptr)
         }
     }
 
-    if (player_ptr->muta.has(MUTA::SPEED_FLUX) && one_in_(6000)) {
+    if (player_ptr->muta.has(PlayerMutationType::SPEED_FLUX) && one_in_(6000)) {
         disturb(player_ptr, false, true);
         if (one_in_(2)) {
             msg_print(_("精力的でなくなった気がする。", "You feel less energetic."));
@@ -238,7 +238,7 @@ void process_world_aux_mutation(player_type *player_ptr)
         msg_print(nullptr);
     }
 
-    if (player_ptr->muta.has(MUTA::BANISH_ALL) && one_in_(9000)) {
+    if (player_ptr->muta.has(PlayerMutationType::BANISH_ALL) && one_in_(9000)) {
         disturb(player_ptr, false, true);
         msg_print(_("突然ほとんど孤独になった気がする。", "You suddenly feel almost lonely."));
 
@@ -255,7 +255,7 @@ void process_world_aux_mutation(player_type *player_ptr)
         msg_print(nullptr);
     }
 
-    if (player_ptr->muta.has(MUTA::EAT_LIGHT) && one_in_(3000)) {
+    if (player_ptr->muta.has(PlayerMutationType::EAT_LIGHT) && one_in_(3000)) {
         object_type *o_ptr;
 
         msg_print(_("影につつまれた。", "A shadow passes over you."));
@@ -283,7 +283,7 @@ void process_world_aux_mutation(player_type *player_ptr)
         unlite_area(player_ptr, 50, 10);
     }
 
-    if (player_ptr->muta.has(MUTA::ATT_ANIMAL) && !player_ptr->anti_magic && one_in_(7000)) {
+    if (player_ptr->muta.has(PlayerMutationType::ATT_ANIMAL) && !player_ptr->anti_magic && one_in_(7000)) {
         bool pet = one_in_(3);
         BIT_FLAGS mode = PM_ALLOW_GROUP;
 
@@ -298,29 +298,29 @@ void process_world_aux_mutation(player_type *player_ptr)
         }
     }
 
-    if (player_ptr->muta.has(MUTA::RAW_CHAOS) && !player_ptr->anti_magic && one_in_(8000)) {
+    if (player_ptr->muta.has(PlayerMutationType::RAW_CHAOS) && !player_ptr->anti_magic && one_in_(8000)) {
         disturb(player_ptr, false, true);
         msg_print(_("周りの空間が歪んでいる気がする!", "You feel the world warping around you!"));
         msg_print(nullptr);
         fire_ball(player_ptr, AttributeType::CHAOS, 0, player_ptr->lev, 8);
     }
 
-    if (player_ptr->muta.has(MUTA::NORMALITY) && one_in_(5000)) {
+    if (player_ptr->muta.has(PlayerMutationType::NORMALITY) && one_in_(5000)) {
         if (!lose_mutation(player_ptr, 0))
             msg_print(_("奇妙なくらい普通になった気がする。", "You feel oddly normal."));
     }
 
-    if (player_ptr->muta.has(MUTA::WRAITH) && !player_ptr->anti_magic && one_in_(3000)) {
+    if (player_ptr->muta.has(PlayerMutationType::WRAITH) && !player_ptr->anti_magic && one_in_(3000)) {
         disturb(player_ptr, false, true);
         msg_print(_("非物質化した!", "You feel insubstantial!"));
         msg_print(nullptr);
         set_wraith_form(player_ptr, randint1(player_ptr->lev / 2) + (player_ptr->lev / 2), false);
     }
 
-    if (player_ptr->muta.has(MUTA::POLY_WOUND) && one_in_(3000))
+    if (player_ptr->muta.has(PlayerMutationType::POLY_WOUND) && one_in_(3000))
         do_poly_wounds(player_ptr);
 
-    if (player_ptr->muta.has(MUTA::WASTING) && one_in_(3000)) {
+    if (player_ptr->muta.has(PlayerMutationType::WASTING) && one_in_(3000)) {
         int which_stat = randint0(A_MAX);
         int sustained = false;
 
@@ -362,7 +362,7 @@ void process_world_aux_mutation(player_type *player_ptr)
         }
     }
 
-    if (player_ptr->muta.has(MUTA::ATT_DRAGON) && !player_ptr->anti_magic && one_in_(3000)) {
+    if (player_ptr->muta.has(PlayerMutationType::ATT_DRAGON) && !player_ptr->anti_magic && one_in_(3000)) {
         bool pet = one_in_(5);
         BIT_FLAGS mode = PM_ALLOW_GROUP;
         if (pet)
@@ -376,7 +376,7 @@ void process_world_aux_mutation(player_type *player_ptr)
         }
     }
 
-    if (player_ptr->muta.has(MUTA::WEIRD_MIND) && !player_ptr->anti_magic && one_in_(3000)) {
+    if (player_ptr->muta.has(PlayerMutationType::WEIRD_MIND) && !player_ptr->anti_magic && one_in_(3000)) {
         if (player_ptr->tim_esp > 0) {
             msg_print(_("精神にもやがかかった!", "Your mind feels cloudy!"));
             set_tim_esp(player_ptr, 0, true);
@@ -386,7 +386,7 @@ void process_world_aux_mutation(player_type *player_ptr)
         }
     }
 
-    if (player_ptr->muta.has(MUTA::NAUSEA) && !player_ptr->slow_digest && one_in_(9000)) {
+    if (player_ptr->muta.has(PlayerMutationType::NAUSEA) && !player_ptr->slow_digest && one_in_(9000)) {
         disturb(player_ptr, false, true);
         msg_print(_("胃が痙攣し、食事を失った!", "Your stomach roils, and you lose your lunch!"));
         msg_print(nullptr);
@@ -400,10 +400,10 @@ void process_world_aux_mutation(player_type *player_ptr)
         }
     }
 
-    if (player_ptr->muta.has(MUTA::WALK_SHAD) && !player_ptr->anti_magic && one_in_(12000) && !player_ptr->current_floor_ptr->inside_arena)
+    if (player_ptr->muta.has(PlayerMutationType::WALK_SHAD) && !player_ptr->anti_magic && one_in_(12000) && !player_ptr->current_floor_ptr->inside_arena)
         reserve_alter_reality(player_ptr, randint0(21) + 15);
 
-    if (player_ptr->muta.has(MUTA::WARNING) && one_in_(1000)) {
+    if (player_ptr->muta.has(PlayerMutationType::WARNING) && one_in_(1000)) {
         int danger_amount = 0;
         for (MONSTER_IDX monster = 0; monster < player_ptr->current_floor_ptr->m_max; monster++) {
             monster_type *m_ptr = &player_ptr->current_floor_ptr->m_list[monster];
@@ -430,14 +430,14 @@ void process_world_aux_mutation(player_type *player_ptr)
             msg_print(_("寂しい気がする。", "You feel lonely."));
     }
 
-    if (player_ptr->muta.has(MUTA::INVULN) && !player_ptr->anti_magic && one_in_(5000)) {
+    if (player_ptr->muta.has(PlayerMutationType::INVULN) && !player_ptr->anti_magic && one_in_(5000)) {
         disturb(player_ptr, false, true);
         msg_print(_("無敵な気がする!", "You feel invincible!"));
         msg_print(nullptr);
         (void)set_invuln(player_ptr, randint1(8) + 8, false);
     }
 
-    if (player_ptr->muta.has(MUTA::SP_TO_HP) && one_in_(2000)) {
+    if (player_ptr->muta.has(PlayerMutationType::SP_TO_HP) && one_in_(2000)) {
         MANA_POINT wounds = (MANA_POINT)(player_ptr->mhp - player_ptr->chp);
         if (wounds > 0) {
             HIT_POINT healing = player_ptr->csp;
@@ -450,7 +450,7 @@ void process_world_aux_mutation(player_type *player_ptr)
         }
     }
 
-    if (player_ptr->muta.has(MUTA::HP_TO_SP) && !player_ptr->anti_magic && one_in_(4000)) {
+    if (player_ptr->muta.has(PlayerMutationType::HP_TO_SP) && !player_ptr->anti_magic && one_in_(4000)) {
         HIT_POINT wounds = (HIT_POINT)(player_ptr->msp - player_ptr->csp);
         if (wounds > 0) {
             HIT_POINT healing = player_ptr->chp;
@@ -463,7 +463,7 @@ void process_world_aux_mutation(player_type *player_ptr)
         }
     }
 
-    if (player_ptr->muta.has(MUTA::DISARM) && one_in_(10000)) {
+    if (player_ptr->muta.has(PlayerMutationType::DISARM) && one_in_(10000)) {
         disturb(player_ptr, false, true);
         msg_print(_("足がもつれて転んだ!", "You trip over your own feet!"));
         take_hit(player_ptr, DAMAGE_NOESCAPE, randint1(player_ptr->wt / 6), _("転倒", "tripping"));
index cc3d1b4..1e7597d 100644 (file)
@@ -3,7 +3,7 @@
 
 glm_type *initialize_glm_type(glm_type *gm_ptr, MUTATION_IDX choose_mut)
 {
-    gm_ptr->muta_which = MUTA::MAX;
+    gm_ptr->muta_which = PlayerMutationType::MAX;
     gm_ptr->muta_desc = "";
     gm_ptr->muta_chosen = false;
     gm_ptr->choose_mut = choose_mut;
index c1adf94..7752197 100644 (file)
@@ -2,10 +2,10 @@
 
 #include "system/angband.h"
 
-enum class MUTA;
+enum class PlayerMutationType;
 
 typedef struct glm_type {
-    MUTA muta_which;
+    PlayerMutationType muta_which;
     concptr muta_desc;
     bool muta_chosen;
     MUTATION_IDX choose_mut;
index 43bad2c..cc1b44e 100644 (file)
@@ -67,7 +67,7 @@ void apply_magic_to_object(player_type *player_ptr, object_type *o_ptr, DEPTH le
     if (has_good_luck(player_ptr)) {
         f1 += 5;
         f2 += 2;
-    } else if (player_ptr->muta.has(MUTA::BAD_LUCK)) {
+    } else if (player_ptr->muta.has(PlayerMutationType::BAD_LUCK)) {
         f1 -= 5;
         f2 -= 2;
     }
index 47e2e61..88b0c4e 100644 (file)
@@ -45,7 +45,7 @@ static void sense_inventory_aux(player_type *player_ptr, INVENTORY_IDX slot, boo
     if (!feel)
         return;
 
-    if ((player_ptr->muta.has(MUTA::BAD_LUCK)) && !randint0(13)) {
+    if ((player_ptr->muta.has(PlayerMutationType::BAD_LUCK)) && !randint0(13)) {
         switch (feel) {
         case FEEL_TERRIBLE: {
             feel = FEEL_SPECIAL;
index 57275cc..f0dbfc3 100644 (file)
@@ -61,19 +61,19 @@ int16_t PlayerCharisma::mutation_value()
     int16_t result = 0;
 
     if (this->player_ptr->muta.any()) {
-        if (this->player_ptr->muta.has(MUTA::FLESH_ROT)) {
+        if (this->player_ptr->muta.has(PlayerMutationType::FLESH_ROT)) {
             result -= 1;
         }
-        if (this->player_ptr->muta.has(MUTA::SILLY_VOI)) {
+        if (this->player_ptr->muta.has(PlayerMutationType::SILLY_VOI)) {
             result -= 4;
         }
-        if (this->player_ptr->muta.has(MUTA::BLANK_FAC)) {
+        if (this->player_ptr->muta.has(PlayerMutationType::BLANK_FAC)) {
             result -= 1;
         }
-        if (this->player_ptr->muta.has(MUTA::WART_SKIN)) {
+        if (this->player_ptr->muta.has(PlayerMutationType::WART_SKIN)) {
             result -= 2;
         }
-        if (this->player_ptr->muta.has(MUTA::SCALES)) {
+        if (this->player_ptr->muta.has(PlayerMutationType::SCALES)) {
             result -= 1;
         }
     }
@@ -85,7 +85,7 @@ int16_t PlayerCharisma::set_exception_value(int16_t value)
 {
     int16_t result = value;
 
-    if (this->player_ptr->muta.has(MUTA::ILL_NORM)) {
+    if (this->player_ptr->muta.has(PlayerMutationType::ILL_NORM)) {
         result = 0;
     }
 
@@ -96,7 +96,7 @@ BIT_FLAGS PlayerCharisma::get_all_flags()
 {
     BIT_FLAGS flags = PlayerStatusBase::get_all_flags();
 
-    if (this->player_ptr->muta.has(MUTA::ILL_NORM)) {
+    if (this->player_ptr->muta.has(PlayerMutationType::ILL_NORM)) {
         set_bits(flags, FLAG_CAUSE_MUTATION);
     }
 
@@ -107,7 +107,7 @@ BIT_FLAGS PlayerCharisma::get_bad_flags()
 {
     BIT_FLAGS flags = PlayerStatusBase::get_bad_flags();
 
-    if (this->player_ptr->muta.has(MUTA::ILL_NORM)) {
+    if (this->player_ptr->muta.has(PlayerMutationType::ILL_NORM)) {
         set_bits(flags, FLAG_CAUSE_MUTATION);
     }
 
@@ -124,7 +124,7 @@ BIT_FLAGS PlayerCharisma::get_bad_flags()
  */
 int16_t PlayerCharisma::set_exception_use_status(int16_t value)
 {
-    if (this->player_ptr->muta.has(MUTA::ILL_NORM)) {
+    if (this->player_ptr->muta.has(PlayerMutationType::ILL_NORM)) {
         /* 10 to 18/90 charisma, guaranteed, based on level */
         if (value < 8 + 2 * this->player_ptr->lev) {
             value = 8 + 2 * this->player_ptr->lev;
index 8e027bf..76b78cf 100644 (file)
@@ -110,19 +110,19 @@ int16_t PlayerConstitution::mutation_value()
     int16_t result = 0;
 
     if (this->player_ptr->muta.any()) {
-        if (this->player_ptr->muta.has(MUTA::RESILIENT)) {
+        if (this->player_ptr->muta.has(PlayerMutationType::RESILIENT)) {
             result += 4;
         }
 
-        if (this->player_ptr->muta.has(MUTA::ALBINO)) {
+        if (this->player_ptr->muta.has(PlayerMutationType::ALBINO)) {
             result -= 4;
         }
 
-        if (this->player_ptr->muta.has(MUTA::XTRA_FAT)) {
+        if (this->player_ptr->muta.has(PlayerMutationType::XTRA_FAT)) {
             result += 2;
         }
 
-        if (this->player_ptr->muta.has(MUTA::FLESH_ROT)) {
+        if (this->player_ptr->muta.has(PlayerMutationType::FLESH_ROT)) {
             result -= 2;
         }
     }
index f206df8..21fed23 100644 (file)
@@ -104,15 +104,15 @@ int16_t PlayerDexterity::mutation_value()
 {
     int16_t result = 0;
 
-    if (this->player_ptr->muta.has(MUTA::IRON_SKIN)) {
+    if (this->player_ptr->muta.has(PlayerMutationType::IRON_SKIN)) {
         result -= 1;
     }
 
-    if (this->player_ptr->muta.has(MUTA::LIMBER)) {
+    if (this->player_ptr->muta.has(PlayerMutationType::LIMBER)) {
         result += 3;
     }
 
-    if (this->player_ptr->muta.has(MUTA::ARTHRITIS)) {
+    if (this->player_ptr->muta.has(PlayerMutationType::ARTHRITIS)) {
         result -= 3;
     }
 
index 96c0f9c..3b3bc6c 100644 (file)
@@ -67,11 +67,11 @@ int16_t PlayerIntelligence::mutation_value()
 {
     int16_t result = 0;
     if (this->player_ptr->muta.any()) {
-        if (this->player_ptr->muta.has(MUTA::HYPER_INT)) {
+        if (this->player_ptr->muta.has(PlayerMutationType::HYPER_INT)) {
             result += 4;
         }
 
-        if (this->player_ptr->muta.has(MUTA::MORONIC)) {
+        if (this->player_ptr->muta.has(PlayerMutationType::MORONIC)) {
             result -= 4;
         }
     }
index 199a4d2..596bb53 100644 (file)
@@ -111,11 +111,11 @@ int16_t PlayerStrength::mutation_value()
     int16_t result = 0;
 
     if (this->player_ptr->muta.any()) {
-        if (this->player_ptr->muta.has(MUTA::HYPER_STR)) {
+        if (this->player_ptr->muta.has(PlayerMutationType::HYPER_STR)) {
             result += 4;
         }
 
-        if (this->player_ptr->muta.has(MUTA::PUNY)) {
+        if (this->player_ptr->muta.has(PlayerMutationType::PUNY)) {
             result -= 4;
         }
     }
index 51a3608..5e5a06d 100644 (file)
@@ -66,11 +66,11 @@ int16_t PlayerWisdom::mutation_value()
     int16_t result = 0;
 
     if (this->player_ptr->muta.any()) {
-        if (this->player_ptr->muta.has(MUTA::HYPER_INT)) {
+        if (this->player_ptr->muta.has(PlayerMutationType::HYPER_INT)) {
             result += 4;
         }
 
-        if (this->player_ptr->muta.has(MUTA::MORONIC)) {
+        if (this->player_ptr->muta.has(PlayerMutationType::MORONIC)) {
             result -= 4;
         }
     }
index c21075c..6e24145 100644 (file)
@@ -11,300 +11,300 @@ void set_mutation_info(player_type *player_ptr, self_info_type *self_ptr)
     if (player_ptr->muta.none())
         return;
 
-    if (player_ptr->muta.has(MUTA::SPIT_ACID))
+    if (player_ptr->muta.has(PlayerMutationType::SPIT_ACID))
         self_ptr->info[self_ptr->line++] = _("あなたは酸を吹きかけることができる。(ダメージ レベルX1)", "You can spit acid (dam lvl).");
 
-    if (player_ptr->muta.has(MUTA::BR_FIRE))
+    if (player_ptr->muta.has(PlayerMutationType::BR_FIRE))
         self_ptr->info[self_ptr->line++] = _("あなたは炎のブレスを吐くことができる。(ダメージ レベルX2)", "You can breathe fire (dam lvl * 2).");
 
-    if (player_ptr->muta.has(MUTA::HYPN_GAZE))
+    if (player_ptr->muta.has(PlayerMutationType::HYPN_GAZE))
         self_ptr->info[self_ptr->line++] = _("あなたの睨みは催眠効果をもつ。", "Your gaze is hypnotic.");
 
-    if (player_ptr->muta.has(MUTA::TELEKINES))
+    if (player_ptr->muta.has(PlayerMutationType::TELEKINES))
         self_ptr->info[self_ptr->line++] = _("あなたは念動力をもっている。", "You are telekinetic.");
 
-    if (player_ptr->muta.has(MUTA::VTELEPORT))
+    if (player_ptr->muta.has(PlayerMutationType::VTELEPORT))
         self_ptr->info[self_ptr->line++] = _("あなたは自分の意思でテレポートできる。", "You can teleport at will.");
 
-    if (player_ptr->muta.has(MUTA::MIND_BLST))
+    if (player_ptr->muta.has(PlayerMutationType::MIND_BLST))
         self_ptr->info[self_ptr->line++] = _("あなたは精神攻撃を行える。(ダメージ 3~12d3)", "You can Mind Blast your enemies (3 to 12d3 dam).");
 
-    if (player_ptr->muta.has(MUTA::RADIATION))
+    if (player_ptr->muta.has(PlayerMutationType::RADIATION))
         self_ptr->info[self_ptr->line++]
             = _("あなたは自分の意思で強い放射線を発生することができる。(ダメージ レベルX2)", "You can emit hard radiation at will (dam lvl * 2).");
 
-    if (player_ptr->muta.has(MUTA::VAMPIRISM))
+    if (player_ptr->muta.has(PlayerMutationType::VAMPIRISM))
         self_ptr->info[self_ptr->line++] = _(
             "あなたは吸血鬼のように敵から生命力を吸収することができる。(ダメージ レベルX2)", "Like a vampire, you can drain life from a foe (dam lvl * 2).");
 
-    if (player_ptr->muta.has(MUTA::SMELL_MET))
+    if (player_ptr->muta.has(PlayerMutationType::SMELL_MET))
         self_ptr->info[self_ptr->line++] = _("あなたは近くにある貴金属をかぎ分けることができる。", "You can smell nearby precious metal.");
 
-    if (player_ptr->muta.has(MUTA::SMELL_MON))
+    if (player_ptr->muta.has(PlayerMutationType::SMELL_MON))
         self_ptr->info[self_ptr->line++] = _("あなたは近くのモンスターの存在をかぎ分けることができる。", "You can smell nearby monsters.");
 
-    if (player_ptr->muta.has(MUTA::BLINK))
+    if (player_ptr->muta.has(PlayerMutationType::BLINK))
         self_ptr->info[self_ptr->line++] = _("あなたは短い距離をテレポートできる。", "You can teleport yourself short distances.");
 
-    if (player_ptr->muta.has(MUTA::EAT_ROCK))
+    if (player_ptr->muta.has(PlayerMutationType::EAT_ROCK))
         self_ptr->info[self_ptr->line++] = _("あなたは硬い岩を食べることができる。", "You can consume solid rock.");
 
-    if (player_ptr->muta.has(MUTA::SWAP_POS))
+    if (player_ptr->muta.has(PlayerMutationType::SWAP_POS))
         self_ptr->info[self_ptr->line++] = _("あなたは他の者と場所を入れ替わることができる。", "You can switch locations with another being.");
 
-    if (player_ptr->muta.has(MUTA::SHRIEK))
+    if (player_ptr->muta.has(PlayerMutationType::SHRIEK))
         self_ptr->info[self_ptr->line++]
             = _("あなたは身の毛もよだつ叫び声を発することができる。(ダメージ レベルX2)", "You can emit a horrible shriek (dam 2 * lvl).");
 
-    if (player_ptr->muta.has(MUTA::ILLUMINE))
+    if (player_ptr->muta.has(PlayerMutationType::ILLUMINE))
         self_ptr->info[self_ptr->line++] = _("あなたは明るい光を放つことができる。", "You can emit bright light.");
 
-    if (player_ptr->muta.has(MUTA::DET_CURSE))
+    if (player_ptr->muta.has(PlayerMutationType::DET_CURSE))
         self_ptr->info[self_ptr->line++] = _("あなたは邪悪な魔法の危険を感じとることができる。", "You can feel the danger of evil magic.");
 
-    if (player_ptr->muta.has(MUTA::BERSERK))
+    if (player_ptr->muta.has(PlayerMutationType::BERSERK))
         self_ptr->info[self_ptr->line++] = _("あなたは自分の意思で狂乱戦闘状態になることができる。", "You can drive yourself into a berserk frenzy.");
 
-    if (player_ptr->muta.has(MUTA::POLYMORPH))
+    if (player_ptr->muta.has(PlayerMutationType::POLYMORPH))
         self_ptr->info[self_ptr->line++] = _("あなたは自分の意志で変化できる。", "You can polymorph yourself at will.");
 
-    if (player_ptr->muta.has(MUTA::MIDAS_TCH))
+    if (player_ptr->muta.has(PlayerMutationType::MIDAS_TCH))
         self_ptr->info[self_ptr->line++] = _("あなたは通常アイテムを金に変えることができる。", "You can turn ordinary items to gold.");
 
-    if (player_ptr->muta.has(MUTA::GROW_MOLD))
+    if (player_ptr->muta.has(PlayerMutationType::GROW_MOLD))
         self_ptr->info[self_ptr->line++] = _("あなたは周囲にキノコを生やすことができる。", "You can cause mold to grow near you.");
 
-    if (player_ptr->muta.has(MUTA::RESIST))
+    if (player_ptr->muta.has(PlayerMutationType::RESIST))
         self_ptr->info[self_ptr->line++] = _("あなたは元素の攻撃に対して身を硬くすることができる。", "You can harden yourself to the ravages of the elements.");
 
-    if (player_ptr->muta.has(MUTA::EARTHQUAKE))
+    if (player_ptr->muta.has(PlayerMutationType::EARTHQUAKE))
         self_ptr->info[self_ptr->line++] = _("あなたは周囲のダンジョンを崩壊させることができる。", "You can bring down the dungeon around your ears.");
 
-    if (player_ptr->muta.has(MUTA::EAT_MAGIC))
+    if (player_ptr->muta.has(PlayerMutationType::EAT_MAGIC))
         self_ptr->info[self_ptr->line++] = _("あなたは魔法のエネルギーを自分の物として使用できる。", "You can consume magic energy for your own use.");
 
-    if (player_ptr->muta.has(MUTA::WEIGH_MAG))
+    if (player_ptr->muta.has(PlayerMutationType::WEIGH_MAG))
         self_ptr->info[self_ptr->line++]
             = _("あなたは自分に影響を与える魔法の力を感じることができる。", "You can feel the strength of the magics affecting you.");
 
-    if (player_ptr->muta.has(MUTA::STERILITY))
+    if (player_ptr->muta.has(PlayerMutationType::STERILITY))
         self_ptr->info[self_ptr->line++] = _("あなたは集団的生殖不能を起こすことができる。", "You can cause mass impotence.");
 
-    if (player_ptr->muta.has(MUTA::HIT_AND_AWAY))
+    if (player_ptr->muta.has(PlayerMutationType::HIT_AND_AWAY))
         self_ptr->info[self_ptr->line++] = _("あなたは攻撃した後身を守るため逃げることができる。", "You can run for your life after hitting something.");
 
-    if (player_ptr->muta.has(MUTA::DAZZLE))
+    if (player_ptr->muta.has(PlayerMutationType::DAZZLE))
         self_ptr->info[self_ptr->line++] = _("あなたは混乱と盲目を引き起こす放射能を発生することができる。 ", "You can emit confusing, blinding radiation.");
 
-    if (player_ptr->muta.has(MUTA::LASER_EYE))
+    if (player_ptr->muta.has(PlayerMutationType::LASER_EYE))
         self_ptr->info[self_ptr->line++]
             = _("あなたは目からレーザー光線を発することができる。(ダメージ レベルX2)", "Your eyes can fire laser beams (dam 2 * lvl).");
 
-    if (player_ptr->muta.has(MUTA::RECALL))
+    if (player_ptr->muta.has(PlayerMutationType::RECALL))
         self_ptr->info[self_ptr->line++] = _("あなたは街とダンジョンの間を行き来することができる。", "You can travel between town and the depths.");
 
-    if (player_ptr->muta.has(MUTA::BANISH))
+    if (player_ptr->muta.has(PlayerMutationType::BANISH))
         self_ptr->info[self_ptr->line++] = _("あなたは邪悪なモンスターを地獄に落とすことができる。", "You can send evil creatures directly to Hell.");
 
-    if (player_ptr->muta.has(MUTA::COLD_TOUCH))
+    if (player_ptr->muta.has(PlayerMutationType::COLD_TOUCH))
         self_ptr->info[self_ptr->line++]
             = _("あなたは敵を触って凍らせることができる。(ダメージ レベルX3)", "You can freeze things with a touch (dam 3 * lvl).");
 
-    if (player_ptr->muta.has(MUTA::LAUNCHER))
+    if (player_ptr->muta.has(PlayerMutationType::LAUNCHER))
         self_ptr->info[self_ptr->line++] = _("あなたはアイテムを力強く投げることができる。", "You can hurl objects with great force.");
 
-    if (player_ptr->muta.has(MUTA::BERS_RAGE))
+    if (player_ptr->muta.has(PlayerMutationType::BERS_RAGE))
         self_ptr->info[self_ptr->line++] = _("あなたは狂戦士化の発作を起こす。", "You are subject to berserker fits.");
 
-    if (player_ptr->muta.has(MUTA::COWARDICE))
+    if (player_ptr->muta.has(PlayerMutationType::COWARDICE))
         self_ptr->info[self_ptr->line++] = _("あなたは時々臆病になる。", "You are subject to cowardice.");
 
-    if (player_ptr->muta.has(MUTA::RTELEPORT))
+    if (player_ptr->muta.has(PlayerMutationType::RTELEPORT))
         self_ptr->info[self_ptr->line++] = _("あなたはランダムにテレポートする。", "You may randomly teleport.");
 
-    if (player_ptr->muta.has(MUTA::ALCOHOL))
+    if (player_ptr->muta.has(PlayerMutationType::ALCOHOL))
         self_ptr->info[self_ptr->line++] = _("あなたの体はアルコールを分泌する。", "Your body produces alcohol.");
 
-    if (player_ptr->muta.has(MUTA::HALLU))
+    if (player_ptr->muta.has(PlayerMutationType::HALLU))
         self_ptr->info[self_ptr->line++] = _("あなたは幻覚を引き起こす精神錯乱に侵されている。", "You have a hallucinatory insanity.");
 
-    if (player_ptr->muta.has(MUTA::FLATULENT))
+    if (player_ptr->muta.has(PlayerMutationType::FLATULENT))
         self_ptr->info[self_ptr->line++] = _("あなたは制御できない強烈な屁をこく。", "You are subject to uncontrollable flatulence.");
 
-    if (player_ptr->muta.has(MUTA::PROD_MANA))
+    if (player_ptr->muta.has(PlayerMutationType::PROD_MANA))
         self_ptr->info[self_ptr->line++] = _("あなたは制御不能な魔法のエネルギーを発している。", "You produce magical energy uncontrollably.");
 
-    if (player_ptr->muta.has(MUTA::ATT_DEMON))
+    if (player_ptr->muta.has(PlayerMutationType::ATT_DEMON))
         self_ptr->info[self_ptr->line++] = _("あなたはデーモンを引きつける。", "You attract demons.");
 
-    if (player_ptr->muta.has(MUTA::SCOR_TAIL))
+    if (player_ptr->muta.has(PlayerMutationType::SCOR_TAIL))
         self_ptr->info[self_ptr->line++] = _("あなたはサソリの尻尾が生えている。(毒、ダメージ 3d7)", "You have a scorpion tail (poison, 3d7).");
 
-    if (player_ptr->muta.has(MUTA::HORNS))
+    if (player_ptr->muta.has(PlayerMutationType::HORNS))
         self_ptr->info[self_ptr->line++] = _("あなたは角が生えている。(ダメージ 2d6)", "You have horns (dam. 2d6).");
 
-    if (player_ptr->muta.has(MUTA::BEAK))
+    if (player_ptr->muta.has(PlayerMutationType::BEAK))
         self_ptr->info[self_ptr->line++] = _("あなたはクチバシが生えている。(ダメージ 2d4)", "You have a beak (dam. 2d4).");
 
-    if (player_ptr->muta.has(MUTA::SPEED_FLUX))
+    if (player_ptr->muta.has(PlayerMutationType::SPEED_FLUX))
         self_ptr->info[self_ptr->line++] = _("あなたはランダムに早く動いたり遅く動いたりする。", "You move faster or slower randomly.");
 
-    if (player_ptr->muta.has(MUTA::BANISH_ALL))
+    if (player_ptr->muta.has(PlayerMutationType::BANISH_ALL))
         self_ptr->info[self_ptr->line++] = _("あなたは時々近くのモンスターを消滅させる。", "You sometimes cause nearby creatures to vanish.");
 
-    if (player_ptr->muta.has(MUTA::EAT_LIGHT))
+    if (player_ptr->muta.has(PlayerMutationType::EAT_LIGHT))
         self_ptr->info[self_ptr->line++] = _("あなたは時々周囲の光を吸収して栄養にする。", "You sometimes feed off of the light around you.");
 
-    if (player_ptr->muta.has(MUTA::TRUNK))
+    if (player_ptr->muta.has(PlayerMutationType::TRUNK))
         self_ptr->info[self_ptr->line++] = _("あなたは象のような鼻を持っている。(ダメージ 1d4)", "You have an elephantine trunk (dam 1d4).");
 
-    if (player_ptr->muta.has(MUTA::ATT_ANIMAL))
+    if (player_ptr->muta.has(PlayerMutationType::ATT_ANIMAL))
         self_ptr->info[self_ptr->line++] = _("あなたは動物を引きつける。", "You attract animals.");
 
-    if (player_ptr->muta.has(MUTA::TENTACLES))
+    if (player_ptr->muta.has(PlayerMutationType::TENTACLES))
         self_ptr->info[self_ptr->line++] = _("あなたは邪悪な触手を持っている。(ダメージ 2d5)", "You have evil looking tentacles (dam 2d5).");
 
-    if (player_ptr->muta.has(MUTA::RAW_CHAOS))
+    if (player_ptr->muta.has(PlayerMutationType::RAW_CHAOS))
         self_ptr->info[self_ptr->line++] = _("あなたはしばしば純カオスに包まれる。", "You occasionally are surrounded with raw chaos.");
 
-    if (player_ptr->muta.has(MUTA::NORMALITY))
+    if (player_ptr->muta.has(PlayerMutationType::NORMALITY))
         self_ptr->info[self_ptr->line++] = _("あなたは変異していたが、回復してきている。", "You may be mutated, but you're recovering.");
 
-    if (player_ptr->muta.has(MUTA::WRAITH))
+    if (player_ptr->muta.has(PlayerMutationType::WRAITH))
         self_ptr->info[self_ptr->line++] = _("あなたの肉体は幽体化したり実体化したりする。", "You fade in and out of physical reality.");
 
-    if (player_ptr->muta.has(MUTA::POLY_WOUND))
+    if (player_ptr->muta.has(PlayerMutationType::POLY_WOUND))
         self_ptr->info[self_ptr->line++] = _("あなたの健康はカオスの力に影響を受ける。", "Your health is subject to chaotic forces.");
 
-    if (player_ptr->muta.has(MUTA::WASTING))
+    if (player_ptr->muta.has(PlayerMutationType::WASTING))
         self_ptr->info[self_ptr->line++] = _("あなたは衰弱する恐ろしい病気にかかっている。", "You have a horrible wasting disease.");
 
-    if (player_ptr->muta.has(MUTA::ATT_DRAGON))
+    if (player_ptr->muta.has(PlayerMutationType::ATT_DRAGON))
         self_ptr->info[self_ptr->line++] = _("あなたはドラゴンを引きつける。", "You attract dragons.");
 
-    if (player_ptr->muta.has(MUTA::WEIRD_MIND))
+    if (player_ptr->muta.has(PlayerMutationType::WEIRD_MIND))
         self_ptr->info[self_ptr->line++] = _("あなたの精神はランダムに拡大したり縮小したりしている。", "Your mind randomly expands and contracts.");
 
-    if (player_ptr->muta.has(MUTA::NAUSEA))
+    if (player_ptr->muta.has(PlayerMutationType::NAUSEA))
         self_ptr->info[self_ptr->line++] = _("あなたの胃は非常に落ち着きがない。", "You have a seriously upset stomach.");
 
-    if (player_ptr->muta.has(MUTA::CHAOS_GIFT))
+    if (player_ptr->muta.has(PlayerMutationType::CHAOS_GIFT))
         self_ptr->info[self_ptr->line++] = _("あなたはカオスの守護悪魔から褒美をうけとる。", "Chaos deities give you gifts.");
 
-    if (player_ptr->muta.has(MUTA::WALK_SHAD))
+    if (player_ptr->muta.has(PlayerMutationType::WALK_SHAD))
         self_ptr->info[self_ptr->line++] = _("あなたはしばしば他の「影」に迷い込む。", "You occasionally stumble into other shadows.");
 
-    if (player_ptr->muta.has(MUTA::WARNING))
+    if (player_ptr->muta.has(PlayerMutationType::WARNING))
         self_ptr->info[self_ptr->line++] = _("あなたは敵に関する警告を感じる。", "You receive warnings about your foes.");
 
-    if (player_ptr->muta.has(MUTA::INVULN))
+    if (player_ptr->muta.has(PlayerMutationType::INVULN))
         self_ptr->info[self_ptr->line++] = _("あなたは時々負け知らずな気分になる。", "You occasionally feel invincible.");
 
-    if (player_ptr->muta.has(MUTA::SP_TO_HP))
+    if (player_ptr->muta.has(PlayerMutationType::SP_TO_HP))
         self_ptr->info[self_ptr->line++] = _("あなたは時々血が筋肉にどっと流れる。", "Your blood sometimes rushes to your muscles.");
 
-    if (player_ptr->muta.has(MUTA::HP_TO_SP))
+    if (player_ptr->muta.has(PlayerMutationType::HP_TO_SP))
         self_ptr->info[self_ptr->line++] = _("あなたは時々頭に血がどっと流れる。", "Your blood sometimes rushes to your head.");
 
-    if (player_ptr->muta.has(MUTA::DISARM))
+    if (player_ptr->muta.has(PlayerMutationType::DISARM))
         self_ptr->info[self_ptr->line++] = _("あなたはよくつまづいて物を落とす。", "You occasionally stumble and drop things.");
 
-    if (player_ptr->muta.has(MUTA::HYPER_STR))
+    if (player_ptr->muta.has(PlayerMutationType::HYPER_STR))
         self_ptr->info[self_ptr->line++] = _("あなたは超人的に強い。(腕力+4)", "You are superhumanly strong (+4 STR).");
 
-    if (player_ptr->muta.has(MUTA::PUNY))
+    if (player_ptr->muta.has(PlayerMutationType::PUNY))
         self_ptr->info[self_ptr->line++] = _("あなたは虚弱だ。(腕力-4)", "You are puny (-4 STR).");
 
-    if (player_ptr->muta.has(MUTA::HYPER_INT))
+    if (player_ptr->muta.has(PlayerMutationType::HYPER_INT))
         self_ptr->info[self_ptr->line++] = _("あなたの脳は生体コンピュータだ。(知能&賢さ+4)", "Your brain is a living computer (+4 INT/WIS).");
 
-    if (player_ptr->muta.has(MUTA::MORONIC))
+    if (player_ptr->muta.has(PlayerMutationType::MORONIC))
         self_ptr->info[self_ptr->line++] = _("あなたは精神薄弱だ。(知能&賢さ-4)", "You are moronic (-4 INT/WIS).");
 
-    if (player_ptr->muta.has(MUTA::RESILIENT))
+    if (player_ptr->muta.has(PlayerMutationType::RESILIENT))
         self_ptr->info[self_ptr->line++] = _("あなたは非常にタフだ。(耐久+4)", "You are very resilient (+4 CON).");
 
-    if (player_ptr->muta.has(MUTA::XTRA_FAT))
+    if (player_ptr->muta.has(PlayerMutationType::XTRA_FAT))
         self_ptr->info[self_ptr->line++] = _("あなたは極端に太っている。(耐久+2,スピード-2)", "You are extremely fat (+2 CON, -2 speed).");
 
-    if (player_ptr->muta.has(MUTA::ALBINO))
+    if (player_ptr->muta.has(PlayerMutationType::ALBINO))
         self_ptr->info[self_ptr->line++] = _("あなたはアルビノだ。(耐久-4)", "You are an albino (-4 CON).");
 
-    if (player_ptr->muta.has(MUTA::FLESH_ROT))
+    if (player_ptr->muta.has(PlayerMutationType::FLESH_ROT))
         self_ptr->info[self_ptr->line++] = _("あなたの肉体は腐敗している。(耐久-2,魅力-1)", "Your flesh is rotting (-2 CON, -1 CHR).");
 
-    if (player_ptr->muta.has(MUTA::SILLY_VOI))
+    if (player_ptr->muta.has(PlayerMutationType::SILLY_VOI))
         self_ptr->info[self_ptr->line++] = _("あなたの声は間抜けなキーキー声だ。(魅力-4)", "Your voice is a silly squeak (-4 CHR).");
 
-    if (player_ptr->muta.has(MUTA::BLANK_FAC))
+    if (player_ptr->muta.has(PlayerMutationType::BLANK_FAC))
         self_ptr->info[self_ptr->line++] = _("あなたはのっぺらぼうだ。(魅力-1)", "Your face is featureless (-1 CHR).");
 
-    if (player_ptr->muta.has(MUTA::ILL_NORM))
+    if (player_ptr->muta.has(PlayerMutationType::ILL_NORM))
         self_ptr->info[self_ptr->line++] = _("あなたは幻影に覆われている。", "Your appearance is masked with illusion.");
 
-    if (player_ptr->muta.has(MUTA::XTRA_EYES))
+    if (player_ptr->muta.has(PlayerMutationType::XTRA_EYES))
         self_ptr->info[self_ptr->line++] = _("あなたは余分に二つの目を持っている。(探索+15)", "You have an extra pair of eyes (+15 search).");
 
-    if (player_ptr->muta.has(MUTA::MAGIC_RES))
+    if (player_ptr->muta.has(PlayerMutationType::MAGIC_RES))
         self_ptr->info[self_ptr->line++] = _("あなたは魔法への耐性をもっている。", "You are resistant to magic.");
 
-    if (player_ptr->muta.has(MUTA::XTRA_NOIS))
+    if (player_ptr->muta.has(PlayerMutationType::XTRA_NOIS))
         self_ptr->info[self_ptr->line++] = _("あなたは変な音を発している。(隠密-3)", "You make a lot of strange noise (-3 stealth).");
 
-    if (player_ptr->muta.has(MUTA::INFRAVIS))
+    if (player_ptr->muta.has(PlayerMutationType::INFRAVIS))
         self_ptr->info[self_ptr->line++] = _("あなたは素晴らしい赤外線視力を持っている。(+3)", "You have remarkable infravision (+3).");
 
-    if (player_ptr->muta.has(MUTA::XTRA_LEGS))
+    if (player_ptr->muta.has(PlayerMutationType::XTRA_LEGS))
         self_ptr->info[self_ptr->line++] = _("あなたは余分に二本の足が生えている。(加速+3)", "You have an extra pair of legs (+3 speed).");
 
-    if (player_ptr->muta.has(MUTA::SHORT_LEG))
+    if (player_ptr->muta.has(PlayerMutationType::SHORT_LEG))
         self_ptr->info[self_ptr->line++] = _("あなたの足は短い突起だ。(加速-3)", "Your legs are short stubs (-3 speed).");
 
-    if (player_ptr->muta.has(MUTA::ELEC_TOUC))
+    if (player_ptr->muta.has(PlayerMutationType::ELEC_TOUC))
         self_ptr->info[self_ptr->line++] = _("あなたの血管には電流が流れている。", "Electricity is running through your veins.");
 
-    if (player_ptr->muta.has(MUTA::FIRE_BODY))
+    if (player_ptr->muta.has(PlayerMutationType::FIRE_BODY))
         self_ptr->info[self_ptr->line++] = _("あなたの体は炎につつまれている。", "Your body is enveloped in flames.");
 
-    if (player_ptr->muta.has(MUTA::WART_SKIN))
+    if (player_ptr->muta.has(PlayerMutationType::WART_SKIN))
         self_ptr->info[self_ptr->line++] = _("あなたの肌はイボに被われている。(魅力-2, AC+5)", "Your skin is covered with warts (-2 CHR, +5 AC).");
 
-    if (player_ptr->muta.has(MUTA::SCALES))
+    if (player_ptr->muta.has(PlayerMutationType::SCALES))
         self_ptr->info[self_ptr->line++] = _("あなたの肌は鱗になっている。(魅力-1, AC+10)", "Your skin has turned into scales (-1 CHR, +10 AC).");
 
-    if (player_ptr->muta.has(MUTA::IRON_SKIN))
+    if (player_ptr->muta.has(PlayerMutationType::IRON_SKIN))
         self_ptr->info[self_ptr->line++] = _("あなたの肌は鉄でできている。(器用-1, AC+25)", "Your skin is made of steel (-1 DEX, +25 AC).");
 
-    if (player_ptr->muta.has(MUTA::WINGS))
+    if (player_ptr->muta.has(PlayerMutationType::WINGS))
         self_ptr->info[self_ptr->line++] = _("あなたは羽を持っている。", "You have wings.");
 
-    if (player_ptr->muta.has(MUTA::FEARLESS)) {
+    if (player_ptr->muta.has(PlayerMutationType::FEARLESS)) {
         /* Unnecessary */
     }
 
-    if (player_ptr->muta.has(MUTA::REGEN)) {
+    if (player_ptr->muta.has(PlayerMutationType::REGEN)) {
         /* Unnecessary */
     }
 
-    if (player_ptr->muta.has(MUTA::ESP)) {
+    if (player_ptr->muta.has(PlayerMutationType::ESP)) {
         /* Unnecessary */
     }
 
-    if (player_ptr->muta.has(MUTA::LIMBER))
+    if (player_ptr->muta.has(PlayerMutationType::LIMBER))
         self_ptr->info[self_ptr->line++] = _("あなたの体は非常にしなやかだ。(器用+3)", "Your body is very limber (+3 DEX).");
 
-    if (player_ptr->muta.has(MUTA::ARTHRITIS))
+    if (player_ptr->muta.has(PlayerMutationType::ARTHRITIS))
         self_ptr->info[self_ptr->line++] = _("あなたはいつも関節に痛みを感じている。(器用-3)", "Your joints ache constantly (-3 DEX).");
 
-    if (player_ptr->muta.has(MUTA::VULN_ELEM))
+    if (player_ptr->muta.has(PlayerMutationType::VULN_ELEM))
         self_ptr->info[self_ptr->line++] = _("あなたは元素の攻撃に弱い。", "You are susceptible to damage from the elements.");
 
-    if (player_ptr->muta.has(MUTA::MOTION))
+    if (player_ptr->muta.has(PlayerMutationType::MOTION))
         self_ptr->info[self_ptr->line++] = _("あなたの動作は正確で力強い。(隠密+1)", "Your movements are precise and forceful (+1 STL).");
 
     if (has_good_luck(player_ptr))
         self_ptr->info[self_ptr->line++] = _("あなたは白いオーラにつつまれている。", "There is a white aura surrounding you.");
 
-    if (player_ptr->muta.has(MUTA::BAD_LUCK))
+    if (player_ptr->muta.has(PlayerMutationType::BAD_LUCK))
         self_ptr->info[self_ptr->line++] = _("あなたは黒いオーラにつつまれている。", "There is a black aura surrounding you.");
 }
index 60db9cd..c986921 100644 (file)
@@ -44,7 +44,7 @@ int16_t PlayerInfravision::race_value()
 int16_t PlayerInfravision::mutation_value()
 {
     int16_t result = 0;
-    if (this->player_ptr->muta.has(MUTA::INFRAVIS)) {
+    if (this->player_ptr->muta.has(PlayerMutationType::INFRAVIS)) {
         result += 3;
     }
 
index 0d27b5f..c58b691 100644 (file)
@@ -219,15 +219,15 @@ int16_t PlayerSpeed::mutation_value()
     SPEED result = 0;
 
     const auto &muta = this->player_ptr->muta;
-    if (muta.has(MUTA::XTRA_FAT)) {
+    if (muta.has(PlayerMutationType::XTRA_FAT)) {
         result -= 2;
     }
 
-    if (muta.has(MUTA::XTRA_LEGS)) {
+    if (muta.has(PlayerMutationType::XTRA_LEGS)) {
         result += 3;
     }
 
-    if (muta.has(MUTA::SHORT_LEG)) {
+    if (muta.has(PlayerMutationType::SHORT_LEG)) {
         result -= 3;
     }
 
index 762ef75..567fc72 100644 (file)
@@ -91,10 +91,10 @@ int16_t PlayerStealth::mutation_value()
 {
     int16_t result = 0;
     const auto &muta = this->player_ptr->muta;
-    if (muta.has(MUTA::XTRA_NOIS)) {
+    if (muta.has(PlayerMutationType::XTRA_NOIS)) {
         result -= 3;
     }
-    if (muta.has(MUTA::MOTION)) {
+    if (muta.has(PlayerMutationType::MOTION)) {
         result += 1;
     }
     return result;
index 43002f0..58b330d 100644 (file)
@@ -201,48 +201,48 @@ void sanity_blast(player_type *player_ptr, monster_type *m_ptr, bool necro)
 
     switch (randint1(22)) {
     case 1: {
-        if (player_ptr->muta.has_not(MUTA::MORONIC)) {
+        if (player_ptr->muta.has_not(PlayerMutationType::MORONIC)) {
             if ((player_ptr->stat_use[A_INT] < 4) && (player_ptr->stat_use[A_WIS] < 4)) {
                 msg_print(_("あなたは完璧な馬鹿になったような気がした。しかしそれは元々だった。", "You turn into an utter moron!"));
             } else {
                 msg_print(_("あなたは完璧な馬鹿になった!", "You turn into an utter moron!"));
             }
 
-            if (player_ptr->muta.has(MUTA::HYPER_INT)) {
+            if (player_ptr->muta.has(PlayerMutationType::HYPER_INT)) {
                 msg_print(_("あなたの脳は生体コンピュータではなくなった。", "Your brain is no longer a living computer."));
-                player_ptr->muta.reset(MUTA::HYPER_INT);
+                player_ptr->muta.reset(PlayerMutationType::HYPER_INT);
             }
 
-            player_ptr->muta.set(MUTA::MORONIC);
+            player_ptr->muta.set(PlayerMutationType::MORONIC);
         }
 
         break;
     }
     case 2: {
-        if (player_ptr->muta.has_not(MUTA::COWARDICE) && !has_resist_fear(player_ptr)) {
+        if (player_ptr->muta.has_not(PlayerMutationType::COWARDICE) && !has_resist_fear(player_ptr)) {
             msg_print(_("あなたはパラノイアになった!", "You become paranoid!"));
-            if (player_ptr->muta.has(MUTA::FEARLESS)) {
+            if (player_ptr->muta.has(PlayerMutationType::FEARLESS)) {
                 msg_print(_("あなたはもう恐れ知らずではなくなった。", "You are no longer fearless."));
-                player_ptr->muta.reset(MUTA::FEARLESS);
+                player_ptr->muta.reset(PlayerMutationType::FEARLESS);
             }
 
-            player_ptr->muta.set(MUTA::COWARDICE);
+            player_ptr->muta.set(PlayerMutationType::COWARDICE);
         }
 
         break;
     }
     case 3: {
-        if (player_ptr->muta.has_not(MUTA::HALLU) && !has_resist_chaos(player_ptr)) {
+        if (player_ptr->muta.has_not(PlayerMutationType::HALLU) && !has_resist_chaos(player_ptr)) {
             msg_print(_("幻覚をひき起こす精神錯乱に陥った!", "You are afflicted by a hallucinatory insanity!"));
-            player_ptr->muta.set(MUTA::HALLU);
+            player_ptr->muta.set(PlayerMutationType::HALLU);
         }
 
         break;
     }
     case 4: {
-        if (player_ptr->muta.has_not(MUTA::BERS_RAGE) && !has_resist_conf(player_ptr)) {
+        if (player_ptr->muta.has_not(PlayerMutationType::BERS_RAGE) && !has_resist_conf(player_ptr)) {
             msg_print(_("激烈な感情の発作におそわれるようになった!", "You become subject to fits of berserk rage!"));
-            player_ptr->muta.set(MUTA::BERS_RAGE);
+            player_ptr->muta.set(PlayerMutationType::BERS_RAGE);
         }
 
         break;
index d78a4b5..44abc61 100644 (file)
@@ -564,7 +564,7 @@ void Patron::gain_level_reward(player_type *player_ptr_, int chosen_reward)
 void Patron::admire(player_type *player_ptr_)
 {
     this->player_ptr = player_ptr_;
-    if ((this->player_ptr->pclass == PlayerClassType::CHAOS_WARRIOR) || this->player_ptr->muta.has(MUTA::CHAOS_GIFT)) {
+    if ((this->player_ptr->pclass == PlayerClassType::CHAOS_WARRIOR) || this->player_ptr->muta.has(PlayerMutationType::CHAOS_GIFT)) {
         msg_format(_("%sからの声が響いた。", "The voice of %s booms out:"), this->name.c_str());
         msg_print(_("『よくやった、定命の者よ!』", "'Thou art donst well, mortal!'"));
     }
index 231151a..4090fb5 100644 (file)
@@ -25,26 +25,26 @@ static void add_mutation_flags(player_type *player_ptr, TrFlags &flags)
     if (player_ptr->muta.none())
         return;
 
-    if (player_ptr->muta.has(MUTA::FLESH_ROT))
+    if (player_ptr->muta.has(PlayerMutationType::FLESH_ROT))
         flags.reset(TR_REGEN);
-    if (player_ptr->muta.has_any_of({ MUTA::XTRA_FAT, MUTA::XTRA_LEGS, MUTA::SHORT_LEG }))
+    if (player_ptr->muta.has_any_of({ PlayerMutationType::XTRA_FAT, PlayerMutationType::XTRA_LEGS, PlayerMutationType::SHORT_LEG }))
         flags.set(TR_SPEED);
-    if (player_ptr->muta.has(MUTA::ELEC_TOUC))
+    if (player_ptr->muta.has(PlayerMutationType::ELEC_TOUC))
         flags.set(TR_SH_ELEC);
-    if (player_ptr->muta.has(MUTA::FIRE_BODY)) {
+    if (player_ptr->muta.has(PlayerMutationType::FIRE_BODY)) {
         flags.set(TR_SH_FIRE);
         flags.set(TR_LITE_1);
     }
 
-    if (player_ptr->muta.has(MUTA::WINGS))
+    if (player_ptr->muta.has(PlayerMutationType::WINGS))
         flags.set(TR_LEVITATION);
-    if (player_ptr->muta.has(MUTA::FEARLESS))
+    if (player_ptr->muta.has(PlayerMutationType::FEARLESS))
         flags.set(TR_RES_FEAR);
-    if (player_ptr->muta.has(MUTA::REGEN))
+    if (player_ptr->muta.has(PlayerMutationType::REGEN))
         flags.set(TR_REGEN);
-    if (player_ptr->muta.has(MUTA::ESP))
+    if (player_ptr->muta.has(PlayerMutationType::ESP))
         flags.set(TR_TELEPATHY);
-    if (player_ptr->muta.has(MUTA::MOTION))
+    if (player_ptr->muta.has(PlayerMutationType::MOTION))
         flags.set(TR_FREE_ACT);
 }
 
index 5b69f59..b5f958f 100644 (file)
@@ -654,7 +654,7 @@ BIT_FLAGS has_esp_telepathy(player_type *player_ptr)
         result |= FLAG_CAUSE_MAGIC_TIME_EFFECT;
     }
 
-    if (player_ptr->muta.has(MUTA::ESP)) {
+    if (player_ptr->muta.has(PlayerMutationType::ESP)) {
         result |= FLAG_CAUSE_MUTATION;
     }
 
@@ -795,7 +795,7 @@ BIT_FLAGS has_sh_fire(player_type *player_ptr)
 {
     BIT_FLAGS result = common_cause_flags(player_ptr, TR_SH_FIRE);
 
-    if (player_ptr->muta.has(MUTA::FIRE_BODY)) {
+    if (player_ptr->muta.has(PlayerMutationType::FIRE_BODY)) {
         result |= FLAG_CAUSE_MUTATION;
     }
 
@@ -810,7 +810,7 @@ BIT_FLAGS has_sh_elec(player_type *player_ptr)
 {
     BIT_FLAGS result = common_cause_flags(player_ptr, TR_SH_ELEC);
 
-    if (player_ptr->muta.has(MUTA::ELEC_TOUC))
+    if (player_ptr->muta.has(PlayerMutationType::ELEC_TOUC))
         result |= FLAG_CAUSE_MUTATION;
 
     if (SpellHex(player_ptr).is_spelling_specific(HEX_SHOCK_CLOAK) || player_ptr->ult_res) {
@@ -876,7 +876,7 @@ BIT_FLAGS has_free_act(player_type *player_ptr)
 {
     BIT_FLAGS result = common_cause_flags(player_ptr, TR_FREE_ACT);
 
-    if (player_ptr->muta.has(MUTA::MOTION))
+    if (player_ptr->muta.has(PlayerMutationType::MOTION))
         result |= FLAG_CAUSE_MUTATION;
 
     if (player_ptr->ult_res || player_ptr->magicdef) {
@@ -956,7 +956,7 @@ BIT_FLAGS has_levitation(player_type *player_ptr)
 {
     BIT_FLAGS result = common_cause_flags(player_ptr, TR_LEVITATION);
 
-    if (player_ptr->muta.has(MUTA::WINGS)) {
+    if (player_ptr->muta.has(PlayerMutationType::WINGS)) {
         result |= FLAG_CAUSE_MUTATION;
     }
 
@@ -1006,14 +1006,14 @@ BIT_FLAGS has_regenerate(player_type *player_ptr)
 {
     BIT_FLAGS result = common_cause_flags(player_ptr, TR_REGEN);
 
-    if (player_ptr->muta.has(MUTA::REGEN))
+    if (player_ptr->muta.has(PlayerMutationType::REGEN))
         result |= FLAG_CAUSE_MUTATION;
 
     if (SpellHex(player_ptr).is_spelling_specific(HEX_DEMON_AURA) || player_ptr->ult_res || player_ptr->tim_regen) {
         result |= FLAG_CAUSE_MAGIC_TIME_EFFECT;
     }
 
-    if (player_ptr->muta.has(MUTA::FLESH_ROT))
+    if (player_ptr->muta.has(PlayerMutationType::FLESH_ROT))
         result = 0L;
 
     return result;
@@ -1149,7 +1149,7 @@ BIT_FLAGS has_vuln_acid(player_type *player_ptr)
 {
     BIT_FLAGS result = common_cause_flags(player_ptr, TR_VUL_ACID);
 
-    if (player_ptr->muta.has(MUTA::VULN_ELEM)) {
+    if (player_ptr->muta.has(PlayerMutationType::VULN_ELEM)) {
         result |= FLAG_CAUSE_MUTATION;
     }
 
@@ -1173,7 +1173,7 @@ BIT_FLAGS has_vuln_elec(player_type *player_ptr)
 {
     BIT_FLAGS result = common_cause_flags(player_ptr, TR_VUL_ELEC);
 
-    if (player_ptr->muta.has(MUTA::VULN_ELEM)) {
+    if (player_ptr->muta.has(PlayerMutationType::VULN_ELEM)) {
         result |= FLAG_CAUSE_MUTATION;
     }
 
@@ -1197,7 +1197,7 @@ BIT_FLAGS has_vuln_fire(player_type *player_ptr)
 {
     BIT_FLAGS result = common_cause_flags(player_ptr, TR_VUL_FIRE);
 
-    if (player_ptr->muta.has(MUTA::VULN_ELEM)) {
+    if (player_ptr->muta.has(PlayerMutationType::VULN_ELEM)) {
         result |= FLAG_CAUSE_MUTATION;
     }
 
@@ -1221,7 +1221,7 @@ BIT_FLAGS has_vuln_cold(player_type *player_ptr)
 {
     BIT_FLAGS result = common_cause_flags(player_ptr, TR_VUL_COLD);
 
-    if (player_ptr->muta.has(MUTA::VULN_ELEM)) {
+    if (player_ptr->muta.has(PlayerMutationType::VULN_ELEM)) {
         result |= FLAG_CAUSE_MUTATION;
     }
 
@@ -1411,7 +1411,7 @@ BIT_FLAGS has_resist_fear(player_type *player_ptr)
 {
     BIT_FLAGS result = common_cause_flags(player_ptr, TR_RES_FEAR);
 
-    if (player_ptr->muta.has(MUTA::FEARLESS))
+    if (player_ptr->muta.has(PlayerMutationType::FEARLESS))
         result |= FLAG_CAUSE_MUTATION;
 
     if (is_hero(player_ptr) || is_shero(player_ptr) || player_ptr->ult_res) {
@@ -1659,7 +1659,7 @@ bool has_not_monk_weapon(player_type *player_ptr, int i)
 
 bool has_good_luck(player_type *player_ptr)
 {
-    return (player_ptr->ppersonality == PERSONALITY_LUCKY) || (player_ptr->muta.has(MUTA::GOOD_LUCK));
+    return (player_ptr->ppersonality == PERSONALITY_LUCKY) || (player_ptr->muta.has(PlayerMutationType::GOOD_LUCK));
 }
 
 BIT_FLAGS player_aggravate_state(player_type *player_ptr)
index e6461d4..f878f73 100644 (file)
@@ -1099,7 +1099,7 @@ static ACTION_SKILL_POWER calc_saving_throw(player_type *player_ptr)
     pow = tmp_rp_ptr->r_sav + c_ptr->c_sav + a_ptr->a_sav;
     pow += ((cp_ptr->x_sav * player_ptr->lev / 10) + (ap_ptr->a_sav * player_ptr->lev / 50));
 
-    if (player_ptr->muta.has(MUTA::MAGIC_RES))
+    if (player_ptr->muta.has(PlayerMutationType::MAGIC_RES))
         pow += (15 + (player_ptr->lev / 5));
 
     if (has_resist_curse(player_ptr))
@@ -1164,7 +1164,7 @@ static ACTION_SKILL_POWER calc_search(player_type *player_ptr)
             pow += (o_ptr->pval * 5);
     }
 
-    if (player_ptr->muta.has(MUTA::XTRA_EYES)) {
+    if (player_ptr->muta.has(PlayerMutationType::XTRA_EYES)) {
         pow += 15;
     }
 
@@ -1215,7 +1215,7 @@ static ACTION_SKILL_POWER calc_search_freq(player_type *player_ptr)
         pow -= 15;
     }
 
-    if (player_ptr->muta.has(MUTA::XTRA_EYES)) {
+    if (player_ptr->muta.has(PlayerMutationType::XTRA_EYES)) {
         pow += 15;
     }
 
@@ -1630,15 +1630,15 @@ static ARMOUR_CLASS calc_to_ac(player_type *player_ptr, bool is_real_value)
         ac += 5;
     }
 
-    if (player_ptr->muta.has(MUTA::WART_SKIN)) {
+    if (player_ptr->muta.has(PlayerMutationType::WART_SKIN)) {
         ac += 5;
     }
 
-    if (player_ptr->muta.has(MUTA::SCALES)) {
+    if (player_ptr->muta.has(PlayerMutationType::SCALES)) {
         ac += 10;
     }
 
-    if (player_ptr->muta.has(MUTA::IRON_SKIN)) {
+    if (player_ptr->muta.has(PlayerMutationType::IRON_SKIN)) {
         ac += 25;
     }
 
@@ -2643,7 +2643,7 @@ void check_experience(player_type *player_ptr)
         if (player_ptr->lev > player_ptr->max_plv) {
             player_ptr->max_plv = player_ptr->lev;
 
-            if ((player_ptr->pclass == PlayerClassType::CHAOS_WARRIOR) || player_ptr->muta.has(MUTA::CHAOS_GIFT)) {
+            if ((player_ptr->pclass == PlayerClassType::CHAOS_WARRIOR) || player_ptr->muta.has(PlayerMutationType::CHAOS_GIFT)) {
                 level_reward = true;
             }
             if (player_ptr->prace == PlayerRaceType::BEASTMAN) {
index 4ca7d11..a26403a 100644 (file)
@@ -104,7 +104,7 @@ void player_vulnerability_flags(player_type *player_ptr, TrFlags &flags)
 {
     flags.clear();
 
-    if (player_ptr->muta.has(MUTA::VULN_ELEM) || PlayerClass(player_ptr).samurai_stance_is(SamuraiStance::KOUKIJIN)) {
+    if (player_ptr->muta.has(PlayerMutationType::VULN_ELEM) || PlayerClass(player_ptr).samurai_stance_is(SamuraiStance::KOUKIJIN)) {
         flags.set(TR_RES_ACID);
         flags.set(TR_RES_ELEC);
         flags.set(TR_RES_FIRE);
index 7ccd5aa..a8a20c2 100644 (file)
@@ -9,7 +9,7 @@
 void select_mutation_racial(player_type *player_ptr, rc_type *rc_ptr)
 {
     rpi_type rpi;
-    if (player_ptr->muta.has(MUTA::SPIT_ACID)) {
+    if (player_ptr->muta.has(PlayerMutationType::SPIT_ACID)) {
         rpi = rpi_type(_("酸の唾", "Spit Acid"));
         rpi.info = format("%s%d", KWD_DAM, rc_ptr->lvl);
         rpi.text = _("酸のボールを放つ", "Fires a boll of acid.");
@@ -17,10 +17,10 @@ void select_mutation_racial(player_type *player_ptr, rc_type *rc_ptr)
         rpi.cost = 9;
         rpi.stat = A_DEX;
         rpi.fail = 15;
-        rc_ptr->add_power(rpi, enum2i(MUTA::SPIT_ACID));
+        rc_ptr->add_power(rpi, enum2i(PlayerMutationType::SPIT_ACID));
     }
 
-    if (player_ptr->muta.has(MUTA::BR_FIRE)) {
+    if (player_ptr->muta.has(PlayerMutationType::BR_FIRE)) {
         rpi = rpi_type(_("炎のブレス", "Fire Breath"));
         rpi.info = format("%s%d", KWD_DAM, rc_ptr->lvl);
         rpi.text = _("火炎のブレスを放つ", "Fires a breath of fire.");
@@ -28,10 +28,10 @@ void select_mutation_racial(player_type *player_ptr, rc_type *rc_ptr)
         rpi.cost = rc_ptr->lvl;
         rpi.stat = A_CON;
         rpi.fail = 18;
-        rc_ptr->add_power(rpi, enum2i(MUTA::BR_FIRE));
+        rc_ptr->add_power(rpi, enum2i(PlayerMutationType::BR_FIRE));
     }
 
-    if (player_ptr->muta.has(MUTA::HYPN_GAZE)) {
+    if (player_ptr->muta.has(PlayerMutationType::HYPN_GAZE)) {
         rpi = rpi_type(_("催眠睨み", "Hypnotic Gaze"));
         rpi.info = format("%s%d", KWD_POWER, rc_ptr->lvl);
         rpi.text = _("モンスター1体をペットにする。抵抗されると無効。", "Attempts to charm a monster.");
@@ -39,10 +39,10 @@ void select_mutation_racial(player_type *player_ptr, rc_type *rc_ptr)
         rpi.cost = 12;
         rpi.stat = A_CHR;
         rpi.fail = 18;
-        rc_ptr->add_power(rpi, enum2i(MUTA::HYPN_GAZE));
+        rc_ptr->add_power(rpi, enum2i(PlayerMutationType::HYPN_GAZE));
     }
 
-    if (player_ptr->muta.has(MUTA::TELEKINES)) {
+    if (player_ptr->muta.has(PlayerMutationType::TELEKINES)) {
         rpi = rpi_type(_("念動力", "Telekinesis"));
 #ifdef JP
         rpi.info = format("最大重量: %d.%dkg", lb_to_kg_integer(rc_ptr->lvl * 10), lb_to_kg_fraction(rc_ptr->lvl * 10));
@@ -54,10 +54,10 @@ void select_mutation_racial(player_type *player_ptr, rc_type *rc_ptr)
         rpi.cost = 9;
         rpi.stat = A_WIS;
         rpi.fail = 14;
-        rc_ptr->add_power(rpi, enum2i(MUTA::TELEKINES));
+        rc_ptr->add_power(rpi, enum2i(PlayerMutationType::TELEKINES));
     }
 
-    if (player_ptr->muta.has(MUTA::VTELEPORT)) {
+    if (player_ptr->muta.has(PlayerMutationType::VTELEPORT)) {
         rpi = rpi_type(_("テレポート", "Teleport"));
         rpi.info = format("%s%d", KWD_SPHERE, 10 + rc_ptr->lvl * 4);
         rpi.text = _("遠距離のテレポートをする。", "Teleports you a long distance.");
@@ -65,10 +65,10 @@ void select_mutation_racial(player_type *player_ptr, rc_type *rc_ptr)
         rpi.cost = 7;
         rpi.stat = A_WIS;
         rpi.fail = 15;
-        rc_ptr->add_power(rpi, enum2i(MUTA::VTELEPORT));
+        rc_ptr->add_power(rpi, enum2i(PlayerMutationType::VTELEPORT));
     }
 
-    if (player_ptr->muta.has(MUTA::MIND_BLST)) {
+    if (player_ptr->muta.has(PlayerMutationType::MIND_BLST)) {
         rpi = rpi_type(_("精神攻撃", "Mind Blast"));
         rpi.info = format("%s%dd%", KWD_DAM, 3 + (rc_ptr->lvl - 1) / 5, 3);
         rpi.text = _("モンスター1体に精神攻撃を行う。", "Deals a PSI damage to a monster.");
@@ -76,10 +76,10 @@ void select_mutation_racial(player_type *player_ptr, rc_type *rc_ptr)
         rpi.cost = 3;
         rpi.stat = A_WIS;
         rpi.fail = 15;
-        rc_ptr->add_power(rpi, enum2i(MUTA::MIND_BLST));
+        rc_ptr->add_power(rpi, enum2i(PlayerMutationType::MIND_BLST));
     }
 
-    if (player_ptr->muta.has(MUTA::RADIATION)) {
+    if (player_ptr->muta.has(PlayerMutationType::RADIATION)) {
         rpi = rpi_type(_("放射能", "Emit Radiation"));
         rpi.info = format("%s%d", KWD_DAM, rc_ptr->lvl * 2);
         rpi.text = _("自分を中心とする放射性廃棄物のボールを放つ。", "Bursst nuke ball.");
@@ -87,10 +87,10 @@ void select_mutation_racial(player_type *player_ptr, rc_type *rc_ptr)
         rpi.cost = 15;
         rpi.stat = A_CON;
         rpi.fail = 14;
-        rc_ptr->add_power(rpi, enum2i(MUTA::RADIATION));
+        rc_ptr->add_power(rpi, enum2i(PlayerMutationType::RADIATION));
     }
 
-    if (player_ptr->muta.has(MUTA::VAMPIRISM)) {
+    if (player_ptr->muta.has(PlayerMutationType::VAMPIRISM)) {
         rpi = rpi_type(_("吸血", "Vampiric Drain"));
         rpi.info = format("%s%d", KWD_DAM, rc_ptr->lvl * 2);
         rpi.text = _("隣接したモンスター1体から生命力を吸い取る。吸い取った生命力によって満腹度があがる。",
@@ -99,30 +99,30 @@ void select_mutation_racial(player_type *player_ptr, rc_type *rc_ptr)
         rpi.cost = 1 + (rc_ptr->lvl / 3);
         rpi.stat = A_CON;
         rpi.fail = 9;
-        rc_ptr->add_power(rpi, enum2i(MUTA::VAMPIRISM));
+        rc_ptr->add_power(rpi, enum2i(PlayerMutationType::VAMPIRISM));
     }
 
-    if (player_ptr->muta.has(MUTA::SMELL_MET)) {
+    if (player_ptr->muta.has(PlayerMutationType::SMELL_MET)) {
         rpi = rpi_type(_("金属嗅覚", "Smell Metal"));
         rpi.text = _("周辺の鉱物を感知する。", "Detects all treasurely walls in your vicinity.");
         rpi.min_level = 3;
         rpi.cost = 2;
         rpi.stat = A_INT;
         rpi.fail = 12;
-        rc_ptr->add_power(rpi, enum2i(MUTA::SMELL_MET));
+        rc_ptr->add_power(rpi, enum2i(PlayerMutationType::SMELL_MET));
     }
 
-    if (player_ptr->muta.has(MUTA::SMELL_MON)) {
+    if (player_ptr->muta.has(PlayerMutationType::SMELL_MON)) {
         rpi = rpi_type(_("敵臭嗅覚", "Smell Monsters"));
         rpi.text = _("近くの全ての見えるモンスターを感知する。", "Detects all monsters in your vicinity unless invisible.");
         rpi.min_level = 5;
         rpi.cost = 4;
         rpi.stat = A_INT;
         rpi.fail = 15;
-        rc_ptr->add_power(rpi, enum2i(MUTA::SMELL_MON));
+        rc_ptr->add_power(rpi, enum2i(PlayerMutationType::SMELL_MON));
     }
 
-    if (player_ptr->muta.has(MUTA::BLINK)) {
+    if (player_ptr->muta.has(PlayerMutationType::BLINK)) {
         rpi = rpi_type(_("ショート・テレポート", "Blink"));
         rpi.info = format("%s%d", KWD_SPHERE, 10);
         rpi.text = _("近距離のテレポートをする。", "Teleports you a short distance.");
@@ -130,20 +130,20 @@ void select_mutation_racial(player_type *player_ptr, rc_type *rc_ptr)
         rpi.cost = 3;
         rpi.stat = A_WIS;
         rpi.fail = 12;
-        rc_ptr->add_power(rpi, enum2i(MUTA::BLINK));
+        rc_ptr->add_power(rpi, enum2i(PlayerMutationType::BLINK));
     }
 
-    if (player_ptr->muta.has(MUTA::EAT_ROCK)) {
+    if (player_ptr->muta.has(PlayerMutationType::EAT_ROCK)) {
         rpi = rpi_type(_("岩食い", "Eat Rock"));
         rpi.text = _("対象の壁を食料のように食べる。", "Eats a wall as rations.");
         rpi.min_level = 8;
         rpi.cost = 12;
         rpi.stat = A_CON;
         rpi.fail = 18;
-        rc_ptr->add_power(rpi, enum2i(MUTA::EAT_ROCK));
+        rc_ptr->add_power(rpi, enum2i(PlayerMutationType::EAT_ROCK));
     }
 
-    if (player_ptr->muta.has(MUTA::SWAP_POS)) {
+    if (player_ptr->muta.has(PlayerMutationType::SWAP_POS)) {
         rpi = rpi_type(_("位置交換", "Swap Position"));
         rpi.info = format("%s%d", KWD_SPHERE, 10 + rc_ptr->lvl * 3 / 2);
         rpi.text = _("対象のモンスター1体を位置を交換する。", "Swaps positions between you and a target monster.");
@@ -151,40 +151,40 @@ void select_mutation_racial(player_type *player_ptr, rc_type *rc_ptr)
         rpi.cost = 12;
         rpi.stat = A_DEX;
         rpi.fail = 16;
-        rc_ptr->add_power(rpi, enum2i(MUTA::SWAP_POS));
+        rc_ptr->add_power(rpi, enum2i(PlayerMutationType::SWAP_POS));
     }
 
-    if (player_ptr->muta.has(MUTA::SHRIEK)) {
+    if (player_ptr->muta.has(PlayerMutationType::SHRIEK)) {
         rpi = rpi_type(_("叫び", "Shriek"));
         rpi.text = _("自分を中心とする轟音のボールを放ち、周辺の敵を怒らせる。", "Bursts a sound ball and aggravates all monsters around you. ");
         rpi.min_level = 20;
         rpi.cost = 14;
         rpi.stat = A_CON;
         rpi.fail = 16;
-        rc_ptr->add_power(rpi, enum2i(MUTA::SHRIEK));
+        rc_ptr->add_power(rpi, enum2i(PlayerMutationType::SHRIEK));
     }
 
-    if (player_ptr->muta.has(MUTA::ILLUMINE)) {
+    if (player_ptr->muta.has(PlayerMutationType::ILLUMINE)) {
         rpi = rpi_type(_("照明", "Illuminate"));
         rpi.text = _("光源が照らしている範囲か部屋全体を永久に明るくする。", "Lights up nearby area and the inside of a room permanently.");
         rpi.min_level = 3;
         rpi.cost = 2;
         rpi.stat = A_INT;
         rpi.fail = 10;
-        rc_ptr->add_power(rpi, enum2i(MUTA::ILLUMINE));
+        rc_ptr->add_power(rpi, enum2i(PlayerMutationType::ILLUMINE));
     }
 
-    if (player_ptr->muta.has(MUTA::DET_CURSE)) {
+    if (player_ptr->muta.has(PlayerMutationType::DET_CURSE)) {
         rpi = rpi_type(_("呪い感知", "Detect Curses"));
         rpi.text = _("持ち物及び装備の中の呪われたアイテムを感知する。", "Feels curses of objects in your inventory.");
         rpi.min_level = 7;
         rpi.cost = 14;
         rpi.stat = A_WIS;
         rpi.fail = 14;
-        rc_ptr->add_power(rpi, enum2i(MUTA::DET_CURSE));
+        rc_ptr->add_power(rpi, enum2i(PlayerMutationType::DET_CURSE));
     }
 
-    if (player_ptr->muta.has(MUTA::BERSERK)) {
+    if (player_ptr->muta.has(PlayerMutationType::BERSERK)) {
         rpi = rpi_type(_("狂戦士化", "Berserk"));
         rpi.info = format("%s%d+d%d", KWD_DURATION, 25, 25);
         rpi.text = _("狂戦士化し、恐怖を除去する。防御力が少し低下する。", "Gives a bonus to hit and HP, immunity to fear for a while. But decreases AC.");
@@ -192,40 +192,40 @@ void select_mutation_racial(player_type *player_ptr, rc_type *rc_ptr)
         rpi.cost = 8;
         rpi.stat = A_STR;
         rpi.fail = 14;
-        rc_ptr->add_power(rpi, enum2i(MUTA::BERSERK));
+        rc_ptr->add_power(rpi, enum2i(PlayerMutationType::BERSERK));
     }
 
-    if (player_ptr->muta.has(MUTA::POLYMORPH)) {
+    if (player_ptr->muta.has(PlayerMutationType::POLYMORPH)) {
         rpi = rpi_type(_("変身", "Polymorph"));
         rpi.text = _("別の種族に変身する。", "Morphs you to another race.");
         rpi.min_level = 18;
         rpi.cost = 20;
         rpi.stat = A_CON;
         rpi.fail = 18;
-        rc_ptr->add_power(rpi, enum2i(MUTA::POLYMORPH));
+        rc_ptr->add_power(rpi, enum2i(PlayerMutationType::POLYMORPH));
     }
 
-    if (player_ptr->muta.has(MUTA::MIDAS_TCH)) {
+    if (player_ptr->muta.has(PlayerMutationType::MIDAS_TCH)) {
         rpi = rpi_type(_("ミダスの手", "Midas Touch"));
         rpi.text = _("アイテム1つをお金に変える。", "Turns an item into 1/3 of its value in gold.");
         rpi.min_level = 10;
         rpi.cost = 5;
         rpi.stat = A_INT;
         rpi.fail = 12;
-        rc_ptr->add_power(rpi, enum2i(MUTA::MIDAS_TCH));
+        rc_ptr->add_power(rpi, enum2i(PlayerMutationType::MIDAS_TCH));
     }
 
-    if (player_ptr->muta.has(MUTA::GROW_MOLD)) {
+    if (player_ptr->muta.has(PlayerMutationType::GROW_MOLD)) {
         rpi = rpi_type(_("カビ発生", "Grow Mold"));
         rpi.text = _("モルドを召喚する。", "Summons molds.");
         rpi.min_level = 1;
         rpi.cost = 6;
         rpi.stat = A_CON;
         rpi.fail = 14;
-        rc_ptr->add_power(rpi, enum2i(MUTA::GROW_MOLD));
+        rc_ptr->add_power(rpi, enum2i(PlayerMutationType::GROW_MOLD));
     }
 
-    if (player_ptr->muta.has(MUTA::RESIST)) {
+    if (player_ptr->muta.has(PlayerMutationType::RESIST)) {
         rpi = rpi_type(_("エレメント耐性", "Resist Elements"));
         rpi.info = format("%s%d+d%d", KWD_DURATION, 20, 20);
         rpi.text = _("1つ以上の元素の一時耐性を得る。", "Gains one or more resitances for elements.");
@@ -233,10 +233,10 @@ void select_mutation_racial(player_type *player_ptr, rc_type *rc_ptr)
         rpi.cost = 12;
         rpi.stat = A_CON;
         rpi.fail = 12;
-        rc_ptr->add_power(rpi, enum2i(MUTA::RESIST));
+        rc_ptr->add_power(rpi, enum2i(PlayerMutationType::RESIST));
     }
 
-    if (player_ptr->muta.has(MUTA::EARTHQUAKE)) {
+    if (player_ptr->muta.has(PlayerMutationType::EARTHQUAKE)) {
         rpi = rpi_type(_("地震", "Earthquake"));
         rpi.info = format("%s%d", KWD_SPHERE, 10);
         rpi.text = _("周囲のダンジョンを揺らし、壁と床をランダムに入れ変える。", "Shakes dungeon structure, and results in random swapping of floors and walls.");
@@ -244,10 +244,10 @@ void select_mutation_racial(player_type *player_ptr, rc_type *rc_ptr)
         rpi.cost = 12;
         rpi.stat = A_STR;
         rpi.fail = 16;
-        rc_ptr->add_power(rpi, enum2i(MUTA::EARTHQUAKE));
+        rc_ptr->add_power(rpi, enum2i(PlayerMutationType::EARTHQUAKE));
     }
 
-    if (player_ptr->muta.has(MUTA::EAT_MAGIC)) {
+    if (player_ptr->muta.has(PlayerMutationType::EAT_MAGIC)) {
         rpi = rpi_type(_("魔力食い", "Eat Magic"));
         rpi.info = format("%s%d", KWD_POWER, rc_ptr->lvl * 2);
         rpi.text = _("魔法道具から魔力を吸収してMPを回復する。", "Absorbs mana from a magic device to heal your SP.");
@@ -255,30 +255,30 @@ void select_mutation_racial(player_type *player_ptr, rc_type *rc_ptr)
         rpi.cost = 1;
         rpi.stat = A_WIS;
         rpi.fail = 15;
-        rc_ptr->add_power(rpi, enum2i(MUTA::EAT_MAGIC));
+        rc_ptr->add_power(rpi, enum2i(PlayerMutationType::EAT_MAGIC));
     }
 
-    if (player_ptr->muta.has(MUTA::WEIGH_MAG)) {
+    if (player_ptr->muta.has(PlayerMutationType::WEIGH_MAG)) {
         rpi = rpi_type(_("魔力感知", "Weigh Magic"));
         rpi.text = _("現在得ている一時的な魔法の能力を知る。", "Reports all temporary magical abilities.");
         rpi.min_level = 6;
         rpi.cost = 6;
         rpi.stat = A_INT;
         rpi.fail = 10;
-        rc_ptr->add_power(rpi, enum2i(MUTA::WEIGH_MAG));
+        rc_ptr->add_power(rpi, enum2i(PlayerMutationType::WEIGH_MAG));
     }
 
-    if (player_ptr->muta.has(MUTA::STERILITY)) {
+    if (player_ptr->muta.has(PlayerMutationType::STERILITY)) {
         rpi = rpi_type(_("増殖阻止", "Sterilize"));
         rpi.text = _("この階の増殖するモンスターが増殖できなくなる。", "Prevents any breeders on current level from breeding.");
         rpi.min_level = 12;
         rpi.cost = 23;
         rpi.stat = A_CHR;
         rpi.fail = 15;
-        rc_ptr->add_power(rpi, enum2i(MUTA::STERILITY));
+        rc_ptr->add_power(rpi, enum2i(PlayerMutationType::STERILITY));
     }
 
-    if (player_ptr->muta.has(MUTA::HIT_AND_AWAY)) {
+    if (player_ptr->muta.has(PlayerMutationType::HIT_AND_AWAY)) {
         rpi = rpi_type(_("ヒット&アウェイ", "Panic Hit"));
         rpi.info = format("%s%d", KWD_SPHERE, 30);
         rpi.text = _("対象のモンスターを攻撃したあと短距離テレポートする。", "Attacks a monster then tereports you a short range.");
@@ -286,10 +286,10 @@ void select_mutation_racial(player_type *player_ptr, rc_type *rc_ptr)
         rpi.cost = 12;
         rpi.stat = A_DEX;
         rpi.fail = 14;
-        rc_ptr->add_power(rpi, enum2i(MUTA::HIT_AND_AWAY));
+        rc_ptr->add_power(rpi, enum2i(PlayerMutationType::HIT_AND_AWAY));
     }
 
-    if (player_ptr->muta.has(MUTA::DAZZLE)) {
+    if (player_ptr->muta.has(PlayerMutationType::DAZZLE)) {
         rpi = rpi_type(_("眩惑", "Dazzle"));
         rpi.info = format("%s%d", KWD_POWER, rc_ptr->lvl * 4);
         rpi.text = _("周辺のモンスターを混乱・朦朧・恐怖させようとする。抵抗されると無効。",
@@ -298,10 +298,10 @@ void select_mutation_racial(player_type *player_ptr, rc_type *rc_ptr)
         rpi.cost = 15;
         rpi.stat = A_CHR;
         rpi.fail = 8;
-        rc_ptr->add_power(rpi, enum2i(MUTA::DAZZLE));
+        rc_ptr->add_power(rpi, enum2i(PlayerMutationType::DAZZLE));
     }
 
-    if (player_ptr->muta.has(MUTA::LASER_EYE)) {
+    if (player_ptr->muta.has(PlayerMutationType::LASER_EYE)) {
         rpi = rpi_type(_("レーザー・アイ", "Laser Eye"));
         rpi.info = format("%s%d", KWD_DAM, rc_ptr->lvl * 2);
         rpi.text = _("閃光のビームを放つ。", "Fires a beam of light.");
@@ -309,10 +309,10 @@ void select_mutation_racial(player_type *player_ptr, rc_type *rc_ptr)
         rpi.cost = 10;
         rpi.stat = A_WIS;
         rpi.fail = 9;
-        rc_ptr->add_power(rpi, enum2i(MUTA::LASER_EYE));
+        rc_ptr->add_power(rpi, enum2i(PlayerMutationType::LASER_EYE));
     }
 
-    if (player_ptr->muta.has(MUTA::RECALL)) {
+    if (player_ptr->muta.has(PlayerMutationType::RECALL)) {
         rpi = rpi_type(_("帰還", "Recall"));
         rpi.text = _("地上にいるときはダンジョンの最深階へ、ダンジョンにいるときは地上へと移動する。",
             "Recalls player from dungeon to town or from town to the deepest level of dungeon.");
@@ -320,10 +320,10 @@ void select_mutation_racial(player_type *player_ptr, rc_type *rc_ptr)
         rpi.cost = 50;
         rpi.stat = A_INT;
         rpi.fail = 16;
-        rc_ptr->add_power(rpi, enum2i(MUTA::RECALL));
+        rc_ptr->add_power(rpi, enum2i(PlayerMutationType::RECALL));
     }
 
-    if (player_ptr->muta.has(MUTA::BANISH)) {
+    if (player_ptr->muta.has(PlayerMutationType::BANISH)) {
         rpi = rpi_type(_("邪悪消滅", "Banish Evil"));
         rpi.info = format("%s%d", KWD_POWER, 50 + rc_ptr->lvl);
         rpi.text = _("邪悪なモンスター1体を階から消滅させる。", "Erase a evil monster from current level.");
@@ -331,10 +331,10 @@ void select_mutation_racial(player_type *player_ptr, rc_type *rc_ptr)
         rpi.cost = 25;
         rpi.stat = A_WIS;
         rpi.fail = 18;
-        rc_ptr->add_power(rpi, enum2i(MUTA::BANISH));
+        rc_ptr->add_power(rpi, enum2i(PlayerMutationType::BANISH));
     }
 
-    if (player_ptr->muta.has(MUTA::COLD_TOUCH)) {
+    if (player_ptr->muta.has(PlayerMutationType::COLD_TOUCH)) {
         rpi = rpi_type(_("凍結の手", "Cold Touch"));
         rpi.info = format("%s%d", KWD_DAM, rc_ptr->lvl * 2);
         rpi.text = _("冷気のビームを放つ。", "Fires a beam of cold.");
@@ -342,16 +342,16 @@ void select_mutation_racial(player_type *player_ptr, rc_type *rc_ptr)
         rpi.cost = 2;
         rpi.stat = A_CON;
         rpi.fail = 11;
-        rc_ptr->add_power(rpi, enum2i(MUTA::COLD_TOUCH));
+        rc_ptr->add_power(rpi, enum2i(PlayerMutationType::COLD_TOUCH));
     }
 
-    if (player_ptr->muta.has(MUTA::LAUNCHER)) {
+    if (player_ptr->muta.has(PlayerMutationType::LAUNCHER)) {
         rpi = rpi_type(_("アイテム投げ", "Throw Object"));
         rpi.text = _("強力な威力で物を投げる。", "Throws an object strongly.");
         rpi.min_level = 1;
         rpi.cost = rc_ptr->lvl;
         rpi.stat = A_STR;
         rpi.fail = 6;
-        rc_ptr->add_power(rpi, enum2i(MUTA::LAUNCHER));
+        rc_ptr->add_power(rpi, enum2i(PlayerMutationType::LAUNCHER));
     }
 }
index 9ca660d..3216b3c 100644 (file)
@@ -16,7 +16,7 @@ void rc_type::add_power(rpi_type& rpi, int number)
     this->power_desc.push_back(std::move(rpi));
 }
 
-void rc_type::add_power(rpi_type &rpi, MUTA flag)
+void rc_type::add_power(rpi_type &rpi, PlayerMutationType flag)
 {
     add_power(rpi, enum2i(flag));
 }
index 0420115..3e9d9d7 100644 (file)
@@ -76,7 +76,7 @@ struct rc_type {
      * @param rpi レイシャル/クラスパワー定義(参照渡し)
      * @param number 突然変異ID
      */
-    void add_power(rpi_type &rpi, MUTA flag);
+    void add_power(rpi_type &rpi, PlayerMutationType flag);
 
     /*!
      * @brief レイシャル/クラスパワー数を返す
index 3553fc7..1ac6ddf 100644 (file)
@@ -512,7 +512,7 @@ void teleport_away_followable(player_type *player_ptr, MONSTER_IDX m_idx)
         return;
 
     bool follow = false;
-    if (player_ptr->muta.has(MUTA::VTELEPORT) || (player_ptr->pclass == PlayerClassType::IMITATOR))
+    if (player_ptr->muta.has(PlayerMutationType::VTELEPORT) || (player_ptr->pclass == PlayerClassType::IMITATOR))
         follow = true;
     else {
         object_type *o_ptr;
index 08885bd..a52e252 100644 (file)
@@ -151,7 +151,7 @@ public:
 
     int16_t chaos_patron{};
 
-    EnumClassFlagGroup<MUTA> muta{}; /*!< 突然変異 / mutations */
+    EnumClassFlagGroup<PlayerMutationType> muta{}; /*!< 突然変異 / mutations */
 
     int16_t virtues[8]{};
     int16_t vir_types[8]{};
index 071b03a..607e1ad 100644 (file)
@@ -228,9 +228,9 @@ static int compensation_stat_by_mutation(player_type *player_ptr, int stat)
 {
     int compensation = 0;
     if (stat == A_STR) {
-        if (player_ptr->muta.has(MUTA::HYPER_STR))
+        if (player_ptr->muta.has(PlayerMutationType::HYPER_STR))
             compensation += 4;
-        if (player_ptr->muta.has(MUTA::PUNY))
+        if (player_ptr->muta.has(PlayerMutationType::PUNY))
             compensation -= 4;
         if (player_ptr->tsuyoshi)
             compensation += 4;
@@ -238,31 +238,31 @@ static int compensation_stat_by_mutation(player_type *player_ptr, int stat)
     }
 
     if (stat == A_WIS || stat == A_INT) {
-        if (player_ptr->muta.has(MUTA::HYPER_INT))
+        if (player_ptr->muta.has(PlayerMutationType::HYPER_INT))
             compensation += 4;
-        if (player_ptr->muta.has(MUTA::MORONIC))
+        if (player_ptr->muta.has(PlayerMutationType::MORONIC))
             compensation -= 4;
         return compensation;
     }
 
     if (stat == A_DEX) {
-        if (player_ptr->muta.has(MUTA::IRON_SKIN))
+        if (player_ptr->muta.has(PlayerMutationType::IRON_SKIN))
             compensation -= 1;
-        if (player_ptr->muta.has(MUTA::LIMBER))
+        if (player_ptr->muta.has(PlayerMutationType::LIMBER))
             compensation += 3;
-        if (player_ptr->muta.has(MUTA::ARTHRITIS))
+        if (player_ptr->muta.has(PlayerMutationType::ARTHRITIS))
             compensation -= 3;
         return compensation;
     }
 
     if (stat == A_CON) {
-        if (player_ptr->muta.has(MUTA::RESILIENT))
+        if (player_ptr->muta.has(PlayerMutationType::RESILIENT))
             compensation += 4;
-        if (player_ptr->muta.has(MUTA::XTRA_FAT))
+        if (player_ptr->muta.has(PlayerMutationType::XTRA_FAT))
             compensation += 2;
-        if (player_ptr->muta.has(MUTA::ALBINO))
+        if (player_ptr->muta.has(PlayerMutationType::ALBINO))
             compensation -= 4;
-        if (player_ptr->muta.has(MUTA::FLESH_ROT))
+        if (player_ptr->muta.has(PlayerMutationType::FLESH_ROT))
             compensation -= 2;
         if (player_ptr->tsuyoshi)
             compensation += 4;
@@ -270,17 +270,17 @@ static int compensation_stat_by_mutation(player_type *player_ptr, int stat)
     }
 
     if (stat == A_CHR) {
-        if (player_ptr->muta.has(MUTA::SILLY_VOI))
+        if (player_ptr->muta.has(PlayerMutationType::SILLY_VOI))
             compensation -= 4;
-        if (player_ptr->muta.has(MUTA::BLANK_FAC))
+        if (player_ptr->muta.has(PlayerMutationType::BLANK_FAC))
             compensation -= 1;
-        if (player_ptr->muta.has(MUTA::FLESH_ROT))
+        if (player_ptr->muta.has(PlayerMutationType::FLESH_ROT))
             compensation -= 1;
-        if (player_ptr->muta.has(MUTA::SCALES))
+        if (player_ptr->muta.has(PlayerMutationType::SCALES))
             compensation -= 1;
-        if (player_ptr->muta.has(MUTA::WART_SKIN))
+        if (player_ptr->muta.has(PlayerMutationType::WART_SKIN))
             compensation -= 2;
-        if (player_ptr->muta.has(MUTA::ILL_NORM))
+        if (player_ptr->muta.has(PlayerMutationType::ILL_NORM))
             compensation = 0;
         return compensation;
     }
index 0ea6dbd..e0e6af3 100644 (file)
@@ -312,7 +312,7 @@ void display_player(player_type *player_ptr, int mode)
     display_player_basic_info(player_ptr);
     display_magic_realms(player_ptr);
 
-    if ((player_ptr->pclass == PlayerClassType::CHAOS_WARRIOR) || (player_ptr->muta.has(MUTA::CHAOS_GIFT)))
+    if ((player_ptr->pclass == PlayerClassType::CHAOS_WARRIOR) || (player_ptr->muta.has(PlayerMutationType::CHAOS_GIFT)))
         display_player_one_line(ENTRY_PATRON, patron_list[player_ptr->chaos_patron].name.c_str(), TERM_L_BLUE);
 
     display_phisique(player_ptr);
index c90a26d..df3364e 100644 (file)
@@ -300,15 +300,15 @@ static void display_first_page(player_type *player_ptr, int xthb, int *damage, i
     int xthn = player_ptr->skill_thn + (player_ptr->to_h_m * BTH_PLUS_ADJ);
 
     int muta_att = 0;
-    if (player_ptr->muta.has(MUTA::HORNS))
+    if (player_ptr->muta.has(PlayerMutationType::HORNS))
         muta_att++;
-    if (player_ptr->muta.has(MUTA::SCOR_TAIL))
+    if (player_ptr->muta.has(PlayerMutationType::SCOR_TAIL))
         muta_att++;
-    if (player_ptr->muta.has(MUTA::BEAK))
+    if (player_ptr->muta.has(PlayerMutationType::BEAK))
         muta_att++;
-    if (player_ptr->muta.has(MUTA::TRUNK))
+    if (player_ptr->muta.has(PlayerMutationType::TRUNK))
         muta_att++;
-    if (player_ptr->muta.has(MUTA::TENTACLES))
+    if (player_ptr->muta.has(PlayerMutationType::TENTACLES))
         muta_att++;
 
     int blows1 = can_attack_with_main_hand(player_ptr) ? player_ptr->num_blow[0] : 0;