Decompiled source of BrackenBoyKisser v0.0.3

FlowerManBoyKisser.dll

Decompiled 3 weeks ago
using System.Diagnostics;
using System.IO;
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
using System.Runtime.Versioning;
using BepInEx;
using BepInEx.Logging;
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("FlowerManBoyKisser")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("FlowerManBoyKisser")]
[assembly: AssemblyCopyright("Copyright ©  2025")]
[assembly: AssemblyTrademark("")]
[assembly: ComVisible(false)]
[assembly: Guid("7a06436e-e000-4441-b593-b1a10321cee7")]
[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 NevinMod
{
	[BepInPlugin("nevinture.BrackenBoyKisser", "BrackenBoyKisser", "0.0.1")]
	public class Plugin : BaseUnityPlugin
	{
		private const string GUID = "nevinture.BrackenBoyKisser";

		private const string NAME = "BrackenBoyKisser";

		private const string VERSION = "0.0.1";

		public static Plugin instance;

		private readonly Harmony harmony = new Harmony("nevinture.BrackenBoyKisser");

		public static GameObject boykisserHead;

		public static ManualLogSource logger = Logger.CreateLogSource("nevinture.BrackenBoyKisser");

		private void Awake()
		{
			instance = this;
			((BaseUnityPlugin)this).Logger.LogInfo((object)"nevinture.BrackenBoyKisser start loading");
			string text = Path.Combine(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location), "bracken_boykisser");
			AssetBundle val = AssetBundle.LoadFromFile(text);
			if ((Object)(object)val == (Object)null)
			{
				((BaseUnityPlugin)this).Logger.LogError((object)"Failed to load assets!");
			}
			boykisserHead = val.LoadAsset<GameObject>("Assets/Models/boykisser_head.prefab");
			harmony.PatchAll();
			((BaseUnityPlugin)this).Logger.LogInfo((object)"Patched method names:");
			foreach (MethodBase patchedMethod in harmony.GetPatchedMethods())
			{
				((BaseUnityPlugin)this).Logger.LogInfo((object)patchedMethod.Name);
			}
			((BaseUnityPlugin)this).Logger.LogInfo((object)"plugin loaded successfully!");
		}
	}
}
namespace NevinMod.Patches
{
	[HarmonyPatch(typeof(FlowermanAI))]
	[HarmonyPatch("Start")]
	internal class FlowermanPatch
	{
		private static void Postfix(FlowermanAI __instance)
		{
			//IL_007a: Unknown result type (might be due to invalid IL or missing references)
			//IL_0090: Unknown result type (might be due to invalid IL or missing references)
			//IL_00a6: Unknown result type (might be due to invalid IL or missing references)
			//IL_00bc: Unknown result type (might be due to invalid IL or missing references)
			//IL_0155: Unknown result type (might be due to invalid IL or missing references)
			//IL_0162: Unknown result type (might be due to invalid IL or missing references)
			//IL_017d: Unknown result type (might be due to invalid IL or missing references)
			//IL_019e: Unknown result type (might be due to invalid IL or missing references)
			//IL_01b4: Unknown result type (might be due to invalid IL or missing references)
			//IL_01ca: Unknown result type (might be due to invalid IL or missing references)
			//IL_01e0: Unknown result type (might be due to invalid IL or missing references)
			if (((object)__instance).GetType() == typeof(FlowermanAI))
			{
				Plugin.logger.LogInfo((object)"FlowermanAI found");
				Transform val = ((Component)__instance).transform.Find("FlowermanModel");
				GameObject val2 = Object.Instantiate<GameObject>(Plugin.boykisserHead);
				((Object)val2).name = "Boykisser_Head";
				Transform transform = val2.transform;
				Plugin.logger.LogInfo((object)"Before change");
				Plugin.logger.LogInfo((object)transform.position);
				Plugin.logger.LogInfo((object)transform.localPosition);
				Plugin.logger.LogInfo((object)transform.localScale);
				Plugin.logger.LogInfo((object)transform.rotation);
				Transform val3 = val.Find("AnimContainer").Find("metarig").Find("Torso1")
					.Find("Torso2")
					.Find("Torso3")
					.Find("Neck1")
					.Find("Neck2")
					.Find("Head1")
					.Find("Head2");
				val2.transform.SetParent(val3);
				Plugin.logger.LogInfo((object)"Attached");
				transform.localPosition = new Vector3(0f, 0f, 0f);
				transform.eulerAngles = val3.eulerAngles;
				transform.localScale = new Vector3(1f, 1f, 1f);
				Plugin.logger.LogInfo((object)"After attach");
				Plugin.logger.LogInfo((object)transform.position);
				Plugin.logger.LogInfo((object)transform.localPosition);
				Plugin.logger.LogInfo((object)transform.localScale);
				Plugin.logger.LogInfo((object)transform.rotation);
			}
		}
	}
}