Release v4.23.2 (#6184)

fix #6006
This commit is contained in:
MistEO
2023-09-02 01:24:05 +08:00
committed by GitHub
3 changed files with 28 additions and 37 deletions

View File

@@ -34,10 +34,10 @@ bool asst::TilePack::parse(const json::value& json)
.name = summary.get("name", "UnknownLevelName"),
};
auto filepath = dir / utils::path(summary.at("filename").as_string());
if (!std::filesystem::exists(filepath)) {
Log.error("file not exists", filepath);
return false;
}
// if (!std::filesystem::exists(filepath)) {
// Log.error("file not exists", filepath);
// return false;
// }
m_summarize.emplace_back(std::move(level_key), std::move(filepath));
}
return true;

View File

@@ -83,9 +83,6 @@ bool asst::ResourceLoader::load(const std::filesystem::path& path)
return false;
}
static std::mutex load_mutex;
std::unique_lock<std::mutex> lock(load_mutex);
#define LoadResourceAndCheckRet(Config, Filename) \
{ \
auto full_path = path / Filename; \
@@ -129,30 +126,6 @@ bool asst::ResourceLoader::load(const std::filesystem::path& path)
LogTraceFunction;
using namespace asst::utils::path_literals;
// 不太重要又加载的慢的资源,但不怎么占内存的,实时异步加载
// DEBUG 模式下这里还是检查返回值的,方便排查问题
AsyncLoadConfig(StageDropsConfig, "stages.json"_p);
AsyncLoadConfig(TilePack, "Arknights-Tile-Pos"_p / "overview.json"_p);
AsyncLoadConfig(RoguelikeCopilotConfig, "roguelike"_p / "Phantom"_p / "autopilot"_p);
AsyncLoadConfig(RoguelikeCopilotConfig, "roguelike"_p / "Mizuki"_p / "autopilot"_p);
AsyncLoadConfig(RoguelikeCopilotConfig, "roguelike"_p / "Sami"_p / "autopilot"_p);
AsyncLoadConfig(RoguelikeRecruitConfig, "roguelike"_p / "Phantom"_p / "recruitment.json"_p);
AsyncLoadConfig(RoguelikeRecruitConfig, "roguelike"_p / "Mizuki"_p / "recruitment.json"_p);
AsyncLoadConfig(RoguelikeRecruitConfig, "roguelike"_p / "Sami"_p / "recruitment.json"_p);
AsyncLoadConfig(RoguelikeShoppingConfig, "roguelike"_p / "Phantom"_p / "shopping.json"_p);
AsyncLoadConfig(RoguelikeShoppingConfig, "roguelike"_p / "Mizuki"_p / "shopping.json"_p);
AsyncLoadConfig(RoguelikeShoppingConfig, "roguelike"_p / "Sami"_p / "shopping.json"_p);
AsyncLoadConfig(RoguelikeStageEncounterConfig, "roguelike"_p / "Phantom"_p / "encounter.json"_p);
AsyncLoadConfig(RoguelikeStageEncounterConfig, "roguelike"_p / "Mizuki"_p / "encounter.json"_p);
AsyncLoadConfig(RoguelikeStageEncounterConfig, "roguelike"_p / "Sami"_p / "encounter.json"_p);
AsyncLoadConfig(RoguelikeStageEncounterConfig, "roguelike"_p / "Phantom"_p / "encounter_for_deposit.json"_p);
AsyncLoadConfig(RoguelikeStageEncounterConfig, "roguelike"_p / "Mizuki"_p / "encounter_for_deposit.json"_p);
AsyncLoadConfig(RoguelikeStageEncounterConfig, "roguelike"_p / "Sami"_p / "encounter_for_deposit.json"_p);
// 太占内存的资源,都是惰性加载
// 战斗中技能识别,二分类模型
LoadResourceAndCheckRet(OnnxSessions, "onnx"_p / "skill_ready_cls.onnx"_p);
@@ -181,6 +154,30 @@ bool asst::ResourceLoader::load(const std::filesystem::path& path)
LoadResourceWithTemplAndCheckRet(InfrastConfig, "infrast.json"_p, "template"_p / "infrast"_p);
LoadResourceWithTemplAndCheckRet(ItemConfig, "item_index.json"_p, "template"_p / "items"_p);
LoadResourceAndCheckRet(StageDropsConfig, "stages.json"_p);
LoadResourceAndCheckRet(TilePack, "Arknights-Tile-Pos"_p / "overview.json"_p);
// 不太重要又加载的慢的资源,但不怎么占内存的,实时异步加载
// DEBUG 模式下这里还是检查返回值的,方便排查问题
AsyncLoadConfig(RoguelikeCopilotConfig, "roguelike"_p / "Phantom"_p / "autopilot"_p);
AsyncLoadConfig(RoguelikeCopilotConfig, "roguelike"_p / "Mizuki"_p / "autopilot"_p);
AsyncLoadConfig(RoguelikeCopilotConfig, "roguelike"_p / "Sami"_p / "autopilot"_p);
AsyncLoadConfig(RoguelikeRecruitConfig, "roguelike"_p / "Phantom"_p / "recruitment.json"_p);
AsyncLoadConfig(RoguelikeRecruitConfig, "roguelike"_p / "Mizuki"_p / "recruitment.json"_p);
AsyncLoadConfig(RoguelikeRecruitConfig, "roguelike"_p / "Sami"_p / "recruitment.json"_p);
AsyncLoadConfig(RoguelikeShoppingConfig, "roguelike"_p / "Phantom"_p / "shopping.json"_p);
AsyncLoadConfig(RoguelikeShoppingConfig, "roguelike"_p / "Mizuki"_p / "shopping.json"_p);
AsyncLoadConfig(RoguelikeShoppingConfig, "roguelike"_p / "Sami"_p / "shopping.json"_p);
AsyncLoadConfig(RoguelikeStageEncounterConfig, "roguelike"_p / "Phantom"_p / "encounter.json"_p);
AsyncLoadConfig(RoguelikeStageEncounterConfig, "roguelike"_p / "Mizuki"_p / "encounter.json"_p);
AsyncLoadConfig(RoguelikeStageEncounterConfig, "roguelike"_p / "Sami"_p / "encounter.json"_p);
AsyncLoadConfig(RoguelikeStageEncounterConfig, "roguelike"_p / "Phantom"_p / "encounter_for_deposit.json"_p);
AsyncLoadConfig(RoguelikeStageEncounterConfig, "roguelike"_p / "Mizuki"_p / "encounter_for_deposit.json"_p);
AsyncLoadConfig(RoguelikeStageEncounterConfig, "roguelike"_p / "Sami"_p / "encounter_for_deposit.json"_p);
#undef LoadTemplByConfigAndCheckRet
#undef LoadResourceAndCheckRet
#undef LoadCacheWithoutRet

View File

@@ -1173,12 +1173,6 @@ namespace MaaWpfGui.Main
return true;
}
if (!LoadResource())
{
error = "Load Resource Failed";
return false;
}
bool ret = AsstConnect(_handle, Instances.SettingsViewModel.AdbPath, Instances.SettingsViewModel.ConnectAddress, Instances.SettingsViewModel.ConnectConfig);
// 尝试默认的备选端口