Commit Graph

31 Commits

Author SHA1 Message Date
辉鸭蛋
8d2b36d5fd refactor: script run 2024-09-10 23:27:04 +08:00
辉鸭蛋
220d6a4f9b fix multi thread ui bug & rotate with dpi
优化 DPI 处理和异步任务执行

在 `PathExecutor.cs` 中,添加了对 `BetterGenshinImpact.Helpers` 的引用,并引入了 `DpiHelper` 来调整 `_dpi` 变量。
在 `PathExecutor` 类中,添加了 `_dpi` 变量,并在 `Pathing` 方法中初始化 `_dpi` 为 `DpiHelper.ScaleY`。
修改了 `RotateTo` 方法的 `controlRatio` 参数类型,从 `int` 改为 `double`,并在调用 `Simulation.SendInput.Mouse.MoveMouseBy` 时乘以 `_dpi` 进行 DPI 缩放。
在 `TaskRunner.cs` 中,添加了 `FireAndForgetAsync` 方法,用于异步执行任务。
在 `ScriptService.cs` 中,添加了对 `BetterGenshinImpact.Helpers` 的引用。
修改了 `ScriptService` 类中调用 `TaskRunner` 的方式,从 `RunAsync` 改为 `FireAndForgetAsync`。
在 `ScriptControlViewModel.cs` 中,简化了调用 `_scriptService.RunMulti` 的方式,去掉了多余的 `Task.Run` 包装。
2024-09-09 00:44:24 +08:00
辉鸭蛋
c37c43ce92 dispatcher supprot pathing script
调度器支持路径追踪功能及多项代码优化

在 `ScriptGroupProject.cs` 中:
- 添加对多个命名空间的引用。
- 修改构造函数,增加 `folder` 和 `type` 参数,删除 `kmName` 参数。
- 添加 `BuildKeyMouseProject` 和 `BuildPathingProject` 静态方法。
- 在 `Run` 方法中增加 `Pathing` 类型处理逻辑。
- 在 `ScriptGroupProjectExtensions` 中增加 `Pathing` 类型描述。

在 `PathingTask.cs` 中:
- 添加 `FileName` 属性,并在 `BuildFromFilePath` 方法中设置。

在 `Navigation.cs` 中:
- 将 `Navigation` 类改为 `public`。
- 添加 `_isWarmUp` 静态字段,防止重复加载地图特征点。
- 将 `GetPosition`、`GetTargetOrientation` 和 `GetDistance` 方法改为 `public`。

在 `GameTaskManager.cs` 中:
- 在 `AddTrigger` 方法中添加注释,指出清理 `TriggerDictionary` 的问题。

在 `ScriptService.cs` 中:
- 在 `RunMulti` 方法中增加 `hasTimer` 变量,并在处理 `Pathing` 类型时设置。
- 修改 `RunMulti` 方法逻辑,确保无定时操作时检查 JS 脚本。
- 在 `Run` 方法中增加 `Pathing` 类型处理逻辑。

在 `MapPathingPage.xaml` 中:
- 注释掉第四列定义和相关 `Grid` 元素。
- 修改 `ListView` 中 `GridViewColumn` 的 `DisplayMemberBinding`。

在 `ScriptControlPage.xaml` 中:
- 在 `ContextMenu` 中添加新的 `MenuItem`,用于添加路径追踪任务。

在 `PromptDialog.xaml.cs` 中:
- 添加新的 `Prompt` 方法,允许指定对话框大小。
- 修改 `ResponseText` 属性逻辑,增加默认返回值。

在 `MapPathingViewModel.cs` 中:
- 调整 `using` 语句顺序,删除重复引用。

在 `ScriptControlViewModel.cs` 中:
- 修改 `OnAddKmScript` 方法,使用 `BuildKeyMouseProject` 方法创建键鼠脚本项目。
- 添加 `OnAddPathing` 方法及其辅助方法,用于添加路径追踪任务。
- 在 `RunSelectedScriptGroup` 方法中,将脚本运行逻辑放入 `Task.Run` 中,避免阻塞 UI 线程。
2024-09-08 23:17:48 +08:00
辉鸭蛋
93250f84cf update UI experience
在 `App.xaml` 中添加了 `BooleanToEnableTextConverter` 转换器。
在 `ScriptControlPage.xaml` 中:
  * 更新了文本描述,增加了对配置组排序的说明。
  * 添加了一个新的 `TextBlock` 和 `Button`,用于新增配置组。
  * 将“启用状态”列从简单的文本显示改为 `ToggleSwitch` 控件,并使用 `BooleanToEnableTextConverter` 进行绑定。
  * 将 `ListBox.ContextMenu` 更改为 `ListView.ContextMenu`。
  * 为“修改JS脚本自定义配置”菜单项添加了样式和触发器,以根据脚本类型动态显示或隐藏。
