OSDN Git Service

[Refactor] #2745 今はkindではなくbaseitemと呼ぶことになっているので、lookup_kind() をlookup_baseitem_id...
authorHourier <66951241+Hourier@users.noreply.github.com>
Sun, 13 Nov 2022 05:44:16 +0000 (14:44 +0900)
committerHourier <66951241+Hourier@users.noreply.github.com>
Sun, 13 Nov 2022 09:06:48 +0000 (18:06 +0900)
32 files changed:
src/artifact/fixed-art-generator.cpp
src/artifact/random-art-generator.cpp
src/birth/inventory-initializer.cpp
src/cmd-item/cmd-eat.cpp
src/cmd-item/cmd-magiceat.cpp
src/effect/effect-monster.cpp
src/floor/fixed-map-generator.cpp
src/info-reader/general-parser.cpp
src/io-dump/special-class-dump.cpp
src/knowledge/knowledge-items.cpp
src/knowledge/knowledge-quests.cpp
src/load/old/load-v1-5-0.cpp
src/market/bounty.cpp
src/market/building-craft-fix.cpp
src/market/building-initializer.cpp
src/mind/mind-archer.cpp
src/mind/mind-chaos-warrior.cpp
src/mind/mind-hobbit.cpp
src/mind/mind-ninja.cpp
src/monster-floor/monster-death.cpp
src/monster-floor/special-death-switcher.cpp
src/object-enchant/protector/apply-magic-soft-armor.cpp
src/object/object-kind-hook.cpp
src/object/object-kind-hook.h
src/realm/realm-nature.cpp
src/spell/spells-object.cpp
src/spell/spells-status.cpp
src/store/rumor.cpp
src/wizard/fixed-artifacts-spoiler.cpp
src/wizard/wizard-item-modifier.cpp
src/wizard/wizard-special-process.cpp
src/wizard/wizard-spoiler.cpp

index 07e5cd6..dcd4adc 100644 (file)
@@ -259,7 +259,7 @@ bool create_named_art(PlayerType *player_ptr, FixedArtifactId a_idx, POSITION y,
         return false;
     }
 
-    auto i = lookup_kind({ a_ref.tval, a_ref.sval });
+    auto i = lookup_baseitem_id({ a_ref.tval, a_ref.sval });
     if (i == 0) {
         return true;
     }
@@ -403,7 +403,7 @@ bool make_artifact_special(PlayerType *player_ptr, ObjectType *o_ptr)
          * @note INSTA_ART型固定アーティファクトのベースアイテムもチェック対象とする。
          * ベースアイテムの生成階層が足りない場合1/(不足階層*5)を満たさないと除外される。
          */
