Please disclose if your mod was created primarily 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 FoofsLethalSkins v0.2.9
z_FoofsLethalModels.dll
Decompiled 2 years agousing System; using System.Diagnostics; using System.IO; using System.Reflection; using System.Runtime.CompilerServices; using System.Runtime.Versioning; using System.Security; using System.Security.Permissions; using BepInEx; using HarmonyLib; using Microsoft.CodeAnalysis; using ModelReplacement; 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: IgnoresAccessChecksTo("Assembly-CSharp")] [assembly: AssemblyCompany("z_FoofsLethalModels")] [assembly: AssemblyConfiguration("Debug")] [assembly: AssemblyFileVersion("1.0.0.0")] [assembly: AssemblyInformationalVersion("1.0.0")] [assembly: AssemblyProduct("z_FoofsLethalModels")] [assembly: AssemblyTitle("z_FoofsLethalModels")] [assembly: SecurityPermission(SecurityAction.RequestMinimum, SkipVerification = true)] [assembly: AssemblyVersion("1.0.0.0")] [module: UnverifiableCode] 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 FoofsLethalCompModels { public class MRFUNNYGREEN : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "Clove"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class MRGIRAFFICUS : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "Girafficus"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class MRSNOWFLAKE : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "Snowflake"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class MRECHO : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "Echo"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class MRNEXUS : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "Nexus"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class MRSACKBOY : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "Sackboy"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class MRGLITCH : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "Glitch"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class MRCAPRA : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "Capra"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class MREGGMAN : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "Eggman"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class MRULYSSES : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "Ulysses"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class MRLUNY : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "Luny"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class MRMANIC : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "Manic"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class MRE102G : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "E102G"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class MRRIKA : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "Rika"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class MRMO : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "Mo"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class MROLIMAR : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "Pik4Olimar"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class MRLOUIE : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "Pik4Louie"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class MRMALE7 : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "male07"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class MRBUTTERS : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "Butters"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class MRCOILH : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "Coil"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class MRHOARDBUG : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "HoadingBug"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class MRJESTER : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "Jester"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class MRBRACKEN : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "Bracken"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class MRROLL : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "Roll"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class MRNUTCRACKER : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "NutCracker"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class MRBUTLER : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "Butler"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class MRFORESTGIANT : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "ForestGiant"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class MRLASSO : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "Lassoman"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class MRBIN : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "Binman"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class MRTHUMP : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "Thumper"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class MRBABOON : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "BaboonHawk"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class MRHUNTRESS : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "HuntressROR2"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class MRLEMURIAN : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "LemurianROR2"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class MRBANDIT : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "Bandit"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class MRCAPTAIN : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "Captain"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class MRACRID : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "Acrid"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class MRSCOOBY : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "ScoobyDoo"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class MRSHAGGY : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "ScoobyShaggy"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class MRFRED : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "ScoobyFred"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class MRVELMA : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "ScoobyVelma"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class MRDAPHNE : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "ScoobyDaphne"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class MRPARAPPA : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "PTR_Parappa"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class MRLAMMY : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "PTR_Lammy"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class MREYELESSDOG : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "EyelessDog"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class MRSPORELIZ : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "SporeLizard"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class MRWALLACE : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "WNG_Wallace"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class MRGROMIT : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "WNG_Gromit"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class MRPMGOOMBELLA : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "PM_Goombella"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class MRPMVIVIAN : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "PM_Vivian"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class MRNAPPA : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "DBZ_Nappa"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class MRVEGETA : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "DBZ_VEGETA"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class MRMANEATER1 : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "Maneater_Baby"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class MRMANEATER2 : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "Maneater_Angry"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class MRCASTER : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "Caster"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class MRARTIFICER : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "Artificer"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class MRFALSESON : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "FalseSon"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class MRCHEFSOTS : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "Chef"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } [BepInPlugin("foofs.skins.lc", "FoofsLethalSkins", "0.1.0")] [BepInDependency(/*Could not decode attribute arguments.*/)] public class Plugin : BaseUnityPlugin { private void Awake() { //IL_04b9: Unknown result type (might be due to invalid IL or missing references) //IL_04bf: Expected O, but got Unknown Assets.PopulateAssets(); ModelReplacementAPI.RegisterSuitModelReplacement("SW_Echo", typeof(MRECHO)); ModelReplacementAPI.RegisterSuitModelReplacement("SW_Snowflake", typeof(MRSNOWFLAKE)); ModelReplacementAPI.RegisterSuitModelReplacement("SW_Nexus", typeof(MRNEXUS)); ModelReplacementAPI.RegisterSuitModelReplacement("Girafficus", typeof(MRGIRAFFICUS)); ModelReplacementAPI.RegisterSuitModelReplacement("Capra", typeof(MRCAPRA)); ModelReplacementAPI.RegisterSuitModelReplacement("Glitch", typeof(MRGLITCH)); ModelReplacementAPI.RegisterSuitModelReplacement("Sackboy", typeof(MRSACKBOY)); ModelReplacementAPI.RegisterSuitModelReplacement("Eggman", typeof(MREGGMAN)); ModelReplacementAPI.RegisterSuitModelReplacement("Ulysses", typeof(MRULYSSES)); ModelReplacementAPI.RegisterSuitModelReplacement("Luny", typeof(MRLUNY)); ModelReplacementAPI.RegisterSuitModelReplacement("Manic", typeof(MRMANIC)); ModelReplacementAPI.RegisterSuitModelReplacement("E102G", typeof(MRE102G)); ModelReplacementAPI.RegisterSuitModelReplacement("Mo", typeof(MRMO)); ModelReplacementAPI.RegisterSuitModelReplacement("Rika", typeof(MRRIKA)); ModelReplacementAPI.RegisterSuitModelReplacement("Pikmin_Olimar", typeof(MROLIMAR)); ModelReplacementAPI.RegisterSuitModelReplacement("Pikmin_Louie", typeof(MRLOUIE)); ModelReplacementAPI.RegisterSuitModelReplacement("Butters", typeof(MRBUTTERS)); ModelReplacementAPI.RegisterSuitModelReplacement("male07", typeof(MRMALE7)); ModelReplacementAPI.RegisterSuitModelReplacement("M_Coilhead", typeof(MRCOILH)); ModelReplacementAPI.RegisterSuitModelReplacement("M_HoardingBug", typeof(MRHOARDBUG)); ModelReplacementAPI.RegisterSuitModelReplacement("M_Jester", typeof(MRJESTER)); ModelReplacementAPI.RegisterSuitModelReplacement("M_Bracken", typeof(MRBRACKEN)); ModelReplacementAPI.RegisterSuitModelReplacement("SW_Roll", typeof(MRROLL)); ModelReplacementAPI.RegisterSuitModelReplacement("SW_Binman", typeof(MRBIN)); ModelReplacementAPI.RegisterSuitModelReplacement("M_Lasso", typeof(MRLASSO)); ModelReplacementAPI.RegisterSuitModelReplacement("M_ForestGiant", typeof(MRFORESTGIANT)); ModelReplacementAPI.RegisterSuitModelReplacement("M_Butler", typeof(MRBUTLER)); ModelReplacementAPI.RegisterSuitModelReplacement("M_Nutcracker", typeof(MRNUTCRACKER)); ModelReplacementAPI.RegisterSuitModelReplacement("M_Thumper", typeof(MRTHUMP)); ModelReplacementAPI.RegisterSuitModelReplacement("M_Baboon", typeof(MRBABOON)); ModelReplacementAPI.RegisterSuitModelReplacement("ROR_Huntress", typeof(MRHUNTRESS)); ModelReplacementAPI.RegisterSuitModelReplacement("ROR_Lemurian", typeof(MRLEMURIAN)); ModelReplacementAPI.RegisterSuitModelReplacement("Scooby_Fred", typeof(MRFRED)); ModelReplacementAPI.RegisterSuitModelReplacement("Scooby_Daphne", typeof(MRDAPHNE)); ModelReplacementAPI.RegisterSuitModelReplacement("Scooby_Scooby", typeof(MRSCOOBY)); ModelReplacementAPI.RegisterSuitModelReplacement("Scooby_Shaggy", typeof(MRSHAGGY)); ModelReplacementAPI.RegisterSuitModelReplacement("Scooby_Velma", typeof(MRVELMA)); ModelReplacementAPI.RegisterSuitModelReplacement("Clove", typeof(MRFUNNYGREEN)); ModelReplacementAPI.RegisterSuitModelReplacement("ROR_Bandit", typeof(MRBANDIT)); ModelReplacementAPI.RegisterSuitModelReplacement("ROR_Acrid", typeof(MRACRID)); ModelReplacementAPI.RegisterSuitModelReplacement("ROR_Captain", typeof(MRCAPTAIN)); ModelReplacementAPI.RegisterSuitModelReplacement("M_Eyeless", typeof(MREYELESSDOG)); ModelReplacementAPI.RegisterSuitModelReplacement("M_Spore", typeof(MRSPORELIZ)); ModelReplacementAPI.RegisterSuitModelReplacement("PTR_Parappa", typeof(MRPARAPPA)); ModelReplacementAPI.RegisterSuitModelReplacement("PTR_Lammy", typeof(MRLAMMY)); ModelReplacementAPI.RegisterSuitModelReplacement("WNG_Wallace", typeof(MRWALLACE)); ModelReplacementAPI.RegisterSuitModelReplacement("WNG_Gromit", typeof(MRGROMIT)); ModelReplacementAPI.RegisterSuitModelReplacement("PM_Goombella", typeof(MRPMGOOMBELLA)); ModelReplacementAPI.RegisterSuitModelReplacement("PM_Vivian", typeof(MRPMVIVIAN)); ModelReplacementAPI.RegisterSuitModelReplacement("DBZ_Nappa", typeof(MRNAPPA)); ModelReplacementAPI.RegisterSuitModelReplacement("DBZ_Vegeta", typeof(MRVEGETA)); ModelReplacementAPI.RegisterSuitModelReplacement("M_ManeaterBaby", typeof(MRMANEATER1)); ModelReplacementAPI.RegisterSuitModelReplacement("M_ManeaterAngry", typeof(MRMANEATER2)); ModelReplacementAPI.RegisterSuitModelReplacement("Caster", typeof(MRCASTER)); ModelReplacementAPI.RegisterSuitModelReplacement("ROR_Artificer", typeof(MRARTIFICER)); ModelReplacementAPI.RegisterSuitModelReplacement("ROR_FalseSon", typeof(MRFALSESON)); ModelReplacementAPI.RegisterSuitModelReplacement("ROR_CHEF", typeof(MRCHEFSOTS)); Harmony val = new Harmony("foofs.skins.lc"); val.PatchAll(); ((BaseUnityPlugin)this).Logger.LogInfo((object)"Foof's Lethal Skins sucessfully loaded, now go jumpscare your friends with Parappa or the Bracken or something."); } } public static class Assets { public static string mainAssetBundleName = "foofsmodels"; public static AssetBundle MainAssetBundle = null; private static string GetAssemblyName() { return Assembly.GetExecutingAssembly().GetName().Name.Replace(" ", "_"); } public static void PopulateAssets() { if ((Object)(object)MainAssetBundle == (Object)null) { Console.WriteLine(GetAssemblyName() + "." + mainAssetBundleName); using Stream stream = Assembly.GetExecutingAssembly().GetManifestResourceStream(GetAssemblyName() + "." + mainAssetBundleName); MainAssetBundle = AssetBundle.LoadFromStream(stream); } } } } namespace System.Runtime.CompilerServices { [AttributeUsage(AttributeTargets.Assembly, AllowMultiple = true)] internal sealed class IgnoresAccessChecksToAttribute : Attribute { public IgnoresAccessChecksToAttribute(string assemblyName) { } } }