Decompiled source of ButterflyEnabler v1.0.0

Mods/ButterflyEnabler.dll

Decompiled 18 hours ago
using System;
using System.Collections;
using System.Diagnostics;
using System.Reflection;
using System.Resources;
using System.Runtime.CompilerServices;
using System.Runtime.Versioning;
using System.Security;
using System.Security.Permissions;
using BoneLib;
using ButterflyEnabler;
using Il2CppSLZ.Marrow.SceneStreaming;
using Il2CppSLZ.Marrow.Warehouse;
using MelonLoader;
using Microsoft.CodeAnalysis;
using UnityEngine;

[assembly: CompilationRelaxations(8)]
[assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)]
[assembly: Debuggable(DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints)]
[assembly: MelonInfo(typeof(Core), "ButterflyEnabler", "1.0.0", "Duplex", null)]
[assembly: MelonGame("Stress Level Zero", "BONELAB")]
[assembly: TargetFramework(".NETCoreApp,Version=v6.0", FrameworkDisplayName = ".NET 6.0")]
[assembly: AssemblyCompany("ButterflyEnabler")]
[assembly: AssemblyConfiguration("Release")]
[assembly: AssemblyFileVersion("1.0.0.0")]
[assembly: AssemblyInformationalVersion("1.0.0+a44781eeb0eb451323b68654e7e979509c1baa05")]
[assembly: AssemblyProduct("ButterflyEnabler")]
[assembly: AssemblyTitle("ButterflyEnabler")]
[assembly: NeutralResourcesLanguage("en-US")]
[assembly: SecurityPermission(SecurityAction.RequestMinimum, SkipVerification = true)]
[assembly: AssemblyVersion("1.0.0.0")]
[module: UnverifiableCode]
[module: RefSafetyRules(11)]
namespace Microsoft.CodeAnalysis
{
	[CompilerGenerated]
	[Embedded]
	internal sealed class EmbeddedAttribute : Attribute
	{
	}
}
namespace System.Runtime.CompilerServices
{
	[CompilerGenerated]
	[Embedded]
	[AttributeUsage(AttributeTargets.Module, AllowMultiple = false, Inherited = false)]
	internal sealed class RefSafetyRulesAttribute : Attribute
	{
		public readonly int Version;

		public RefSafetyRulesAttribute(int P_0)
		{
			Version = P_0;
		}
	}
}
namespace ButterflyEnabler
{
	public class Core : MelonMod
	{
		public override void OnInitializeMelon()
		{
			Hooking.OnLevelLoaded += OnLevelLoaded;
		}

		public static void OnLevelLoaded(LevelInfo level)
		{
			if (((Scannable)SceneStreamer.Session.Level).Title == "Tuscany")
			{
				MelonCoroutines.Start(EnableButterfly());
			}
		}

		public static IEnumerator EnableButterfly()
		{
			while ((int)SceneStreamer.Session.Status == 1)
			{
				yield return null;
			}
			GameObject Environment_Effects = GameObject.Find("Environment_Effects");
			while ((Object)(object)Environment_Effects == (Object)null)
			{
				yield return null;
			}
			GameObject butterfly_00 = ((Component)Environment_Effects.transform.Find("Butterfly_Entity_00")).gameObject;
			GameObject butterfly_1 = ((Component)Environment_Effects.transform.Find("Butterfly_Entity_01")).gameObject;
			GameObject butterfly_2 = ((Component)Environment_Effects.transform.Find("Butterfly_Entity_02")).gameObject;
			GameObject butterfly_3 = ((Component)Environment_Effects.transform.Find("Butterfly_Entity_03")).gameObject;
			GameObject butterfly_4 = ((Component)Environment_Effects.transform.Find("Butterfly_Entity_04")).gameObject;
			GameObject butterfly_5 = ((Component)Environment_Effects.transform.Find("Butterfly_Entity_05")).gameObject;
			GameObject butterfly_6 = ((Component)Environment_Effects.transform.Find("Butterfly_Entity_06")).gameObject;
			GameObject butterfly_7 = ((Component)Environment_Effects.transform.Find("Butterfly_Entity_07")).gameObject;
			GameObject butterfly_8 = ((Component)Environment_Effects.transform.Find("Butterfly_Entity_08")).gameObject;
			GameObject butterfly_9 = ((Component)Environment_Effects.transform.Find("Butterfly_Entity_09")).gameObject;
			while ((Object)(object)butterfly_00 == (Object)null && (Object)(object)butterfly_1 == (Object)null && (Object)(object)butterfly_2 == (Object)null && (Object)(object)butterfly_3 == (Object)null && (Object)(object)butterfly_4 == (Object)null && (Object)(object)butterfly_5 == (Object)null && (Object)(object)butterfly_6 == (Object)null && (Object)(object)butterfly_7 == (Object)null && (Object)(object)butterfly_8 == (Object)null && (Object)(object)butterfly_9 == (Object)null)
			{
				yield return null;
			}
			butterfly_00.SetActive(true);
			butterfly_1.SetActive(true);
			butterfly_2.SetActive(true);
			butterfly_3.SetActive(true);
			butterfly_4.SetActive(true);
			butterfly_5.SetActive(true);
			butterfly_6.SetActive(true);
			butterfly_7.SetActive(true);
			butterfly_8.SetActive(true);
			butterfly_9.SetActive(true);
		}
	}
}