mirror of
https://github.com/MaaAssistantArknights/MaaAssistantArknights.git
synced 2026-07-15 17:30:27 +08:00
chore: 新增 AUTO 选项
This commit is contained in:
@@ -26,12 +26,10 @@ bool asst::FightSeriesAdjustPlugin::_run()
|
||||
int exceeded_num = get_exceeded_num();
|
||||
if (exceeded_num <= 6 && exceeded_num > 1) {
|
||||
ProcessTask(*this, { "FightSeries-List-" + std::to_string(exceeded_num - 1) }).run();
|
||||
auto modified_next = original_close_stone_page_next;
|
||||
modified_next.insert(modified_next.begin(), "Fight@StartButton1");
|
||||
Task.get("Fight@CloseStonePage")->next = modified_next;
|
||||
set_close_stone_page_next(true);
|
||||
}
|
||||
else {
|
||||
Task.get("Fight@CloseStonePage")->next = original_close_stone_page_next;
|
||||
set_close_stone_page_next(false);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -12,12 +12,15 @@ public:
|
||||
|
||||
virtual bool verify(AsstMsg msg, const json::value& details) const override;
|
||||
|
||||
void set_close_stone_page_next(bool enable) const { Task.get("Fight@CloseStonePage")->next = enable ? modified_close_stone_page_next : original_close_stone_page_next; };
|
||||
|
||||
protected:
|
||||
virtual bool _run() override;
|
||||
|
||||
private:
|
||||
// 临时处理
|
||||
std::vector<std::string> original_close_stone_page_next = { "Fight@StageSNReturnFlag", "Fight@Stop" };
|
||||
std::vector<std::string> modified_close_stone_page_next = { "Fight@StartButton1", "Fight@StageSNReturnFlag", "Fight@Stop" };
|
||||
int get_exceeded_num() const;
|
||||
};
|
||||
}
|
||||
|
||||
@@ -73,11 +73,19 @@ bool asst::FightTask::set_params(const json::value& params)
|
||||
const int expiring_medicine = params.get("expiring_medicine", 0);
|
||||
const int stone = params.get("stone", 0);
|
||||
const int times = params.get("times", INT_MAX);
|
||||
const int series = params.get("series", 1);
|
||||
if (series < 1 || series > 6) {
|
||||
int series = params.get("series", 1);
|
||||
|
||||
m_fight_series_adjust_plugin_ptr->set_close_stone_page_next(false);
|
||||
m_fight_series_adjust_plugin_ptr->set_enable(false);
|
||||
if (series == 1000) {
|
||||
m_fight_series_adjust_plugin_ptr->set_enable(true);
|
||||
series = 6;
|
||||
}
|
||||
else if (series < 1 || series > 6) {
|
||||
Log.error("Invalid series");
|
||||
return false;
|
||||
}
|
||||
|
||||
bool enable_penguin = params.get("report_to_penguin", false);
|
||||
bool enable_yituliu = params.get("report_to_yituliu", false);
|
||||
std::string penguin_id = params.get("penguin_id", "");
|
||||
|
||||
@@ -103,10 +103,16 @@ public class FightSettingsUserControlModel : TaskViewModel
|
||||
{ "炭", "SK-5" },
|
||||
};
|
||||
|
||||
/// <summary>
|
||||
/// Gets or private sets the list of series.
|
||||
/// </summary>
|
||||
public List<int> SeriesList { get; private set; } = Enumerable.Range(1, 6).ToList();
|
||||
public Dictionary<string, int> SeriesList { get; } = new()
|
||||
{
|
||||
{ "AUTO", 1000 },
|
||||
{ "6", 6 },
|
||||
{ "5", 5 },
|
||||
{ "4", 4 },
|
||||
{ "3", 6 },
|
||||
{ "2", 2 },
|
||||
{ "1", 1 },
|
||||
};
|
||||
|
||||
public string?[] Stages => [Stage1, Stage2, Stage3];
|
||||
|
||||
@@ -465,7 +471,7 @@ public class FightSettingsUserControlModel : TaskViewModel
|
||||
}
|
||||
}
|
||||
|
||||
private int _series = ConfigurationHelper.GetValue(ConfigurationKeys.SeriesQuantity, 1);
|
||||
private int _series = ConfigurationHelper.GetValue(ConfigurationKeys.SeriesQuantity, 1000);
|
||||
|
||||
/// <summary>
|
||||
/// Gets or sets the max number of times.
|
||||
|
||||
@@ -170,7 +170,9 @@
|
||||
IsHitTestVisible="{c:Binding !FightTaskRunning,
|
||||
Source={x:Static helper:Instances.TaskQueueViewModel}}"
|
||||
ItemsSource="{Binding SeriesList}"
|
||||
SelectedValue="{Binding Series}" />
|
||||
SelectedValue="{Binding Series}"
|
||||
DisplayMemberPath="Key"
|
||||
SelectedValuePath="Value" />
|
||||
</StackPanel>
|
||||
</Grid>
|
||||
<Grid Grid.Row="3">
|
||||
|
||||
Reference in New Issue
Block a user