From 9b8f92f0f72ec6fd739b5e6b584600d366dd2d97 Mon Sep 17 00:00:00 2001 From: status102 <102887808+status102@users.noreply.github.com> Date: Thu, 6 Feb 2025 11:28:21 +0800 Subject: [PATCH] revert: 448171060575c4bcafaef82959e49cda0abf1ca6 --- .../Roguelike/RoguelikeStageEncounterConfig.h | 23 -------------- .../Map/RoguelikeRoutingTaskPlugin.cpp | 5 ++- .../Task/Roguelike/RoguelikeConfig.cpp | 11 ++----- src/MaaCore/Task/Roguelike/RoguelikeConfig.h | 7 ----- .../RoguelikeCustomStartTaskPlugin.cpp | 31 ------------------- .../RoguelikeInputSeedTaskPlugin.cpp | 5 --- .../Roguelike/RoguelikeRecruitTaskPlugin.cpp | 3 +- src/MaaWpfGui/Main/AsstProxy.cs | 4 --- .../RoguelikeSettingsUserControl.xaml | 4 +-- 9 files changed, 8 insertions(+), 85 deletions(-) diff --git a/src/MaaCore/Config/Roguelike/RoguelikeStageEncounterConfig.h b/src/MaaCore/Config/Roguelike/RoguelikeStageEncounterConfig.h index e3e8239f0e..d3f676cc9e 100644 --- a/src/MaaCore/Config/Roguelike/RoguelikeStageEncounterConfig.h +++ b/src/MaaCore/Config/Roguelike/RoguelikeStageEncounterConfig.h @@ -26,29 +26,6 @@ public: const auto& get_event_names(const std::string& theme) const noexcept { return m_event_names.at(theme); } - bool set_event(std::string theme, RoguelikeMode mode, std::string event_name, int choose, int option_num) - { - std::pair key = std::make_pair(theme, static_cast(mode)); - if (theme == "Sarkaz" || theme == "Sami") { - // 在调试器里发现 m_events 中,Sami 和 Sarkaz 的 mode 只有 -1 - key.second = -1; - } - // 边界检查 - auto outerIt = m_events.find(key); - if (outerIt == m_events.end()) { - return false; - } - auto& innerMap = outerIt->second; - auto innerIt = innerMap.find(event_name); - if (innerIt == innerMap.end()) { - return false; - } - // 修改事件选择 - m_events[key][event_name].default_choose = choose; - m_events[key][event_name].option_num = option_num; - return true; - } - enum class ComparisonType { GreaterThan, diff --git a/src/MaaCore/Task/Roguelike/Map/RoguelikeRoutingTaskPlugin.cpp b/src/MaaCore/Task/Roguelike/Map/RoguelikeRoutingTaskPlugin.cpp index cf851822a8..7e10f35770 100644 --- a/src/MaaCore/Task/Roguelike/Map/RoguelikeRoutingTaskPlugin.cpp +++ b/src/MaaCore/Task/Roguelike/Map/RoguelikeRoutingTaskPlugin.cpp @@ -12,7 +12,7 @@ #include "Vision/Miscellaneous/BrightPointAnalyzer.h" #include "Vision/MultiMatcher.h" -bool asst::RoguelikeRoutingTaskPlugin::load_params(const json::value& params) +bool asst::RoguelikeRoutingTaskPlugin::load_params([[maybe_unused]] const json::value& params) { const std::string& theme = m_config->get_theme(); @@ -36,8 +36,7 @@ bool asst::RoguelikeRoutingTaskPlugin::load_params(const json::value& params) const RoguelikeMode& mode = m_config->get_mode(); const std::string squad = params.get("squad", ""); - if (mode == RoguelikeMode::Investment && - (squad == "点刺成锭分队" || (squad == "后勤分队" && params.get("start_with_seed", false)))) { + if (mode == RoguelikeMode::Investment && squad == "点刺成锭分队") { m_routing_strategy = RoutingStrategy::FastInvestment; return true; } diff --git a/src/MaaCore/Task/Roguelike/RoguelikeConfig.cpp b/src/MaaCore/Task/Roguelike/RoguelikeConfig.cpp index 678b65593c..43aee9e437 100644 --- a/src/MaaCore/Task/Roguelike/RoguelikeConfig.cpp +++ b/src/MaaCore/Task/Roguelike/RoguelikeConfig.cpp @@ -36,7 +36,6 @@ bool asst::RoguelikeConfig::verify_and_load_params(const json::value& params) } } - m_start_with_seed = params.get("start_with_seed", false); m_start_with_elite_two = params.get("start_with_elite_two", false); m_only_start_with_elite_two = params.get("only_start_with_elite_two", false); if (mode != RoguelikeMode::Collectible && (m_start_with_elite_two || m_only_start_with_elite_two)) { @@ -61,13 +60,9 @@ bool asst::RoguelikeConfig::verify_and_load_params(const json::value& params) // 点刺成锭分队特殊策略 if (m_theme == "Sarkaz") { - auto squad = params.get("squad", ""); - if (m_mode == RoguelikeMode::Investment && - (squad == "点刺成锭分队" || (squad == "后勤分队" && m_start_with_seed))) { - if (squad == "点刺成锭分队") { - // 启用特殊策略,联动 RoguelikeRoutingTaskPlugin - Task.set_task_base(strategy_task, "Sarkaz@Roguelike@StrategyChange-FastInvestment"); - } + if (m_mode == RoguelikeMode::Investment && params.get("squad", "") == "点刺成锭分队") { + // 启用特殊策略,联动 RoguelikeRoutingTaskPlugin + Task.set_task_base(strategy_task, "Sarkaz@Roguelike@StrategyChange-FastInvestment"); // 禁用前 2 层的 <思维负荷干员编队> 功能 Task.set_task_base( "Sarkaz@Roguelike@StageBurdenOperation", diff --git a/src/MaaCore/Task/Roguelike/RoguelikeConfig.h b/src/MaaCore/Task/Roguelike/RoguelikeConfig.h index 50b446c56c..38b7413516 100644 --- a/src/MaaCore/Task/Roguelike/RoguelikeConfig.h +++ b/src/MaaCore/Task/Roguelike/RoguelikeConfig.h @@ -158,13 +158,6 @@ private: // ------------------ 密文板 ------------------ bool m_first_floor_foldartal = false; // 凹远见密文板 - // =========================== 萨卡兹主题专用参数 =========================== -public: - bool get_start_with_seed() const { return m_start_with_seed; } - -private: - bool m_start_with_seed = false; // 种子刷钱 - // ================================================================================ // 以下为局内数据,每次重置 // ================================================================================ diff --git a/src/MaaCore/Task/Roguelike/RoguelikeCustomStartTaskPlugin.cpp b/src/MaaCore/Task/Roguelike/RoguelikeCustomStartTaskPlugin.cpp index 7defb37e29..2577e98f84 100644 --- a/src/MaaCore/Task/Roguelike/RoguelikeCustomStartTaskPlugin.cpp +++ b/src/MaaCore/Task/Roguelike/RoguelikeCustomStartTaskPlugin.cpp @@ -72,14 +72,6 @@ bool asst::RoguelikeCustomStartTaskPlugin::load_params(const json::value& params m_collectible_mode_squad = params.get("collectible_mode_squad", m_squad); } - if (m_config->get_mode() == RoguelikeMode::Investment && - params.get("start_with_seed", false)) { // 种子刷钱,强制随心所欲 - set_custom(RoguelikeCustomType::Roles, "随心所欲"); - } - else { - set_custom(RoguelikeCustomType::Roles, params.get("roles", "")); // 开局职业组 - } - set_custom(RoguelikeCustomType::CoreChar, params.get("core_char", "")); // 开局干员名 m_config->set_use_support(params.get("use_support", false)); // 开局干员是否为助战干员 m_config->set_use_nonfriend_support(params.get("use_nonfriend_support", false)); // 是否可以是非好友助战干员 @@ -128,8 +120,6 @@ bool asst::RoguelikeCustomStartTaskPlugin::_run() bool asst::RoguelikeCustomStartTaskPlugin::hijack_squad() { - LogTraceFunction; - std::string squad = !m_config->get_run_for_collectible() ? m_squad : m_collectible_mode_squad; if (squad.empty()) { // 简单处理,认为指挥分队无需滑屏,没有就随机 return ProcessTask( @@ -195,8 +185,6 @@ bool asst::RoguelikeCustomStartTaskPlugin::hijack_reward() bool asst::RoguelikeCustomStartTaskPlugin::hijack_roles() { - LogTraceFunction; - auto image = ctrler()->get_image(); OCRer analyzer(image); analyzer.set_task_info("RoguelikeCustom-HijackRoles"); @@ -212,25 +200,6 @@ bool asst::RoguelikeCustomStartTaskPlugin::hijack_roles() bool asst::RoguelikeCustomStartTaskPlugin::hijack_core_char() { - LogTraceFunction; - - if (m_config->get_start_with_seed()) { - Log.trace("Start with seed"); - auto image = ctrler()->get_image(); - OCRer analyzer(image); - analyzer.set_task_info("RoguelikeCustom-HijackCoChar"); - analyzer.set_roi({ 186, 500, 913, 200 }); - analyzer.set_required({ "招募" }); - if (!analyzer.analyze()) { - return false; - } - const auto& role_rect = analyzer.get_result().front().rect; - ctrler()->click(role_rect); - - m_config->set_core_char(m_customs[RoguelikeCustomType::CoreChar]); - return true; - } - const std::string& char_name = m_customs[RoguelikeCustomType::CoreChar]; static const std::unordered_map RoleOcrNameMap = { diff --git a/src/MaaCore/Task/Roguelike/RoguelikeInputSeedTaskPlugin.cpp b/src/MaaCore/Task/Roguelike/RoguelikeInputSeedTaskPlugin.cpp index 57d72a1d14..b81b3bd935 100644 --- a/src/MaaCore/Task/Roguelike/RoguelikeInputSeedTaskPlugin.cpp +++ b/src/MaaCore/Task/Roguelike/RoguelikeInputSeedTaskPlugin.cpp @@ -6,11 +6,6 @@ bool asst::RoguelikeInputSeedTaskPlugin::load_params([[maybe_unused]] const json::value& params) { - // 萨卡兹种子刷钱 - if (m_config->get_theme() == RoguelikeTheme::Sarkaz && params.get("start_with_seed", false)) { - RoguelikeStageEncounter.set_event(m_config->get_theme(), m_config->get_mode(), "相遇", 3, 4); - return true; - } return false; } diff --git a/src/MaaCore/Task/Roguelike/RoguelikeRecruitTaskPlugin.cpp b/src/MaaCore/Task/Roguelike/RoguelikeRecruitTaskPlugin.cpp index d5df0341f5..4b131f4364 100644 --- a/src/MaaCore/Task/Roguelike/RoguelikeRecruitTaskPlugin.cpp +++ b/src/MaaCore/Task/Roguelike/RoguelikeRecruitTaskPlugin.cpp @@ -71,8 +71,7 @@ bool asst::RoguelikeRecruitTaskPlugin::_run() ++m_recruit_count; if (m_config->get_theme() == RoguelikeTheme::Sarkaz && m_config->get_mode() == RoguelikeMode::Investment && - (m_config->get_squad() == "点刺成锭分队" || - (m_config->get_squad() == "后勤分队" && m_config->get_start_with_seed()))) { + m_config->get_squad() == "点刺成锭分队") { ProcessTask(*this, { "Sarkaz@RoguelikeRecruit-GiveUp" }).run(); return true; } diff --git a/src/MaaWpfGui/Main/AsstProxy.cs b/src/MaaWpfGui/Main/AsstProxy.cs index 3c09f74ad1..37e456e4dc 100644 --- a/src/MaaWpfGui/Main/AsstProxy.cs +++ b/src/MaaWpfGui/Main/AsstProxy.cs @@ -2555,10 +2555,6 @@ namespace MaaWpfGui.Main taskParams["stop_at_final_boss"] = stopAtFinalBoss; taskParams["stop_at_max_level"] = stopAtMaxLevel; } - else if (mode == 1) - { - taskParams["start_with_seed"] = startWithSeed; - } else if (mode == 4) { // 刷开局模式 diff --git a/src/MaaWpfGui/Views/UserControl/TaskQueue/RoguelikeSettingsUserControl.xaml b/src/MaaWpfGui/Views/UserControl/TaskQueue/RoguelikeSettingsUserControl.xaml index f481a27931..63afd946fa 100644 --- a/src/MaaWpfGui/Views/UserControl/TaskQueue/RoguelikeSettingsUserControl.xaml +++ b/src/MaaWpfGui/Views/UserControl/TaskQueue/RoguelikeSettingsUserControl.xaml @@ -275,7 +275,7 @@ Text="{DynamicResource RoguelikeStopAtMaxLevel}" TextWrapping="Wrap" /> - @@ -283,7 +283,7 @@ Block.TextAlignment="Left" Text="{DynamicResource RoguelikeStartWithSeed}" TextWrapping="Wrap" /> - + -->