Please disclose if any significant portion of your mod was created using AI tools by adding the 'AI Generated' category. Failing to do so may result in the mod being removed from Thunderstore.
Decompiled source of Scavenger Plushie v1.0.9
ScavengerPlushieVS.dll
Decompiled 2 years agousing System; using System.Collections.Generic; using System.Diagnostics; using System.IO; using System.Reflection; using System.Runtime.CompilerServices; using System.Runtime.Versioning; using BepInEx; using BepInEx.Configuration; using LethalLib.Modules; using Microsoft.CodeAnalysis; using UnityEngine; [assembly: CompilationRelaxations(8)] [assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)] [assembly: Debuggable(DebuggableAttribute.DebuggingModes.Default | DebuggableAttribute.DebuggingModes.DisableOptimizations | DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints | DebuggableAttribute.DebuggingModes.EnableEditAndContinue)] [assembly: TargetFramework(".NETStandard,Version=v2.1", FrameworkDisplayName = ".NET Standard 2.1")] [assembly: AssemblyCompany("ScavengerPlushieVS")] [assembly: AssemblyConfiguration("Debug")] [assembly: AssemblyFileVersion("1.0.0.0")] [assembly: AssemblyInformationalVersion("1.0.0")] [assembly: AssemblyProduct("ScavengerPlushieVS")] [assembly: AssemblyTitle("ScavengerPlushieVS")] [assembly: AssemblyVersion("1.0.0.0")] namespace Microsoft.CodeAnalysis { [CompilerGenerated] [Microsoft.CodeAnalysis.Embedded] internal sealed class EmbeddedAttribute : Attribute { } } namespace System.Runtime.CompilerServices { [CompilerGenerated] [Microsoft.CodeAnalysis.Embedded] [AttributeUsage(AttributeTargets.Class | AttributeTargets.Property | AttributeTargets.Field | AttributeTargets.Event | AttributeTargets.Parameter | AttributeTargets.ReturnValue | AttributeTargets.GenericParameter, AllowMultiple = false, Inherited = false)] internal sealed class NullableAttribute : Attribute { public readonly byte[] NullableFlags; public NullableAttribute(byte P_0) { NullableFlags = new byte[1] { P_0 }; } public NullableAttribute(byte[] P_0) { NullableFlags = P_0; } } [CompilerGenerated] [Microsoft.CodeAnalysis.Embedded] [AttributeUsage(AttributeTargets.Class | AttributeTargets.Struct | AttributeTargets.Method | AttributeTargets.Interface | AttributeTargets.Delegate, AllowMultiple = false, Inherited = false)] internal sealed class NullableContextAttribute : Attribute { public readonly byte Flag; public NullableContextAttribute(byte P_0) { Flag = P_0; } } } namespace scavengerPlush { [BepInPlugin("scin.scavengerPlush", "Scavenger Plushie", "1.0.4")] public class Plugin : BaseUnityPlugin { public static ConfigEntry<int>? ScavengerSpawnWeight; public static ConfigEntry<bool>? ScavengerSpawnAllMoons; public static ConfigEntry<string>? ScavengerSpawnMoonsList; private const string GUID = "scin.scavengerPlush"; private const string NAME = "Scavenger Plushie"; private const string VERSION = "1.0.4"; public static Plugin instance; public Dictionary<LevelTypes, int>? levelRarities; public Dictionary<string, int>? customLevelRarities; private void Awake() { instance = this; ScavengerSpawnWeight = ((BaseUnityPlugin)this).Config.Bind<int>("Spawn Weight", "Spawn Weight", 20, "Set the spawn weight on all moons for the Scavenger Plushie (Higher = More plushies)"); ScavengerSpawnAllMoons = ((BaseUnityPlugin)this).Config.Bind<bool>("Moons", "Spawn On All Moons", true, "Set to TRUE to spawn on all moons.\nSet to FALSE to use the moons list."); ScavengerSpawnMoonsList = ((BaseUnityPlugin)this).Config.Bind<string>("Moons", "Moons List", "Experimentation, Assurance, Vow, Offense, March, Rend, Dine, Titan", "List what moons can spawn the Scavenger Plushie. Separate each entry with a comma."); string text = Path.Combine(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location), "scavengerplush"); string text2 = Path.Combine(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location), "scavengerplush"); AssetBundle val = AssetBundle.LoadFromFile(text2); Item val2 = val.LoadAsset<Item>("Assets/MY STUFF/Scavenger Plush/ScavengerPlushItem.asset"); NetworkPrefabs.RegisterNetworkPrefab(val2.spawnPrefab); Utilities.FixMixerGroups(val2.spawnPrefab); if (ScavengerSpawnAllMoons.Value) { Items.RegisterScrap(val2, ScavengerSpawnWeight.Value, (LevelTypes)(-1)); } else { if (ScavengerSpawnMoonsList.Value.Contains("experiment", StringComparison.OrdinalIgnoreCase)) { Items.RegisterScrap(val2, ScavengerSpawnWeight.Value, (LevelTypes)4); } if (ScavengerSpawnMoonsList.Value.Contains("assurance", StringComparison.OrdinalIgnoreCase)) { Items.RegisterScrap(val2, ScavengerSpawnWeight.Value, (LevelTypes)8); } if (ScavengerSpawnMoonsList.Value.Contains("vow", StringComparison.OrdinalIgnoreCase)) { Items.RegisterScrap(val2, ScavengerSpawnWeight.Value, (LevelTypes)16); } if (ScavengerSpawnMoonsList.Value.Contains("offense", StringComparison.OrdinalIgnoreCase)) { Items.RegisterScrap(val2, ScavengerSpawnWeight.Value, (LevelTypes)32); } if (ScavengerSpawnMoonsList.Value.Contains("march", StringComparison.OrdinalIgnoreCase)) { Items.RegisterScrap(val2, ScavengerSpawnWeight.Value, (LevelTypes)64); } if (ScavengerSpawnMoonsList.Value.Contains("rend", StringComparison.OrdinalIgnoreCase)) { Items.RegisterScrap(val2, ScavengerSpawnWeight.Value, (LevelTypes)128); } if (ScavengerSpawnMoonsList.Value.Contains("dine", StringComparison.OrdinalIgnoreCase)) { Items.RegisterScrap(val2, ScavengerSpawnWeight.Value, (LevelTypes)256); } if (ScavengerSpawnMoonsList.Value.Contains("titan", StringComparison.OrdinalIgnoreCase)) { Items.RegisterScrap(val2, ScavengerSpawnWeight.Value, (LevelTypes)512); } } ((BaseUnityPlugin)this).Logger.LogInfo((object)"Loaded Scavenger Plush"); } } }