using System; using System.Collections; using System.Collections.Generic; using System.Diagnostics; using System.IO; using System.Linq; using System.Reflection; using System.Runtime.CompilerServices; using System.Runtime.InteropServices; using System.Runtime.Versioning; using System.Text; using System.Text.RegularExpressions; using BepInEx; using BepInEx.Configuration; using HarmonyLib; using JigglePhysicsPlugin; using Photon.Pun; using Photon.Realtime; using TMPro; using UmamusumeSemiBots; using UnityEngine; using UnityEngine.EventSystems; using UnityEngine.Events; using UnityEngine.Rendering; using UnityEngine.Rendering.PostProcessing; using UnityEngine.UI; [assembly: CompilationRelaxations(8)] [assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)] [assembly: Debuggable(DebuggableAttribute.DebuggingModes.Default | DebuggableAttribute.DebuggingModes.DisableOptimizations | DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints | DebuggableAttribute.DebuggingModes.EnableEditAndContinue)] [assembly: AssemblyTitle("UmamusumeSemiBots")] [assembly: AssemblyDescription("")] [assembly: AssemblyConfiguration("")] [assembly: AssemblyCompany("")] [assembly: AssemblyProduct("UmamusumeSemiBots")] [assembly: AssemblyCopyright("Copyright © 2026")] [assembly: AssemblyTrademark("")] [assembly: ComVisible(false)] [assembly: Guid("4c8636a0-95bd-4967-9e4e-37630d6c4ea6")] [assembly: AssemblyFileVersion("1.0.0.0")] [assembly: TargetFramework(".NETFramework,Version=v4.8", FrameworkDisplayName = ".NET Framework 4.8")] [assembly: AssemblyVersion("1.0.0.0")] public class SmolSpectateAnimator : MonoBehaviour { public Animator animator; public PlayerDeathHead deathHead; private static readonly int ParamIdle = Animator.StringToHash("Idle"); private static readonly int ParamCharge = Animator.StringToHash("Charging"); private static readonly int ParamJump = Animator.StringToHash("Jump"); private static readonly int ParamChargePct = Animator.StringToHash("ChargeAmount"); private Traverse _spectatedField; private Traverse _chargingField; private Traverse _chargeAmtField; private Traverse _chargeMaxField; private bool _wasCharging; private bool _ragdollActivated; private bool _spectateActivated; private bool _idleActivated; private float _fallbackTimer = -1f; private const float FallbackDelay = 0.1f; private Coroutine _freezeCoroutine; private Vector3 _originalLocalPosition; public bool IsIdling => _idleActivated && !_spectateActivated && !_ragdollActivated; public bool IsRagdolling => _ragdollActivated && !_spectateActivated; public void Init() { //IL_005d: Unknown result type (might be due to invalid IL or missing references) //IL_0062: Unknown result type (might be due to invalid IL or missing references) Traverse val = Traverse.Create((object)deathHead); _spectatedField = val.Field("spectated"); _chargingField = val.Field("spectatedJumpCharging"); _chargeAmtField = val.Field("spectatedJumpChargeAmount"); _chargeMaxField = val.Field("spectatedJumpChargeAmountMax"); _originalLocalPosition = ((Component)this).gameObject.transform.localPosition; ((Behaviour)this).enabled = true; } private void Update() { if ((Object)(object)deathHead == (Object)null) { return; } if (_fallbackTimer > 0f) { _fallbackTimer -= Time.deltaTime; if (_fallbackTimer <= 0f) { _fallbackTimer = -1f; if (!_spectateActivated && !_ragdollActivated && !_idleActivated) { if (CustomModelSwapMod.DisableDeathRagdoll.Value) { EnableIdleMode(); } else { EnableRagdollMode(); } } } } if (_spectateActivated && !_ragdollActivated && !((Object)(object)animator == (Object)null)) { bool value = _chargingField.Value; float value2 = _chargeAmtField.Value; float value3 = _chargeMaxField.Value; animator.SetFloat(ParamChargePct, (value3 > 0f) ? (value2 / value3) : 0f); if (value) { animator.SetBool(ParamCharge, true); animator.SetBool(ParamIdle, false); _wasCharging = true; } else if (_wasCharging) { animator.SetBool(ParamCharge, false); animator.SetTrigger(ParamJump); _wasCharging = false; } else { animator.SetBool(ParamIdle, true); animator.SetBool(ParamCharge, false); } } } public void EnableSpectateMode() { //IL_0091: Unknown result type (might be due to invalid IL or missing references) //IL_00a8: Unknown result type (might be due to invalid IL or missing references) _spectateActivated = true; _ragdollActivated = false; _idleActivated = false; _wasCharging = false; _fallbackTimer = -1f; CancelFreezeCoroutine(); TearDownRagdoll(); if ((Object)(object)animator != (Object)null) { animator.speed = 1f; animator.runtimeAnimatorController = CustomModelSwapMod.SmolSpectateController; ((Behaviour)animator).enabled = true; } ((Component)this).gameObject.transform.localRotation = Quaternion.Euler(0f, 0f, 0f); ((Component)this).gameObject.transform.localPosition = _originalLocalPosition; } public void EnableIdleMode() { //IL_00d1: Unknown result type (might be due to invalid IL or missing references) //IL_00e8: Unknown result type (might be due to invalid IL or missing references) //IL_00fc: Unknown result type (might be due to invalid IL or missing references) //IL_0101: Unknown result type (might be due to invalid IL or missing references) _idleActivated = true; _ragdollActivated = false; _spectateActivated = false; _wasCharging = false; _fallbackTimer = -1f; CancelFreezeCoroutine(); TearDownRagdoll(); if (!((Object)(object)animator == (Object)null)) { animator.speed = 1f; animator.runtimeAnimatorController = CustomModelSwapMod.SmolSpectateController; ((Behaviour)animator).enabled = true; try { animator.Rebind(); animator.Update(0f); animator.Play("SpecialIdle", 0, 0f); } catch { } ((Component)this).gameObject.transform.localRotation = Quaternion.Euler(-90f, 0f, 0f); ((Component)this).gameObject.transform.localPosition = _originalLocalPosition + new Vector3(0f, 0.01f, 0.3f); _freezeCoroutine = ((MonoBehaviour)this).StartCoroutine(FreezeAfterSpecialIdle()); } } private IEnumerator FreezeAfterSpecialIdle() { yield return null; yield return null; if ((Object)(object)animator == (Object)null) { yield break; } float timeout = 3f; float elapsed = 0f; while (elapsed < timeout) { AnimatorStateInfo info = animator.GetCurrentAnimatorStateInfo(0); if (((AnimatorStateInfo)(ref info)).IsName("SpecialIdle") || ((AnimatorStateInfo)(ref info)).IsName("Base Layer.SpecialIdle")) { break; } elapsed += Time.deltaTime; yield return null; info = default(AnimatorStateInfo); } if (!((Object)(object)animator == (Object)null)) { AnimatorStateInfo stateInfo = animator.GetCurrentAnimatorStateInfo(0); float remaining = ((AnimatorStateInfo)(ref stateInfo)).length * (1f - ((AnimatorStateInfo)(ref stateInfo)).normalizedTime); yield return (object)new WaitForSeconds(Mathf.Max(0f, remaining)); if ((Object)(object)animator != (Object)null) { animator.speed = 0f; } _freezeCoroutine = null; } } private void TearDownRagdoll() { CharacterJoint[] componentsInChildren = ((Component)this).gameObject.GetComponentsInChildren(true); foreach (CharacterJoint val in componentsInChildren) { Object.Destroy((Object)(object)val); } ConfigurableJoint[] componentsInChildren2 = ((Component)this).gameObject.GetComponentsInChildren(true); foreach (ConfigurableJoint val2 in componentsInChildren2) { Object.Destroy((Object)(object)val2); } Rigidbody[] componentsInChildren3 = ((Component)this).gameObject.GetComponentsInChildren(true); foreach (Rigidbody val3 in componentsInChildren3) { Object.Destroy((Object)(object)val3); } CapsuleCollider[] componentsInChildren4 = ((Component)this).gameObject.GetComponentsInChildren(true); foreach (CapsuleCollider val4 in componentsInChildren4) { Object.Destroy((Object)(object)val4); } } private void CancelFreezeCoroutine() { if (_freezeCoroutine != null) { ((MonoBehaviour)this).StopCoroutine(_freezeCoroutine); _freezeCoroutine = null; } } public void EnableRagdollMode() { if (!_ragdollActivated) { _ragdollActivated = true; _spectateActivated = false; _idleActivated = false; CancelFreezeCoroutine(); if ((Object)(object)animator != (Object)null) { animator.speed = 1f; ((Behaviour)animator).enabled = false; animator.runtimeAnimatorController = null; } ActivateRagdoll(); } } private void ActivateRagdoll() { //IL_0096: Unknown result type (might be due to invalid IL or missing references) //IL_009f: Unknown result type (might be due to invalid IL or missing references) //IL_05cd: Unknown result type (might be due to invalid IL or missing references) //IL_05d7: Unknown result type (might be due to invalid IL or missing references) //IL_05e1: Unknown result type (might be due to invalid IL or missing references) //IL_05e6: Unknown result type (might be due to invalid IL or missing references) //IL_05ea: Unknown result type (might be due to invalid IL or missing references) //IL_00ec: Unknown result type (might be due to invalid IL or missing references) //IL_00f5: Unknown result type (might be due to invalid IL or missing references) //IL_0121: Unknown result type (might be due to invalid IL or missing references) //IL_019a: Unknown result type (might be due to invalid IL or missing references) //IL_030a: Unknown result type (might be due to invalid IL or missing references) //IL_030d: Unknown result type (might be due to invalid IL or missing references) //IL_0310: Invalid comparison between Unknown and I4 //IL_0323: Unknown result type (might be due to invalid IL or missing references) //IL_0341: Unknown result type (might be due to invalid IL or missing references) //IL_04a5: Unknown result type (might be due to invalid IL or missing references) //IL_04b2: Unknown result type (might be due to invalid IL or missing references) //IL_04bf: Unknown result type (might be due to invalid IL or missing references) //IL_04cc: Unknown result type (might be due to invalid IL or missing references) //IL_0519: Unknown result type (might be due to invalid IL or missing references) //IL_0523: Unknown result type (might be due to invalid IL or missing references) //IL_052d: Unknown result type (might be due to invalid IL or missing references) //IL_0532: Unknown result type (might be due to invalid IL or missing references) //IL_0536: Unknown result type (might be due to invalid IL or missing references) //IL_0541: Unknown result type (might be due to invalid IL or missing references) //IL_054b: Unknown result type (might be due to invalid IL or missing references) //IL_03bd: Unknown result type (might be due to invalid IL or missing references) //IL_03d0: Unknown result type (might be due to invalid IL or missing references) //IL_03d2: Unknown result type (might be due to invalid IL or missing references) //IL_03d6: Unknown result type (might be due to invalid IL or missing references) //IL_03e9: Unknown result type (might be due to invalid IL or missing references) //IL_03eb: Unknown result type (might be due to invalid IL or missing references) //IL_03ef: Unknown result type (might be due to invalid IL or missing references) //IL_03f9: Unknown result type (might be due to invalid IL or missing references) //IL_0403: Unknown result type (might be due to invalid IL or missing references) //IL_040d: Unknown result type (might be due to invalid IL or missing references) Animator smolAnim = ((Component)this).gameObject.GetComponent() ?? ((Component)this).gameObject.GetComponentInChildren(true); if ((Object)(object)smolAnim != (Object)null) { ((Behaviour)smolAnim).enabled = false; } if ((Object)(object)smolAnim != (Object)null && smolAnim.isHuman) { HumanBodyBones[] array = new HumanBodyBones[12]; RuntimeHelpers.InitializeArray(array, (RuntimeFieldHandle)/*OpCode not supported: LdMemberToken*/); HumanBodyBones[] array2 = (HumanBodyBones[])(object)array; int layer = LayerMask.NameToLayer("Default"); HumanBodyBones[] array3 = array2; foreach (HumanBodyBones val in array3) { Transform boneTransform = smolAnim.GetBoneTransform(val); if ((Object)(object)boneTransform != (Object)null) { ((Component)boneTransform).gameObject.layer = layer; } } Dictionary dictionary = new Dictionary(); HumanBodyBones[] array4 = array2; foreach (HumanBodyBones val2 in array4) { Transform boneTransform2 = smolAnim.GetBoneTransform(val2); if (!((Object)(object)boneTransform2 == (Object)null)) { Rigidbody val3 = ((Component)boneTransform2).gameObject.AddComponent(); val3.mass = (((int)val2 == 0) ? 0.05f : 0.01f); val3.drag = 2f; val3.angularDrag = 3f; val3.interpolation = (RigidbodyInterpolation)1; val3.collisionDetectionMode = (CollisionDetectionMode)0; val3.maxAngularVelocity = 7f; CapsuleCollider val4 = ((Component)boneTransform2).gameObject.AddComponent(); val4.radius = 0.04f; val4.height = 0.1f; dictionary[val2] = val3; } } List list = (from b in dictionary.Keys select smolAnim.GetBoneTransform(b) into t where (Object)(object)t != (Object)null select ((Component)t).GetComponent() into c where (Object)(object)c != (Object)null select c).ToList(); for (int num = 0; num < list.Count; num++) { for (int num2 = num + 1; num2 < list.Count; num2++) { Physics.IgnoreCollision((Collider)(object)list[num], (Collider)(object)list[num2]); } } Collider[] componentsInChildren = ((Component)this).gameObject.GetComponentsInChildren(); foreach (CapsuleCollider item in list) { Collider[] array5 = componentsInChildren; foreach (Collider val5 in array5) { Physics.IgnoreCollision((Collider)(object)item, val5); } } HumanBodyBones[] array6 = array2; foreach (HumanBodyBones val6 in array6) { if ((int)val6 == 0) { continue; } Transform boneTransform3 = smolAnim.GetBoneTransform(val6); if (!((Object)(object)boneTransform3 == (Object)null) && dictionary.TryGetValue(val6, out var _)) { CharacterJoint val7 = ((Component)boneTransform3).gameObject.AddComponent(); Rigidbody val8 = null; Transform parent = boneTransform3.parent; while ((Object)(object)parent != (Object)null && (Object)(object)val8 == (Object)null) { val8 = ((Component)parent).GetComponent(); parent = parent.parent; } if ((Object)(object)val8 != (Object)null) { ((Joint)val7).connectedBody = val8; } SoftJointLimit val9 = default(SoftJointLimit); ((SoftJointLimit)(ref val9)).limit = 30f; SoftJointLimit val10 = val9; val9 = default(SoftJointLimit); ((SoftJointLimit)(ref val9)).limit = -30f; SoftJointLimit lowTwistLimit = val9; val7.highTwistLimit = val10; val7.lowTwistLimit = lowTwistLimit; val7.swing1Limit = val10; val7.swing2Limit = val10; val7.enableProjection = true; val7.projectionDistance = 0.01f; val7.projectionAngle = 5f; } } if (dictionary.TryGetValue((HumanBodyBones)0, out var value2)) { Rigidbody val11 = ((Component)deathHead).GetComponent() ?? ((Component)deathHead).GetComponentInChildren(); if ((Object)(object)val11 != (Object)null) { ConfigurableJoint val12 = ((Component)value2).gameObject.AddComponent(); ((Joint)val12).autoConfigureConnectedAnchor = false; ((Joint)val12).axis = Vector3.right; val12.secondaryAxis = Vector3.up; ((Joint)val12).anchor = Vector3.zero; ((Joint)val12).connectedAnchor = Vector3.zero; ((Joint)val12).connectedBody = val11; val12.xMotion = (ConfigurableJointMotion)0; val12.yMotion = (ConfigurableJointMotion)0; val12.zMotion = (ConfigurableJointMotion)0; val12.angularXMotion = (ConfigurableJointMotion)2; val12.angularYMotion = (ConfigurableJointMotion)2; val12.angularZMotion = (ConfigurableJointMotion)2; Vector3 val13 = Vector3.ClampMagnitude(val11.velocity * 0.3f, 3f); value2.AddForce(val13, (ForceMode)2); value2.AddTorque(Random.insideUnitSphere * 0.5f, (ForceMode)2); } } } else { Rigidbody val14 = ((Component)this).gameObject.AddComponent(); val14.mass = 0.5f; val14.drag = 2f; val14.angularDrag = 4f; Rigidbody val15 = Traverse.Create((object)deathHead).Field("physGrabObject").GetValue()?.rb; if ((Object)(object)val15 != (Object)null) { Vector3 val16 = Vector3.ClampMagnitude(val15.velocity * 0.3f, 3f); val14.AddForce(val16, (ForceMode)2); } } } public void Reset() { _ragdollActivated = false; _spectateActivated = false; _idleActivated = false; _wasCharging = false; _fallbackTimer = -1f; CancelFreezeCoroutine(); if ((Object)(object)animator != (Object)null) { animator.speed = 1f; animator.runtimeAnimatorController = null; ((Behaviour)animator).enabled = false; } } public void StartFallbackTimer() { _fallbackTimer = 0.1f; } } namespace UmamusumeSemiBots; public class DynEmissionStepper : MonoBehaviour { private const string TargetMaterialName = "UmaEmission"; private const float StepInterval = 3f; private static readonly float[] OffsetSteps = new float[4] { 0f, 0.07f, 0.14f, 0.21f }; private Material _mat; private int _stepIndex = 0; private void Start() { //IL_0098: Unknown result type (might be due to invalid IL or missing references) SkinnedMeshRenderer component = ((Component)this).GetComponent(); if ((Object)(object)component == (Object)null) { ((Behaviour)this).enabled = false; return; } Material[] materials = ((Renderer)component).materials; for (int i = 0; i < materials.Length; i++) { if ((Object)(object)materials[i] != (Object)null && ((Object)materials[i]).name.StartsWith("UmaEmission")) { _mat = materials[i]; break; } } if ((Object)(object)_mat == (Object)null) { ((Behaviour)this).enabled = false; return; } _mat.SetVector("_DynEmissionScrollDir", Vector4.zero); _mat.SetFloat("_DynEmissionScrollSpeed", 0f); ApplyCurrentStep(); ((MonoBehaviour)this).StartCoroutine(StepCoroutine()); } private IEnumerator StepCoroutine() { while (true) { yield return (object)new WaitForSeconds(3f); _stepIndex = (_stepIndex + 1) % OffsetSteps.Length; ApplyCurrentStep(); } } private void ApplyCurrentStep() { //IL_000c: Unknown result type (might be due to invalid IL or missing references) //IL_0011: Unknown result type (might be due to invalid IL or missing references) //IL_002e: Unknown result type (might be due to invalid IL or missing references) //IL_0044: Unknown result type (might be due to invalid IL or missing references) Vector2 textureScale = _mat.GetTextureScale("_DynEmissionTex"); _mat.SetTextureOffset("_DynEmissionTex", new Vector2(OffsetSteps[_stepIndex], 0f)); _mat.SetTextureScale("_DynEmissionTex", textureScale); } private void OnDestroy() { if ((Object)(object)_mat != (Object)null) { Object.Destroy((Object)(object)_mat); } } } internal static class UmasTabState { internal static bool IsUmasTabActive; internal static GameObject UmasSectionRoot; internal static GameObject UmasTabButton; internal static MenuPageCosmetics LastBuiltFor; internal static GameObject CachedCosmeticButtonTemplate; } [HarmonyPatch(typeof(MenuPageCosmetics))] internal class MenuPageCosmeticsPatch { internal static bool IsBuildingUmasGrid; [HarmonyPatch("AnimateSubCategories")] [HarmonyPostfix] public static void Start_Postfix(MenuPageCosmetics __instance) { if ((Object)(object)UmasTabState.CachedCosmeticButtonTemplate == (Object)null) { ((MonoBehaviour)__instance).StartCoroutine(CacheButtonTemplateNextFrame(__instance)); } InjectUmasTabButton(__instance); ((MonoBehaviour)__instance).StartCoroutine(AutoOpenUmasTabNextFrame(__instance)); } private static IEnumerator AutoOpenUmasTabNextFrame(MenuPageCosmetics page) { yield return null; yield return null; yield return null; yield return null; yield return null; yield return null; yield return null; if (UmasTabState.IsUmasTabActive) { yield break; } OnUmasTabClicked(page); yield return null; yield return null; MenuPage menuPage = ((Component)page).GetComponent(); if ((Object)(object)UmasTabState.UmasSectionRoot != (Object)null) { MenuButton[] componentsInChildren = UmasTabState.UmasSectionRoot.GetComponentsInChildren(true); foreach (MenuButton mb in componentsInChildren) { Traverse.Create((object)mb).Field("parentPage").SetValue((object)menuPage); } } } [HarmonyPatch("RefreshScrollContent")] [HarmonyPrefix] public static bool RefreshScrollContent_Prefix(MenuPageCosmetics __instance) { if (UmasTabState.IsUmasTabActive && (Object)(object)UmasTabState.LastBuiltFor == (Object)(object)__instance) { return false; } CosmeticCategoryAsset value = Traverse.Create((object)__instance).Field("selectedCategory").Value; if ((Object)(object)value == (Object)null) { return false; } return true; } [HarmonyPatch("RefreshScrollContent")] [HarmonyPostfix] public static void RefreshScrollContent_Postfix(MenuPageCosmetics __instance) { UpdateUmasTabButtonAppearance(__instance); if (UmasTabState.IsUmasTabActive && !((Object)(object)UmasTabState.LastBuiltFor != (Object)(object)__instance)) { ((MonoBehaviour)__instance).StartCoroutine(BuildUmasGridNextFrame(__instance)); } } private static IEnumerator CacheButtonTemplateNextFrame(MenuPageCosmetics page) { yield return null; if ((Object)(object)UmasTabState.CachedCosmeticButtonTemplate != (Object)null) { yield break; } Transform scrollerTf = (Transform)(object)page.menuScrollBox?.scroller; if ((Object)(object)scrollerTf == (Object)null) { yield break; } int sectionCount = 0; foreach (Transform item in scrollerTf) { Transform child = item; if (!((Object)child).name.StartsWith("Menu Element Cosmetic Section")) { continue; } sectionCount++; if (sectionCount != 3) { continue; } Transform obj = child.Find("Cosmetic List/Menu Element Cosmetic Button"); GameObject found = ((obj != null) ? ((Component)obj).gameObject : null); if (!((Object)(object)found == (Object)null)) { UmasTabState.CachedCosmeticButtonTemplate = Object.Instantiate(found); ((Object)UmasTabState.CachedCosmeticButtonTemplate).name = "UmasCachedNoneTemplate"; Object.DontDestroyOnLoad((Object)(object)UmasTabState.CachedCosmeticButtonTemplate); UmasTabState.CachedCosmeticButtonTemplate.SetActive(false); } break; } } private static void CreateNoneButton(MenuPageCosmetics page, Transform parent, GameObject _template) { //IL_0013: Unknown result type (might be due to invalid IL or missing references) //IL_0019: Expected O, but got Unknown //IL_0039: Unknown result type (might be due to invalid IL or missing references) //IL_004f: Unknown result type (might be due to invalid IL or missing references) //IL_0065: Unknown result type (might be due to invalid IL or missing references) //IL_008c: Unknown result type (might be due to invalid IL or missing references) //IL_00b9: Unknown result type (might be due to invalid IL or missing references) //IL_00d8: Unknown result type (might be due to invalid IL or missing references) //IL_00df: Expected O, but got Unknown //IL_00fe: Unknown result type (might be due to invalid IL or missing references) //IL_010b: Unknown result type (might be due to invalid IL or missing references) //IL_011a: Unknown result type (might be due to invalid IL or missing references) //IL_011f: Unknown result type (might be due to invalid IL or missing references) //IL_0120: Unknown result type (might be due to invalid IL or missing references) //IL_0128: Unknown result type (might be due to invalid IL or missing references) //IL_0148: Unknown result type (might be due to invalid IL or missing references) //IL_0177: Unknown result type (might be due to invalid IL or missing references) //IL_017e: Expected O, but got Unknown //IL_019d: Unknown result type (might be due to invalid IL or missing references) //IL_01aa: Unknown result type (might be due to invalid IL or missing references) //IL_01b9: Unknown result type (might be due to invalid IL or missing references) //IL_01be: Unknown result type (might be due to invalid IL or missing references) //IL_01bf: Unknown result type (might be due to invalid IL or missing references) //IL_01c7: Unknown result type (might be due to invalid IL or missing references) //IL_01f4: Unknown result type (might be due to invalid IL or missing references) //IL_0226: Unknown result type (might be due to invalid IL or missing references) //IL_022b: Unknown result type (might be due to invalid IL or missing references) //IL_022f: Unknown result type (might be due to invalid IL or missing references) //IL_023c: Unknown result type (might be due to invalid IL or missing references) //IL_0249: Unknown result type (might be due to invalid IL or missing references) //IL_0256: Unknown result type (might be due to invalid IL or missing references) //IL_0263: Unknown result type (might be due to invalid IL or missing references) //IL_028a: Unknown result type (might be due to invalid IL or missing references) //IL_02a9: Unknown result type (might be due to invalid IL or missing references) //IL_02b3: Expected O, but got Unknown //IL_02ce: Unknown result type (might be due to invalid IL or missing references) //IL_02d3: Unknown result type (might be due to invalid IL or missing references) //IL_02ee: Unknown result type (might be due to invalid IL or missing references) //IL_02f3: Unknown result type (might be due to invalid IL or missing references) //IL_02fa: Unknown result type (might be due to invalid IL or missing references) //IL_02ff: Unknown result type (might be due to invalid IL or missing references) //IL_0339: Unknown result type (might be due to invalid IL or missing references) GameObject val = new GameObject("UmaBtn_None"); val.transform.SetParent(parent, false); RectTransform val2 = val.AddComponent(); val2.pivot = new Vector2(0f, 0f); val2.anchorMin = new Vector2(0f, 0f); val2.anchorMax = new Vector2(0f, 0f); Image val3 = val.AddComponent(); ((Graphic)val3).color = new Color(0.1f, 0.1f, 0.1f, 1f); ((Graphic)val3).raycastTarget = true; Image val4 = CreateBorder(val, 2f, new Color(0.0157f, 0.2863f, 0.7451f, 1f)); ((Component)val4).gameObject.SetActive(false); GameObject val5 = new GameObject("_tmp"); val5.transform.SetParent(val.transform, false); RectTransform val6 = val5.AddComponent(); val6.anchorMin = Vector2.zero; val6.anchorMax = Vector2.one; Vector2 offsetMin = (val6.offsetMax = Vector2.zero); val6.offsetMin = offsetMin; TextMeshProUGUI val7 = val5.AddComponent(); ((TMP_Text)val7).text = " "; ((Graphic)val7).color = Color.clear; ((Graphic)val7).raycastTarget = false; ((TMP_Text)val7).enableAutoSizing = false; ((TMP_Text)val7).fontSize = 1f; GameObject val8 = new GameObject("NoneLabel"); val8.transform.SetParent(val.transform, false); RectTransform val9 = val8.AddComponent(); val9.anchorMin = Vector2.zero; val9.anchorMax = Vector2.one; offsetMin = (val9.offsetMax = Vector2.zero); val9.offsetMin = offsetMin; TextMeshProUGUI val10 = val8.AddComponent(); ((TMP_Text)val10).text = "None"; ((TMP_Text)val10).fontSize = 12f; ((Graphic)val10).color = Color.white; ((TMP_Text)val10).alignment = (TextAlignmentOptions)514; ((Graphic)val10).raycastTarget = false; Button val11 = val.AddComponent