diff --git a/src/MaaCore/Task/Roguelike/RoguelikeDifficultySelectionTaskPlugin.cpp b/src/MaaCore/Task/Roguelike/RoguelikeDifficultySelectionTaskPlugin.cpp index ed6dacb5c4..d9a6e3748e 100644 --- a/src/MaaCore/Task/Roguelike/RoguelikeDifficultySelectionTaskPlugin.cpp +++ b/src/MaaCore/Task/Roguelike/RoguelikeDifficultySelectionTaskPlugin.cpp @@ -47,7 +47,16 @@ bool asst::RoguelikeDifficultySelectionTaskPlugin::_run() { LogTraceFunction; - const int difficulty = m_config->get_run_for_collectible() ? 0 : m_config->get_difficulty(); + int difficulty = m_config->get_difficulty(); + if (difficulty == -1) { + Log.info(__FUNCTION__, "| use current difficulty, skip select_difficulty"); + return true; + } + + if (m_config->get_run_for_collectible()) { + difficulty = 0; + } + Log.info(__FUNCTION__, "| current_difficulty:", m_current_difficulty, "next difficulty:", difficulty); // 仅在插件记录的当前难度与目标难度不一致时重新选择难度 diff --git a/src/MaaWpfGui/ViewModels/UI/SettingsViewModel.cs b/src/MaaWpfGui/ViewModels/UI/SettingsViewModel.cs index ba38542a0b..87091951a4 100644 --- a/src/MaaWpfGui/ViewModels/UI/SettingsViewModel.cs +++ b/src/MaaWpfGui/ViewModels/UI/SettingsViewModel.cs @@ -1962,6 +1962,8 @@ namespace MaaWpfGui.ViewModels.UI var value = i.ToString(); RoguelikeDifficultyList.Add(new CombinedData { Display = value, Value = value }); } + + RoguelikeDifficultyList.Add(new CombinedData { Display = "Current", Value = (-1).ToString() }); } private void UpdateRoguelikeModeList()