using System.Diagnostics;
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
using System.Runtime.Versioning;
using System.Security;
using System.Security.Permissions;
using BepInEx;
using BepInEx.Logging;
using HarmonyLib;
using HutongGames.PlayMaker;
using HutongGames.PlayMaker.Actions;
using UnityEngine;
[assembly: CompilationRelaxations(8)]
[assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)]
[assembly: Debuggable(DebuggableAttribute.DebuggingModes.Default | DebuggableAttribute.DebuggingModes.DisableOptimizations | DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints | DebuggableAttribute.DebuggingModes.EnableEditAndContinue)]
[assembly: AssemblyTitle("QuickSong")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("QuickSong")]
[assembly: AssemblyCopyright("Copyright © 2023")]
[assembly: AssemblyTrademark("")]
[assembly: ComVisible(false)]
[assembly: Guid("9eb11214-67f4-4307-bafc-4b57bbef5616")]
[assembly: AssemblyFileVersion("1.0.0.0")]
[assembly: TargetFramework(".NETFramework,Version=v4.7.2", FrameworkDisplayName = ".NET Framework 4.7.2")]
[assembly: SecurityPermission(SecurityAction.RequestMinimum, SkipVerification = true)]
[assembly: AssemblyVersion("1.0.0.0")]
[module: UnverifiableCode]
namespace QuickSong;
[BepInPlugin("com.bana.QuickSong", "QuickSong", "1.0.0")]
public class QuickSongPlugin : BaseUnityPlugin
{
private const string MyGUID = "com.bana.QuickSong";
private const string PluginName = "QuickSong";
private const string VersionString = "1.0.0";
private static readonly Harmony Harmony = new Harmony("com.bana.QuickSong");
public static ManualLogSource Log = new ManualLogSource("QuickSong");
private void Awake()
{
((BaseUnityPlugin)this).Logger.LogInfo((object)"PluginName: QuickSong, VersionString: 1.0.0 is loading...");
Harmony.PatchAll();
((BaseUnityPlugin)this).Logger.LogInfo((object)"PluginName: QuickSong, VersionString: 1.0.0 is loaded.");
Log = ((BaseUnityPlugin)this).Logger;
}
}
[HarmonyPatch(typeof(HealthManager), "Update")]
public class QuickSongPatch
{
private static void Prefix(HealthManager __instance)
{
if (!((Object)(object)__instance.animator == (Object)null) && __instance.animator.CurrentClip != null)
{
__instance.animator.ClipFps = 9999f;
__instance.animator.CurrentClip.fps = 9999f;
}
}
}
[HarmonyPatch(typeof(AnimatorPauseAtTime), "OnEnter")]
public class AnimatorPauseAtTimePatch
{
private static void Prefix(AnimatorPauseAtTime __instance)
{
if (!((Object)(object)((FsmStateAction)__instance).Owner.gameObject.GetComponent<HealthManager>() == (Object)null))
{
__instance.Time.Value = 0f;
}
}
}
[HarmonyPatch(typeof(Wait), "OnEnter")]
public class DontWaitPatch
{
private static void Prefix(Wait __instance)
{
if (!((Object)(object)((FsmStateAction)__instance).Owner.gameObject.GetComponent<HealthManager>() == (Object)null))
{
__instance.time.Value = 0f;
}
}
}
[HarmonyPatch(typeof(RandomWait), "OnEnter")]
public class DontRandomWaitPatch
{
private static void Prefix(RandomWait __instance)
{
if (!((Object)(object)((FsmStateAction)__instance).Owner.gameObject.GetComponent<HealthManager>() == (Object)null))
{
__instance.min.Value = 0f;
__instance.max.Value = 0f;
}
}
}
[HarmonyPatch(typeof(WaitTimeAndTk2dFrame), "OnEnter")]
public class DontFuckingWaitPatch
{
private static void Prefix(WaitTimeAndTk2dFrame __instance)
{
if (!((Object)(object)((Component)__instance.animator).gameObject.GetComponent<HealthManager>() == (Object)null))
{
__instance.Time.Value = 0f;
}
}
}