From caa353cc531c8bdbbcbc868d14dc0f2c0c367c1c Mon Sep 17 00:00:00 2001 From: status102 Date: Wed, 4 Oct 2023 11:54:48 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E6=97=A0=E6=B3=95?= =?UTF-8?q?=E5=AF=B9=E5=90=8E=E7=BB=AD=E5=8A=A0=E8=BD=BD=E7=9A=84=E5=9B=BE?= =?UTF-8?q?=E7=89=87=E8=B5=84=E6=BA=90=E8=BF=9B=E8=A1=8C=E5=AD=98=E5=9C=A8?= =?UTF-8?q?=E6=A3=80=E6=B5=8B=E7=9A=84=E9=94=99=E8=AF=AF=EF=BC=8C=E8=B7=B3?= =?UTF-8?q?=E8=BF=87=E5=AE=BF=E8=88=8D=E6=8A=80=E8=83=BD=E6=A3=80=E6=9F=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/MaaCore/Config/Miscellaneous/InfrastConfig.cpp | 5 ++++- src/MaaCore/Config/ResourceLoader.cpp | 1 + src/MaaCore/Config/TemplResource.cpp | 2 +- 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/src/MaaCore/Config/Miscellaneous/InfrastConfig.cpp b/src/MaaCore/Config/Miscellaneous/InfrastConfig.cpp index 8c766db149..48e2435e13 100644 --- a/src/MaaCore/Config/Miscellaneous/InfrastConfig.cpp +++ b/src/MaaCore/Config/Miscellaneous/InfrastConfig.cpp @@ -26,7 +26,10 @@ bool asst::InfrastConfig::parse(const json::value& json) infrast::Skill skill; std::string templ_name = skill_json.at("template").as_string(); skill.templ_name = templ_name; - m_templ_required.emplace(skill.templ_name); + if (!templ_name.starts_with("Bskill_dorm_")) { + // 宿舍技能跳过,没有图片 + m_templ_required.emplace(skill.templ_name); + } skill.id = id; for (const json::value& skill_names : skill_json.at("name").as_array()) { skill.names.emplace_back(skill_names.as_string()); diff --git a/src/MaaCore/Config/ResourceLoader.cpp b/src/MaaCore/Config/ResourceLoader.cpp index 08783a2fb5..495a96ae69 100644 --- a/src/MaaCore/Config/ResourceLoader.cpp +++ b/src/MaaCore/Config/ResourceLoader.cpp @@ -153,6 +153,7 @@ bool asst::ResourceLoader::load(const std::filesystem::path& path) // 重要的资源,实时加载(图片还是惰性的) LoadResourceWithTemplAndCheckRet(TaskData, "tasks.json"_p, "template"_p); + // 基建技能路径,无法变更(基于热更屎山) LoadResourceWithTemplAndCheckRet(InfrastConfig, "infrast.json"_p, "template"_p / "infrast"_p); LoadResourceWithTemplAndCheckRet(ItemConfig, "item_index.json"_p, "template"_p / "items"_p); diff --git a/src/MaaCore/Config/TemplResource.cpp b/src/MaaCore/Config/TemplResource.cpp index 5646c1b50d..716ced217f 100644 --- a/src/MaaCore/Config/TemplResource.cpp +++ b/src/MaaCore/Config/TemplResource.cpp @@ -34,7 +34,7 @@ bool asst::TemplResource::load(const std::filesystem::path& path) m_templ_paths.insert_or_assign(name, filepath); } } - else if (m_loaded) { + else if (m_loaded && m_templ_paths.contains(name)) { continue; } else {