From 4b2557782e1a52b70d87c5e5df4e64d2bf67dabd Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E7=BD=97=E5=AE=B6=E6=AC=A3?= <869540029@qq.com>
Date: Thu, 20 Apr 2023 10:56:29 +0800
Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E5=90=8DoperBox?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
resource/tasks.json | 38 ++++------
.../{OperatorEnter.png => OperBoxEnter.png} | Bin
...eratorNameFlagLV.png => OperBoxFlagLV.png} | Bin
...OperatorRoleTab.png => OperBoxRoleTab.png} | Bin
...TabSelect.png => OperBoxRoleTabSelect.png} | Bin
src/MaaCore/Assistant.cpp | 4 +-
src/MaaCore/MaaCore.vcxproj | 12 ++--
src/MaaCore/MaaCore.vcxproj.filters | 12 ++--
src/MaaCore/Task/Interface/OperBoxTask.cpp | 15 ++++
src/MaaCore/Task/Interface/OperBoxTask.h | 14 ++++
src/MaaCore/Task/Interface/OperTask.cpp | 15 ----
src/MaaCore/Task/Interface/OperTask.h | 14 ----
...ionTask.cpp => OperBoxRecognitionTask.cpp} | 18 ++---
...gnitionTask.h => OperBoxRecognitionTask.h} | 6 +-
...eAnalyzer.cpp => OperBoxImageAnalyzer.cpp} | 12 ++--
...ImageAnalyzer.h => OperBoxImageAnalyzer.h} | 7 +-
src/MaaWpfGui/Main/AsstProxy.cs | 14 ++--
src/MaaWpfGui/Res/Localizations/en-us.xaml | 6 +-
src/MaaWpfGui/Res/Localizations/ja-jp.xaml | 6 +-
src/MaaWpfGui/Res/Localizations/ko-kr.xaml | 6 +-
src/MaaWpfGui/Res/Localizations/zh-cn.xaml | 6 +-
src/MaaWpfGui/Res/Localizations/zh-tw.xaml | 6 +-
.../ViewModels/UI/RecognizerViewModel.cs | 68 ++++++++----------
src/MaaWpfGui/Views/UI/RecognizerView.xaml | 10 +--
24 files changed, 137 insertions(+), 152 deletions(-)
rename resource/template/{OperatorEnter.png => OperBoxEnter.png} (100%)
rename resource/template/{OperatorNameFlagLV.png => OperBoxFlagLV.png} (100%)
rename resource/template/{OperatorRoleTab.png => OperBoxRoleTab.png} (100%)
rename resource/template/{OperatorRoleTabSelect.png => OperBoxRoleTabSelect.png} (100%)
create mode 100644 src/MaaCore/Task/Interface/OperBoxTask.cpp
create mode 100644 src/MaaCore/Task/Interface/OperBoxTask.h
delete mode 100644 src/MaaCore/Task/Interface/OperTask.cpp
delete mode 100644 src/MaaCore/Task/Interface/OperTask.h
rename src/MaaCore/Task/Miscellaneous/{OperRecognitionTask.cpp => OperBoxRecognitionTask.cpp} (79%)
rename src/MaaCore/Task/Miscellaneous/{OperRecognitionTask.h => OperBoxRecognitionTask.h} (72%)
rename src/MaaCore/Vision/Miscellaneous/{OperImageAnalyzer.cpp => OperBoxImageAnalyzer.cpp} (88%)
rename src/MaaCore/Vision/Miscellaneous/{OperImageAnalyzer.h => OperBoxImageAnalyzer.h} (71%)
diff --git a/resource/tasks.json b/resource/tasks.json
index 24070c4980..8d1f85f4fe 100644
--- a/resource/tasks.json
+++ b/resource/tasks.json
@@ -9597,17 +9597,17 @@
20
]
},
- "OperatorBegin": {
+ "OperBoxBegin": {
"algorithm": "JustReturn",
"action": "DoNothing",
"next": [
- "OperatorEnter",
- "OperatorRoleTabSelect",
- "OperatorRoleTab",
- "OperatorEnter@ReturnTo"
+ "OperBoxEnter",
+ "OperBoxRoleTabSelect",
+ "OperBoxRoleTab",
+ "OperBoxEnter@ReturnTo"
]
},
- "OperatorEnter": {
+ "OperBoxEnter": {
"action": "ClickSelf",
"roi": [
935,
@@ -9616,10 +9616,10 @@
110
],
"next": [
- "OperatorRoleTabSelect"
+ "OperBoxRoleTabSelect"
]
},
- "OperatorRoleTabSelect": {
+ "OperBoxRoleTabSelect": {
"action": "ClickSelf",
"roi": [
1200,
@@ -9628,10 +9628,10 @@
50
],
"next": [
- "OperatorRoleTab"
+ "OperBoxRoleTab"
]
},
- "OperatorRoleTab": {
+ "OperBoxRoleTab": {
"action": "DoNothing",
"roi": [
1195,
@@ -9640,7 +9640,7 @@
50
]
},
- "OperatorSlowlySwipeToTheRight": {
+ "OperBoxSlowlySwipeToTheRight": {
"doc": "6个横向干员防止识别不全990px",
"baseTask": "SlowlySwipeToTheRight",
"specificRect": [
@@ -9656,7 +9656,7 @@
20
]
},
- "OperatorNameFlagLV": {
+ "OperBoxFlagLV": {
"templThreshold": 0.7,
"roi": [
40,
@@ -9665,19 +9665,7 @@
327
]
},
- "OperatorOCR": {
- "algorithm": "OcrDetect",
- "fullMatch": true,
- "text": [],
- "roi": [
- 10,
- 0,
- 130,
- 20
- ],
- "postDelay": 100
- },
- "OperatorOCRLV": {
+ "OperBoxNameOCR": {
"algorithm": "OcrDetect",
"fullMatch": true,
"text": [],
diff --git a/resource/template/OperatorEnter.png b/resource/template/OperBoxEnter.png
similarity index 100%
rename from resource/template/OperatorEnter.png
rename to resource/template/OperBoxEnter.png
diff --git a/resource/template/OperatorNameFlagLV.png b/resource/template/OperBoxFlagLV.png
similarity index 100%
rename from resource/template/OperatorNameFlagLV.png
rename to resource/template/OperBoxFlagLV.png
diff --git a/resource/template/OperatorRoleTab.png b/resource/template/OperBoxRoleTab.png
similarity index 100%
rename from resource/template/OperatorRoleTab.png
rename to resource/template/OperBoxRoleTab.png
diff --git a/resource/template/OperatorRoleTabSelect.png b/resource/template/OperBoxRoleTabSelect.png
similarity index 100%
rename from resource/template/OperatorRoleTabSelect.png
rename to resource/template/OperBoxRoleTabSelect.png
diff --git a/src/MaaCore/Assistant.cpp b/src/MaaCore/Assistant.cpp
index 14bb237321..c867c7d085 100644
--- a/src/MaaCore/Assistant.cpp
+++ b/src/MaaCore/Assistant.cpp
@@ -15,7 +15,7 @@
#include "Task/Interface/FightTask.h"
#include "Task/Interface/InfrastTask.h"
#include "Task/Interface/MallTask.h"
-#include "Task/Interface/OperTask.h"
+#include "Task/Interface/OperBoxTask.h"
#include "Task/Interface/ReclamationTask.h"
#include "Task/Interface/RecruitTask.h"
#include "Task/Interface/RoguelikeTask.h"
@@ -201,7 +201,7 @@ asst::Assistant::TaskId asst::Assistant::append_task(const std::string& type, co
ASST_ASSISTANT_APPEND_TASK_FROM_STRING_IF_BRANCH(SingleStepTask)
ASST_ASSISTANT_APPEND_TASK_FROM_STRING_IF_BRANCH(VideoRecognitionTask)
ASST_ASSISTANT_APPEND_TASK_FROM_STRING_IF_BRANCH(DepotTask)
- ASST_ASSISTANT_APPEND_TASK_FROM_STRING_IF_BRANCH(OperTask)
+ ASST_ASSISTANT_APPEND_TASK_FROM_STRING_IF_BRANCH(OperBoxTask)
ASST_ASSISTANT_APPEND_TASK_FROM_STRING_IF_BRANCH(ReclamationTask)
ASST_ASSISTANT_APPEND_TASK_FROM_STRING_IF_BRANCH(CustomTask)
#ifdef ASST_DEBUG
diff --git a/src/MaaCore/MaaCore.vcxproj b/src/MaaCore/MaaCore.vcxproj
index 4e62a383d4..003a0b8f55 100644
--- a/src/MaaCore/MaaCore.vcxproj
+++ b/src/MaaCore/MaaCore.vcxproj
@@ -60,8 +60,8 @@
-
-
+
+
@@ -93,7 +93,7 @@
-
+
@@ -215,8 +215,8 @@
-
-
+
+
@@ -246,7 +246,7 @@
-
+
diff --git a/src/MaaCore/MaaCore.vcxproj.filters b/src/MaaCore/MaaCore.vcxproj.filters
index 0f34abf237..17d9a146a8 100644
--- a/src/MaaCore/MaaCore.vcxproj.filters
+++ b/src/MaaCore/MaaCore.vcxproj.filters
@@ -603,13 +603,13 @@
源文件\Controller
-
+
源文件\Task\Interface
-
+
源文件\Task\Miscellaneous
-
+
源文件\Vision\Miscellaneous
@@ -1001,13 +1001,13 @@
源文件\Controller
-
+
源文件\Task\Interface
-
+
源文件\Task\Miscellaneous
-
+
源文件\Vision\Miscellaneous
diff --git a/src/MaaCore/Task/Interface/OperBoxTask.cpp b/src/MaaCore/Task/Interface/OperBoxTask.cpp
new file mode 100644
index 0000000000..2536117676
--- /dev/null
+++ b/src/MaaCore/Task/Interface/OperBoxTask.cpp
@@ -0,0 +1,15 @@
+#include "OperBoxTask.h"
+
+#include "Task/Miscellaneous/OperBoxRecognitionTask.h"
+#include "Task/ProcessTask.h"
+
+asst::OperBoxTask::OperBoxTask(const AsstCallback& callback, Assistant* inst) : InterfaceTask(callback, inst, TaskType)
+{
+ auto enter_task = std::make_shared(m_callback, m_inst, TaskType);
+ enter_task->set_tasks({ "OperBoxBegin" }).set_ignore_error(true);
+ m_subtasks.emplace_back(enter_task);
+
+ auto recognition_task = std::make_shared(m_callback, m_inst, TaskType);
+ recognition_task->set_retry_times(0);
+ m_subtasks.emplace_back(recognition_task);
+}
diff --git a/src/MaaCore/Task/Interface/OperBoxTask.h b/src/MaaCore/Task/Interface/OperBoxTask.h
new file mode 100644
index 0000000000..69a9ad0042
--- /dev/null
+++ b/src/MaaCore/Task/Interface/OperBoxTask.h
@@ -0,0 +1,14 @@
+#pragma once
+#include "Task/InterfaceTask.h"
+
+namespace asst
+{
+ class OperBoxTask final : public InterfaceTask
+ {
+ public:
+ inline static constexpr std::string_view TaskType = "OperBox";
+
+ OperBoxTask(const AsstCallback& callback, Assistant* inst);
+ virtual ~OperBoxTask() override = default;
+ };
+}
diff --git a/src/MaaCore/Task/Interface/OperTask.cpp b/src/MaaCore/Task/Interface/OperTask.cpp
deleted file mode 100644
index 7e09994603..0000000000
--- a/src/MaaCore/Task/Interface/OperTask.cpp
+++ /dev/null
@@ -1,15 +0,0 @@
-#include "OperTask.h"
-
-#include "Task/Miscellaneous/OperRecognitionTask.h"
-#include "Task/ProcessTask.h"
-
-asst::OperTask::OperTask(const AsstCallback& callback, Assistant* inst) : InterfaceTask(callback, inst, TaskType)
-{
- auto enter_task = std::make_shared(m_callback, m_inst, TaskType);
- enter_task->set_tasks({ "OperatorBegin" }).set_ignore_error(true);
- m_subtasks.emplace_back(enter_task);
-
- auto recognition_task = std::make_shared(m_callback, m_inst, TaskType);
- recognition_task->set_retry_times(0);
- m_subtasks.emplace_back(recognition_task);
-}
diff --git a/src/MaaCore/Task/Interface/OperTask.h b/src/MaaCore/Task/Interface/OperTask.h
deleted file mode 100644
index 6f422e1703..0000000000
--- a/src/MaaCore/Task/Interface/OperTask.h
+++ /dev/null
@@ -1,14 +0,0 @@
-#pragma once
-#include "Task/InterfaceTask.h"
-
-namespace asst
-{
- class OperTask final : public InterfaceTask
- {
- public:
- inline static constexpr std::string_view TaskType = "Oper";
-
- OperTask(const AsstCallback& callback, Assistant* inst);
- virtual ~OperTask() override = default;
- };
-}
diff --git a/src/MaaCore/Task/Miscellaneous/OperRecognitionTask.cpp b/src/MaaCore/Task/Miscellaneous/OperBoxRecognitionTask.cpp
similarity index 79%
rename from src/MaaCore/Task/Miscellaneous/OperRecognitionTask.cpp
rename to src/MaaCore/Task/Miscellaneous/OperBoxRecognitionTask.cpp
index 109a1e1b33..7c5b665589 100644
--- a/src/MaaCore/Task/Miscellaneous/OperRecognitionTask.cpp
+++ b/src/MaaCore/Task/Miscellaneous/OperBoxRecognitionTask.cpp
@@ -1,4 +1,4 @@
-#include "OperRecognitionTask.h"
+#include "OperBoxRecognitionTask.h"
#include "Utils/Ranges.hpp"
@@ -7,11 +7,11 @@
#include "Controller/Controller.h"
#include "Task/ProcessTask.h"
#include "Utils/Logger.hpp"
-#include "Vision/Miscellaneous/OperImageAnalyzer.h"
+#include "Vision/Miscellaneous/OperBoxImageAnalyzer.h"
#include "Vision/OcrWithFlagTemplImageAnalyzer.h"
#include
-bool asst::OperRecognitionTask::_run()
+bool asst::OperBoxRecognitionTask::_run()
{
LogTraceFunction;
@@ -19,13 +19,13 @@ bool asst::OperRecognitionTask::_run()
callback_analyze_result(true);
return oper;
}
-bool asst::OperRecognitionTask::swipe_and_analyze()
+bool asst::OperBoxRecognitionTask::swipe_and_analyze()
{
LogTraceFunction;
std::string current_page_last_oper_name = "";
own_opers.clear();
while (true) {
- OperImageAnalyzer analyzer(ctrler()->get_image());
+ OperBoxImageAnalyzer analyzer(ctrler()->get_image());
auto future = std::async(std::launch::async, [&]() { swipe_page(); });
@@ -45,12 +45,12 @@ bool asst::OperRecognitionTask::swipe_and_analyze()
return !own_opers.empty();
}
-void asst::OperRecognitionTask::swipe_page()
+void asst::OperBoxRecognitionTask::swipe_page()
{
- ProcessTask(*this, { "OperatorSlowlySwipeToTheRight" }).run();
+ ProcessTask(*this, { "OperBoxSlowlySwipeToTheRight" }).run();
}
-void asst::OperRecognitionTask::callback_analyze_result(bool done)
+void asst::OperBoxRecognitionTask::callback_analyze_result(bool done)
{
LogTraceFunction;
// 获取所有干员名
@@ -76,7 +76,7 @@ void asst::OperRecognitionTask::callback_analyze_result(bool done)
callback(AsstMsg::SubTaskExtraInfo, info);
}
-std::unordered_set asst::OperRecognitionTask::get_own_oper_names()
+std::unordered_set asst::OperBoxRecognitionTask::get_own_oper_names()
{
LogTraceFunction;
std::unordered_set own_oper_names;
diff --git a/src/MaaCore/Task/Miscellaneous/OperRecognitionTask.h b/src/MaaCore/Task/Miscellaneous/OperBoxRecognitionTask.h
similarity index 72%
rename from src/MaaCore/Task/Miscellaneous/OperRecognitionTask.h
rename to src/MaaCore/Task/Miscellaneous/OperBoxRecognitionTask.h
index 3075a7e448..9af48e7a88 100644
--- a/src/MaaCore/Task/Miscellaneous/OperRecognitionTask.h
+++ b/src/MaaCore/Task/Miscellaneous/OperBoxRecognitionTask.h
@@ -1,16 +1,16 @@
#pragma once
#include "Common/AsstBattleDef.h"
#include "Task/AbstractTask.h"
-#include "Vision/Miscellaneous/OperImageAnalyzer.h"
+#include "Vision/Miscellaneous/OperBoxImageAnalyzer.h"
#include
namespace asst
{
- class OperRecognitionTask : public AbstractTask
+ class OperBoxRecognitionTask : public AbstractTask
{
public:
using AbstractTask::AbstractTask;
- virtual ~OperRecognitionTask() override = default;
+ virtual ~OperBoxRecognitionTask() override = default;
protected:
virtual bool _run() override;
diff --git a/src/MaaCore/Vision/Miscellaneous/OperImageAnalyzer.cpp b/src/MaaCore/Vision/Miscellaneous/OperBoxImageAnalyzer.cpp
similarity index 88%
rename from src/MaaCore/Vision/Miscellaneous/OperImageAnalyzer.cpp
rename to src/MaaCore/Vision/Miscellaneous/OperBoxImageAnalyzer.cpp
index 53b7c06859..078511f836 100644
--- a/src/MaaCore/Vision/Miscellaneous/OperImageAnalyzer.cpp
+++ b/src/MaaCore/Vision/Miscellaneous/OperBoxImageAnalyzer.cpp
@@ -1,4 +1,4 @@
-#include "OperImageAnalyzer.h"
+#include "OperBoxImageAnalyzer.h"
#include "Utils/NoWarningCV.h"
@@ -12,19 +12,19 @@
#include
#include
-bool asst::OperImageAnalyzer::analyze()
+bool asst::OperBoxImageAnalyzer::analyze()
{
LogTraceFunction;
current_page_opers.clear();
- bool oper = analyzer_opers();
+ bool oper_box = analyzer_opers();
#ifdef ASST_DEBUG
m_image_draw = m_image_draw_oper;
#endif
save_img(utils::path("debug") / utils::path("oper"));
- return oper;
+ return oper_box;
}
-bool asst::OperImageAnalyzer::analyzer_opers()
+bool asst::OperBoxImageAnalyzer::analyzer_opers()
{
std::vector oper_names_result;
oper_names_result.clear();
@@ -32,7 +32,7 @@ bool asst::OperImageAnalyzer::analyzer_opers()
OcrWithFlagTemplImageAnalyzer oper_name_analyzer(m_image);
- oper_name_analyzer.set_task_info("OperatorNameFlagLV", "OperatorOCRLV");
+ oper_name_analyzer.set_task_info("OperBoxFlagLV", "OperBoxNameOCR");
oper_name_analyzer.set_replace(ocr_replace->replace_map, ocr_replace->replace_full);
oper_name_analyzer.analyze();
diff --git a/src/MaaCore/Vision/Miscellaneous/OperImageAnalyzer.h b/src/MaaCore/Vision/Miscellaneous/OperBoxImageAnalyzer.h
similarity index 71%
rename from src/MaaCore/Vision/Miscellaneous/OperImageAnalyzer.h
rename to src/MaaCore/Vision/Miscellaneous/OperBoxImageAnalyzer.h
index cd6c3b421c..c02153746e 100644
--- a/src/MaaCore/Vision/Miscellaneous/OperImageAnalyzer.h
+++ b/src/MaaCore/Vision/Miscellaneous/OperBoxImageAnalyzer.h
@@ -7,15 +7,18 @@ namespace asst
struct OperBoxInfo
{
std::string name;
+ std::string id;
+ int level = 0; //等级
+ int elite = 0; //精英度
};
- class OperImageAnalyzer final : public AbstractImageAnalyzer
+ class OperBoxImageAnalyzer final : public AbstractImageAnalyzer
{
public:
static constexpr size_t NPos = ~0ULL;
public:
using AbstractImageAnalyzer::AbstractImageAnalyzer;
- virtual ~OperImageAnalyzer() override = default;
+ virtual ~OperBoxImageAnalyzer() override = default;
virtual bool analyze() override;
diff --git a/src/MaaWpfGui/Main/AsstProxy.cs b/src/MaaWpfGui/Main/AsstProxy.cs
index e9980c9998..3afccf0090 100644
--- a/src/MaaWpfGui/Main/AsstProxy.cs
+++ b/src/MaaWpfGui/Main/AsstProxy.cs
@@ -567,7 +567,7 @@ namespace MaaWpfGui.Main
|| unique_finished_task == (_latestTaskId.TryGetValue(TaskType.RecruitCalc, out var recruitCalcTaskId) ? recruitCalcTaskId : 0)
|| unique_finished_task == (_latestTaskId.TryGetValue(TaskType.CloseDown, out var closeDownTaskId) ? closeDownTaskId : 0)
|| unique_finished_task == (_latestTaskId.TryGetValue(TaskType.Depot, out var depotTaskId) ? depotTaskId : 0)
- || unique_finished_task == (_latestTaskId.TryGetValue(TaskType.Oper, out var operTaskId) ? operTaskId : 0))
+ || unique_finished_task == (_latestTaskId.TryGetValue(TaskType.OperBox, out var operBoxTaskId) ? operBoxTaskId : 0))
{
isMainTaskQueueAllCompleted = false;
}
@@ -822,9 +822,9 @@ namespace MaaWpfGui.Main
_recognizerViewModel.DepotParse((JObject)subTaskDetails);
}
- if (taskChain == "Oper")
+ if (taskChain == "OperBox")
{
- _recognizerViewModel.OperParse((JObject)subTaskDetails);
+ _recognizerViewModel.OperBoxParse((JObject)subTaskDetails);
}
string what = details["what"].ToString();
@@ -1255,7 +1255,7 @@ namespace MaaWpfGui.Main
Copilot,
VideoRec,
Depot,
- Oper,
+ OperBox,
}
private readonly Dictionary _latestTaskId = new Dictionary();
@@ -1657,11 +1657,11 @@ namespace MaaWpfGui.Main
/// 干员识别。
///
/// 是否成功。
- public bool AsstStartOper()
+ public bool AsstStartOperBox()
{
var task_params = new JObject();
- AsstTaskId id = AsstAppendTaskWithEncoding("Oper", task_params);
- _latestTaskId[TaskType.Oper] = id;
+ AsstTaskId id = AsstAppendTaskWithEncoding("OperBox", task_params);
+ _latestTaskId[TaskType.OperBox] = id;
return id != 0 && AsstStart();
}
diff --git a/src/MaaWpfGui/Res/Localizations/en-us.xaml b/src/MaaWpfGui/Res/Localizations/en-us.xaml
index cf91c499b3..ef321c4fd2 100644
--- a/src/MaaWpfGui/Res/Localizations/en-us.xaml
+++ b/src/MaaWpfGui/Res/Localizations/en-us.xaml
@@ -379,9 +379,9 @@
- 干员识别 Tool beta
- 该功能尚处于测试阶段,干员列表请用稀有度和等级排序,若统计有误,欢迎打包 debug/oper 文件后向我们提交issue ~
- 开始识别
+ 干员识别 beta
+ 该功能尚处于测试阶段,干员列表请用稀有度和等级排序,若统计有误,欢迎打包 debug/oper 文件后向我们提交issue ~
+ 开始识别
diff --git a/src/MaaWpfGui/Res/Localizations/ja-jp.xaml b/src/MaaWpfGui/Res/Localizations/ja-jp.xaml
index a78ac55d86..53dd8a3d07 100644
--- a/src/MaaWpfGui/Res/Localizations/ja-jp.xaml
+++ b/src/MaaWpfGui/Res/Localizations/ja-jp.xaml
@@ -380,9 +380,9 @@
- 干员识别 beta
- 该功能尚处于测试阶段,干员列表请用稀有度和等级排序,若统计有误,欢迎打包 debug/oper 文件后向我们提交issue ~
- 开始识别
+ 干员识别 beta
+ 该功能尚处于测试阶段,干员列表请用稀有度和等级排序,若统计有误,欢迎打包 debug/oper 文件后向我们提交issue ~
+ 开始识别
diff --git a/src/MaaWpfGui/Res/Localizations/ko-kr.xaml b/src/MaaWpfGui/Res/Localizations/ko-kr.xaml
index 809561cfcd..3c212d987d 100644
--- a/src/MaaWpfGui/Res/Localizations/ko-kr.xaml
+++ b/src/MaaWpfGui/Res/Localizations/ko-kr.xaml
@@ -360,9 +360,9 @@
- 干员识别 beta
- 该功能尚处于测试阶段,干员列表请用稀有度和等级排序,若统计有误,欢迎打包 debug/oper 文件后向我们提交issue ~
- 开始识别
+ 干员识别 beta
+ 该功能尚处于测试阶段,干员列表请用稀有度和等级排序,若统计有误,欢迎打包 debug/oper 文件后向我们提交issue ~
+ 开始识别
diff --git a/src/MaaWpfGui/Res/Localizations/zh-cn.xaml b/src/MaaWpfGui/Res/Localizations/zh-cn.xaml
index 0644f40d7e..1ad52946ae 100644
--- a/src/MaaWpfGui/Res/Localizations/zh-cn.xaml
+++ b/src/MaaWpfGui/Res/Localizations/zh-cn.xaml
@@ -382,9 +382,9 @@
- 干员识别 beta
- 该功能尚处于测试阶段,干员列表请用稀有度和等级排序,若统计有误,欢迎打包 debug/oper 文件后向我们提交issue ~
- 开始识别
+ 干员识别 beta
+ 该功能尚处于测试阶段,干员列表请用稀有度和等级排序,若统计有误,欢迎打包 debug/oper 文件后向我们提交issue ~
+ 开始识别
diff --git a/src/MaaWpfGui/Res/Localizations/zh-tw.xaml b/src/MaaWpfGui/Res/Localizations/zh-tw.xaml
index a1d469da31..c93a0cb5b7 100644
--- a/src/MaaWpfGui/Res/Localizations/zh-tw.xaml
+++ b/src/MaaWpfGui/Res/Localizations/zh-tw.xaml
@@ -314,9 +314,9 @@
- 干员识别 beta
- 该功能尚处于测试阶段,干员列表请用稀有度和等级排序,若统计有误,欢迎打包 debug/oper 文件后向我们提交issue ~
- 开始识别
+ 干员识别 beta
+ 该功能尚处于测试阶段,干员列表请用稀有度和等级排序,若统计有误,欢迎打包 debug/oper 文件后向我们提交issue ~
+ 开始识别
diff --git a/src/MaaWpfGui/ViewModels/UI/RecognizerViewModel.cs b/src/MaaWpfGui/ViewModels/UI/RecognizerViewModel.cs
index bd4e22266a..3ebfd9ce2b 100644
--- a/src/MaaWpfGui/ViewModels/UI/RecognizerViewModel.cs
+++ b/src/MaaWpfGui/ViewModels/UI/RecognizerViewModel.cs
@@ -336,7 +336,7 @@ namespace MaaWpfGui.ViewModels.UI
}
#endregion
- #region Oper
+ #region OperBox
///
/// 未实装干员,但在battle_data中,
@@ -356,23 +356,23 @@ namespace MaaWpfGui.ViewModels.UI
"阿米娅-WARRIOR",
};
- private string _operInfo = LocalizationHelper.GetString("OperRecognitionTip");
+ private string _operBoxInfo = LocalizationHelper.GetString("OperBoxRecognitionTip");
- public string OperInfo
+ public string OperBoxInfo
{
- get => _operInfo;
- set => SetAndNotify(ref _operInfo, value);
+ get => _operBoxInfo;
+ set => SetAndNotify(ref _operBoxInfo, value);
}
- private string _operResult;
+ private string _operBoxResult;
- public string OperResult
+ public string OperBoxResult
{
- get => _operResult;
- set => SetAndNotify(ref _operResult, value);
+ get => _operBoxResult;
+ set => SetAndNotify(ref _operBoxResult, value);
}
- public bool OperParse(JObject details)
+ public bool OperBoxParse(JObject details)
{
string result = string.Empty;
/*已拥有干员*/
@@ -390,14 +390,11 @@ namespace MaaWpfGui.ViewModels.UI
int count = 0;
foreach (var name in operNotOwn)
{
- if (count++ < 3)
+ result += name + "\t";
+ if (count++ == 3)
{
- result += name + ", ";
- }
- else
- {
- result += name + "\n\t";
- count = 0;
+ result += "\n";
+ count= 0;
}
}
@@ -405,60 +402,57 @@ namespace MaaWpfGui.ViewModels.UI
count = 0;
foreach (var name in operOwn)
{
- if (count++ < 3)
+ result += name + "\t";
+ if (count++ == 3)
{
- result += name + ", ";
- }
- else
- {
- result += name + "\n\t";
+ result += "\n";
count = 0;
}
}
- OperResult = result;
+ OperBoxResult = result;
bool done = (bool)details["done"];
if (done)
{
- OperInfo = LocalizationHelper.GetString("IdentificationCompleted") + "\n" + LocalizationHelper.GetString("OperRecognitionTip");
- OperDone = true;
+ OperBoxInfo = LocalizationHelper.GetString("IdentificationCompleted") + "\n" + LocalizationHelper.GetString("OperBoxRecognitionTip");
+ OperBoxDone = true;
}
return true;
}
- private bool _operdone = false;
+ private bool _operBoxDone = false;
///
/// Gets or sets a value indicating whether depot info is parsed.
///
- public bool OperDone
+ public bool OperBoxDone
{
- get => _operdone;
- set => SetAndNotify(ref _operdone, value);
+ get => _operBoxDone;
+ set => SetAndNotify(ref _operBoxDone, value);
}
private void ClearResult()
{
- OperResult = string.Empty;
- OperDone = false;
+ OperBoxResult = string.Empty;
+ OperBoxDone = false;
}
- public async void StartOper()
+ public async void StartOperBox()
{
string errMsg = string.Empty;
- OperInfo = LocalizationHelper.GetString("ConnectingToEmulator");
+ OperBoxInfo = LocalizationHelper.GetString("ConnectingToEmulator");
bool caught = await Task.Run(() => _asstProxy.AsstConnect(ref errMsg));
if (!caught)
{
- OperInfo = errMsg;
+ OperBoxInfo = errMsg;
return;
}
- OperInfo = LocalizationHelper.GetString("Identifying");
+ OperBoxInfo = LocalizationHelper.GetString("Identifying");
ClearResult();
- _asstProxy.AsstStartOper();
+ _asstProxy.AsstStartOperBox();
}
#endregion
}
diff --git a/src/MaaWpfGui/Views/UI/RecognizerView.xaml b/src/MaaWpfGui/Views/UI/RecognizerView.xaml
index 1be3aacd19..336ca85cff 100644
--- a/src/MaaWpfGui/Views/UI/RecognizerView.xaml
+++ b/src/MaaWpfGui/Views/UI/RecognizerView.xaml
@@ -176,7 +176,7 @@
-
+
@@ -196,13 +196,13 @@
VerticalAlignment="Top"
FontSize="14"
Style="{StaticResource TextBlockDefaultBold}"
- Text="{Binding OperInfo}"
+ Text="{Binding OperBoxInfo}"
TextWrapping="Wrap"/>
@@ -219,8 +219,8 @@
Margin="482,0,0,0"
HorizontalAlignment="Center"
VerticalAlignment="Center"
- Command="{s:Action StartOper}"
- Content="{DynamicResource BeganToOperRecognition}"
+ Command="{s:Action StartOperBox}"
+ Content="{DynamicResource BeganToOperBoxRecognition}"
/>