feat: mumu extras (#8939)

Co-authored-by: uye <99072975+ABA2396@users.noreply.github.com>
Co-authored-by: status102 <102887808+status102@users.noreply.github.com>
This commit is contained in:
MistEO
2024-05-03 22:05:37 +08:00
committed by GitHub
parent 0165469ad0
commit 605dcda98a
31 changed files with 2239 additions and 1175 deletions

View File

@@ -160,7 +160,8 @@ bool asst::ResourceLoader::load(const std::filesystem::path& path)
LoadResourceAndCheckRet(StageDropsConfig, "stages.json"_p);
LoadResourceAndCheckRet(TilePack, "Arknights-Tile-Pos"_p / "overview.json"_p);
// fix #6188 https://github.com/MaaAssistantArknights/MaaAssistantArknights/issues/6188#issuecomment-1703705568
// fix #6188
// https://github.com/MaaAssistantArknights/MaaAssistantArknights/issues/6188#issuecomment-1703705568
// 没什么头绪,但凑合修掉了
// 原来这后面是用 AsyncLoadConfig 的,以下是原来的注释:
//// 不太重要又加载的慢的资源,但不怎么占内存的,实时异步加载
@@ -169,23 +170,46 @@ bool asst::ResourceLoader::load(const std::filesystem::path& path)
LoadResourceAndCheckRet(RoguelikeCopilotConfig, "roguelike"_p / "Mizuki"_p / "autopilot"_p);
LoadResourceAndCheckRet(RoguelikeCopilotConfig, "roguelike"_p / "Sami"_p / "autopilot"_p);
LoadResourceAndCheckRet(RoguelikeRecruitConfig, "roguelike"_p / "Phantom"_p / "recruitment.json"_p);
LoadResourceAndCheckRet(RoguelikeRecruitConfig, "roguelike"_p / "Mizuki"_p / "recruitment.json"_p);
LoadResourceAndCheckRet(RoguelikeRecruitConfig, "roguelike"_p / "Sami"_p / "recruitment.json"_p);
LoadResourceAndCheckRet(
RoguelikeRecruitConfig,
"roguelike"_p / "Phantom"_p / "recruitment.json"_p);
LoadResourceAndCheckRet(
RoguelikeRecruitConfig,
"roguelike"_p / "Mizuki"_p / "recruitment.json"_p);
LoadResourceAndCheckRet(
RoguelikeRecruitConfig,
"roguelike"_p / "Sami"_p / "recruitment.json"_p);
LoadResourceAndCheckRet(RoguelikeShoppingConfig, "roguelike"_p / "Phantom"_p / "shopping.json"_p);
LoadResourceAndCheckRet(RoguelikeShoppingConfig, "roguelike"_p / "Mizuki"_p / "shopping.json"_p);
LoadResourceAndCheckRet(
RoguelikeShoppingConfig,
"roguelike"_p / "Phantom"_p / "shopping.json"_p);
LoadResourceAndCheckRet(
RoguelikeShoppingConfig,
"roguelike"_p / "Mizuki"_p / "shopping.json"_p);
LoadResourceAndCheckRet(RoguelikeShoppingConfig, "roguelike"_p / "Sami"_p / "shopping.json"_p);
LoadResourceAndCheckRet(RoguelikeStageEncounterConfig, "roguelike"_p / "Phantom"_p / "encounter.json"_p);
LoadResourceAndCheckRet(RoguelikeStageEncounterConfig, "roguelike"_p / "Mizuki"_p / "encounter.json"_p);
LoadResourceAndCheckRet(RoguelikeStageEncounterConfig, "roguelike"_p / "Sami"_p / "encounter.json"_p);
LoadResourceAndCheckRet(RoguelikeStageEncounterConfig,
"roguelike"_p / "Phantom"_p / "encounter_for_deposit.json"_p);
LoadResourceAndCheckRet(RoguelikeStageEncounterConfig, "roguelike"_p / "Mizuki"_p / "encounter_for_deposit.json"_p);
LoadResourceAndCheckRet(RoguelikeStageEncounterConfig, "roguelike"_p / "Sami"_p / "encounter_for_deposit.json"_p);
LoadResourceAndCheckRet(
RoguelikeStageEncounterConfig,
"roguelike"_p / "Phantom"_p / "encounter.json"_p);
LoadResourceAndCheckRet(
RoguelikeStageEncounterConfig,
"roguelike"_p / "Mizuki"_p / "encounter.json"_p);
LoadResourceAndCheckRet(
RoguelikeStageEncounterConfig,
"roguelike"_p / "Sami"_p / "encounter.json"_p);
LoadResourceAndCheckRet(
RoguelikeStageEncounterConfig,
"roguelike"_p / "Phantom"_p / "encounter_for_deposit.json"_p);
LoadResourceAndCheckRet(
RoguelikeStageEncounterConfig,
"roguelike"_p / "Mizuki"_p / "encounter_for_deposit.json"_p);
LoadResourceAndCheckRet(
RoguelikeStageEncounterConfig,
"roguelike"_p / "Sami"_p / "encounter_for_deposit.json"_p);
LoadResourceAndCheckRet(RoguelikeFoldartalConfig, "roguelike"_p / "Sami"_p / "foldartal.json"_p);
LoadResourceAndCheckRet(
RoguelikeFoldartalConfig,
"roguelike"_p / "Sami"_p / "foldartal.json"_p);
#undef LoadTemplByConfigAndCheckRet
#undef LoadResourceAndCheckRet
@@ -197,6 +221,11 @@ bool asst::ResourceLoader::load(const std::filesystem::path& path)
return m_loaded;
}
void asst::ResourceLoader::set_connection_extras(const std::string& name, const json::object& diff)
{
GeneralConfig::get_instance().set_connection_extras(name, diff);
}
bool asst::ResourceLoader::loaded() const noexcept
{
return m_loaded;