Decompiled source of DaBoiss v1.6.9

DaBoiss/BepInEx/NicoBracken.dll

Decompiled 2 years ago
using System.Diagnostics;
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
using System.Runtime.Versioning;
using BepInEx;
using HarmonyLib;
using LC_API.BundleAPI;
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("NicoBracken")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("HP")]
[assembly: AssemblyProduct("NicoBracken")]
[assembly: AssemblyCopyright("Copyright © HP 2023")]
[assembly: AssemblyTrademark("")]
[assembly: ComVisible(false)]
[assembly: Guid("88e0a912-b812-42ea-bc6b-bc67e9cf31aa")]
[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 DaScawyBoiss
{
	[BepInPlugin("vini.DaScawyBoiss", "DaScawyBoiss", "2.6.9")]
	public class Plugin : BaseUnityPlugin
	{
		private const string modGUID = "vini.DaScawyBoiss";

		private const string modNAME = "DaScawyBoiss";

		private const string modVersion = "2.6.9";

		public Harmony harmonymain;

		private void Awake()
		{
			//IL_0007: Unknown result type (might be due to invalid IL or missing references)
			//IL_0011: Expected O, but got Unknown
			harmonymain = new Harmony("vini.DaScawyBoiss");
			harmonymain.PatchAll();
			((BaseUnityPlugin)this).Logger.LogInfo((object)"da boiss are here...");
		}
	}
}
namespace DaScawyBoiss.Patches
{
	[HarmonyPatch]
	internal class InsideBoiss
	{
		[HarmonyPatch(typeof(RoundManager), "BeginEnemySpawning")]
		[HarmonyPostfix]
		public static void SummonInsideBoiss(RoundManager __instance)
		{
			//IL_00b6: Unknown result type (might be due to invalid IL or missing references)
			//IL_00c0: Expected O, but got Unknown
			//IL_0107: Unknown result type (might be due to invalid IL or missing references)
			//IL_0177: Unknown result type (might be due to invalid IL or missing references)
			//IL_0181: Expected O, but got Unknown
			//IL_01c8: Unknown result type (might be due to invalid IL or missing references)
			//IL_0238: Unknown result type (might be due to invalid IL or missing references)
			//IL_0242: Expected O, but got Unknown
			//IL_0289: Unknown result type (might be due to invalid IL or missing references)
			//IL_02f9: Unknown result type (might be due to invalid IL or missing references)
			//IL_0303: Expected O, but got Unknown
			//IL_034a: Unknown result type (might be due to invalid IL or missing references)
			//IL_03b1: Unknown result type (might be due to invalid IL or missing references)
			//IL_03bb: Expected O, but got Unknown
			//IL_0402: Unknown result type (might be due to invalid IL or missing references)
			//IL_0473: Unknown result type (might be due to invalid IL or missing references)
			//IL_047d: Expected O, but got Unknown
			//IL_04a8: Unknown result type (might be due to invalid IL or missing references)
			//IL_04b2: Expected O, but got Unknown
			//IL_04dd: Unknown result type (might be due to invalid IL or missing references)
			//IL_04e7: Expected O, but got Unknown
			//IL_052e: Unknown result type (might be due to invalid IL or missing references)
			//IL_059f: Unknown result type (might be due to invalid IL or missing references)
			//IL_05a9: Expected O, but got Unknown
			//IL_05f0: Unknown result type (might be due to invalid IL or missing references)
			//IL_0661: Unknown result type (might be due to invalid IL or missing references)
			//IL_066b: Expected O, but got Unknown
			//IL_06b2: Unknown result type (might be due to invalid IL or missing references)
			//IL_0723: Unknown result type (might be due to invalid IL or missing references)
			//IL_072d: Expected O, but got Unknown
			//IL_0774: Unknown result type (might be due to invalid IL or missing references)
			//IL_07e5: Unknown result type (might be due to invalid IL or missing references)
			//IL_07ef: Expected O, but got Unknown
			//IL_081a: Unknown result type (might be due to invalid IL or missing references)
			//IL_0824: Expected O, but got Unknown
			//IL_086b: Unknown result type (might be due to invalid IL or missing references)
			bool flag = true;
			bool flag2 = false;
			bool flag3 = true;
			bool flag4 = false;
			bool flag5 = false;
			bool flag6 = false;
			bool flag7 = false;
			bool flag8 = false;
			bool flag9 = false;
			bool flag10 = false;
			foreach (SpawnableEnemyWithRarity enemy in RoundManager.Instance.currentLevel.Enemies)
			{
				if ((Object)(object)enemy.enemyType != (Object)null)
				{
					if (enemy.enemyType.enemyName == "Flowerman" && flag)
					{
						FlowermanAI component = enemy.enemyType.enemyPrefab.GetComponent<FlowermanAI>();
						Object.Destroy((Object)((Component)((Component)component).gameObject.transform.Find("FlowermanModel").Find("LOD1")).gameObject.GetComponent<SkinnedMeshRenderer>());
						GameObject val = Object.Instantiate<GameObject>(BundleLoader.GetLoadedAsset<GameObject>("assets/nico/nicoBracken.prefab"));
						val.transform.SetParent(enemy.enemyType.enemyPrefab.transform, false);
						val.transform.localPosition = new Vector3(0f, 1.5f, 0f);
					}
					else if (enemy.enemyType.enemyName == "Spring" && flag2)
					{
						SpringManAI component2 = enemy.enemyType.enemyPrefab.GetComponent<SpringManAI>();
						Object.Destroy((Object)((Component)((Component)component2).gameObject.transform.Find("SpringManModel").Find("Head")).gameObject.GetComponent<SkinnedMeshRenderer>());
						GameObject val2 = Object.Instantiate<GameObject>(BundleLoader.GetLoadedAsset<GameObject>("assets/vini/viniSpring.prefab"));
						val2.transform.SetParent(enemy.enemyType.enemyPrefab.transform, false);
						val2.transform.localPosition = new Vector3(0f, 1.5f, 0f);
					}
					else if (enemy.enemyType.enemyName == "Girl" && flag3)
					{
						DressGirlAI component3 = enemy.enemyType.enemyPrefab.GetComponent<DressGirlAI>();
						Object.Destroy((Object)((Component)((Component)component3).gameObject.transform.Find("DressGirlModel").Find("basemesh")).gameObject.GetComponent<SkinnedMeshRenderer>());
						GameObject val3 = Object.Instantiate<GameObject>(BundleLoader.GetLoadedAsset<GameObject>("assets/lucas/lucasGirl.prefab"));
						val3.transform.SetParent(enemy.enemyType.enemyPrefab.transform, false);
						val3.transform.localPosition = new Vector3(0f, 1.5f, 0f);
					}
					else if (enemy.enemyType.enemyName == "HoarderBug" && flag4)
					{
						HoarderBugAI component4 = enemy.enemyType.enemyPrefab.GetComponent<HoarderBugAI>();
						Object.Destroy((Object)((Component)((Component)component4).gameObject.transform.Find("HoarderBugModel").Find("Cube")).gameObject.GetComponent<SkinnedMeshRenderer>());
						GameObject val4 = Object.Instantiate<GameObject>(BundleLoader.GetLoadedAsset<GameObject>("assets/lucas/lucasGirl.prefab"));
						val4.transform.SetParent(enemy.enemyType.enemyPrefab.transform, false);
						val4.transform.localPosition = new Vector3(0f, 1.5f, 0f);
					}
					else if (enemy.enemyType.enemyName == "Blob" && flag5)
					{
						BlobAI component5 = enemy.enemyType.enemyPrefab.GetComponent<BlobAI>();
						Object.Destroy((Object)((Component)((Component)component5).gameObject.transform.Find("Icosphere")).gameObject.GetComponent<SkinnedMeshRenderer>());
						GameObject val5 = Object.Instantiate<GameObject>(BundleLoader.GetLoadedAsset<GameObject>("assets/lucas/lucasGirl.prefab"));
						val5.transform.SetParent(enemy.enemyType.enemyPrefab.transform, false);
						val5.transform.localPosition = new Vector3(0f, 1.5f, 0f);
					}
					else if (enemy.enemyType.enemyName == "JesterEnemy" && flag6)
					{
						JesterAI component6 = enemy.enemyType.enemyPrefab.GetComponent<JesterAI>();
						Object.Destroy((Object)((Component)((Component)component6).gameObject.transform.Find("MeshContainer").Find("JackInTheBoxLowDetail")).gameObject.GetComponent<SkinnedMeshRenderer>());
						Object.Destroy((Object)((Component)((Component)component6).gameObject.transform.Find("MeshContainer").Find("JackInTheBoxLowDetail2")).gameObject.GetComponent<SkinnedMeshRenderer>());
						Object.Destroy((Object)((Component)((Component)component6).gameObject.transform.Find("MeshContainer").Find("JackInTheBoxBody")).gameObject.GetComponent<SkinnedMeshRenderer>());
						GameObject val6 = Object.Instantiate<GameObject>(BundleLoader.GetLoadedAsset<GameObject>("assets/lucas/lucasGirl.prefab"));
						val6.transform.SetParent(enemy.enemyType.enemyPrefab.transform, false);
						val6.transform.localPosition = new Vector3(0f, 1.5f, 0f);
					}
					else if (enemy.enemyType.enemyName == "SandSpider" && flag7)
					{
						SandSpiderAI component7 = enemy.enemyType.enemyPrefab.GetComponent<SandSpiderAI>();
						Object.Destroy((Object)((Component)((Component)component7).gameObject.transform.Find("MeshContainer").Find("MeshRenderer")).gameObject.GetComponent<SkinnedMeshRenderer>());
						GameObject val7 = Object.Instantiate<GameObject>(BundleLoader.GetLoadedAsset<GameObject>("assets/lucas/lucasGirl.prefab"));
						val7.transform.SetParent(enemy.enemyType.enemyPrefab.transform, false);
						val7.transform.localPosition = new Vector3(0f, 1.5f, 0f);
					}
					else if (enemy.enemyType.enemyName == "PufferEnemy" && flag8)
					{
						PufferAI component8 = enemy.enemyType.enemyPrefab.GetComponent<PufferAI>();
						Object.Destroy((Object)((Component)((Component)component8).gameObject.transform.Find("PufferModel").Find("BezierCurve")).gameObject.GetComponent<SkinnedMeshRenderer>());
						GameObject val8 = Object.Instantiate<GameObject>(BundleLoader.GetLoadedAsset<GameObject>("assets/lucas/lucasGirl.prefab"));
						val8.transform.SetParent(enemy.enemyType.enemyPrefab.transform, false);
						val8.transform.localPosition = new Vector3(0f, 1.5f, 0f);
					}
					else if (enemy.enemyType.enemyName == "Crawler" && flag9)
					{
						CrawlerAI component9 = enemy.enemyType.enemyPrefab.GetComponent<CrawlerAI>();
						Object.Destroy((Object)((Component)((Component)component9).gameObject.transform.Find("CrawlerModel").Find("Cube.002")).gameObject.GetComponent<SkinnedMeshRenderer>());
						GameObject val9 = Object.Instantiate<GameObject>(BundleLoader.GetLoadedAsset<GameObject>("assets/lucas/lucasGirl.prefab"));
						val9.transform.SetParent(enemy.enemyType.enemyPrefab.transform, false);
						val9.transform.localPosition = new Vector3(0f, 1.5f, 0f);
					}
					else if (enemy.enemyType.enemyName == "Centipede" && flag10)
					{
						CentipedeAI component10 = enemy.enemyType.enemyPrefab.GetComponent<CentipedeAI>();
						Object.Destroy((Object)((Component)((Component)component10).gameObject.transform.Find("CentipedeModel").Find("LOD1")).gameObject.GetComponent<SkinnedMeshRenderer>());
						Object.Destroy((Object)((Component)((Component)component10).gameObject.transform.Find("CentipedeModel").Find("LOD2")).gameObject.GetComponent<SkinnedMeshRenderer>());
						GameObject val10 = Object.Instantiate<GameObject>(BundleLoader.GetLoadedAsset<GameObject>("assets/jacub/jacubWorm.prefab"));
						val10.transform.SetParent(enemy.enemyType.enemyPrefab.transform, false);
						val10.transform.localPosition = new Vector3(0f, 1f, 0f);
					}
				}
			}
		}
	}
	[HarmonyPatch]
	internal class OutsideBoiss
	{
		[HarmonyPatch(typeof(RoundManager), "SpawnEnemiesOutside")]
		[HarmonyPostfix]
		public static void SummonOutsideBoiss(RoundManager __instance)
		{
			//IL_00b5: Unknown result type (might be due to invalid IL or missing references)
			//IL_00bf: Expected O, but got Unknown
			//IL_00ea: Unknown result type (might be due to invalid IL or missing references)
			//IL_00f4: Expected O, but got Unknown
			//IL_013b: Unknown result type (might be due to invalid IL or missing references)
			//IL_01e5: Unknown result type (might be due to invalid IL or missing references)
			//IL_01ef: Expected O, but got Unknown
			//IL_021a: Unknown result type (might be due to invalid IL or missing references)
			//IL_0224: Expected O, but got Unknown
			//IL_024f: Unknown result type (might be due to invalid IL or missing references)
			//IL_0259: Expected O, but got Unknown
			//IL_02a0: Unknown result type (might be due to invalid IL or missing references)
			//IL_030b: Unknown result type (might be due to invalid IL or missing references)
			//IL_0315: Expected O, but got Unknown
			//IL_0340: Unknown result type (might be due to invalid IL or missing references)
			//IL_034a: Expected O, but got Unknown
			//IL_0391: Unknown result type (might be due to invalid IL or missing references)
			//IL_0415: Unknown result type (might be due to invalid IL or missing references)
			bool flag = true;
			bool flag2 = true;
			bool flag3 = false;
			bool flag4 = false;
			foreach (SpawnableEnemyWithRarity outsideEnemy in RoundManager.Instance.currentLevel.OutsideEnemies)
			{
				if ((Object)(object)outsideEnemy.enemyType != (Object)null)
				{
					if (outsideEnemy.enemyType.enemyName == "MouthDog" && flag)
					{
						MouthDogAI component = outsideEnemy.enemyType.enemyPrefab.GetComponent<MouthDogAI>();
						component.killPlayerSFX = BundleLoader.GetLoadedAsset<AudioClip>("assets/nico/nicoAnger.mp3");
						Object.Destroy((Object)((Component)((Component)component).gameObject.transform.Find("MouthDogModel").Find("ToothDogBodyLOD1")).gameObject.GetComponent<SkinnedMeshRenderer>());
						Object.Destroy((Object)((Component)((Component)component).gameObject.transform.Find("MouthDogModel").Find("ToothDogBody")).gameObject.GetComponent<SkinnedMeshRenderer>());
						GameObject val = Object.Instantiate<GameObject>(BundleLoader.GetLoadedAsset<GameObject>("assets/pac/pacDog.prefab"));
						val.transform.SetParent(outsideEnemy.enemyType.enemyPrefab.transform, false);
						val.transform.localPosition = new Vector3(6f, 1.5f, 10f);
					}
					if (outsideEnemy.enemyType.enemyName == "ForestGiant" && flag2)
					{
						ForestGiantAI component2 = outsideEnemy.enemyType.enemyPrefab.GetComponent<ForestGiantAI>();
						((EnemyAI)component2).creatureSFX.clip = BundleLoader.GetLoadedAsset<AudioClip>("assets/nico/nicoAnger.mp3");
						((EnemyAI)component2).creatureVoice.clip = BundleLoader.GetLoadedAsset<AudioClip>("assets/nico/nicoAnger.mp3");
						((EnemyAI)component2).dieSFX = BundleLoader.GetLoadedAsset<AudioClip>("assets/nico/nicoAnger.mp3");
						Object.Destroy((Object)((Component)((Component)component2).gameObject.transform.Find("FGiantModelContainer").Find("BodyLOD0")).gameObject.GetComponent<SkinnedMeshRenderer>());
						Object.Destroy((Object)((Component)((Component)component2).gameObject.transform.Find("FGiantModelContainer").Find("BodyLOD1")).gameObject.GetComponent<SkinnedMeshRenderer>());
						Object.Destroy((Object)((Component)((Component)component2).gameObject.transform.Find("FGiantModelContainer").Find("BodyLOD2")).gameObject.GetComponent<SkinnedMeshRenderer>());
						GameObject val2 = Object.Instantiate<GameObject>(BundleLoader.GetLoadedAsset<GameObject>("assets/gussie/gussieGiant.prefab"));
						val2.transform.SetParent(outsideEnemy.enemyType.enemyPrefab.transform, false);
						val2.transform.localPosition = new Vector3(15f, 3f, -3.5f);
					}
					if (outsideEnemy.enemyType.enemyName == "DoubleWingedBird" && flag3)
					{
						BaboonBirdAI component3 = outsideEnemy.enemyType.enemyPrefab.GetComponent<BaboonBirdAI>();
						Object.Destroy((Object)((Component)((Component)component3).gameObject.transform.Find("DoublewingModel").Find("BirdLOD0")).gameObject.GetComponent<SkinnedMeshRenderer>());
						Object.Destroy((Object)((Component)((Component)component3).gameObject.transform.Find("DoublewingModel").Find("BirdLOD1")).gameObject.GetComponent<SkinnedMeshRenderer>());
						GameObject val3 = Object.Instantiate<GameObject>(BundleLoader.GetLoadedAsset<GameObject>("assets/lucas/lucasGirl.prefab"));
						val3.transform.SetParent(outsideEnemy.enemyType.enemyPrefab.transform, false);
						val3.transform.localPosition = new Vector3(0f, 1.5f, 0f);
					}
					if (outsideEnemy.enemyType.enemyName == "Earth Leviathan" && flag4)
					{
						SandWormAI component4 = outsideEnemy.enemyType.enemyPrefab.GetComponent<SandWormAI>();
						GameObject val4 = Object.Instantiate<GameObject>(BundleLoader.GetLoadedAsset<GameObject>("assets/jacub/jacubWorm.prefab"));
						val4.transform.SetParent(outsideEnemy.enemyType.enemyPrefab.transform, false);
						val4.transform.localPosition = new Vector3(0f, 1.5f, 0f);
					}
				}
			}
		}
	}
}