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 MiSide Mita models v1.0.1
hlb_mita.dll
Decompiled a year 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: AssemblyCompany("hlb_mita")] [assembly: AssemblyConfiguration("Debug")] [assembly: AssemblyFileVersion("1.0.0.0")] [assembly: AssemblyInformationalVersion("1.0.0")] [assembly: AssemblyProduct("hlb_mita")] [assembly: AssemblyTitle("hlb_mita")] [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 hlb_mitaModel { public class Mila : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "Mila"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class MitaBlack : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "MitaBlack"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class MitaCap : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "MitaCap"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class MitaDreamer : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "MitaDreamer"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class MitaKind : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "MitaKind"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class MitaUsual : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "MitaUsual"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class MitaTrue : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "MitaTrue"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class MitaLittle : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "MitaLittle"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class MitaCreepy : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "MitaCreepy"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class MitaManeken : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "MitaManeken"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class MitaCore : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "MitaCore"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class MitaChibi : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "MitaChibi"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class mitaPlayer : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "mitaPlayer"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class ChibiPlayer : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "ChibiPlayer"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } public class MitaVamp : BodyReplacementBase { protected override GameObject LoadAssetsAndReturnModel() { string text = "MitaVamp"; return Assets.MainAssetBundle.LoadAsset<GameObject>(text); } } [BepInPlugin("hlb.hlb_mitaModel", "hlb_mita Model", "1.0.1")] [BepInDependency(/*Could not decode attribute arguments.*/)] public class Plugin : BaseUnityPlugin { private void Awake() { //IL_0147: Unknown result type (might be due to invalid IL or missing references) //IL_014d: Expected O, but got Unknown Assets.PopulateAssets(); ModelReplacementAPI.RegisterSuitModelReplacement("狐萝卜_Mila", typeof(Mila)); ModelReplacementAPI.RegisterSuitModelReplacement("狐萝卜_MitaBlack", typeof(MitaBlack)); ModelReplacementAPI.RegisterSuitModelReplacement("狐萝卜_MitaCap", typeof(MitaCap)); ModelReplacementAPI.RegisterSuitModelReplacement("狐萝卜_MitaDreamer", typeof(MitaDreamer)); ModelReplacementAPI.RegisterSuitModelReplacement("狐萝卜_MitaKind", typeof(MitaKind)); ModelReplacementAPI.RegisterSuitModelReplacement("狐萝卜_MitaUsual", typeof(MitaUsual)); ModelReplacementAPI.RegisterSuitModelReplacement("狐萝卜_MitaTrue", typeof(MitaTrue)); ModelReplacementAPI.RegisterSuitModelReplacement("狐萝卜_MitaLittle", typeof(MitaLittle)); ModelReplacementAPI.RegisterSuitModelReplacement("狐萝卜_MitaCreepy", typeof(MitaCreepy)); ModelReplacementAPI.RegisterSuitModelReplacement("狐萝卜_MitaManeken", typeof(MitaManeken)); ModelReplacementAPI.RegisterSuitModelReplacement("狐萝卜_MitaCore", typeof(MitaCore)); ModelReplacementAPI.RegisterSuitModelReplacement("狐萝卜_MitaChibi", typeof(MitaChibi)); ModelReplacementAPI.RegisterSuitModelReplacement("狐萝卜_MitaPlayerChibi", typeof(mitaPlayer)); ModelReplacementAPI.RegisterSuitModelReplacement("狐萝卜_MitaPlayer", typeof(ChibiPlayer)); ModelReplacementAPI.RegisterSuitModelReplacement("狐萝卜_MitaVamp", typeof(MitaVamp)); Harmony val = new Harmony("hlb.hlb_mitaModel"); val.PatchAll(); ((BaseUnityPlugin)this).Logger.LogInfo((object)"Plugin hlb.hlb_mitaModel is loaded!"); ((BaseUnityPlugin)this).Logger.LogInfo((object)"\r\n _ _ _ ____ \r\n | | | | | | _ \\ \r\n | |__| | | | |_) |\r\n | __ | | | _ < \r\n | | | | |____| |_) |\r\n |_| |_|______|____/ \r\n \r\n \r\n\r\n"); } } public static class Assets { public static string mainAssetBundleName = "hlb_mita"; public static AssetBundle MainAssetBundle = null; private static string GetAssemblyName() { return Assembly.GetExecutingAssembly().GetName().Name; } public static void PopulateAssets() { if ((Object)(object)MainAssetBundle == (Object)null) { 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) { } } }