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 Vocaloid Pack v1.18.1
vocaloidpack.dll
Decompiled a month 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 System.Threading.Tasks; using BepInEx; using BepInEx.Configuration; using BepInEx.Logging; using CamVisuals; using GameNetcodeStuff; 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("vocaloidpack")] [assembly: AssemblyConfiguration("Debug")] [assembly: AssemblyFileVersion("1.0.0.0")] [assembly: AssemblyInformationalVersion("1.0.0")] [assembly: AssemblyProduct("vocaloidpack")] [assembly: AssemblyTitle("vocaloidpack")] [assembly: SecurityPermission(SecurityAction.RequestMinimum, SkipVerification = true)] [assembly: AssemblyVersion("1.0.0.0")] [module: UnverifiableCode] namespace Microsoft.CodeAnalysis { [CompilerGenerated] [Embedded] internal sealed class EmbeddedAttribute : Attribute { } } namespace System.Runtime.CompilerServices { [CompilerGenerated] [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] [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 CamVisuals { [BepInPlugin("CameraVisuals", "gaby", "1.0.0")] public class CameraVisuals : BaseUnityPlugin { [HarmonyPatch(typeof(Terminal))] internal class DetectCameraTerminalPatch : MonoBehaviour { [HarmonyPatch(typeof(Terminal), "BeginUsingTerminal")] [HarmonyPostfix] public static void DetectCamera() { //IL_0047: Unknown result type (might be due to invalid IL or missing references) //IL_0067: Unknown result type (might be due to invalid IL or missing references) if (Plugin.cameraAdjustEnabled.Value) { PlayerControllerB localPlayerController = GameNetworkManager.Instance.localPlayerController; if (!terminalDisable) { ((Component)localPlayerController).transform.Find("ScavengerModel/metarig/CameraContainer/MainCamera/HUDHelmetPosition").localPosition = new Vector3(0.01f, -0.05f, -0.05f); ((Component)localPlayerController).transform.localScale = new Vector3(1f, 1f, 1f); terminalDisable = true; } } } [HarmonyPatch(typeof(Terminal), "QuitTerminal")] [HarmonyPostfix] public static void ResetCamera() { //IL_0052: Unknown result type (might be due to invalid IL or missing references) //IL_0072: Unknown result type (might be due to invalid IL or missing references) if (Plugin.cameraAdjustEnabled.Value) { PlayerControllerB localPlayerController = GameNetworkManager.Instance.localPlayerController; if (terminalDisable) { float num = -0.05f * (1f / currCameraLocalScale); ((Component)localPlayerController).transform.Find("ScavengerModel/metarig/CameraContainer/MainCamera/HUDHelmetPosition").localPosition = new Vector3(0.01f, num, -0.05f); ((Component)localPlayerController).transform.localScale = new Vector3(currCameraLocalScale, currCameraLocalScale, currCameraLocalScale); terminalDisable = false; } } } } private readonly Harmony harmony = new Harmony("CameraVisuals"); private static GameObject gameObject; private static CameraVisuals Instance; private static float currCameraLocalScale = 1f; private static bool terminalDisable = false; internal static ManualLogSource Log; private void Awake() { if ((Object)(object)Instance == (Object)null) { Instance = this; } Log = ((BaseUnityPlugin)this).Logger; harmony.PatchAll(typeof(CameraVisuals)); } public static void UpdateCurrCameraLocalScale(float modelHeight) { float num = modelHeight / 173f; currCameraLocalScale = num; } public static void DetectCamera(PlayerControllerB player, Vector3 cameraLocalPosition, float modelHeight) { //IL_0079: Unknown result type (might be due to invalid IL or missing references) //IL_008b: Unknown result type (might be due to invalid IL or missing references) float num = modelHeight / 173f; gameObject = ((Component)player).gameObject; Transform val = gameObject.transform.Find("ScavengerModel/metarig/CameraContainer"); if ((Object)(object)val != (Object)null) { float num2 = -0.05f * (1f / num); Vector3 localPosition = default(Vector3); ((Vector3)(ref localPosition))..ctor(0.01f, num2, -0.05f); Vector3 localScale = default(Vector3); ((Vector3)(ref localScale))..ctor(num, num, num); currCameraLocalScale = num; gameObject.transform.Find("ScavengerModel/metarig/CameraContainer/MainCamera/HUDHelmetPosition").localPosition = localPosition; gameObject.transform.localScale = localScale; } else { Log.LogInfo((object)"Camera Container not found!"); } } } } namespace ModelReplacement { public class ModelReplacementManager : MonoBehaviour { internal static ManualLogSource Log; internal static void OverrideStart(Vector3 cameraLocalPosition, float modelHeight, CharacterController modelController) { //IL_0007: Unknown result type (might be due to invalid IL or missing references) //IL_0008: Unknown result type (might be due to invalid IL or missing references) //IL_004c: Unknown result type (might be due to invalid IL or missing references) //IL_0052: Unknown result type (might be due to invalid IL or missing references) CharacterController thisController = GameNetworkManager.Instance.localPlayerController.thisController; if (!Plugin.cameraAdjustEnabled.Value) { return; } float num = modelHeight / 173f; ((Component)modelController).transform.localScale = Plugin.defaultModelScale * num; if ((Object)(object)thisController != (Object)(object)modelController) { return; } if (GameNetworkManager.Instance.localPlayerController.inTerminalMenu) { CameraVisuals.UpdateCurrCameraLocalScale(modelHeight); return; } Task.Delay(1).ContinueWith(delegate { //IL_000c: Unknown result type (might be due to invalid IL or missing references) CameraVisuals.DetectCamera(GameNetworkManager.Instance.localPlayerController, cameraLocalPosition, modelHeight); }); } internal static void OverrideOnDestroy(CharacterController modelController) { //IL_0066: Unknown result type (might be due to invalid IL or missing references) //IL_0077: Unknown result type (might be due to invalid IL or missing references) //IL_0088: Unknown result type (might be due to invalid IL or missing references) CharacterController thisController = GameNetworkManager.Instance.localPlayerController.thisController; if (Plugin.cameraAdjustEnabled.Value && (Object)(object)thisController == (Object)(object)modelController) { Transform transform = ((Component)GameNetworkManager.Instance.localPlayerController).transform; Transform val = transform.Find("ScavengerModel/metarig/CameraContainer"); if ((Object)(object)val != (Object)null) { ((Component)transform).transform.Find("ScavengerModel/metarig/CameraContainer/MainCamera/HUDHelmetPosition").localPosition = Plugin.defaultCameraLocalPosition; ((Component)transform).transform.localScale = Plugin.defaultModelScale; ((Component)modelController).transform.localScale = Plugin.defaultModelScale; } else { CameraVisuals.Log.LogInfo((object)"Camera Container not found"); } } } } public class VFLOWER : BodyReplacementBase { private string model_name = "VFlower"; protected override GameObject LoadAssetsAndReturnModel() { return Assets.MainAssetBundle.LoadAsset<GameObject>(model_name); } protected override void Start() { //IL_0017: Unknown result type (might be due to invalid IL or missing references) ((BodyReplacementBase)this).Start(); ModelReplacementManager.OverrideStart(new Vector3(0f, 0f, 0f), 180f, ((Component)this).GetComponent<PlayerControllerB>().thisController); } protected override void OnDestroy() { ModelReplacementManager.OverrideOnDestroy(((Component)this).GetComponent<PlayerControllerB>().thisController); ((BodyReplacementBase)this).OnDestroy(); } } public class CMIKU : BodyReplacementBase { private string model_name = "Miku Cute"; protected override GameObject LoadAssetsAndReturnModel() { return Assets.MainAssetBundle.LoadAsset<GameObject>(model_name); } protected override void Start() { //IL_0017: Unknown result type (might be due to invalid IL or missing references) ((BodyReplacementBase)this).Start(); ModelReplacementManager.OverrideStart(new Vector3(0f, 0f, 0f), 158f, ((Component)this).GetComponent<PlayerControllerB>().thisController); } protected override void OnDestroy() { ModelReplacementManager.OverrideOnDestroy(((Component)this).GetComponent<PlayerControllerB>().thisController); ((BodyReplacementBase)this).OnDestroy(); } } public class SEEU : BodyReplacementBase { private string model_name = "SeeU"; protected override GameObject LoadAssetsAndReturnModel() { return Assets.MainAssetBundle.LoadAsset<GameObject>(model_name); } protected override void Start() { //IL_0017: Unknown result type (might be due to invalid IL or missing references) ((BodyReplacementBase)this).Start(); ModelReplacementManager.OverrideStart(new Vector3(0f, 0f, 0f), 165f, ((Component)this).GetComponent<PlayerControllerB>().thisController); } protected override void OnDestroy() { ModelReplacementManager.OverrideOnDestroy(((Component)this).GetComponent<PlayerControllerB>().thisController); ((BodyReplacementBase)this).OnDestroy(); } } public class AMEIKO : BodyReplacementBase { private string model_name = "Adult Meiko"; protected override GameObject LoadAssetsAndReturnModel() { return Assets.MainAssetBundle.LoadAsset<GameObject>(model_name); } protected override void Start() { //IL_0017: Unknown result type (might be due to invalid IL or missing references) ((BodyReplacementBase)this).Start(); ModelReplacementManager.OverrideStart(new Vector3(0f, 0f, 0f), 169f, ((Component)this).GetComponent<PlayerControllerB>().thisController); } protected override void OnDestroy() { ModelReplacementManager.OverrideOnDestroy(((Component)this).GetComponent<PlayerControllerB>().thisController); ((BodyReplacementBase)this).OnDestroy(); } } public class IMIKU : BodyReplacementBase { private string model_name = "Miku Infinity"; protected override GameObject LoadAssetsAndReturnModel() { return Assets.MainAssetBundle.LoadAsset<GameObject>(model_name); } protected override void Start() { //IL_0017: Unknown result type (might be due to invalid IL or missing references) ((BodyReplacementBase)this).Start(); ModelReplacementManager.OverrideStart(new Vector3(0f, 0f, 0f), 158f, ((Component)this).GetComponent<PlayerControllerB>().thisController); } protected override void OnDestroy() { ModelReplacementManager.OverrideOnDestroy(((Component)this).GetComponent<PlayerControllerB>().thisController); ((BodyReplacementBase)this).OnDestroy(); } } public class RGIRL : BodyReplacementBase { private string model_name = "Miku Rolling Girl"; protected override GameObject LoadAssetsAndReturnModel() { return Assets.MainAssetBundle.LoadAsset<GameObject>(model_name); } protected override void Start() { //IL_0017: Unknown result type (might be due to invalid IL or missing references) ((BodyReplacementBase)this).Start(); ModelReplacementManager.OverrideStart(new Vector3(0f, 0f, 0f), 158f, ((Component)this).GetComponent<PlayerControllerB>().thisController); } protected override void OnDestroy() { ModelReplacementManager.OverrideOnDestroy(((Component)this).GetComponent<PlayerControllerB>().thisController); ((BodyReplacementBase)this).OnDestroy(); } } public class NMIKU : BodyReplacementBase { private string model_name = "Miku Nyanko"; protected override GameObject LoadAssetsAndReturnModel() { return Assets.MainAssetBundle.LoadAsset<GameObject>(model_name); } protected override void Start() { //IL_0017: Unknown result type (might be due to invalid IL or missing references) ((BodyReplacementBase)this).Start(); ModelReplacementManager.OverrideStart(new Vector3(0f, 0f, 0f), 158f, ((Component)this).GetComponent<PlayerControllerB>().thisController); } protected override void OnDestroy() { ModelReplacementManager.OverrideOnDestroy(((Component)this).GetComponent<PlayerControllerB>().thisController); ((BodyReplacementBase)this).OnDestroy(); } } public class PMIKU : BodyReplacementBase { private string model_name = "Miku Plugin"; protected override GameObject LoadAssetsAndReturnModel() { return Assets.MainAssetBundle.LoadAsset<GameObject>(model_name); } protected override void Start() { //IL_0017: Unknown result type (might be due to invalid IL or missing references) ((BodyReplacementBase)this).Start(); ModelReplacementManager.OverrideStart(new Vector3(0f, 0f, 0f), 158f, ((Component)this).GetComponent<PlayerControllerB>().thisController); } protected override void OnDestroy() { ModelReplacementManager.OverrideOnDestroy(((Component)this).GetComponent<PlayerControllerB>().thisController); ((BodyReplacementBase)this).OnDestroy(); } } public class YUU : BodyReplacementBase { private string model_name = "Yuu"; protected override GameObject LoadAssetsAndReturnModel() { return Assets.MainAssetBundle.LoadAsset<GameObject>(model_name); } protected override void Start() { //IL_0017: Unknown result type (might be due to invalid IL or missing references) ((BodyReplacementBase)this).Start(); ModelReplacementManager.OverrideStart(new Vector3(0f, 0f, 0f), 168f, ((Component)this).GetComponent<PlayerControllerB>().thisController); } protected override void OnDestroy() { ModelReplacementManager.OverrideOnDestroy(((Component)this).GetComponent<PlayerControllerB>().thisController); ((BodyReplacementBase)this).OnDestroy(); } } public class WIL : BodyReplacementBase { private string model_name = "Wil"; protected override GameObject LoadAssetsAndReturnModel() { return Assets.MainAssetBundle.LoadAsset<GameObject>(model_name); } protected override void Start() { //IL_0017: Unknown result type (might be due to invalid IL or missing references) ((BodyReplacementBase)this).Start(); ModelReplacementManager.OverrideStart(new Vector3(0f, 0f, 0f), 185f, ((Component)this).GetComponent<PlayerControllerB>().thisController); } protected override void OnDestroy() { ModelReplacementManager.OverrideOnDestroy(((Component)this).GetComponent<PlayerControllerB>().thisController); ((BodyReplacementBase)this).OnDestroy(); } } public class KYO : BodyReplacementBase { private string model_name = "Kyo"; protected override GameObject LoadAssetsAndReturnModel() { return Assets.MainAssetBundle.LoadAsset<GameObject>(model_name); } protected override void Start() { //IL_0017: Unknown result type (might be due to invalid IL or missing references) ((BodyReplacementBase)this).Start(); ModelReplacementManager.OverrideStart(new Vector3(0f, 0f, 0f), 175f, ((Component)this).GetComponent<PlayerControllerB>().thisController); } protected override void OnDestroy() { ModelReplacementManager.OverrideOnDestroy(((Component)this).GetComponent<PlayerControllerB>().thisController); ((BodyReplacementBase)this).OnDestroy(); } } public class MIKI : BodyReplacementBase { private string model_name = "Miki"; protected override GameObject LoadAssetsAndReturnModel() { return Assets.MainAssetBundle.LoadAsset<GameObject>(model_name); } protected override void Start() { //IL_0017: Unknown result type (might be due to invalid IL or missing references) ((BodyReplacementBase)this).Start(); ModelReplacementManager.OverrideStart(new Vector3(0f, 0f, 0f), 172f, ((Component)this).GetComponent<PlayerControllerB>().thisController); } protected override void OnDestroy() { ModelReplacementManager.OverrideOnDestroy(((Component)this).GetComponent<PlayerControllerB>().thisController); ((BodyReplacementBase)this).OnDestroy(); } } public class FUKASE : BodyReplacementBase { private string model_name = "Fukase"; protected override GameObject LoadAssetsAndReturnModel() { return Assets.MainAssetBundle.LoadAsset<GameObject>(model_name); } protected override void Start() { //IL_0017: Unknown result type (might be due to invalid IL or missing references) ((BodyReplacementBase)this).Start(); ModelReplacementManager.OverrideStart(new Vector3(0f, 0f, 0f), 174f, ((Component)this).GetComponent<PlayerControllerB>().thisController); } protected override void OnDestroy() { ModelReplacementManager.OverrideOnDestroy(((Component)this).GetComponent<PlayerControllerB>().thisController); ((BodyReplacementBase)this).OnDestroy(); } } public class PIKO : BodyReplacementBase { private string model_name = "Piko"; protected override GameObject LoadAssetsAndReturnModel() { return Assets.MainAssetBundle.LoadAsset<GameObject>(model_name); } protected override void Start() { //IL_0017: Unknown result type (might be due to invalid IL or missing references) ((BodyReplacementBase)this).Start(); ModelReplacementManager.OverrideStart(new Vector3(0f, 0f, 0f), 170f, ((Component)this).GetComponent<PlayerControllerB>().thisController); } protected override void OnDestroy() { ModelReplacementManager.OverrideOnDestroy(((Component)this).GetComponent<PlayerControllerB>().thisController); ((BodyReplacementBase)this).OnDestroy(); } } public class ZMIKU : BodyReplacementBase { private string model_name = "Miku Zukin"; protected override GameObject LoadAssetsAndReturnModel() { return Assets.MainAssetBundle.LoadAsset<GameObject>(model_name); } protected override void Start() { //IL_0017: Unknown result type (might be due to invalid IL or missing references) ((BodyReplacementBase)this).Start(); ModelReplacementManager.OverrideStart(new Vector3(0f, 0f, 0f), 158f, ((Component)this).GetComponent<PlayerControllerB>().thisController); } protected override void OnDestroy() { ModelReplacementManager.OverrideOnDestroy(((Component)this).GetComponent<PlayerControllerB>().thisController); ((BodyReplacementBase)this).OnDestroy(); } } public class MRTM : BodyReplacementBase { private string model_name = "Miku Rasetsu to Mukuro"; protected override GameObject LoadAssetsAndReturnModel() { return Assets.MainAssetBundle.LoadAsset<GameObject>(model_name); } protected override void Start() { //IL_0017: Unknown result type (might be due to invalid IL or missing references) ((BodyReplacementBase)this).Start(); ModelReplacementManager.OverrideStart(new Vector3(0f, 0f, 0f), 158f, ((Component)this).GetComponent<PlayerControllerB>().thisController); } protected override void OnDestroy() { ModelReplacementManager.OverrideOnDestroy(((Component)this).GetComponent<PlayerControllerB>().thisController); ((BodyReplacementBase)this).OnDestroy(); } } public class UNI : BodyReplacementBase { private string model_name = "UNI"; protected override GameObject LoadAssetsAndReturnModel() { return Assets.MainAssetBundle.LoadAsset<GameObject>(model_name); } protected override void Start() { //IL_0017: Unknown result type (might be due to invalid IL or missing references) ((BodyReplacementBase)this).Start(); ModelReplacementManager.OverrideStart(new Vector3(0f, 0f, 0f), 180f, ((Component)this).GetComponent<PlayerControllerB>().thisController); } protected override void OnDestroy() { ModelReplacementManager.OverrideOnDestroy(((Component)this).GetComponent<PlayerControllerB>().thisController); ((BodyReplacementBase)this).OnDestroy(); } } public class V3FLOWER : BodyReplacementBase { private string model_name = "V3 Flower"; protected override GameObject LoadAssetsAndReturnModel() { return Assets.MainAssetBundle.LoadAsset<GameObject>(model_name); } protected override void Start() { //IL_0017: Unknown result type (might be due to invalid IL or missing references) ((BodyReplacementBase)this).Start(); ModelReplacementManager.OverrideStart(new Vector3(0f, 0f, 0f), 180f, ((Component)this).GetComponent<PlayerControllerB>().thisController); } protected override void OnDestroy() { ModelReplacementManager.OverrideOnDestroy(((Component)this).GetComponent<PlayerControllerB>().thisController); ((BodyReplacementBase)this).OnDestroy(); } } public class STARDUST : BodyReplacementBase { private string model_name = "Stardust"; protected override GameObject LoadAssetsAndReturnModel() { return Assets.MainAssetBundle.LoadAsset<GameObject>(model_name); } protected override void Start() { //IL_0017: Unknown result type (might be due to invalid IL or missing references) ((BodyReplacementBase)this).Start(); ModelReplacementManager.OverrideStart(new Vector3(0f, 0f, 0f), 173f, ((Component)this).GetComponent<PlayerControllerB>().thisController); } protected override void OnDestroy() { ModelReplacementManager.OverrideOnDestroy(((Component)this).GetComponent<PlayerControllerB>().thisController); ((BodyReplacementBase)this).OnDestroy(); } } public class YUECHENG : BodyReplacementBase { private string model_name = "Yue Cheng"; protected override GameObject LoadAssetsAndReturnModel() { return Assets.MainAssetBundle.LoadAsset<GameObject>(model_name); } protected override void Start() { //IL_0017: Unknown result type (might be due to invalid IL or missing references) ((BodyReplacementBase)this).Start(); ModelReplacementManager.OverrideStart(new Vector3(0f, 0f, 0f), 190f, ((Component)this).GetComponent<PlayerControllerB>().thisController); } protected override void OnDestroy() { ModelReplacementManager.OverrideOnDestroy(((Component)this).GetComponent<PlayerControllerB>().thisController); ((BodyReplacementBase)this).OnDestroy(); } } public class UTAP : BodyReplacementBase { private string model_name = "Uta Utane Pants"; protected override GameObject LoadAssetsAndReturnModel() { return Assets.MainAssetBundle.LoadAsset<GameObject>(model_name); } protected override void Start() { //IL_0017: Unknown result type (might be due to invalid IL or missing references) ((BodyReplacementBase)this).Start(); ModelReplacementManager.OverrideStart(new Vector3(0f, 0f, 0f), 173f, ((Component)this).GetComponent<PlayerControllerB>().thisController); } protected override void OnDestroy() { ModelReplacementManager.OverrideOnDestroy(((Component)this).GetComponent<PlayerControllerB>().thisController); ((BodyReplacementBase)this).OnDestroy(); } } public class UTAS : BodyReplacementBase { private string model_name = "Uta Utane Skirt"; protected override GameObject LoadAssetsAndReturnModel() { return Assets.MainAssetBundle.LoadAsset<GameObject>(model_name); } protected override void Start() { //IL_0017: Unknown result type (might be due to invalid IL or missing references) ((BodyReplacementBase)this).Start(); ModelReplacementManager.OverrideStart(new Vector3(0f, 0f, 0f), 173f, ((Component)this).GetComponent<PlayerControllerB>().thisController); } protected override void OnDestroy() { ModelReplacementManager.OverrideOnDestroy(((Component)this).GetComponent<PlayerControllerB>().thisController); ((BodyReplacementBase)this).OnDestroy(); } } public class DSMIKU : BodyReplacementBase { private string model_name = "Miku Deep Sea"; protected override GameObject LoadAssetsAndReturnModel() { return Assets.MainAssetBundle.LoadAsset<GameObject>(model_name); } protected override void Start() { //IL_0017: Unknown result type (might be due to invalid IL or missing references) ((BodyReplacementBase)this).Start(); ModelReplacementManager.OverrideStart(new Vector3(0f, 0f, 0f), 158f, ((Component)this).GetComponent<PlayerControllerB>().thisController); } protected override void OnDestroy() { ModelReplacementManager.OverrideOnDestroy(((Component)this).GetComponent<PlayerControllerB>().thisController); ((BodyReplacementBase)this).OnDestroy(); } } public class RRF : BodyReplacementBase { private string model_name = "Rin Raspberry Fox"; protected override GameObject LoadAssetsAndReturnModel() { return Assets.MainAssetBundle.LoadAsset<GameObject>(model_name); } protected override void Start() { //IL_0017: Unknown result type (might be due to invalid IL or missing references) ((BodyReplacementBase)this).Start(); ModelReplacementManager.OverrideStart(new Vector3(0f, 0f, 0f), 157f, ((Component)this).GetComponent<PlayerControllerB>().thisController); } protected override void OnDestroy() { ModelReplacementManager.OverrideOnDestroy(((Component)this).GetComponent<PlayerControllerB>().thisController); ((BodyReplacementBase)this).OnDestroy(); } } public class YOHIO : BodyReplacementBase { private string model_name = "YOHIOloid"; protected override GameObject LoadAssetsAndReturnModel() { return Assets.MainAssetBundle.LoadAsset<GameObject>(model_name); } protected override void Start() { //IL_0017: Unknown result type (might be due to invalid IL or missing references) ((BodyReplacementBase)this).Start(); ModelReplacementManager.OverrideStart(new Vector3(0f, 0f, 0f), 177f, ((Component)this).GetComponent<PlayerControllerB>().thisController); } protected override void OnDestroy() { ModelReplacementManager.OverrideOnDestroy(((Component)this).GetComponent<PlayerControllerB>().thisController); ((BodyReplacementBase)this).OnDestroy(); } } public class YOHIOA : BodyReplacementBase { private string model_name = "YOHIOloid Anniversary"; protected override GameObject LoadAssetsAndReturnModel() { return Assets.MainAssetBundle.LoadAsset<GameObject>(model_name); } protected override void Start() { //IL_0017: Unknown result type (might be due to invalid IL or missing references) ((BodyReplacementBase)this).Start(); ModelReplacementManager.OverrideStart(new Vector3(0f, 0f, 0f), 177f, ((Component)this).GetComponent<PlayerControllerB>().thisController); } protected override void OnDestroy() { ModelReplacementManager.OverrideOnDestroy(((Component)this).GetComponent<PlayerControllerB>().thisController); ((BodyReplacementBase)this).OnDestroy(); } } public class IA : BodyReplacementBase { private string model_name = "IA"; protected override GameObject LoadAssetsAndReturnModel() { return Assets.MainAssetBundle.LoadAsset<GameObject>(model_name); } protected override void Start() { //IL_0017: Unknown result type (might be due to invalid IL or missing references) ((BodyReplacementBase)this).Start(); ModelReplacementManager.OverrideStart(new Vector3(0f, 0f, 0f), 174f, ((Component)this).GetComponent<PlayerControllerB>().thisController); } protected override void OnDestroy() { ModelReplacementManager.OverrideOnDestroy(((Component)this).GetComponent<PlayerControllerB>().thisController); ((BodyReplacementBase)this).OnDestroy(); } } public class YANHE : BodyReplacementBase { private string model_name = "Yan He"; protected override GameObject LoadAssetsAndReturnModel() { return Assets.MainAssetBundle.LoadAsset<GameObject>(model_name); } protected override void Start() { //IL_0017: Unknown result type (might be due to invalid IL or missing references) ((BodyReplacementBase)this).Start(); ModelReplacementManager.OverrideStart(new Vector3(0f, 0f, 0f), 190f, ((Component)this).GetComponent<PlayerControllerB>().thisController); } protected override void OnDestroy() { ModelReplacementManager.OverrideOnDestroy(((Component)this).GetComponent<PlayerControllerB>().thisController); ((BodyReplacementBase)this).OnDestroy(); } } public class DAINA : BodyReplacementBase { private string model_name = "Daina"; protected override GameObject LoadAssetsAndReturnModel() { return Assets.MainAssetBundle.LoadAsset<GameObject>(model_name); } protected override void Start() { //IL_0017: Unknown result type (might be due to invalid IL or missing references) ((BodyReplacementBase)this).Start(); ModelReplacementManager.OverrideStart(new Vector3(0f, 0f, 0f), 185f, ((Component)this).GetComponent<PlayerControllerB>().thisController); } protected override void OnDestroy() { ModelReplacementManager.OverrideOnDestroy(((Component)this).GetComponent<PlayerControllerB>().thisController); ((BodyReplacementBase)this).OnDestroy(); } } public class ELEANOR : BodyReplacementBase { private string model_name = "Eleanor Forte"; protected override GameObject LoadAssetsAndReturnModel() { return Assets.MainAssetBundle.LoadAsset<GameObject>(model_name); } protected override void Start() { //IL_0017: Unknown result type (might be due to invalid IL or missing references) ((BodyReplacementBase)this).Start(); ModelReplacementManager.OverrideStart(new Vector3(0f, 0f, 0f), 173f, ((Component)this).GetComponent<PlayerControllerB>().thisController); } protected override void OnDestroy() { ModelReplacementManager.OverrideOnDestroy(((Component)this).GetComponent<PlayerControllerB>().thisController); ((BodyReplacementBase)this).OnDestroy(); } } public class LONGYA : BodyReplacementBase { private string model_name = "Yuezheng Longya"; protected override GameObject LoadAssetsAndReturnModel() { return Assets.MainAssetBundle.LoadAsset<GameObject>(model_name); } protected override void Start() { //IL_0017: Unknown result type (might be due to invalid IL or missing references) ((BodyReplacementBase)this).Start(); ModelReplacementManager.OverrideStart(new Vector3(0f, 0f, 0f), 198f, ((Component)this).GetComponent<PlayerControllerB>().thisController); } protected override void OnDestroy() { ModelReplacementManager.OverrideOnDestroy(((Component)this).GetComponent<PlayerControllerB>().thisController); ((BodyReplacementBase)this).OnDestroy(); } } public class DEX : BodyReplacementBase { private string model_name = "Dex"; protected override GameObject LoadAssetsAndReturnModel() { return Assets.MainAssetBundle.LoadAsset<GameObject>(model_name); } protected override void Start() { //IL_0017: Unknown result type (might be due to invalid IL or missing references) ((BodyReplacementBase)this).Start(); ModelReplacementManager.OverrideStart(new Vector3(0f, 0f, 0f), 190f, ((Component)this).GetComponent<PlayerControllerB>().thisController); } protected override void OnDestroy() { ModelReplacementManager.OverrideOnDestroy(((Component)this).GetComponent<PlayerControllerB>().thisController); ((BodyReplacementBase)this).OnDestroy(); } } public class RUBY : BodyReplacementBase { private string model_name = "Ruby"; protected override GameObject LoadAssetsAndReturnModel() { return Assets.MainAssetBundle.LoadAsset<GameObject>(model_name); } protected override void Start() { //IL_0017: Unknown result type (might be due to invalid IL or missing references) ((BodyReplacementBase)this).Start(); ModelReplacementManager.OverrideStart(new Vector3(0f, 0f, 0f), 172f, ((Component)this).GetComponent<PlayerControllerB>().thisController); } protected override void OnDestroy() { ModelReplacementManager.OverrideOnDestroy(((Component)this).GetComponent<PlayerControllerB>().thisController); ((BodyReplacementBase)this).OnDestroy(); } } public class MWINTER : BodyReplacementBase { private string model_name = "Miku Winter"; protected override GameObject LoadAssetsAndReturnModel() { return Assets.MainAssetBundle.LoadAsset<GameObject>(model_name); } protected override void Start() { //IL_0017: Unknown result type (might be due to invalid IL or missing references) ((BodyReplacementBase)this).Start(); ModelReplacementManager.OverrideStart(new Vector3(0f, 0f, 0f), 158f, ((Component)this).GetComponent<PlayerControllerB>().thisController); } protected override void OnDestroy() { ModelReplacementManager.OverrideOnDestroy(((Component)this).GetComponent<PlayerControllerB>().thisController); ((BodyReplacementBase)this).OnDestroy(); } } public class GUMISV2 : BodyReplacementBase { private string model_name = "GUMI SV2"; protected override GameObject LoadAssetsAndReturnModel() { return Assets.MainAssetBundle.LoadAsset<GameObject>(model_name); } protected override void Start() { //IL_0017: Unknown result type (might be due to invalid IL or missing references) ((BodyReplacementBase)this).Start(); ModelReplacementManager.OverrideStart(new Vector3(0f, 0f, 0f), 173f, ((Component)this).GetComponent<PlayerControllerB>().thisController); } protected override void OnDestroy() { ModelReplacementManager.OverrideOnDestroy(((Component)this).GetComponent<PlayerControllerB>().thisController); ((BodyReplacementBase)this).OnDestroy(); } } public class LUOT : BodyReplacementBase { private string model_name = "Luo Tianyi"; protected override GameObject LoadAssetsAndReturnModel() { return Assets.MainAssetBundle.LoadAsset<GameObject>(model_name); } protected override void Start() { //IL_0017: Unknown result type (might be due to invalid IL or missing references) ((BodyReplacementBase)this).Start(); ModelReplacementManager.OverrideStart(new Vector3(0f, 0f, 0f), 156f, ((Component)this).GetComponent<PlayerControllerB>().thisController); } protected override void OnDestroy() { ModelReplacementManager.OverrideOnDestroy(((Component)this).GetComponent<PlayerControllerB>().thisController); ((BodyReplacementBase)this).OnDestroy(); } } public class ZMOKE : BodyReplacementBase { private string model_name = "Zhiyu Moke"; protected override GameObject LoadAssetsAndReturnModel() { return Assets.MainAssetBundle.LoadAsset<GameObject>(model_name); } protected override void Start() { //IL_0017: Unknown result type (might be due to invalid IL or missing references) ((BodyReplacementBase)this).Start(); ModelReplacementManager.OverrideStart(new Vector3(0f, 0f, 0f), 170f, ((Component)this).GetComponent<PlayerControllerB>().thisController); } protected override void OnDestroy() { ModelReplacementManager.OverrideOnDestroy(((Component)this).GetComponent<PlayerControllerB>().thisController); ((BodyReplacementBase)this).OnDestroy(); } } public class OUNA : BodyReplacementBase { private string model_name = "Otomachi Una"; protected override GameObject LoadAssetsAndReturnModel() { return Assets.MainAssetBundle.LoadAsset<GameObject>(model_name); } protected override void Start() { //IL_0017: Unknown result type (might be due to invalid IL or missing references) ((BodyReplacementBase)this).Start(); ModelReplacementManager.OverrideStart(new Vector3(0f, 0f, 0f), 137f, ((Component)this).GetComponent<PlayerControllerB>().thisController); } protected override void OnDestroy() { ModelReplacementManager.OverrideOnDestroy(((Component)this).GetComponent<PlayerControllerB>().thisController); ((BodyReplacementBase)this).OnDestroy(); } } public class RANA : BodyReplacementBase { private string model_name = "Rana"; protected override GameObject LoadAssetsAndReturnModel() { return Assets.MainAssetBundle.LoadAsset<GameObject>(model_name); } protected override void Start() { //IL_0017: Unknown result type (might be due to invalid IL or missing references) ((BodyReplacementBase)this).Start(); ModelReplacementManager.OverrideStart(new Vector3(0f, 0f, 0f), 125f, ((Component)this).GetComponent<PlayerControllerB>().thisController); } protected override void OnDestroy() { ModelReplacementManager.OverrideOnDestroy(((Component)this).GetComponent<PlayerControllerB>().thisController); ((BodyReplacementBase)this).OnDestroy(); } } public class ZUNDAMON : BodyReplacementBase { private string model_name = "Zundamon"; protected override GameObject LoadAssetsAndReturnModel() { return Assets.MainAssetBundle.LoadAsset<GameObject>(model_name); } protected override void Start() { //IL_0017: Unknown result type (might be due to invalid IL or missing references) ((BodyReplacementBase)this).Start(); ModelReplacementManager.OverrideStart(new Vector3(0f, 0f, 0f), 130f, ((Component)this).GetComponent<PlayerControllerB>().thisController); } protected override void OnDestroy() { ModelReplacementManager.OverrideOnDestroy(((Component)this).GetComponent<PlayerControllerB>().thisController); ((BodyReplacementBase)this).OnDestroy(); } } public class KRIKKA : BodyReplacementBase { private string model_name = "Koharu Rikka"; protected override GameObject LoadAssetsAndReturnModel() { return Assets.MainAssetBundle.LoadAsset<GameObject>(model_name); } protected override void Start() { //IL_0017: Unknown result type (might be due to invalid IL or missing references) ((BodyReplacementBase)this).Start(); ModelReplacementManager.OverrideStart(new Vector3(0f, 0f, 0f), 175f, ((Component)this).GetComponent<PlayerControllerB>().thisController); } protected override void OnDestroy() { ModelReplacementManager.OverrideOnDestroy(((Component)this).GetComponent<PlayerControllerB>().thisController); ((BodyReplacementBase)this).OnDestroy(); } } public class CHIYU : BodyReplacementBase { private string model_name = "Chiyu"; protected override GameObject LoadAssetsAndReturnModel() { return Assets.MainAssetBundle.LoadAsset<GameObject>(model_name); } protected override void Start() { //IL_0017: Unknown result type (might be due to invalid IL or missing references) ((BodyReplacementBase)this).Start(); ModelReplacementManager.OverrideStart(new Vector3(0f, 0f, 0f), 172f, ((Component)this).GetComponent<PlayerControllerB>().thisController); } protected override void OnDestroy() { ModelReplacementManager.OverrideOnDestroy(((Component)this).GetComponent<PlayerControllerB>().thisController); ((BodyReplacementBase)this).OnDestroy(); } } public class KAKARI : BodyReplacementBase { private string model_name = "Kizuna Akari"; protected override GameObject LoadAssetsAndReturnModel() { return Assets.MainAssetBundle.LoadAsset<GameObject>(model_name); } protected override void Start() { //IL_0017: Unknown result type (might be due to invalid IL or missing references) ((BodyReplacementBase)this).Start(); ModelReplacementManager.OverrideStart(new Vector3(0f, 0f, 0f), 178f, ((Component)this).GetComponent<PlayerControllerB>().thisController); } protected override void OnDestroy() { ModelReplacementManager.OverrideOnDestroy(((Component)this).GetComponent<PlayerControllerB>().thisController); ((BodyReplacementBase)this).OnDestroy(); } } public class MAYU : BodyReplacementBase { private string model_name = "Mayu"; protected override GameObject LoadAssetsAndReturnModel() { return Assets.MainAssetBundle.LoadAsset<GameObject>(model_name); } protected override void Start() { //IL_0017: Unknown result type (might be due to invalid IL or missing references) ((BodyReplacementBase)this).Start(); ModelReplacementManager.OverrideStart(new Vector3(0f, 0f, 0f), 173f, ((Component)this).GetComponent<PlayerControllerB>().thisController); } protected override void OnDestroy() { ModelReplacementManager.OverrideOnDestroy(((Component)this).GetComponent<PlayerControllerB>().thisController); ((BodyReplacementBase)this).OnDestroy(); } } public class GAKUPO : BodyReplacementBase { private string model_name = "Kamui Gakupo"; protected override GameObject LoadAssetsAndReturnModel() { return Assets.MainAssetBundle.LoadAsset<GameObject>(model_name); } protected override void Start() { //IL_0017: Unknown result type (might be due to invalid IL or missing references) ((BodyReplacementBase)this).Start(); ModelReplacementManager.OverrideStart(new Vector3(-0.15f, 0f, 0f), 202f, ((Component)this).GetComponent<PlayerControllerB>().thisController); } protected override void OnDestroy() { ModelReplacementManager.OverrideOnDestroy(((Component)this).GetComponent<PlayerControllerB>().thisController); ((BodyReplacementBase)this).OnDestroy(); } } public class ADACHIR : BodyReplacementBase { private string model_name = "Adachi Rei"; protected override GameObject LoadAssetsAndReturnModel() { return Assets.MainAssetBundle.LoadAsset<GameObject>(model_name); } protected override void Start() { //IL_0017: Unknown result type (might be due to invalid IL or missing references) ((BodyReplacementBase)this).Start(); ModelReplacementManager.OverrideStart(new Vector3(0f, 0f, 0f), 180f, ((Component)this).GetComponent<PlayerControllerB>().thisController); } protected override void OnDestroy() { ModelReplacementManager.OverrideOnDestroy(((Component)this).GetComponent<PlayerControllerB>().thisController); ((BodyReplacementBase)this).OnDestroy(); } } public class LING : BodyReplacementBase { private string model_name = "Yuezheng Ling"; protected override GameObject LoadAssetsAndReturnModel() { return Assets.MainAssetBundle.LoadAsset<GameObject>(model_name); } protected override void Start() { //IL_0017: Unknown result type (might be due to invalid IL or missing references) ((BodyReplacementBase)this).Start(); ModelReplacementManager.OverrideStart(new Vector3(0f, 0f, 0f), 160f, ((Component)this).GetComponent<PlayerControllerB>().thisController); } protected override void OnDestroy() { ModelReplacementManager.OverrideOnDestroy(((Component)this).GetComponent<PlayerControllerB>().thisController); ((BodyReplacementBase)this).OnDestroy(); } } [BepInPlugin("gaby.vocaloidpack", "Vocaloid Pack", "1.18.1")] [BepInDependency(/*Could not decode attribute arguments.*/)] public class Plugin : BaseUnityPlugin { internal static Vector3 defaultModelScale = new Vector3(1f, 1f, 1f); internal static Vector3 defaultCameraLocalPosition = new Vector3(0.01f, -0.05f, -0.05f); internal static ConfigEntry<bool> cameraAdjustEnabled; private void Awake() { //IL_03ee: Unknown result type (might be due to invalid IL or missing references) //IL_03f4: Expected O, but got Unknown Assets.PopulateAssets(); BindConfigs(); ModelReplacementAPI.RegisterSuitModelReplacement("VFlower", typeof(VFLOWER)); ModelReplacementAPI.RegisterSuitModelReplacement("Miku Cute", typeof(CMIKU)); ModelReplacementAPI.RegisterSuitModelReplacement("SeeU", typeof(SEEU)); ModelReplacementAPI.RegisterSuitModelReplacement("Adult Meiko", typeof(AMEIKO)); ModelReplacementAPI.RegisterSuitModelReplacement("Miku Infinity", typeof(IMIKU)); ModelReplacementAPI.RegisterSuitModelReplacement("Miku Rolling Girl", typeof(RGIRL)); ModelReplacementAPI.RegisterSuitModelReplacement("Miku Nyanko", typeof(NMIKU)); ModelReplacementAPI.RegisterSuitModelReplacement("Miku Plugin", typeof(PMIKU)); ModelReplacementAPI.RegisterSuitModelReplacement("Yuu", typeof(YUU)); ModelReplacementAPI.RegisterSuitModelReplacement("Wil", typeof(WIL)); ModelReplacementAPI.RegisterSuitModelReplacement("Kyo", typeof(KYO)); ModelReplacementAPI.RegisterSuitModelReplacement("Miki", typeof(MIKI)); ModelReplacementAPI.RegisterSuitModelReplacement("Fukase", typeof(FUKASE)); ModelReplacementAPI.RegisterSuitModelReplacement("Piko", typeof(PIKO)); ModelReplacementAPI.RegisterSuitModelReplacement("Miku Zukin", typeof(ZMIKU)); ModelReplacementAPI.RegisterSuitModelReplacement("Miku Rasetsu to Mukuro", typeof(MRTM)); ModelReplacementAPI.RegisterSuitModelReplacement("UNI", typeof(UNI)); ModelReplacementAPI.RegisterSuitModelReplacement("V3 Flower", typeof(V3FLOWER)); ModelReplacementAPI.RegisterSuitModelReplacement("Stardust", typeof(STARDUST)); ModelReplacementAPI.RegisterSuitModelReplacement("Yue Cheng", typeof(YUECHENG)); ModelReplacementAPI.RegisterSuitModelReplacement("Uta Utane Pants", typeof(UTAP)); ModelReplacementAPI.RegisterSuitModelReplacement("Uta Utane Skirt", typeof(UTAS)); ModelReplacementAPI.RegisterSuitModelReplacement("Miku Deep Sea", typeof(DSMIKU)); ModelReplacementAPI.RegisterSuitModelReplacement("Rin Raspberry Fox", typeof(RRF)); ModelReplacementAPI.RegisterSuitModelReplacement("YOHIOloid", typeof(YOHIO)); ModelReplacementAPI.RegisterSuitModelReplacement("YOHIOloid Anniversary", typeof(YOHIOA)); ModelReplacementAPI.RegisterSuitModelReplacement("IA", typeof(IA)); ModelReplacementAPI.RegisterSuitModelReplacement("Yan He", typeof(YANHE)); ModelReplacementAPI.RegisterSuitModelReplacement("Daina", typeof(DAINA)); ModelReplacementAPI.RegisterSuitModelReplacement("Eleanor Forte", typeof(ELEANOR)); ModelReplacementAPI.RegisterSuitModelReplacement("Yuezheng Longya", typeof(LONGYA)); ModelReplacementAPI.RegisterSuitModelReplacement("Dex", typeof(DEX)); ModelReplacementAPI.RegisterSuitModelReplacement("Ruby", typeof(RUBY)); ModelReplacementAPI.RegisterSuitModelReplacement("Miku Winter", typeof(MWINTER)); ModelReplacementAPI.RegisterSuitModelReplacement("GUMI SV2", typeof(GUMISV2)); ModelReplacementAPI.RegisterSuitModelReplacement("Luo Tianyi", typeof(LUOT)); ModelReplacementAPI.RegisterSuitModelReplacement("Zhiyu Moke", typeof(ZMOKE)); ModelReplacementAPI.RegisterSuitModelReplacement("Otomachi Una", typeof(OUNA)); ModelReplacementAPI.RegisterSuitModelReplacement("Rana", typeof(RANA)); ModelReplacementAPI.RegisterSuitModelReplacement("Zundamon", typeof(ZUNDAMON)); ModelReplacementAPI.RegisterSuitModelReplacement("Koharu Rikka", typeof(KRIKKA)); ModelReplacementAPI.RegisterSuitModelReplacement("Chiyu", typeof(CHIYU)); ModelReplacementAPI.RegisterSuitModelReplacement("Kizuna Akari", typeof(KAKARI)); ModelReplacementAPI.RegisterSuitModelReplacement("Mayu", typeof(MAYU)); ModelReplacementAPI.RegisterSuitModelReplacement("Kamui Gakupo", typeof(GAKUPO)); ModelReplacementAPI.RegisterSuitModelReplacement("Adachi Rei", typeof(ADACHIR)); ModelReplacementAPI.RegisterSuitModelReplacement("Yuezheng Ling", typeof(LING)); Harmony val = new Harmony("com.gaby.vocaloidpack"); val.PatchAll(); ((BaseUnityPlugin)this).Logger.LogInfo((object)"Plugin com.gaby.vocaloidpack is loaded!"); } private void BindConfigs() { cameraAdjustEnabled = ((BaseUnityPlugin)this).Config.Bind<bool>("Configs", "Camera Adjustment Enabled", true, "Enable the camera height adjustments"); } } public static class Assets { public static string mainAssetBundleName = "vocaloid"; 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) { } } }