OSDN Git Service

[Refactor] #2775 周辺コードの整理
[hengbandforosx/hengbandosx.git] / src / knowledge / knowledge-quests.cpp
index d53d42f..ff52298 100644 (file)
@@ -82,7 +82,6 @@ static void do_cmd_knowledge_quests_current(PlayerType *player_ptr, FILE *fff)
         total++;
         if (q_ref.type != QuestKindType::RANDOM) {
             char note[512] = "\0";
-
             if (q_ref.status == QuestStatusType::TAKEN || q_ref.status == QuestStatusType::STAGE_COMPLETED) {
                 switch (q_ref.type) {
                 case QuestKindType::KILL_LEVEL:
@@ -98,25 +97,24 @@ static void do_cmd_knowledge_quests_current(PlayerType *player_ptr, FILE *fff)
                     } else {
                         sprintf(note, _(" - %sを倒す。", " - kill %s."), name);
                     }
-                    break;
 
+                    break;
                 case QuestKindType::FIND_ARTIFACT:
                     if (q_ref.reward_artifact_idx != FixedArtifactId::NONE) {
                         const auto &a_ref = artifacts_info.at(q_ref.reward_artifact_idx);
-                        ObjectType forge;
-                        auto *o_ptr = &forge;
+                        ObjectType item;
                         auto k_idx = lookup_baseitem_id(a_ref.bi_key);
-                        o_ptr->prep(k_idx);
-                        o_ptr->fixed_artifact_idx = q_ref.reward_artifact_idx;
-                        o_ptr->ident = IDENT_STORE;
-                        describe_flavor(player_ptr, name, o_ptr, OD_NAME_ONLY);
+                        item.prep(k_idx);
+                        item.fixed_artifact_idx = q_ref.reward_artifact_idx;
+                        item.ident = IDENT_STORE;
+                        describe_flavor(player_ptr, name, &item, OD_NAME_ONLY);
                     }
+
                     sprintf(note, _("\n   - %sを見つけ出す。", "\n   - Find %s."), name);
                     break;
                 case QuestKindType::FIND_EXIT:
                     sprintf(note, _(" - 出口に到達する。", " - Reach exit."));
                     break;
-
                 case QuestKindType::KILL_NUMBER:
 #ifdef JP
                     sprintf(note, " - %d 体のモンスターを倒す。(あと %d 体)", (int)q_ref.max_num, (int)(q_ref.max_num - q_ref.cur_num));