From fd8bc23526998d582c7bfe00385e5d4824744439 Mon Sep 17 00:00:00 2001 From: MistEO Date: Wed, 16 Mar 2022 01:04:23 +0800 Subject: [PATCH] =?UTF-8?q?fix.=E4=BF=AE=E5=A4=8D=E5=9F=BA=E5=BB=BAallowEx?= =?UTF-8?q?ternal=E5=AD=97=E6=AE=B5=E4=B8=8D=E7=94=9F=E6=95=88=E5=8F=8A?= =?UTF-8?q?=E5=A4=96=E9=83=A8=E5=B9=B2=E5=91=98=E9=80=89=E6=8B=A9=E9=94=99?= =?UTF-8?q?=E8=AF=AF=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit https://github.com/MistEO/MeoAssistantArknights/issues/288 --- src/MeoAssistant/InfrastConfiger.cpp | 1 + src/MeoAssistant/InfrastProductionTask.cpp | 5 +++-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/MeoAssistant/InfrastConfiger.cpp b/src/MeoAssistant/InfrastConfiger.cpp index 17e2f278aa..76f2e761f3 100644 --- a/src/MeoAssistant/InfrastConfiger.cpp +++ b/src/MeoAssistant/InfrastConfiger.cpp @@ -197,6 +197,7 @@ bool asst::InfrastConfiger::parse(const json::value& json) } group.optional.emplace_back(std::move(comb)); } + group.allow_external = group_json.get("allowExternal", false); group_vec.emplace_back(std::move(group)); } m_skills_groups.emplace(facility_name, std::move(group_vec)); diff --git a/src/MeoAssistant/InfrastProductionTask.cpp b/src/MeoAssistant/InfrastProductionTask.cpp index 2ff385bd87..cc351f7ac6 100644 --- a/src/MeoAssistant/InfrastProductionTask.cpp +++ b/src/MeoAssistant/InfrastProductionTask.cpp @@ -408,8 +408,9 @@ bool asst::InfrastProductionTask::optimal_calc() // 允许外部的话,就把单个干员凑进来 if (group.allow_external) { for (size_t i = cur_combs.size(); i != cur_max_num_of_opers; ++i) { - cur_combs.emplace_back(cur_available_opers.at(i)); - cur_efficient += cur_available_opers.at(i).efficient.at(m_product); + size_t index = i - cur_combs.size(); + cur_combs.emplace_back(cur_available_opers.at(index)); + cur_efficient += cur_available_opers.at(index).efficient.at(m_product); } } else { // 否则这个组合人不够,就不可用了