OSDN Git Service

[Refactor] #3215 QuestType::get_reward() を実装した
authorHourier <66951241+Hourier@users.noreply.github.com>
Sun, 30 Apr 2023 09:41:48 +0000 (18:41 +0900)
committerHourier <66951241+Hourier@users.noreply.github.com>
Sun, 30 Apr 2023 10:23:49 +0000 (19:23 +0900)
src/dungeon/quest.cpp
src/dungeon/quest.h

index f9ca9e5..fa0f019 100644 (file)
@@ -164,6 +164,12 @@ bool QuestType::is_fixed(QuestId quest_idx)
     return (enum2i(quest_idx) < MIN_RANDOM_QUEST) || (enum2i(quest_idx) > MAX_RANDOM_QUEST);
 }
 
+ArtifactType &QuestType::get_reward() const
+{
+    const auto &artifacts = ArtifactsInfo::get_instance();
+    return artifacts.get_artifact(this->reward_artifact_idx);
+}
+
 /*!
  * @brief ランダムクエストの討伐ユニークを決める / Determine the random quest uniques
  * @param q_ptr クエスト構造体の参照ポインタ
index 428f644..5d3bc3a 100644 (file)
@@ -96,6 +96,7 @@ enum class QuestKindType : short {
  */
 enum class FixedArtifactId : short;
 enum class MonsterRaceId : int16_t;
+class ArtifactType;
 class QuestType {
 public:
     QuestType() = default;
@@ -120,6 +121,7 @@ public:
     REAL_TIME comptime = 0; /*!< クリア時ゲーム時間 /  quest clear time*/
 
     static bool is_fixed(QuestId quest_idx);
+    ArtifactType &get_reward() const;
 };
 
 class QuestList final {