From 21dedd3ebf23a8c7281ac437753fac511806b2ef Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=BE=89=E9=B8=AD=E8=9B=8B?= Date: Thu, 19 Dec 2024 01:05:29 +0800 Subject: [PATCH] folder --- BetterGenshinImpact/Core/Video/FfmpegRecorder.cs | 2 +- BetterGenshinImpact/Model/KeyMouseScriptItem.cs | 4 +++- BetterGenshinImpact/View/Pages/KeyMouseRecordPage.xaml | 2 +- .../ViewModel/Pages/KeyMouseRecordPageViewModel.cs | 10 ++++++---- 4 files changed, 11 insertions(+), 7 deletions(-) diff --git a/BetterGenshinImpact/Core/Video/FfmpegRecorder.cs b/BetterGenshinImpact/Core/Video/FfmpegRecorder.cs index 2ed42dde..01f96c92 100644 --- a/BetterGenshinImpact/Core/Video/FfmpegRecorder.cs +++ b/BetterGenshinImpact/Core/Video/FfmpegRecorder.cs @@ -35,7 +35,7 @@ public class FfmpegRecorder var folderPath = Global.Absolute($@"User\KeyMouseScript\{fileName}\"); Directory.CreateDirectory(folderPath); - _filePath = Path.Combine(folderPath, "%Y-%m-%d_%H-%M-%S.mp4"); + _filePath = Path.Combine(folderPath, "%Y_%m_%d_%H_%M_%S.mp4"); var processInfo = new ProcessStartInfo { FileName = FfmpegPath, diff --git a/BetterGenshinImpact/Model/KeyMouseScriptItem.cs b/BetterGenshinImpact/Model/KeyMouseScriptItem.cs index 7e4dcfc4..7bdefb6d 100644 --- a/BetterGenshinImpact/Model/KeyMouseScriptItem.cs +++ b/BetterGenshinImpact/Model/KeyMouseScriptItem.cs @@ -12,4 +12,6 @@ public partial class KeyMouseScriptItem : ObservableObject private string _createTimeStr = string.Empty; public DateTime CreateTime { get; set; } -} + + public string Path { get; set; } +} \ No newline at end of file diff --git a/BetterGenshinImpact/View/Pages/KeyMouseRecordPage.xaml b/BetterGenshinImpact/View/Pages/KeyMouseRecordPage.xaml index 7ea687f3..69d8c12c 100644 --- a/BetterGenshinImpact/View/Pages/KeyMouseRecordPage.xaml +++ b/BetterGenshinImpact/View/Pages/KeyMouseRecordPage.xaml @@ -108,7 +108,7 @@ diff --git a/BetterGenshinImpact/ViewModel/Pages/KeyMouseRecordPageViewModel.cs b/BetterGenshinImpact/ViewModel/Pages/KeyMouseRecordPageViewModel.cs index 2318b44f..0e2962a5 100644 --- a/BetterGenshinImpact/ViewModel/Pages/KeyMouseRecordPageViewModel.cs +++ b/BetterGenshinImpact/ViewModel/Pages/KeyMouseRecordPageViewModel.cs @@ -56,6 +56,7 @@ public partial class KeyMouseRecordPageViewModel : ObservableObject, INavigation _scriptItems.Add(new KeyMouseScriptItem { Name = f.Name, + Path = f.FullName, CreateTime = f.CreationTime, CreateTimeStr = f.CreationTime.ToString("yyyy-MM-dd HH:mm:ss") }); @@ -69,7 +70,7 @@ public partial class KeyMouseRecordPageViewModel : ObservableObject, INavigation Directory.CreateDirectory(folder); } - var files = Directory.GetFiles(folder, "*.json", SearchOption.TopDirectoryOnly); + var files = Directory.GetFiles(folder, "*.json", SearchOption.AllDirectories); return files.Select(file => new FileInfo(file)).ToList(); } @@ -108,7 +109,7 @@ public partial class KeyMouseRecordPageViewModel : ObservableObject, INavigation { var macro = GlobalKeyMouseRecord.Instance.StopRecord(); // Genshin Copilot Macro - File.WriteAllText(Path.Combine(scriptPath, $"{fileName}.json"), macro); + File.WriteAllText(Path.Combine(scriptPath, $"{fileName}/{fileName}.json"), macro); // 刷新ListView InitScriptListViewData(); IsRecording = false; @@ -122,12 +123,13 @@ public partial class KeyMouseRecordPageViewModel : ObservableObject, INavigation } [RelayCommand] - public async Task OnStartPlay(string name) + public async Task OnStartPlay(string path) { + var name = new FileInfo(path).Name; _logger.LogInformation("重放开始:{Name}", name); try { - var s = await File.ReadAllTextAsync(Path.Combine(scriptPath, name)); + var s = await File.ReadAllTextAsync(path); await new TaskRunner(DispatcherTimerOperationEnum.UseSelfCaptureImage) .RunAsync(async () => await KeyMouseMacroPlayer.PlayMacro(s, CancellationContext.Instance.Cts.Token));