Decompiled source of TulipSnakeFun v1.0.0

TulipSnakeFun.dll

Decompiled a month ago
using System;
using System.Diagnostics;
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
using System.Runtime.Versioning;
using BepInEx;
using GameNetcodeStuff;
using HarmonyLib;
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("FunMod")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("FunMod")]
[assembly: AssemblyCopyright("Copyright ©  2024")]
[assembly: AssemblyTrademark("")]
[assembly: ComVisible(false)]
[assembly: Guid("f6edd938-0915-44b7-aaa0-becf242648ec")]
[assembly: AssemblyFileVersion("1.0.0.0")]
[assembly: TargetFramework(".NETFramework,Version=v4.7.2", FrameworkDisplayName = ".NET Framework 4.7.2")]
[assembly: AssemblyVersion("1.0.0.0")]
namespace FunMod;

[BepInPlugin("co.altermodding.funmod", "Fun Mod :)", "1.0.0.0")]
public class BirdPatcher : BaseUnityPlugin
{
	public const string pluginGuid = "co.altermodding.funmod";

	public const string pluginName = "Fun Mod :)";

	public const string pluginVersion = "1.0.0.0";

	public void Awake()
	{
		//IL_0017: Unknown result type (might be due to invalid IL or missing references)
		//IL_001d: Expected O, but got Unknown
		//IL_004f: Unknown result type (might be due to invalid IL or missing references)
		//IL_005c: Expected O, but got Unknown
		((BaseUnityPlugin)this).Logger.LogInfo((object)"Fun Mod :) has started");
		Harmony val = new Harmony("co.altermodding.funmod");
		MethodInfo methodInfo = AccessTools.Method(typeof(FlowerSnakeEnemy), "MainSnakeActAsConductor", (Type[])null, (Type[])null);
		MethodInfo methodInfo2 = AccessTools.Method(typeof(Patches), "FlowerSnakeEnemy_MainSnakeActAsConductor_Postfix", (Type[])null, (Type[])null);
		val.Patch((MethodBase)methodInfo, (HarmonyMethod)null, new HarmonyMethod(methodInfo2), (HarmonyMethod)null, (HarmonyMethod)null, (HarmonyMethod)null);
	}
}
public class Patches
{
	public static void FlowerSnakeEnemy_MainSnakeActAsConductor_Postfix(ref FlowerSnakeEnemy __instance, bool ___flapping)
	{
		//IL_0020: Unknown result type (might be due to invalid IL or missing references)
		//IL_0031: Unknown result type (might be due to invalid IL or missing references)
		//IL_003b: Unknown result type (might be due to invalid IL or missing references)
		//IL_0040: Unknown result type (might be due to invalid IL or missing references)
		//IL_0045: Unknown result type (might be due to invalid IL or missing references)
		//IL_0056: Unknown result type (might be due to invalid IL or missing references)
		//IL_0078: Unknown result type (might be due to invalid IL or missing references)
		if ((Object)(object)__instance.clingingToPlayer != (Object)null && ___flapping)
		{
			PlayerControllerB clingingToPlayer = __instance.clingingToPlayer;
			clingingToPlayer.externalForces += ((Component)__instance.clingingToPlayer).transform.up * 200f;
			if (((Component)__instance.clingingToPlayer).transform.position.y > 135f)
			{
				Landmine.SpawnExplosion(((Component)__instance.clingingToPlayer).transform.position, false, 10f, 15f, 100, 0f, (GameObject)null);
			}
		}
	}
}