OSDN Git Service

[Refactor] RIDING を新定義に合わせた
authorSlimebreath6078 <slimebreath6078@yahoo.co.jp>
Sun, 28 Jan 2024 10:20:05 +0000 (19:20 +0900)
committerSlimebreath6078 <slimebreath6078@yahoo.co.jp>
Sat, 3 Feb 2024 09:11:53 +0000 (18:11 +0900)
src/cmd-action/cmd-pet.cpp
src/cmd-io/cmd-lore.cpp
src/knowledge/knowledge-monsters.cpp
src/monster/monster-list.cpp
src/monster/monster-processor.cpp
src/pet/pet-util.cpp
src/view/display-lore-status.cpp
src/wizard/wizard-spoiler.cpp

index be4f18b..79a0350 100644 (file)
@@ -247,7 +247,7 @@ bool do_cmd_riding(PlayerType *player_ptr, bool force)
             msg_print(_("そのモンスターはペットではありません。", "That monster is not a pet."));
             return false;
         }
-        if (!(m_ptr->get_monrace().flags7 & RF7_RIDING)) {
+        if (m_ptr->get_monrace().misc_flags.has_not(MonsterMiscType::RIDING)) {
             msg_print(_("そのモンスターには乗れなさそうだ。", "This monster doesn't seem suitable for riding."));
             return false;
         }
index 4f5e46c..3d5ac7c 100644 (file)
@@ -103,7 +103,7 @@ void do_cmd_query_symbol(PlayerType *player_ptr)
             continue;
         }
 
-        if (ride && !(monrace.flags7 & (RF7_RIDING))) {
+        if (ride && monrace.misc_flags.has_not(MonsterMiscType::RIDING)) {
             continue;
         }
 
index bcde013..9aea320 100644 (file)
@@ -69,7 +69,7 @@ static std::vector<MonsterRaceId> collect_monsters(PlayerType *player_ptr, IDX g
                 continue;
             }
         } else if (grp_riding) {
-            if (none_bits(monrace.flags7, RF7_RIDING)) {
+            if (monrace.misc_flags.has_not(MonsterMiscType::RIDING)) {
                 continue;
             }
         } else if (grp_wanted) {
index b4c3c6e..3078ed8 100644 (file)
@@ -380,7 +380,7 @@ void choose_new_monster(PlayerType *player_ptr, MONSTER_IDX m_idx, bool born, Mo
 
     if (m_idx == player_ptr->riding) {
         msg_format(_("突然%sが変身した。", "Suddenly, %s transforms!"), old_m_name.data());
-        if (!(r_ptr->flags7 & RF7_RIDING)) {
+        if (r_ptr->misc_flags.has_not(MonsterMiscType::RIDING)) {
             if (process_fall_off_horse(player_ptr, 0, true)) {
                 const auto m_name = monster_desc(player_ptr, m_ptr, 0);
                 msg_print(_("地面に落とされた。", format("You have fallen from %s.", m_name.data())));
index a89c479..83c6afe 100644 (file)
@@ -253,7 +253,7 @@ void decide_drop_from_monster(PlayerType *player_ptr, MONSTER_IDX m_idx, bool is
 {
     auto *m_ptr = &player_ptr->current_floor_ptr->m_list[m_idx];
     auto *r_ptr = &m_ptr->get_monrace();
-    if (!is_riding_mon || ((r_ptr->flags7 & RF7_RIDING) != 0)) {
+    if (!is_riding_mon || r_ptr->misc_flags.has(MonsterMiscType::RIDING)) {
         return;
     }
 
index 7cfab81..8e331cc 100644 (file)
@@ -95,7 +95,7 @@ PERCENTAGE calculate_upkeep(PlayerType *player_ptr)
 
         if (player_ptr->riding == m_idx) {
             total_friend_levels += (r_ptr->level + 5) * 2;
-        } else if (!has_a_unique && any_bits(m_ptr->get_monrace().flags7, RF7_RIDING)) {
+        } else if (!has_a_unique && m_ptr->get_monrace().misc_flags.has(MonsterMiscType::RIDING)) {
             total_friend_levels += (r_ptr->level + 5) * 7 / 2;
         } else {
             total_friend_levels += (r_ptr->level + 5) * 10;
index effaa84..390e558 100644 (file)
@@ -160,7 +160,7 @@ void display_monster_constitutions(lore_type *lore_ptr)
         hook_c_roff(TERM_L_WHITE, format(_("%s^は素早く体力を回復する。", "%s^ regenerates quickly.  "), Who::who(lore_ptr->msex)));
     }
 
-    if (lore_ptr->flags7 & RF7_RIDING) {
+    if (lore_ptr->misc_flags.has(MonsterMiscType::RIDING)) {
         hook_c_roff(TERM_SLATE, format(_("%s^に乗ることができる。", "%s^ is suitable for riding.  "), Who::who(lore_ptr->msex)));
     }
 }
index 11c81aa..2af7ae1 100644 (file)
@@ -131,7 +131,7 @@ static SpoilerOutputResultType spoil_mon_evol()
 
 static SpoilerOutputResultType spoil_categorized_mon_desc()
 {
-    auto status = spoil_mon_desc("mon-desc-ridable.txt", [](const MonsterRaceInfo *r_ptr) { return any_bits(r_ptr->flags7, RF7_RIDING); });
+    auto status = spoil_mon_desc("mon-desc-ridable.txt", [](const MonsterRaceInfo *r_ptr) { return r_ptr->misc_flags.has(MonsterMiscType::RIDING); });
     if (status == SpoilerOutputResultType::SUCCESSFUL) {
         status = spoil_mon_desc("mon-desc-wildonly.txt", [](const MonsterRaceInfo *r_ptr) { return r_ptr->wilderness_flags.has(MonsterWildernessType::WILD_ONLY); });
     }