[O] Better Skip TrackStart screen (#12)

* [O]: Better Skip TrackStart screen

* add SoundManager.PreviewEnd();

* TrackStartProcess.TrackStartSequence

---------

Co-authored-by: Clansty <i@gao4.pw>
This commit is contained in:
2025-01-23 00:47:12 +08:00
committed by GitHub
parent c4065be329
commit 4203b1ce7e

View File

@@ -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;
}
}