mirror of
https://github.com/MaaAssistantArknights/MaaAssistantArknights.git
synced 2026-07-18 18:20:39 +08:00
fix: 修复部分情况下错误替换肉鸽结算中难度识别的文本 (#7691)
This commit is contained in:
@@ -3835,6 +3835,14 @@
|
||||
"Refresh support"
|
||||
]
|
||||
},
|
||||
"RoguelikeSettlementOcr-Difficulty": {
|
||||
"ocrReplace": [
|
||||
[
|
||||
"Ca1m",
|
||||
"Calm"
|
||||
]
|
||||
]
|
||||
},
|
||||
"RoguelikeTraderShoppingOcr": {
|
||||
"ocrReplace": [
|
||||
[
|
||||
|
||||
@@ -10798,8 +10798,8 @@
|
||||
]
|
||||
},
|
||||
"RoguelikeSettlementOcr-Difficulty": {
|
||||
"baseTask": "NumberOcrReplace",
|
||||
"isAscii": false,
|
||||
"algorithm": "OcrDetect",
|
||||
"text": [],
|
||||
"roi": [
|
||||
750,
|
||||
372,
|
||||
@@ -10853,7 +10853,9 @@
|
||||
]
|
||||
},
|
||||
"RoguelikeSettlementOcr-Score": {
|
||||
"baseTask": "NumberOcrReplace",
|
||||
"algorithm": "OcrDetect",
|
||||
"isAscii": true,
|
||||
"text": [],
|
||||
"roi": [
|
||||
280,
|
||||
525,
|
||||
@@ -10862,7 +10864,9 @@
|
||||
]
|
||||
},
|
||||
"RoguelikeSettlementOcr-Skill": {
|
||||
"baseTask": "NumberOcrReplace",
|
||||
"algorithm": "OcrDetect",
|
||||
"isAscii": true,
|
||||
"text": [],
|
||||
"roi": [
|
||||
920,
|
||||
530,
|
||||
@@ -10871,7 +10875,9 @@
|
||||
]
|
||||
},
|
||||
"RoguelikeSettlementOcr-Step": {
|
||||
"baseTask": "NumberOcrReplace",
|
||||
"algorithm": "OcrDetect",
|
||||
"isAscii": true,
|
||||
"text": [],
|
||||
"roi": [
|
||||
102,
|
||||
238,
|
||||
|
||||
@@ -15,11 +15,13 @@ bool asst::RoguelikeSettlementTaskPlugin::verify(AsstMsg msg, const json::value&
|
||||
auto task_name = details.at("details").at("task").as_string();
|
||||
if (task_name.ends_with("Roguelike@GamePass")) {
|
||||
m_game_pass = true;
|
||||
return m_config->get_mode() == RoguelikeMode::Exp;
|
||||
return true;
|
||||
//m_config->get_mode() == RoguelikeMode::Exp;
|
||||
}
|
||||
else if (task_name.ends_with("Roguelike@MissionFailedFlag2")) {
|
||||
m_game_pass = false;
|
||||
return m_config->get_mode() == RoguelikeMode::Exp;
|
||||
return true;
|
||||
//m_config->get_mode() == RoguelikeMode::Exp;
|
||||
}
|
||||
else {
|
||||
return false;
|
||||
@@ -86,6 +88,12 @@ bool asst::RoguelikeSettlementTaskPlugin::get_settlement_info(json::value& info,
|
||||
RegionOCRer ocr(image);
|
||||
ocr.set_task_info(m_config->get_theme() + "@" + task_name);
|
||||
ocr.set_bin_threshold(50, 255);
|
||||
static const auto& number_replace = Task.get<OcrTaskInfo>("NumberOcrReplace")->replace_map;
|
||||
const auto& task_replace = Task.get<OcrTaskInfo>(task_name)->replace_map;
|
||||
|
||||
auto merge_map = std::vector(number_replace.begin(), number_replace.end());
|
||||
ranges::copy(task_replace, std::back_inserter(merge_map));
|
||||
ocr.set_replace(merge_map);
|
||||
if (!ocr.analyze()) {
|
||||
Log.error(__FUNCTION__, "analyze battle data failed, task:", task_name);
|
||||
return;
|
||||
|
||||
Reference in New Issue
Block a user