-        const auto k_idx = lookup_kind({ a_ref.tval, a_ref.sval });
+        const auto k_idx = lookup_baseitem_id({ a_ref.tval, a_ref.sval });
         if (baseitems_info[k_idx].level > floor_ptr->object_level) {
             int d = (baseitems_info[k_idx].level - floor_ptr->object_level) * 5;
             if (!one_in_(d)) {
index 72d84c1..c3b08cb 100644 (file)
@@ -42,7 +42,7 @@
 
 static bool weakening_artifact(ObjectType *o_ptr)
 {
-    const auto k_idx = lookup_kind({ o_ptr->tval, o_ptr->sval });
+    const auto k_idx = lookup_baseitem_id({ o_ptr->tval, o_ptr->sval });
     auto *k_ptr = &baseitems_info[k_idx];
     auto flgs = object_flags(o_ptr);
 
index 1dad065..c2c4142 100644 (file)
@@ -102,7 +102,7 @@ static void decide_initial_items(PlayerType *player_ptr, ObjectType *q_ptr)
         /* Demon can drain vitality from humanoid corpse */
         get_mon_num_prep(player_ptr, monster_hook_human, nullptr);
         for (int i = rand_range(3, 4); i > 0; i--) {
-            q_ptr->prep(lookup_kind({ ItemKindType::CORPSE, SV_CORPSE }));
+            q_ptr->prep(lookup_baseitem_id({ ItemKindType::CORPSE, SV_CORPSE }));
             q_ptr->pval = enum2i(get_mon_num(player_ptr, 0, 2, 0));
             if (q_ptr->pval) {
                 q_ptr->number = 1;
@@ -116,26 +116,26 @@ static void decide_initial_items(PlayerType *player_ptr, ObjectType *q_ptr)
     case PlayerRaceType::ZOMBIE:
     case PlayerRaceType::SPECTRE:
         /* Staff (of Nothing) */
-        q_ptr->prep(lookup_kind({ ItemKindType::STAFF, SV_STAFF_NOTHING }));
+        q_ptr->prep(lookup_baseitem_id({ ItemKindType::STAFF, SV_STAFF_NOTHING }));
         q_ptr->number = 1;
         add_outfit(player_ptr, q_ptr);
         break;
     case PlayerRaceType::ENT:
         /* Potions of Water */
-        q_ptr->prep(lookup_kind({ ItemKindType::POTION, SV_POTION_WATER }));
+        q_ptr->prep(lookup_baseitem_id({ ItemKindType::POTION, SV_POTION_WATER }));
         q_ptr->number = (ITEM_NUMBER)rand_range(15, 23);
         add_outfit(player_ptr, q_ptr);
         break;
     case PlayerRaceType::ANDROID:
         /* Flasks of oil */
-        q_ptr->prep(lookup_kind({ ItemKindType::FLASK }));
+        q_ptr->prep(lookup_baseitem_id({ ItemKindType::FLASK }));
         ItemMagicApplier(player_ptr, q_ptr, 1, AM_NO_FIXED_ART).execute();
         q_ptr->number = (ITEM_NUMBER)rand_range(7, 12);
         add_outfit(player_ptr, q_ptr);
         break;
     default:
         /* Food rations */
-        q_ptr->prep(lookup_kind({ ItemKindType::FOOD, SV_FOOD_RATION }));
+        q_ptr->prep(lookup_baseitem_id({ ItemKindType::FOOD, SV_FOOD_RATION }));
         q_ptr->number = (ITEM_NUMBER)rand_range(3, 7);
         add_outfit(player_ptr, q_ptr);
     }
@@ -157,11 +157,11 @@ void player_outfit(PlayerType *player_ptr)
     PlayerClass pc(player_ptr);
     PlayerRace pr(player_ptr);
     if (pr.equals(PlayerRaceType::VAMPIRE) && !pc.equals(PlayerClassType::NINJA)) {
-        q_ptr->prep(lookup_kind({ ItemKindType::SCROLL, SV_SCROLL_DARKNESS }));
+        q_ptr->prep(lookup_baseitem_id({ ItemKindType::SCROLL, SV_SCROLL_DARKNESS }));
         q_ptr->number = (ITEM_NUMBER)rand_range(2, 5);
         add_outfit(player_ptr, q_ptr);
     } else if (!pc.equals(PlayerClassType::NINJA)) {
-        q_ptr->prep(lookup_kind({ ItemKindType::LITE, SV_LITE_TORCH }));
+        q_ptr->prep(lookup_baseitem_id({ ItemKindType::LITE, SV_LITE_TORCH }));
         q_ptr->number = (ITEM_NUMBER)rand_range(3, 7);
         q_ptr->fuel = rand_range(3, 7) * 500;
 
@@ -170,72 +170,72 @@ void player_outfit(PlayerType *player_ptr)
 
     q_ptr = &forge;
     if (pr.equals(PlayerRaceType::MERFOLK)) {
-        q_ptr->prep(lookup_kind({ ItemKindType::RING, SV_RING_LEVITATION_FALL }));
+        q_ptr->prep(lookup_baseitem_id({ ItemKindType::RING, SV_RING_LEVITATION_FALL }));
         q_ptr->number = 1;
         add_outfit(player_ptr, q_ptr);
     }
 
     if (pc.equals(PlayerClassType::RANGER) || pc.equals(PlayerClassType::CAVALRY)) {
-        q_ptr->prep(lookup_kind({ ItemKindType::ARROW, SV_AMMO_NORMAL }));
+        q_ptr->prep(lookup_baseitem_id({ ItemKindType::ARROW, SV_AMMO_NORMAL }));
         q_ptr->number = (byte)rand_range(15, 20);
         add_outfit(player_ptr, q_ptr);
     }
 
     if (pc.equals(PlayerClassType::RANGER)) {
-        q_ptr->prep(lookup_kind({ ItemKindType::BOW, SV_SHORT_BOW }));
+        q_ptr->prep(lookup_baseitem_id({ ItemKindType::BOW, SV_SHORT_BOW }));
         add_outfit(player_ptr, q_ptr);
     } else if (pc.equals(PlayerClassType::ARCHER)) {
-        q_ptr->prep(lookup_kind({ ItemKindType::ARROW, SV_AMMO_NORMAL }));
+        q_ptr->prep(lookup_baseitem_id({ ItemKindType::ARROW, SV_AMMO_NORMAL }));
         q_ptr->number = (ITEM_NUMBER)rand_range(15, 20);
         add_outfit(player_ptr, q_ptr);
     } else if (pc.equals(PlayerClassType::HIGH_MAGE) || pc.equals(PlayerClassType::ELEMENTALIST)) {
-        q_ptr->prep(lookup_kind({ ItemKindType::WAND, SV_WAND_MAGIC_MISSILE }));
+        q_ptr->prep(lookup_baseitem_id({ ItemKindType::WAND, SV_WAND_MAGIC_MISSILE }));
         q_ptr->number = 1;
         q_ptr->pval = (PARAMETER_VALUE)rand_range(25, 30);
         add_outfit(player_ptr, q_ptr);
     } else if (pc.equals(PlayerClassType::SORCERER)) {
         for (auto book_tval = enum2i(ItemKindType::LIFE_BOOK); book_tval <= enum2i(ItemKindType::LIFE_BOOK) + MAX_MAGIC - 1; book_tval++) {
-            q_ptr->prep(lookup_kind({ i2enum<ItemKindType>(book_tval), 0 }));
+            q_ptr->prep(lookup_baseitem_id({ i2enum<ItemKindType>(book_tval), 0 }));
             q_ptr->number = 1;
             add_outfit(player_ptr, q_ptr);
         }
     } else if (pc.equals(PlayerClassType::TOURIST)) {
         if (player_ptr->ppersonality != PERSONALITY_SEXY) {
-            q_ptr->prep(lookup_kind({ ItemKindType::SHOT, SV_AMMO_LIGHT }));
+            q_ptr->prep(lookup_baseitem_id({ ItemKindType::SHOT, SV_AMMO_LIGHT }));
             q_ptr->number = rand_range(15, 20);
             add_outfit(player_ptr, q_ptr);
         }
 
-        q_ptr->prep(lookup_kind({ ItemKindType::FOOD, SV_FOOD_BISCUIT }));
+        q_ptr->prep(lookup_baseitem_id({ ItemKindType::FOOD, SV_FOOD_BISCUIT }));
         q_ptr->number = rand_range(2, 4);
 
         add_outfit(player_ptr, q_ptr);
 
-        q_ptr->prep(lookup_kind({ ItemKindType::FOOD, SV_FOOD_WAYBREAD }));
+        q_ptr->prep(lookup_baseitem_id({ ItemKindType::FOOD, SV_FOOD_WAYBREAD }));
         q_ptr->number = rand_range(2, 4);
 
         add_outfit(player_ptr, q_ptr);
 
-        q_ptr->prep(lookup_kind({ ItemKindType::FOOD, SV_FOOD_JERKY }));
+        q_ptr->prep(lookup_baseitem_id({ ItemKindType::FOOD, SV_FOOD_JERKY }));
         q_ptr->number = rand_range(1, 3);
 
         add_outfit(player_ptr, q_ptr);
 
-        q_ptr->prep(lookup_kind({ ItemKindType::FOOD, SV_FOOD_PINT_OF_ALE }));
+        q_ptr->prep(lookup_baseitem_id({ ItemKindType::FOOD, SV_FOOD_PINT_OF_ALE }));
         q_ptr->number = rand_range(2, 4);
 
         add_outfit(player_ptr, q_ptr);
 
-        q_ptr->prep(lookup_kind({ ItemKindType::FOOD, SV_FOOD_PINT_OF_WINE }));
+        q_ptr->prep(lookup_baseitem_id({ ItemKindType::FOOD, SV_FOOD_PINT_OF_WINE }));
         q_ptr->number = rand_range(2, 4);
 
         add_outfit(player_ptr, q_ptr);
     } else if (pc.equals(PlayerClassType::NINJA)) {
-        q_ptr->prep(lookup_kind({ ItemKindType::SPIKE, 0 }));
+        q_ptr->prep(lookup_baseitem_id({ ItemKindType::SPIKE, 0 }));
         q_ptr->number = rand_range(15, 20);
         add_outfit(player_ptr, q_ptr);
     } else if (pc.equals(PlayerClassType::SNIPER)) {
-        q_ptr->prep(lookup_kind({ ItemKindType::BOLT, SV_AMMO_NORMAL }));
+        q_ptr->prep(lookup_baseitem_id({ ItemKindType::BOLT, SV_AMMO_NORMAL }));
         q_ptr->number = rand_range(15, 20);
         add_outfit(player_ptr, q_ptr);
     }
@@ -269,7 +269,7 @@ void player_outfit(PlayerType *player_ptr)
         }
 
         q_ptr = &forge;
-        q_ptr->prep(lookup_kind({ tv, sv }));
+        q_ptr->prep(lookup_baseitem_id({ tv, sv }));
 
         /* Only assassins get a poisoned weapon */
         if (((tv == ItemKindType::SWORD) || (tv == ItemKindType::HAFTED)) && (pc.equals(PlayerClassType::ROGUE) && (player_ptr->realm1 == REALM_DEATH))) {
@@ -279,5 +279,5 @@ void player_outfit(PlayerType *player_ptr)
         add_outfit(player_ptr, q_ptr);
     }
 
-    baseitems_info[lookup_kind({ ItemKindType::POTION, SV_POTION_WATER })].aware = true;
+    baseitems_info[lookup_baseitem_id({ ItemKindType::POTION, SV_POTION_WATER })].aware = true;
 }
index 499ca8d..cae9645 100644 (file)
@@ -299,7 +299,7 @@ void exe_eat_food(PlayerType *player_ptr, INVENTORY_IDX item)
             auto *q_ptr = &forge;
 
             msg_print(_("食べ物がアゴを素通りして落ちた!", "The food falls through your jaws!"));
-            q_ptr->prep(lookup_kind({ o_ptr->tval, o_ptr->sval }));
+            q_ptr->prep(lookup_baseitem_id({ o_ptr->tval, o_ptr->sval }));
 
             /* Drop the object from heaven */
             (void)drop_near(player_ptr, q_ptr, -1, player_ptr->y, player_ptr->x);
index 0feee44..0811407 100644 (file)
@@ -114,7 +114,7 @@ static std::optional<BaseitemKey> check_magic_eater_spell_repeat(magic_eater_dat
     /* Verify the spell */
     switch (tval) {
     case ItemKindType::ROD:
-        if (item.charge <= baseitems_info[lookup_kind({ ItemKindType::ROD, sval })].pval * (item.count - 1) * EATER_ROD_CHARGE) {
+        if (item.charge <= baseitems_info[lookup_baseitem_id({ ItemKindType::ROD, sval })].pval * (item.count - 1) * EATER_ROD_CHARGE) {
             return BaseitemKey(tval, sval);
         }
         break;
@@ -291,7 +291,7 @@ static std::optional<BaseitemKey> select_magic_eater(PlayerType *player_ptr, boo
                     continue;
                 }
 
-                k_idx = lookup_kind({ tval, ctr });
+                k_idx = lookup_baseitem_id({ tval, ctr });
 
                 if (use_menu) {
                     if (ctr == (menu_line - 1)) {
@@ -471,7 +471,7 @@ static std::optional<BaseitemKey> select_magic_eater(PlayerType *player_ptr, boo
         if (!only_browse) {
             auto &item = item_group[i];
             if (tval == ItemKindType::ROD) {
-                if (item.charge > baseitems_info[lookup_kind({ tval, i })].pval * (item.count - 1) * EATER_ROD_CHARGE) {
+                if (item.charge > baseitems_info[lookup_baseitem_id({ tval, i })].pval * (item.count - 1) * EATER_ROD_CHARGE) {
                     msg_print(_("その魔法はまだ充填している最中だ。", "The magic is still charging."));
                     msg_print(nullptr);
                     continue;
@@ -496,7 +496,7 @@ static std::optional<BaseitemKey> select_magic_eater(PlayerType *player_ptr, boo
             term_erase(7, 21, 255);
             term_erase(7, 20, 255);
 
-            shape_buffer(baseitems_info[lookup_kind({ tval, i })].text.data(), 62, temp, sizeof(temp));
+            shape_buffer(baseitems_info[lookup_baseitem_id({ tval, i })].text.data(), 62, temp, sizeof(temp));
             for (j = 0, line = 21; temp[j]; j += 1 + strlen(&temp[j])) {
                 prt(&temp[j], line, 10);
                 line++;
@@ -556,7 +556,7 @@ bool do_cmd_magic_eater(PlayerType *player_ptr, bool only_browse, bool powerful)
     }
     auto &baseitem = result.value();
 
-    auto k_idx = lookup_kind(baseitem);
+    auto k_idx = lookup_baseitem_id(baseitem);
     auto level = (baseitem.tval() == ItemKindType::ROD ? baseitems_info[k_idx].level * 5 / 6 - 5 : baseitems_info[k_idx].level);
     auto chance = level * 4 / 5 + 20;
     chance -= 3 * (adj_mag_stat[player_ptr->stat_index[mp_ptr->spell_stat]] - 1);
index f710222..31393d3 100644 (file)
@@ -672,7 +672,7 @@ static void postprocess_by_taking_photo(PlayerType *player_ptr, effect_monster_t
     ObjectType *q_ptr;
     ObjectType forge;
     q_ptr = &forge;
-    q_ptr->prep(lookup_kind({ ItemKindType::STATUE, SV_PHOTO }));
+    q_ptr->prep(lookup_baseitem_id({ ItemKindType::STATUE, SV_PHOTO }));
     q_ptr->pval = em_ptr->photo;
     q_ptr->ident |= (IDENT_FULL_KNOWN);
     (void)drop_near(player_ptr, q_ptr, -1, player_ptr->y, player_ptr->x);
index 07d9b76..46d66e5 100644 (file)
@@ -86,7 +86,7 @@ static void generate_artifact(PlayerType *player_ptr, qtwg_type *qtwg_ptr, const
         return;
     }
 
-    const auto k_idx = lookup_kind({ ItemKindType::SCROLL, SV_SCROLL_ACQUIREMENT });
+    const auto k_idx = lookup_baseitem_id({ ItemKindType::SCROLL, SV_SCROLL_ACQUIREMENT });
     ObjectType forge;
     auto *q_ptr = &forge;
     q_ptr->prep(k_idx);
index ad4bf24..b258f86 100644 (file)
@@ -149,7 +149,7 @@ parse_error_type parse_line_feature(FloorType *floor_ptr, char *buf)
                 if (a_idx != FixedArtifactId::NONE) {
                     const auto &a_ref = artifacts_info.at(a_idx);
                     if (a_ref.gen_flags.has_not(ItemGenerationTraitType::INSTA_ART)) {
-                        letter[index].object = lookup_kind({ a_ref.tval, a_ref.sval });
+                        letter[index].object = lookup_baseitem_id({ a_ref.tval, a_ref.sval });
                     }
                 }
             }
index 82838b1..abdaac4 100644 (file)
@@ -66,7 +66,7 @@ static void dump_magic_eater(PlayerType *player_ptr, FILE *fff)
                 continue;
             }
 
-            auto k_idx = lookup_kind({ tval, i });
+            auto k_idx = lookup_baseitem_id({ tval, i });
             if (!k_idx) {
                 continue;
             }
index 53e1e9d..ff72e0b 100644 (file)
@@ -100,7 +100,7 @@ void do_cmd_knowledge_artifacts(PlayerType *player_ptr)
         const auto &a_ref = artifacts_info.at(a_idx);
         GAME_TEXT base_name[MAX_NLEN];
         strcpy(base_name, _("未知の伝説のアイテム", "Unknown Artifact"));
-        const auto z = lookup_kind({ a_ref.tval, a_ref.sval });
+        const auto z = lookup_baseitem_id({ a_ref.tval, a_ref.sval });
         if (z != 0) {
             ObjectType forge;
             ObjectType *q_ptr;
index 1749f58..28ad28f 100644 (file)
@@ -105,7 +105,7 @@ static void do_cmd_knowledge_quests_current(PlayerType *player_ptr, FILE *fff)
                         const auto &a_ref = artifacts_info.at(q_ref.reward_artifact_idx);
                         ObjectType forge;
                         auto *o_ptr = &forge;
-                        auto k_idx = lookup_kind({ a_ref.tval, a_ref.sval });
+                        auto k_idx = lookup_baseitem_id({ a_ref.tval, a_ref.sval });
                         o_ptr->prep(k_idx);
                         o_ptr->fixed_artifact_idx = q_ref.reward_artifact_idx;
                         o_ptr->ident = IDENT_STORE;
index a478571..05229fe 100644 (file)
@@ -329,7 +329,7 @@ void rd_item_old(ObjectType *o_ptr)
     }
 
     if (h_older_than(0, 4, 10) && (o_ptr->ego_idx == EgoType::TWILIGHT)) {
-        o_ptr->k_idx = lookup_kind({ ItemKindType::SOFT_ARMOR, SV_TWILIGHT_ROBE });
+        o_ptr->k_idx = lookup_baseitem_id({ ItemKindType::SOFT_ARMOR, SV_TWILIGHT_ROBE });
     }
 
     if (h_older_than(0, 4, 9)) {
index 1fa8e08..dc32d87 100644 (file)
@@ -178,7 +178,7 @@ bool exchange_cash(PlayerType *player_ptr)
 
             msg_format(_("これで合計 %d ポイント獲得しました。", "You earned %d point%s total."), num, (num > 1 ? "s" : ""));
 
-            (&forge)->prep(lookup_kind(prize_list[num - 1]));
+            (&forge)->prep(lookup_baseitem_id(prize_list[num - 1]));
             ItemMagicApplier(player_ptr, &forge, player_ptr->current_floor_ptr->object_level, AM_NO_FIXED_ART).execute();
 
             object_aware(player_ptr, &forge);
index e819c73..c183b75 100644 (file)
@@ -176,7 +176,7 @@ static PRICE repair_broken_weapon_aux(PlayerType *player_ptr, PRICE bcost)
         auto tval = (one_in_(5) ? mo_ptr->tval : ItemKindType::SWORD);
         while (true) {
             BaseItemInfo *ck_ptr;
-            k_idx = lookup_kind({ tval });
+            k_idx = lookup_baseitem_id({ tval });
             ck_ptr = &baseitems_info[k_idx];
 
             if (tval == ItemKindType::SWORD) {
index d5c8931..123f209 100644 (file)
@@ -35,12 +35,12 @@ void init_towns(void)
             }
 
             for (const auto &baseitem : store_regular_sale_table.at(sst)) {
-                auto k_idx = lookup_kind(baseitem);
+                auto k_idx = lookup_baseitem_id(baseitem);
                 store_ptr->regular.push_back(k_idx);
             }
 
             for (const auto &baseitem : store_sale_table.at(sst)) {
-                auto k_idx = lookup_kind(baseitem);
+                auto k_idx = lookup_baseitem_id(baseitem);
                 store_ptr->table.push_back(k_idx);
             }
         }
index f626430..72a299d 100644 (file)
@@ -125,7 +125,7 @@ bool create_ammo(PlayerType *player_ptr)
 
         ObjectType forge;
         auto *q_ptr = &forge;
-        q_ptr->prep(lookup_kind({ ItemKindType::SHOT, (OBJECT_SUBTYPE_VALUE)m_bonus(1, player_ptr->lev) + 1 }));
+        q_ptr->prep(lookup_baseitem_id({ ItemKindType::SHOT, (OBJECT_SUBTYPE_VALUE)m_bonus(1, player_ptr->lev) + 1 }));
         q_ptr->number = (byte)rand_range(15, 30);
         object_aware(player_ptr, q_ptr);
         object_known(q_ptr);
@@ -154,7 +154,7 @@ bool create_ammo(PlayerType *player_ptr)
 
         ObjectType forge;
         q_ptr = &forge;
-        q_ptr->prep(lookup_kind({ ItemKindType::ARROW, static_cast<short>(m_bonus(1, player_ptr->lev) + 1) }));
+        q_ptr->prep(lookup_baseitem_id({ ItemKindType::ARROW, static_cast<short>(m_bonus(1, player_ptr->lev) + 1) }));
         q_ptr->number = (byte)rand_range(5, 10);
         object_aware(player_ptr, q_ptr);
         object_known(q_ptr);
@@ -182,7 +182,7 @@ bool create_ammo(PlayerType *player_ptr)
 
         ObjectType forge;
         q_ptr = &forge;
-        q_ptr->prep(lookup_kind({ ItemKindType::BOLT, static_cast<short>(m_bonus(1, player_ptr->lev) + 1) }));
+        q_ptr->prep(lookup_baseitem_id({ ItemKindType::BOLT, static_cast<short>(m_bonus(1, player_ptr->lev) + 1) }));
         q_ptr->number = (byte)rand_range(4, 8);
         object_aware(player_ptr, q_ptr);
         object_known(q_ptr);
index 9d425b6..4480026 100644 (file)
@@ -113,7 +113,7 @@ void acquire_chaos_weapon(PlayerType *player_ptr)
         dummy2 = SV_BLADE_OF_CHAOS;
     }
 
-    q_ptr->prep(lookup_kind({ dummy, dummy2 }));
+    q_ptr->prep(lookup_baseitem_id({ dummy, dummy2 }));
     q_ptr->to_h = 3 + randint1(player_ptr->current_floor_ptr->dun_level) % 10;
     q_ptr->to_d = 3 + randint1(player_ptr->current_floor_ptr->dun_level) % 10;
     one_resistance(q_ptr);
index 1a26b4c..bdb5ca3 100644 (file)
@@ -11,7 +11,7 @@ bool create_ration(PlayerType *player_ptr)
 {
     ObjectType forge;
     auto *q_ptr = &forge;
-    q_ptr->prep(lookup_kind({ ItemKindType::FOOD, SV_FOOD_RATION }));
+    q_ptr->prep(lookup_baseitem_id({ ItemKindType::FOOD, SV_FOOD_RATION }));
     (void)drop_near(player_ptr, q_ptr, -1, player_ptr->y, player_ptr->x);
     msg_print(_("食事を料理して作った。", "You cook some food."));
     return true;
index acd81f7..d08b629 100644 (file)
@@ -112,7 +112,7 @@ bool kawarimi(PlayerType *player_ptr, bool success)
     teleport_player(player_ptr, 10 + randint1(90), TELEPORT_SPONTANEOUS);
     q_ptr->wipe();
     const int sv_wooden_statue = 0;
-    q_ptr->prep(lookup_kind({ ItemKindType::STATUE, sv_wooden_statue }));
+    q_ptr->prep(lookup_baseitem_id({ ItemKindType::STATUE, sv_wooden_statue }));
 
     q_ptr->pval = enum2i(MonsterRaceId::NINJA);
     (void)drop_near(player_ptr, q_ptr, -1, y, x);
index f3d3aab..c8c49be 100644 (file)
@@ -97,7 +97,7 @@ static void on_defeat_arena_monster(PlayerType *player_ptr, monster_death_type *
     if (tval > ItemKindType::NONE) {
         ObjectType forge;
         auto *q_ptr = &forge;
-        q_ptr->prep(lookup_kind(arena.key));
+        q_ptr->prep(lookup_baseitem_id(arena.key));
         ItemMagicApplier(player_ptr, q_ptr, floor_ptr->object_level, AM_NO_FIXED_ART).execute();
         (void)drop_near(player_ptr, q_ptr, -1, md_ptr->md_y, md_ptr->md_x);
     }
@@ -145,7 +145,7 @@ static void drop_corpse(PlayerType *player_ptr, monster_death_type *md_ptr)
 
     ObjectType forge;
     auto *q_ptr = &forge;
-    q_ptr->prep(lookup_kind({ ItemKindType::CORPSE, (corpse ? SV_CORPSE : SV_SKELETON) }));
+    q_ptr->prep(lookup_baseitem_id({ ItemKindType::CORPSE, (corpse ? SV_CORPSE : SV_SKELETON) }));
     ItemMagicApplier(player_ptr, q_ptr, floor_ptr->object_level, AM_NO_FIXED_ART).execute();
     q_ptr->pval = enum2i(md_ptr->m_ptr->r_idx);
     (void)drop_near(player_ptr, q_ptr, -1, md_ptr->md_y, md_ptr->md_x);
@@ -199,7 +199,7 @@ static KIND_OBJECT_IDX drop_dungeon_final_artifact(PlayerType *player_ptr, monst
 {
     const auto &dungeon = dungeons_info[player_ptr->dungeon_idx];
     const auto has_reward = dungeon.final_object > 0;
-    const auto k_idx = has_reward ? dungeon.final_object : lookup_kind({ ItemKindType::SCROLL, SV_SCROLL_ACQUIREMENT });
+    const auto k_idx = has_reward ? dungeon.final_object : lookup_baseitem_id({ ItemKindType::SCROLL, SV_SCROLL_ACQUIREMENT });
     if (dungeon.final_artifact == FixedArtifactId::NONE) {
         return k_idx;
     }
index 347353e..ec6aabc 100644 (file)
@@ -128,7 +128,7 @@ static void on_dead_bloodletter(PlayerType *player_ptr, monster_death_type *md_p
 
     ObjectType forge;
     auto *q_ptr = &forge;
-    q_ptr->prep(lookup_kind({ ItemKindType::SWORD, SV_BLADE_OF_CHAOS }));
+    q_ptr->prep(lookup_baseitem_id({ ItemKindType::SWORD, SV_BLADE_OF_CHAOS }));
     ItemMagicApplier(player_ptr, q_ptr, player_ptr->current_floor_ptr->object_level, AM_NO_FIXED_ART | md_ptr->mo_mode).execute();
     (void)drop_near(player_ptr, q_ptr, -1, md_ptr->md_y, md_ptr->md_x);
 }
@@ -204,12 +204,12 @@ static void on_dead_serpent(PlayerType *player_ptr, monster_death_type *md_ptr)
 
     ObjectType forge;
     auto *q_ptr = &forge;
-    q_ptr->prep(lookup_kind({ ItemKindType::HAFTED, SV_GROND }));
+    q_ptr->prep(lookup_baseitem_id({ ItemKindType::HAFTED, SV_GROND }));
     q_ptr->fixed_artifact_idx = FixedArtifactId::GROND;
     ItemMagicApplier(player_ptr, q_ptr, -1, AM_GOOD | AM_GREAT).execute();
     (void)drop_near(player_ptr, q_ptr, -1, md_ptr->md_y, md_ptr->md_x);
     q_ptr = &forge;
-    q_ptr->prep(lookup_kind({ ItemKindType::CROWN, SV_CHAOS }));
+    q_ptr->prep(lookup_baseitem_id({ ItemKindType::CROWN, SV_CHAOS }));
     q_ptr->fixed_artifact_idx = FixedArtifactId::CHAOS;
     ItemMagicApplier(player_ptr, q_ptr, -1, AM_GOOD | AM_GREAT).execute();
     (void)drop_near(player_ptr, q_ptr, -1, md_ptr->md_y, md_ptr->md_x);
@@ -223,7 +223,7 @@ static void on_dead_death_sword(PlayerType *player_ptr, monster_death_type *md_p
 
     ObjectType forge;
     auto *q_ptr = &forge;
-    q_ptr->prep(lookup_kind({ ItemKindType::SWORD, randint1(2) }));
+    q_ptr->prep(lookup_baseitem_id({ ItemKindType::SWORD, randint1(2) }));
     (void)drop_near(player_ptr, q_ptr, -1, md_ptr->md_y, md_ptr->md_x);
 }
 
@@ -239,7 +239,7 @@ static void on_dead_can_angel(PlayerType *player_ptr, monster_death_type *md_ptr
 
     ObjectType forge;
     auto *q_ptr = &forge;
-    q_ptr->prep(lookup_kind({ ItemKindType::CHEST, SV_CHEST_KANDUME }));
+    q_ptr->prep(lookup_baseitem_id({ ItemKindType::CHEST, SV_CHEST_KANDUME }));
     ItemMagicApplier(player_ptr, q_ptr, player_ptr->current_floor_ptr->object_level, AM_NO_FIXED_ART).execute();
     (void)drop_near(player_ptr, q_ptr, -1, md_ptr->md_y, md_ptr->md_x);
 }
index 3f02576..2484693 100644 (file)
@@ -86,7 +86,7 @@ void SoftArmorEnchanter::give_high_ego_index()
         return;
     }
 
-    this->o_ptr->k_idx = lookup_kind({ ItemKindType::SOFT_ARMOR, SV_TWILIGHT_ROBE });
+    this->o_ptr->k_idx = lookup_baseitem_id({ ItemKindType::SOFT_ARMOR, SV_TWILIGHT_ROBE });
     this->o_ptr->sval = SV_TWILIGHT_ROBE;
     this->o_ptr->ac = 0;
     this->o_ptr->to_a = 0;
index e11ace5..ca96374 100644 (file)
@@ -231,7 +231,7 @@ static const std::map<BaseitemKey, short> &create_baseitem_index_chache()
  * @details 存在しないことはリファクタリング成果により考えにくく、自作の不存在例外を投げればいいはず.
  * 但し呼び出し側全部の処理を保証するのが面倒なので旧処理のままとする.
  */
-static short lookup_kind(ItemKindType tval, int sval)
+static short exe_lookup(ItemKindType tval, int sval)
 {
     static const auto &cache = create_baseitem_index_chache();
     const auto itr = cache.find({ tval, sval });
@@ -249,11 +249,11 @@ static short lookup_kind(ItemKindType tval, int sval)
  * @details 「tvalが不存在」という状況は事実上ないが、辞書探索のお作法として「有無チェック」を入れておく.
  * 万が一tvalがキャッシュになかったらベースアイテムID 0を返す.
  */
-short lookup_kind(const BaseitemKey &key)
+short lookup_baseitem_id(const BaseitemKey &key)
 {
     const auto sval = key.sval();
     if (sval.has_value()) {
-        return lookup_kind(key.tval(), sval.value());
+        return exe_lookup(key.tval(), sval.value());
     }
 
     static const auto &cache = create_baseitems_cache();
@@ -264,5 +264,5 @@ short lookup_kind(const BaseitemKey &key)
 
     const auto &svals = itr->second;
     const auto sval_indice = randint0(svals.size());
-    return lookup_kind(key.tval(), svals.at(sval_indice));
+    return exe_lookup(key.tval(), svals.at(sval_indice));
 }
index 80cf70f..e5cafcd 100644 (file)
@@ -16,4 +16,4 @@ bool kind_is_amulet(KIND_OBJECT_IDX k_idx);
 bool kind_is_good(KIND_OBJECT_IDX k_idx);
 
 class BaseitemKey;
-short lookup_kind(const BaseitemKey &key);
+short lookup_baseitem_id(const BaseitemKey &key);
index ea0d202..18a14e6 100644 (file)
@@ -147,7 +147,7 @@ concptr do_nature_spell(PlayerType *player_ptr, SPELL_IDX spell, SpellProcessTyp
                 msg_print(_("食料を生成した。", "A food ration is produced."));
 
                 /* Create the food ration */
-                q_ptr->prep(lookup_kind({ ItemKindType::FOOD, SV_FOOD_RATION }));
+                q_ptr->prep(lookup_baseitem_id({ ItemKindType::FOOD, SV_FOOD_RATION }));
 
                 /* Drop the object from heaven */
                 (void)drop_near(player_ptr, q_ptr, -1, player_ptr->y, player_ptr->x);
index 9dc527d..0b95ec1 100644 (file)
@@ -139,7 +139,7 @@ void generate_amusement(PlayerType *player_ptr, int num, bool known)
     while (num > 0) {
         auto am_ptr = pt.pick_one_at_random();
 
-        const auto k_idx = lookup_kind(am_ptr->key);
+        const auto k_idx = lookup_baseitem_id(am_ptr->key);
         if (k_idx == 0) {
             continue;
         }
index db5b1cd..35d4ed2 100644 (file)
@@ -477,7 +477,7 @@ bool restore_mana(PlayerType *player_ptr, bool magic_eater)
 
         auto sval = 0;
         for (auto &item : magic_eater_data->get_item_group(ItemKindType::ROD)) {
-            const auto k_idx = lookup_kind({ ItemKindType::ROD, sval });
+            const auto k_idx = lookup_baseitem_id({ ItemKindType::ROD, sval });
             item.charge -= ((item.count < 10) ? EATER_ROD_CHARGE * 3 : item.count * EATER_ROD_CHARGE / 3) * baseitems_info[k_idx].pval;
             item.charge = std::max(item.charge, 0);
             ++sval;
index 0c98b21..c4cab69 100644 (file)
@@ -111,7 +111,7 @@ void display_rumor(PlayerType *player_ptr, bool ex)
     if (category == "ARTIFACT") {
         const auto &artifact_name = tokens[1];
         const auto &[a_idx, a_ptr] = get_artifact_definition(artifact_name);
-        const auto k_idx = lookup_kind({ a_ptr->tval, a_ptr->sval });
+        const auto k_idx = lookup_baseitem_id({ a_ptr->tval, a_ptr->sval });
         ObjectType forge;
         auto *q_ptr = &forge;
         q_ptr->prep(k_idx);
index 1c96432..ee6797d 100644 (file)
@@ -92,7 +92,7 @@ static bool make_fake_artifact(ObjectType *o_ptr, FixedArtifactId fixed_artifact
         return false;
     }
 
-    const auto i = lookup_kind({ a_ref.tval, a_ref.sval });
+    const auto i = lookup_baseitem_id({ a_ref.tval, a_ref.sval });
     if (i == 0) {
         return false;
     }
index 70c62a6..415e421 100644 (file)
@@ -945,7 +945,7 @@ WishResultType do_cmd_wishing(PlayerType *player_ptr, int prob, bool allow_art,
                 continue;
             }
 
-            const auto k_idx = lookup_kind({ a_ref.tval, a_ref.sval });
+            const auto k_idx = lookup_baseitem_id({ a_ref.tval, a_ref.sval });
             if (!k_idx) {
                 continue;
             }
index b0db2e9..31b004a 100644 (file)
@@ -268,7 +268,7 @@ static std::string wiz_make_named_artifact_desc(PlayerType *player_ptr, FixedArt
 {
     const auto &a_ref = artifacts_info.at(a_idx);
     ObjectType obj;
-    obj.prep(lookup_kind({ a_ref.tval, a_ref.sval }));
+    obj.prep(lookup_baseitem_id({ a_ref.tval, a_ref.sval }));
     obj.fixed_artifact_idx = a_idx;
     object_known(&obj);
     char buf[MAX_NLEN];
index 9de069f..9bd0791 100644 (file)
@@ -205,7 +205,7 @@ static SpoilerOutputResultType spoil_player_spell(concptr fname)
         if (magic_ptr->spell_book != ItemKindType::NONE) {
             ObjectType book;
             auto o_ptr = &book;
-            o_ptr->prep(lookup_kind({ magic_ptr->spell_book, 0 }));
+            o_ptr->prep(lookup_baseitem_id({ magic_ptr->spell_book, 0 }));
             describe_flavor(&dummy_p, title, o_ptr, OD_NAME_ONLY);
             book_name = title;
             char *s = angband_strchr(book_name, '[');