在 `ScriptControlViewModel.cs` 中:
  * 添加了 `System.ComponentModel` 的引用。
  * 注释掉了 `WriteScriptGroup` 的循环调用。
  * 修改了 `ShowEditWindow` 方法,将关闭按钮文本从“确定”改为“关闭”。
  * 在 `EditJsScriptSettings` 方法中,添加了对 `LoadSettingUi` 返回值的检查,并在未提供自定义配置时显示警告。
  * 在 `ScriptProjectsCollectionChanged` 方法中,添加了对项目属性变化的事件处理。
  * 添加了 `ScriptProjectsPChanged` 方法,用于处理项目属性变化事件。
  * 更新了 `OnGoToScriptGroupUrl` 方法中的 URL。
新增了 `BooleanToEnableTextConverter.cs` 文件,实现了 `BooleanToEnableTextConverter` 转换器,用于将布尔值与启用状态文本进行转换。
2024-09-07 12:31:07 +08:00
辉鸭蛋
b68b0d85f6 Js -> JS 2024-08-24 02:28:31 +08:00
辉鸭蛋
461b0b00d1 add JS script dynamic settings 2024-08-24 02:13:46 +08:00
ema
24d798d6b2 UI/UX: use MessageBox from Violeta 2024-08-20 23:46:29 +08:00
辉鸭蛋
98b1376111 0.33.1 2024-08-19 23:14:55 +08:00
辉鸭蛋
b62e4a7425 add script group editor 2024-08-18 21:41:12 +08:00
辉鸭蛋
6812f30732 optimize script execution 2024-08-17 18:00:03 +08:00
辉鸭蛋
8b0bdef670 edit script group name 2024-08-15 23:55:57 +08:00
qhy040404
c490d29aa1 code cleanup 2024-08-14 18:01:02 +08:00
辉鸭蛋
ed9a47a3a1 fix dispather thread safe 2024-08-11 20:14:32 +08:00
辉鸭蛋
8fa071722e js : dispatcher.addTimer 2024-08-11 17:58:22 +08:00
辉鸭蛋
2c2e9c0303 supplement the mode of the runner 2024-08-11 10:41:01 +08:00
辉鸭蛋
a7153a47f6 auto crystalfly init 2024-08-11 02:32:00 +08:00
辉鸭蛋
26aa811e97 add script group runner 2024-08-11 00:09:25 +08:00
辉鸭蛋
0edf6c13ef script group ui3 2024-08-10 21:18:48 +08:00
辉鸭蛋
ad288c60cc script group ui 2 2024-08-10 19:16:35 +08:00
辉鸭蛋
308d398036 script group ui 2024-08-10 13:37:29 +08:00
辉鸭蛋
c1072d0574 script: support running macros 2024-08-07 01:07:58 +08:00
辉鸭蛋
4610c9e7ca add script engine 2024-08-03 19:41:48 +08:00
辉鸭蛋
65f2aad4c2 add tp click & fix mask window display 2024-07-31 23:44:25 +08:00
辉鸭蛋
f9cada6ef9 revert mask window old style #503 2024-07-29 23:38:30 +08:00
辉鸭蛋
9980576083 edit ui 2024-07-28 12:34:25 +08:00
辉鸭蛋
4243972eeb script async test 2024-07-21 12:42:39 +08:00
辉鸭蛋
c3922107b5 init script 2024-07-21 10:13:41 +08:00
辉鸭蛋
9878786dd7 init script page 2024-07-14 20:18:29 +08:00
辉鸭蛋
edbc860a3d fix Release error 2024-04-06 11:24:41 +08:00
Lightczx
1c97b425f4 refine 2024-03-28 14:00:29 +08:00
ema
efd6d1ea41 initial script control but debug only 2023-12-17 17:36:36 +08:00