diff --git a/AquaMai.Mods/Tweaks/TimeSaving/SkipTrackStart.cs b/AquaMai.Mods/Tweaks/TimeSaving/SkipTrackStart.cs index 625cfe32..06e5494a 100644 --- a/AquaMai.Mods/Tweaks/TimeSaving/SkipTrackStart.cs +++ b/AquaMai.Mods/Tweaks/TimeSaving/SkipTrackStart.cs @@ -1,6 +1,7 @@ using AquaMai.Config.Attributes; using HarmonyLib; -using Monitor; +using Manager; +using Process; namespace AquaMai.Mods.Tweaks.TimeSaving; @@ -9,11 +10,20 @@ namespace AquaMai.Mods.Tweaks.TimeSaving; zh: "跳过乐曲开始界面")] public class SkipTrackStart { - [HarmonyPrefix] - [HarmonyPatch(typeof (TrackStartMonitor), "IsEnd")] - public static bool IsEnd(ref bool __result) + [HarmonyPostfix] + [HarmonyPatch(typeof (TrackStartProcess), "OnStart")] + public static void OnStart(ref TrackStartProcess.TrackStartSequence ____state) { - __result = true; + ____state = TrackStartProcess.TrackStartSequence.DispEnd; + } + + [HarmonyPrefix] + [HarmonyPatch(typeof (MusicSelectProcess), "GameStart")] + public static bool GameStart(MusicSelectProcess __instance, ProcessDataContainer ___container) + { + ___container.processManager.AddProcess(new TrackStartProcess(___container), 50); + ___container.processManager.ReleaseProcess(__instance); + SoundManager.PreviewEnd(); return false; } }