using System; using BetterGenshinImpact.Core.Script.Dependence.Model.TimerConfig; using BetterGenshinImpact.GameTask.AutoSkip; using BetterGenshinImpact.Helpers; namespace BetterGenshinImpact.Core.Script.Dependence.Model; /// /// 实时任务触发器 /// public class RealtimeTimer { /// /// 实时任务触发器名称 /// public string? Name { get; set; } /// /// 实时任务触发器时间间隔 /// 默认50ms /// public int Interval { get; set; } = 50; /// /// 实时任务配置 /// public object? Config; public RealtimeTimer() { } public RealtimeTimer(string name) { Name = name; } public RealtimeTimer(string name, dynamic config) { Name = name; if (Name == "AutoPick") { Config = ScriptObjectConverter.ConvertTo(config); } else if (Name == "AutoSkip") { if (config is AutoSkipConfig) { Config = config; } else { throw new ArgumentException("AutoSkip的配置参数需要为AutoSkipConfig类型"); } } } }