Skip to content

Commit c4a7823

Browse files
committed
fix js pathingScript
1 parent 50aac5c commit c4a7823

File tree

4 files changed

+11
-11
lines changed

4 files changed

+11
-11
lines changed

BetterGenshinImpact/Core/Script/Dependence/AutoPathingScript.cs

+3-8
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,14 @@
1-
using System.Threading.Tasks;
2-
using System.Text.Json;
3-
using BetterGenshinImpact.GameTask.AutoPathing;
1+
using BetterGenshinImpact.GameTask.AutoPathing;
42
using BetterGenshinImpact.GameTask.AutoPathing.Model;
3+
using System.Threading.Tasks;
54

65
namespace BetterGenshinImpact.Core.Script.Dependence;
76

87
public class AutoPathingScript(string rootPath)
98
{
109
public async Task Run(string json)
1110
{
12-
var task = JsonSerializer.Deserialize<PathingTask>(json);
13-
if (task == null)
14-
{
15-
return;
16-
}
11+
var task = PathingTask.BuildFromJson(json);
1712
await new PathExecutor(CancellationContext.Instance.Cts).Pathing(task);
1813
}
1914

BetterGenshinImpact/GameTask/AutoPathing/Model/PathingTask.cs

+6
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,12 @@ public static PathingTask BuildFromFilePath(string filePath)
3434
return task;
3535
}
3636

37+
public static PathingTask BuildFromJson(string json)
38+
{
39+
var task = JsonSerializer.Deserialize<PathingTask>(json, PathRecorder.JsonOptions) ?? throw new Exception("Failed to deserialize PathingTask");
40+
return task;
41+
}
42+
3743
public void SaveToFile(string filePath)
3844
{
3945
var json = JsonSerializer.Serialize(this, PathRecorder.JsonOptions);

BetterGenshinImpact/GameTask/AutoPathing/PathExecutor.cs

+1-2
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
using BetterGenshinImpact.Core.Simulator;
2+
using BetterGenshinImpact.GameTask.AutoPathing.Handler;
23
using BetterGenshinImpact.GameTask.AutoPathing.Model;
34
using BetterGenshinImpact.GameTask.AutoPathing.Model.Enum;
45
using BetterGenshinImpact.GameTask.AutoTrackPath;
56
using BetterGenshinImpact.GameTask.Common.BgiVision;
67
using BetterGenshinImpact.GameTask.Common.Map;
7-
using BetterGenshinImpact.GameTask.Model.Area;
88
using CommunityToolkit.Mvvm.Messaging;
99
using CommunityToolkit.Mvvm.Messaging.Messages;
1010
using Microsoft.Extensions.Logging;
@@ -15,7 +15,6 @@
1515
using System.Linq;
1616
using System.Threading;
1717
using System.Threading.Tasks;
18-
using BetterGenshinImpact.GameTask.AutoPathing.Handler;
1918
using Vanara.PInvoke;
2019
using static BetterGenshinImpact.GameTask.Common.TaskControl;
2120

BetterGenshinImpact/GameTask/AutoTrackPath/TpTask.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ public class TpTask(CancellationTokenSource cts)
7474
// Debug.WriteLine($"({x},{y}) 在 {bigMapInAllMapRect} 内,计算它在窗体内的位置");
7575
// 注意这个坐标的原点是中心区域某个点,所以要转换一下点击坐标(点击坐标是左上角为原点的坐标系),不能只是缩放
7676
var (clickX, clickY) = ConvertToGameRegionPosition(bigMapInAllMapRect, x, y);
77-
Logger.LogInformation("点击传送点:({X},{Y})", clickX, clickY);
77+
Logger.LogInformation("点击传送点");
7878
using var ra = CaptureToRectArea();
7979
ra.ClickTo((int)clickX, (int)clickY);
8080

0 commit comments

Comments
 (0)