Decompiled source of MoonToVoid v1.0.0

MoonToVoid.dll

Decompiled a day ago
using System.Diagnostics;
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.Versioning;
using BepInEx;
using On.RoR2;
using RoR2;
using UnityEngine;

[assembly: CompilationRelaxations(8)]
[assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)]
[assembly: Debuggable(/*Could not decode attribute arguments.*/)]
[assembly: TargetFramework(".NETCoreApp,Version=v10.0", FrameworkDisplayName = ".NET 10.0")]
[assembly: AssemblyCompany("ClassLibrary1")]
[assembly: AssemblyConfiguration("Debug")]
[assembly: AssemblyFileVersion("1.0.0.0")]
[assembly: AssemblyInformationalVersion("1.0.0")]
[assembly: AssemblyProduct("ClassLibrary1")]
[assembly: AssemblyTitle("ClassLibrary1")]
[assembly: AssemblyVersion("1.0.0.0")]
[module: RefSafetyRules(11)]
namespace MoonToVoidMod;

[BepInPlugin("com.YourName.MoonToVoid", "Moon To Void", "1.0.0")]
public class MoonToVoidPlugin : BaseUnityPlugin
{
	public void Awake()
	{
		//IL_0008: Unknown result type (might be due to invalid IL or missing references)
		//IL_0012: Expected O, but got Unknown
		EscapeSequenceController.BeginEscapeSequence += new hook_BeginEscapeSequence(EscapeSequenceController_BeginEscapeSequence);
	}

	private void EscapeSequenceController_BeginEscapeSequence(orig_BeginEscapeSequence orig, EscapeSequenceController self)
	{
		orig.Invoke(self);
		TeleportToVoid();
	}

	private void TeleportToVoid()
	{
		//IL_0044: Unknown result type (might be due to invalid IL or missing references)
		//IL_004b: Expected O, but got Unknown
		SceneDef sceneDefFromSceneName = SceneCatalog.GetSceneDefFromSceneName("voidstage");
		if ((Object)(object)sceneDefFromSceneName == (Object)null)
		{
			((BaseUnityPlugin)this).Logger.LogError((object)"Could not find SceneDef for 'voidstage'!");
			return;
		}
		SceneExitController val = Object.FindObjectOfType<SceneExitController>();
		if (!Object.op_Implicit((Object)(object)val))
		{
			GameObject val2 = new GameObject("CustomVoidExit");
			val = val2.AddComponent<SceneExitController>();
		}
		val.destinationScene = sceneDefFromSceneName;
		val.SetState((ExitState)2);
	}
}