mirror of
https://github.com/MaaAssistantArknights/MaaAssistantArknights.git
synced 2026-07-16 17:57:01 +08:00
fix: 调整部分滑动延迟,放到配置文件中
This commit is contained in:
@@ -14,6 +14,8 @@
|
||||
"adbExtraSwipeDuration_Doc": "额外的滑动持续时间:adb有bug,同样的参数,偶尔会划得非常远。额外做一个短程滑动,把之前的停下来。若小于0,则关闭额外滑动功能",
|
||||
"adbSwipeDurationMultiplier": 10.0,
|
||||
"adbSwipeDurationMultiplier_Doc": "adb 滑动延迟倍数",
|
||||
"minitouchSwipeDefaultDuration": 200,
|
||||
"minitouchSwipeExtraEndDelay": 150,
|
||||
"minitouchExtraSwipeDist": 100,
|
||||
"minitouchExtraSwipeDuration": 200,
|
||||
"minitouchProgramsOrder": [
|
||||
|
||||
@@ -18,6 +18,8 @@ bool asst::GeneralConfig::parse(const json::value& json)
|
||||
m_options.adb_swipe_duration_multiplier = options_json.get("adbSwipeDurationMultiplier", 10.0);
|
||||
m_options.minitouch_extra_swipe_dist = options_json.get("minitouchExtraSwipeDist", 100);
|
||||
m_options.minitouch_extra_swipe_duration = options_json.get("minitouchExtraSwipeDuration", -1);
|
||||
m_options.minitouch_swipe_default_duration = options_json.get("minitouchSwipeDefaultDuration", 200);
|
||||
m_options.minitouch_swipe_extra_end_delay = options_json.get("minitouchSwipeExtraEndDelay", 150);
|
||||
m_options.swipe_with_pause_required_distance = options_json.get("swipeWithPauseRequiredDistance", 50);
|
||||
if (auto order = options_json.find<json::array>("minitouchProgramsOrder")) {
|
||||
m_options.minitouch_programs_order.clear();
|
||||
|
||||
@@ -39,6 +39,8 @@ namespace asst
|
||||
double adb_swipe_duration_multiplier = 0; // adb 滑动持续时间倍数
|
||||
int minitouch_extra_swipe_dist = 0;
|
||||
int minitouch_extra_swipe_duration = -1;
|
||||
int minitouch_swipe_default_duration = 0;
|
||||
int minitouch_swipe_extra_end_delay = 0;
|
||||
int swipe_with_pause_required_distance = 0;
|
||||
std::vector<std::string> minitouch_programs_order;
|
||||
RequestInfo penguin_report; // 企鹅物流汇报:
|
||||
|
||||
@@ -191,12 +191,10 @@ bool asst::MinitouchController::swipe(const Point& p1, const Point& p2, int dura
|
||||
}
|
||||
};
|
||||
|
||||
constexpr int DefaultDuration = 200;
|
||||
minitouch_move(x1, y1, x2, y2, duration ? duration : DefaultDuration);
|
||||
minitouch_move(x1, y1, x2, y2, duration ? duration : opt.minitouch_swipe_default_duration);
|
||||
|
||||
if (extra_swipe && opt.minitouch_extra_swipe_duration > 0) {
|
||||
constexpr int ExtraEndDelay = 100; // 停留终点
|
||||
m_minitoucher->wait(ExtraEndDelay);
|
||||
m_minitoucher->wait(opt.minitouch_swipe_extra_end_delay); // 停留终点
|
||||
minitouch_move(x2, y2, x2, y2 - opt.minitouch_extra_swipe_dist, opt.minitouch_extra_swipe_duration);
|
||||
}
|
||||
bool ret = m_minitoucher->up();
|
||||
|
||||
@@ -143,13 +143,12 @@ bool asst::PlayToolsController::swipe(const Point& p1, const Point& p2, int dura
|
||||
}
|
||||
};
|
||||
|
||||
constexpr int DefaultDuration = 200;
|
||||
progressive_move(x1, y1, x2, y2, duration ? duration : DefaultDuration);
|
||||
|
||||
const auto& opt = Config.get_options();
|
||||
|
||||
progressive_move(x1, y1, x2, y2, duration ? duration : opt.minitouch_swipe_default_duration);
|
||||
|
||||
if (extra_swipe && opt.minitouch_extra_swipe_duration > 0) {
|
||||
constexpr int ExtraEndDelay = 100; // 停留终点
|
||||
toucher_wait(ExtraEndDelay);
|
||||
toucher_wait(opt.minitouch_swipe_extra_end_delay); // 停留终点
|
||||
progressive_move(x2, y2, x2, y2 - opt.minitouch_extra_swipe_dist, opt.minitouch_extra_swipe_duration);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user