quest_list[QuestId::TOWER1].complev = player_ptr->lev;
break;
case QuestKindType::FIND_ARTIFACT:
- ArtifactsInfo::get_instance().get_artifact(q_ptr->reward_artifact_idx).gen_flags.reset(ItemGenerationTraitType::QUESTITEM);
+ q_ptr->get_reward().gen_flags.reset(ItemGenerationTraitType::QUESTITEM);
break;
case QuestKindType::RANDOM:
monraces_info[q_ptr->r_idx].flags1 &= ~(RF1_QUESTOR);
return true;
}
- auto &artifact = ArtifactsInfo::get_instance().get_artifact(q_ptr->reward_artifact_idx);
+ auto &artifact = q_ptr->get_reward();
artifact.gen_flags.set(ItemGenerationTraitType::QUESTITEM);
return true;
}
case QuestKindType::FIND_ARTIFACT: {
std::string item_name("");
if (q_ref.reward_artifact_idx != FixedArtifactId::NONE) {
- const auto &artifact = ArtifactsInfo::get_instance().get_artifact(q_ref.reward_artifact_idx);
+ const auto &artifact = q_ref.get_reward();
ItemEntity item;
auto bi_id = lookup_baseitem_id(artifact.bi_key);
item.prep(bi_id);
}
q_ptr->reward_artifact_idx = i2enum<FixedArtifactId>(rd_s16b());
if (q_ptr->reward_artifact_idx != FixedArtifactId::NONE) {
- ArtifactsInfo::get_instance().get_artifact(q_ptr->reward_artifact_idx).gen_flags.set(ItemGenerationTraitType::QUESTITEM);
+ q_ptr->get_reward().gen_flags.set(ItemGenerationTraitType::QUESTITEM);
}
q_ptr->flags = rd_byte();
}
const auto &quest_list = QuestList::get_instance();
- auto a_idx = quest_list[quest_idx].reward_artifact_idx;
+ const auto &quest = quest_list[quest_idx];
+ auto a_idx = quest.reward_artifact_idx;
if (a_idx == FixedArtifactId::NONE) {
return false;
}
- const auto &artifact = ArtifactsInfo::get_instance().get_artifact(a_idx);
+ const auto &artifact = quest.get_reward();
if (artifact.gen_flags.has(ItemGenerationTraitType::INSTA_ART)) {
return false;
}