Some mods may be broken due to the recent Alloyed Collective update.
Decompiled source of LaIncubadabraRevived v1.1.6
LaIncubadabraRevivedd.dll
Decompiled 3 weeks agousing System; using System.Diagnostics; using System.Linq; using System.Reflection; using System.Runtime.CompilerServices; using System.Runtime.Versioning; using System.Security; using System.Security.Permissions; using BepInEx; using BepInEx.Bootstrap; using BepInEx.Logging; using EntityStates.ParentEgg; using HG.Reflection; using HarmonyLib; using Microsoft.CodeAnalysis; using On.EntityStates.ParentEgg; using R2API.Utils; using RiskyMod.Allies; using RoR2; using UnityEngine; [assembly: CompilationRelaxations(8)] [assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)] [assembly: Debuggable(DebuggableAttribute.DebuggingModes.Default | DebuggableAttribute.DebuggingModes.DisableOptimizations | DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints | DebuggableAttribute.DebuggingModes.EnableEditAndContinue)] [assembly: OptIn] [assembly: TargetFramework(".NETStandard,Version=v2.1", FrameworkDisplayName = ".NET Standard 2.1")] [assembly: AssemblyCompany("LaIncubadabraRevivedd")] [assembly: AssemblyConfiguration("Debug")] [assembly: AssemblyFileVersion("1.0.0.0")] [assembly: AssemblyInformationalVersion("1.0.0")] [assembly: AssemblyProduct("LaIncubadabraRevivedd")] [assembly: AssemblyTitle("LaIncubadabraRevivedd")] [assembly: SecurityPermission(SecurityAction.RequestMinimum, SkipVerification = true)] [assembly: SecurityPermission(SecurityAction.RequestMinimum, SkipVerification = true)] [assembly: AssemblyVersion("1.0.0.0")] [module: UnverifiableCode] [module: RefSafetyRules(11)] [module: UnverifiableCode] namespace Microsoft.CodeAnalysis { [CompilerGenerated] [Microsoft.CodeAnalysis.Embedded] internal sealed class EmbeddedAttribute : Attribute { } } namespace System.Runtime.CompilerServices { [CompilerGenerated] [Microsoft.CodeAnalysis.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 LaIncubadabraRevived { [BepInPlugin("com.phreel.LaIncubadabraRevived", "LaIncubadabraRevived", "1.1.7")] [BepInDependency(/*Could not decode attribute arguments.*/)] [NetworkCompatibility(/*Could not decode attribute arguments.*/)] public class LaIncubadabraRevived : BaseUnityPlugin { [Serializable] [CompilerGenerated] private sealed class <>c { public static readonly <>c <>9 = new <>c(); public static hook_OnHatchlingSpawned <>9__1_0; internal void <RiskyModCompat>b__1_0(orig_OnHatchlingSpawned orig, Hatch self, SpawnResult spawnResult) { //IL_0003: Unknown result type (might be due to invalid IL or missing references) //IL_000a: Unknown result type (might be due to invalid IL or missing references) //IL_001d: Unknown result type (might be due to invalid IL or missing references) //IL_0032: Unknown result type (might be due to invalid IL or missing references) //IL_0038: Invalid comparison between Unknown and I4 orig.Invoke(self, spawnResult); if (!Object.op_Implicit((Object)(object)spawnResult.spawnedInstance)) { return; } CharacterMaster component = spawnResult.spawnedInstance.GetComponent<CharacterMaster>(); if (Object.op_Implicit((Object)(object)component) && (int)component.teamIndex == 1 && Object.op_Implicit((Object)(object)component.inventory)) { CharacterBody body = component.GetBody(); if (Object.op_Implicit((Object)(object)body) && !body.isPlayerControlled) { component.inventory.GiveItemPermanent(Items.UseAmbientLevel, 1); component.inventory.GiveItemPermanent(AllyItems.AllyMarkerItem, 1); component.inventory.GiveItemPermanent(AllyItems.AllyScalingItem, 1); } } } } public void Awake() { //IL_0022: Unknown result type (might be due to invalid IL or missing references) if (Chainloader.PluginInfos.ContainsKey("com.RiskyLives.RiskyMod")) { RiskyModCompat(); } new Harmony("com.phreel.LaIncubadabraRevived").PatchAll(Assembly.GetExecutingAssembly()); } [MethodImpl(MethodImplOptions.NoInlining | MethodImplOptions.NoOptimization)] private void RiskyModCompat() { //IL_0015: Unknown result type (might be due to invalid IL or missing references) //IL_001a: Unknown result type (might be due to invalid IL or missing references) //IL_0020: Expected O, but got Unknown object obj = <>c.<>9__1_0; if (obj == null) { hook_OnHatchlingSpawned val = delegate(orig_OnHatchlingSpawned orig, Hatch self, SpawnResult spawnResult) { //IL_0003: Unknown result type (might be due to invalid IL or missing references) //IL_000a: Unknown result type (might be due to invalid IL or missing references) //IL_001d: Unknown result type (might be due to invalid IL or missing references) //IL_0032: Unknown result type (might be due to invalid IL or missing references) //IL_0038: Invalid comparison between Unknown and I4 orig.Invoke(self, spawnResult); if (Object.op_Implicit((Object)(object)spawnResult.spawnedInstance)) { CharacterMaster component = spawnResult.spawnedInstance.GetComponent<CharacterMaster>(); if (Object.op_Implicit((Object)(object)component) && (int)component.teamIndex == 1 && Object.op_Implicit((Object)(object)component.inventory)) { CharacterBody body = component.GetBody(); if (Object.op_Implicit((Object)(object)body) && !body.isPlayerControlled) { component.inventory.GiveItemPermanent(Items.UseAmbientLevel, 1); component.inventory.GiveItemPermanent(AllyItems.AllyMarkerItem, 1); component.inventory.GiveItemPermanent(AllyItems.AllyScalingItem, 1); } } } }; <>c.<>9__1_0 = val; obj = (object)val; } Hatch.OnHatchlingSpawned += (hook_OnHatchlingSpawned)obj; } } [HarmonyPatch(typeof(ItemCatalog))] internal class ItemCatalogPatch { [HarmonyPrefix] [HarmonyPatch("SetItemDefs")] private static void SetItemDefs(ItemDef[] newItemDefs) { //IL_0056: Unknown result type (might be due to invalid IL or missing references) ManualLogSource val = Logger.CreateLogSource("LaIncubadabraRevived"); try { ItemDef val2 = newItemDefs.First((ItemDef i) => ((Object)i).name == "Incubator"); if (Object.op_Implicit((Object)(object)val2)) { ItemTag[] array = new ItemTag[4]; RuntimeHelpers.InitializeArray(array, (RuntimeFieldHandle)/*OpCode not supported: LdMemberToken*/); val2.tags = (ItemTag[])(object)array; val2.deprecatedTier = (ItemTier)1; val.LogMessage((object)"Ancestral Incubator is now findable"); } else { val.LogMessage((object)"Could not locate Ancestral Incubator item"); } } finally { ((IDisposable)val)?.Dispose(); } } } }