using CommunityToolkit.Mvvm.ComponentModel; using System; using BetterGenshinImpact.GameTask.AutoSkip.Model; namespace BetterGenshinImpact.GameTask.AutoSkip; /// /// 自动跳过剧情配置 /// [Serializable] public partial class AutoSkipConfig : ObservableObject { /// /// 触发器是否启用 /// 启用后: /// 1. 快速跳过对话 /// 2. 自动点击一个识别到的选项 /// 3. 黑屏过长自动点击跳过 /// [ObservableProperty] private bool _enabled = true; /// /// 快速跳过对话 /// [ObservableProperty] private bool _quicklySkipConversationsEnabled = true; // public int ChatOptionTextWidth { get; set; } = 280; // // public int ExpeditionOptionTextWidth { get; set; } = 130; /// /// 选择选项前的延迟(毫秒) /// [ObservableProperty] private int _afterChooseOptionSleepDelay = 0; /// /// 点击对话框前的延迟(毫秒) /// [ObservableProperty] private int _beforeClickConfirmDelay = 0; /// /// 自动领取每日委托奖励 /// [ObservableProperty] private bool _autoGetDailyRewardsEnabled = true; /// /// 自动重新派遣 /// [ObservableProperty] private bool _autoReExploreEnabled = true; /// /// 自动重新派遣使用角色配置,逗号分割 /// [Obsolete] [ObservableProperty] private string _autoReExploreCharacter = ""; /// /// 优先选择第一个选项 /// 优先选择最后一个选项 /// 不选择选项 /// [ObservableProperty] private string _clickChatOption = "优先选择第一个选项"; /// /// 自定义优先选项启用 /// [ObservableProperty] private bool _customPriorityOptionsEnabled = false; /// /// 自定义优先选项文本,每行一个或用分号分隔 /// [ObservableProperty] private string _customPriorityOptions = ""; /// /// 自动邀约启用 /// [ObservableProperty] private bool _autoHangoutEventEnabled = false; /// /// 自动邀约分支选择 /// [ObservableProperty] private string _autoHangoutEndChoose = string.Empty; /// /// 自动邀约选择选项前的延迟(毫秒) /// [ObservableProperty] private int _autoHangoutChooseOptionSleepDelay = 0; /// /// 自动邀约自动点击跳过按钮 /// [ObservableProperty] private bool _autoHangoutPressSkipEnabled = true; public bool IsClickFirstChatOption() { return ClickChatOption == "优先选择第一个选项"; } public bool IsClickRandomChatOption() { return ClickChatOption == "随机选择选项"; } public bool IsClickNoneChatOption() { return ClickChatOption == "不选择选项"; } /// /// 后台运行 /// [ObservableProperty] private bool _runBackgroundEnabled = false; /// /// 提交物品 /// [ObservableProperty] private bool _submitGoodsEnabled = true; /// /// 游戏失焦时显示画中画 /// [ObservableProperty] private bool _pictureInPictureEnabled = false; /// /// 画中画的源图像类型 /// TriggerDispatcher:来自于截图器50ms一次 /// CaptureLoop:主动获取(60帧) /// [ObservableProperty] private string _pictureInPictureSourceType = nameof(PictureSourceType.CaptureLoop); /// /// 关闭弹出层 /// [ObservableProperty] private bool _closePopupPagedEnabled = true; /// /// JS调用时跳过内置默认点击选项 /// [ObservableProperty] private bool _skipBuiltInClickOptions = false; // /// // /// 使用交互键 // /// 使用鼠标 // /// // [ObservableProperty] // private string _selectChatOptionType = SelectChatOptionTypes.UseMouse; } public enum PictureSourceType { TriggerDispatcher, CaptureLoop }