using BetterGenshinImpact.GameTask; using BetterGenshinImpact.GameTask.AutoTrackPath; using System.Threading.Tasks; using BetterGenshinImpact.GameTask.Common.Job; using Vanara.PInvoke; namespace BetterGenshinImpact.Core.Script.Dependence; public class Genshin { private RECT captureAreaRect = TaskContext.Instance().SystemInfo.CaptureAreaRect; /// /// 游戏宽度 /// public int Width => captureAreaRect.Width; /// /// 游戏高度 /// public int Height => captureAreaRect.Height; /// /// 游戏窗口大小相比1080P的缩放比例 /// public double ScaleTo1080PRatio { get; } = TaskContext.Instance().SystemInfo.ScaleTo1080PRatio; /// /// 系统屏幕的DPI缩放比例 /// public double ScreenDpiScale => TaskContext.Instance().DpiScale; /// /// 传送到指定位置 /// /// /// /// public async Task Tp(double x, double y) { await new TpTask(CancellationContext.Instance.Cts.Token).Tp(x, y); } public async Task Tp(double x, double y, bool force) { await new TpTask(CancellationContext.Instance.Cts.Token).Tp(x, y, force); } /// /// 传送到指定位置 /// /// /// /// public async Task Tp(string x, string y) { double.TryParse(x, out var dx); double.TryParse(y, out var dy); await Tp(dx, dy); } public async Task Tp(string x, string y, bool force) { double.TryParse(x, out var dx); double.TryParse(y, out var dy); await Tp(dx, dy, force); } /// /// 切换队伍 /// /// 队伍界面自定义的队伍名称 /// public async Task SwitchParty(string partyName) { await new SwitchPartyTask().Start(partyName, CancellationContext.Instance.Cts.Token); } /// /// 自动点击空月祝福 /// /// public async Task BlessingOfTheWelkinMoon() { await new BlessingOfTheWelkinMoonTask().Start(CancellationContext.Instance.Cts.Token); } /// /// 持续对话并选择目标选项 /// /// 选项文本 /// 跳过次数 /// 是否为橙色选项 /// public async Task ChooseTalkOption(string option, int skipTimes = 10, bool isOrange = false) { await new ChooseTalkOptionTask().SingleSelectText(option, CancellationContext.Instance.Cts.Token, skipTimes, isOrange); } /// /// 一键领取纪行奖励 /// /// public async Task ClaimBattlePassRewards() { await new ClaimBattlePassRewardsTask().Start(CancellationContext.Instance.Cts.Token); } /// /// 领取长效历练点奖励 /// /// public async Task ClaimEncounterPointsRewards() { await new ClaimEncounterPointsRewardsTask().Start(CancellationContext.Instance.Cts.Token); } /// /// 前往冒险家协会领取奖励 /// /// 国家名称 /// public async Task GoToAdventurersGuild(string country) { await new GoToAdventurersGuildTask().Start(country, CancellationContext.Instance.Cts.Token); } /// /// 前往合成台 /// /// 国家名称 /// public async Task GoToCraftingBench(string country) { await new GoToCraftingBenchTask().Start(country, CancellationContext.Instance.Cts.Token); } /// /// 返回主界面 /// /// public async Task ReturnMainUi() { await new ReturnMainUiTask().Start(CancellationContext.Instance.Cts.Token); } }