using System; using System.Collections; using System.Collections.Generic; using System.Diagnostics; using System.Reflection; using System.Runtime.CompilerServices; using System.Runtime.Versioning; using BepInEx; using BepInEx.Logging; using HarmonyLib; [assembly: CompilationRelaxations(8)] [assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)] [assembly: Debuggable(DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints)] [assembly: TargetFramework(".NETFramework,Version=v4.7.2", FrameworkDisplayName = ".NET Framework 4.7.2")] [assembly: AssemblyCompany("FastGameLoad")] [assembly: AssemblyConfiguration("Release")] [assembly: AssemblyFileVersion("1.0.0.0")] [assembly: AssemblyInformationalVersion("1.0.0+9ddf5b918bad48dc46afb7e60ada42e36892cd18")] [assembly: AssemblyProduct("FastGameLoad")] [assembly: AssemblyTitle("FastGameLoad")] [assembly: AssemblyVersion("1.0.0.0")] namespace FastGameLoad; [BepInPlugin("bepinex.plugin.FastGameLoad", "FastGameLoad", "0.1.0")] public class FastGameLoad : BaseUnityPlugin { [CompilerGenerated] private sealed class d__4 : IEnumerator, IDisposable, IEnumerator { private int <>1__state; private object <>2__current; public StartManager __instance; public IEnumerator __result; object IEnumerator.Current { [DebuggerHidden] get { return <>2__current; } } object IEnumerator.Current { [DebuggerHidden] get { return <>2__current; } } [DebuggerHidden] public d__4(int <>1__state) { this.<>1__state = <>1__state; } [DebuggerHidden] void IDisposable.Dispose() { <>1__state = -2; } private bool MoveNext() { switch (<>1__state) { default: return false; case 0: <>1__state = -1; if (!isAnimFast) { __instance.startManagerAnimator.speed = float.MaxValue; Log.LogInfo((object)"START ANIM IS FAST NOW"); isAnimFast = true; } break; case 1: <>1__state = -1; break; } if (__result.MoveNext()) { <>2__current = __result.Current; <>1__state = 1; return true; } return false; } bool IEnumerator.MoveNext() { //ILSpy generated this explicit interface implementation from .override directive in MoveNext return this.MoveNext(); } [DebuggerHidden] void IEnumerator.Reset() { throw new NotSupportedException(); } } public static FastGameLoad instance; public static bool isAnimFast; public static ManualLogSource Log; private void Awake() { //IL_0016: Unknown result type (might be due to invalid IL or missing references) instance = this; Log = ((BaseUnityPlugin)this).Logger; new Harmony("com.fastgamestartup"); Harmony.CreateAndPatchAll(typeof(FastGameLoad), (string)null); ((BaseUnityPlugin)this).Logger.LogInfo((object)"Plugin is loaded!"); } [IteratorStateMachine(typeof(d__4))] [HarmonyPostfix] [HarmonyPatch(typeof(StartManager), "Start")] public static IEnumerator Start_Manager_Start_Postfix(IEnumerator __result, StartManager __instance) { //yield-return decompiler failed: Unexpected instruction in Iterator.Dispose() return new d__4(0) { __result = __result, __instance = __instance }; } }