Files
better-genshin-impact/BetterGenshinImpact/Core/Config/OneDragonFlowConfig.cs
kaedelcb 1c706d90e6 合成树脂保留/周日秘境奖励选择/一条龙尘歌壶优化 (#1565)
* 一条龙列表空时添加提示,按钮优化

* 1.自动秘境:添加周日材料本三种奖励选择、优化进入秘境横幅点击
2.合成浓缩树脂:添加合成浓缩后保留原粹树脂数量的功能

* 1.自动秘境:添加周日材料本三种奖励选择、优化进入秘境横幅点击
2.合成浓缩树脂:添加合成浓缩后保留原粹树脂数量的功能

* 1.优化加入浓缩树脂判断,最大合成数量限制。

* 1.优化一条龙页面UI显示。
2.合成树脂次数判断逻辑修复。

* 一条龙任务列表UI微调优化

* 代码微调

* 时间判断错误修复

* 合成树脂数量逻辑调整,应该没啥问题了

* 新增图片识别的图片

* 优化最大合成数的写法

* 一条龙内置尘歌壶添加配置日期和商品名称
优化寻找啊圆逻辑

* 1.自动秘境进入优化

* 优化寻找啊圆的逻辑

* 优化初始状态判断

* 优化购买逻辑判断代码

* 优化确定洞天名称方法

* 优化合成树脂判断为负数归零

* 自动秘境跳过判断删除秘境队伍判断

* OCR修改

* 一些无效using删除

---------

Co-authored-by: 辉鸭蛋 <huiyadanli@gmail.com>
2025-05-11 17:01:25 +08:00

139 lines
4.1 KiB
C#

using System;
using System.Collections.Generic;
using CommunityToolkit.Mvvm.ComponentModel;
namespace BetterGenshinImpact.Core.Config;
[Serializable]
public partial class OneDragonFlowConfig : ObservableObject
{
// 配置名
[ObservableProperty]
private string _name = string.Empty;
/// <summary>
/// 所有任务的开关状态
/// </summary>
public Dictionary<string, bool> TaskEnabledList { get; set; } = new();
// 合成树脂的国家
[ObservableProperty]
private string _craftingBenchCountry = "枫丹";
// 冒险者协会的国家
[ObservableProperty]
private string _adventurersGuildCountry = "枫丹";
// 自动战斗配置的队伍名称
[ObservableProperty]
private string _partyName = string.Empty;
// 自动战斗配置的策略名称
[ObservableProperty]
private string _domainName = string.Empty;
[ObservableProperty]
private bool _weeklyDomainEnabled = false;
// 领取每日奖励的好感队伍名称
[ObservableProperty]
private string _dailyRewardPartyName = string.Empty;
// 合成浓缩后保留原粹树脂的数量
[ObservableProperty]
private int _minResinToKeep = 0;
// 领取每日奖励的好感数量
[ObservableProperty]
private string _sundayEverySelectedValue = "0";
// 领取每日奖励的好感数量
[ObservableProperty]
private string _sundaySelectedValue = "0";
// 尘歌壶洞天购买商品
[ObservableProperty]
private List<string> _secretTreasureObjects = new();
#region
//周一
[ObservableProperty]
private string _mondayPartyName = string.Empty;
[ObservableProperty]
private string _mondayDomainName = string.Empty;
//周二
[ObservableProperty]
private string _tuesdayPartyName = string.Empty;
[ObservableProperty]
private string _tuesdayDomainName = string.Empty;
//周三
[ObservableProperty]
private string _wednesdayPartyName = string.Empty;
[ObservableProperty]
private string _wednesdayDomainName = string.Empty;
//周四
[ObservableProperty]
private string _thursdayPartyName = string.Empty;
[ObservableProperty]
private string _thursdayDomainName = string.Empty;
//周五
[ObservableProperty]
private string _fridayPartyName = string.Empty;
[ObservableProperty]
private string _fridayDomainName = string.Empty;
//周六
[ObservableProperty]
private string _saturdayPartyName = string.Empty;
[ObservableProperty]
private string _saturdayDomainName = string.Empty;
//周日
[ObservableProperty]
private string _sundayPartyName = string.Empty;
[ObservableProperty]
private string _sundayDomainName = string.Empty;
// 完成后操作
[ObservableProperty]
private string _completionAction = string.Empty;
// 通过当天是哪一天来返回配置
public (string partyName, string domainName, string sundaySelectedValue) GetDomainConfig()
{
if (WeeklyDomainEnabled)
{
var dayOfWeek = DateTime.Now.DayOfWeek;
return dayOfWeek switch
{
DayOfWeek.Monday => (MondayPartyName, MondayDomainName,SundaySelectedValue),
DayOfWeek.Tuesday => (TuesdayPartyName, TuesdayDomainName,SundaySelectedValue),
DayOfWeek.Wednesday => (WednesdayPartyName, WednesdayDomainName,SundaySelectedValue),
DayOfWeek.Thursday => (ThursdayPartyName, ThursdayDomainName,SundaySelectedValue),
DayOfWeek.Friday => (FridayPartyName, FridayDomainName,SundaySelectedValue),
DayOfWeek.Saturday => (SaturdayPartyName, SaturdayDomainName,SundaySelectedValue),
DayOfWeek.Sunday => (SundayPartyName, SundayDomainName,SundaySelectedValue),
_ => (PartyName, DomainName,SundaySelectedValue)
};
}
else
{
return (PartyName, DomainName,SundayEverySelectedValue);
}
}
#endregion
}