Decompiled source of GlovesTan3 v1.1.1
GlovesTan3.dll
Decompiled 2 days ago
The result has been truncated due to the large size, download it to view full contents!
using System; using System.ComponentModel; using System.Diagnostics; using System.IO; using System.Reflection; using System.Runtime.CompilerServices; using System.Security; using System.Security.Permissions; using BepInEx; using BepInEx.Logging; using FistVR; using HarmonyLib; using JerryHand; using OtherLoader; using Sodalite; using Sodalite.Api; using UnityEngine; [assembly: Debuggable(DebuggableAttribute.DebuggingModes.DisableOptimizations | DebuggableAttribute.DebuggingModes.IgnoreSymbolStoreSequencePoints)] [assembly: RuntimeCompatibility(WrapNonExceptionThrows = true)] [assembly: SecurityPermission(SecurityAction.RequestMinimum, SkipVerification = true)] [assembly: AssemblyVersion("0.0.0.0")] [module: UnverifiableCode] namespace JerryGloves { public class AutoHandPoseApplyAKS74n : MonoBehaviour { public GameObject HandsIndicator_AKBolt; public GameObject HandsIndicator_AKBoltComponent; public GameObject HandsIndicator_AKBoltHead; public GameObject HandsIndicator_AKDustCover; public GameObject HandsIndicator_AKFireSelectorComponent; public GameObject HandsIndicator_AKForeGripComponent; public GameObject HandsIndicator_AKGasBlock; public GameObject HandsIndicator_AKRecoilSpring; public GameObject HandsIndicator_AKS74EFT3; public GameObject HandsIndicator_AKS74MagEFT2; public GameObject HandsIndicator_AKSightComponent; public GameObject HandsIndicator_AKStockComponent; public GameObject HandsIndicator_AKBolt_L; public GameObject HandsIndicator_AKBoltComponent_L; public GameObject HandsIndicator_AKBoltHead_L; public GameObject HandsIndicator_AKDustCover_L; public GameObject HandsIndicator_AKFireSelectorComponent_L; public GameObject HandsIndicator_AKForeGripComponent_L; public GameObject HandsIndicator_AKGasBlock_L; public GameObject HandsIndicator_AKRecoilSpring_L; public GameObject HandsIndicator_AKS74EFT3_L; public GameObject HandsIndicator_AKS74MagEFT2_L; public GameObject HandsIndicator_AKSightComponent_L; public GameObject HandsIndicator_AKStockComponent_L; public GameObject HandsIndicator_AKBolt_R; public GameObject HandsIndicator_AKBoltComponent_R; public GameObject HandsIndicator_AKBoltHead_R; public GameObject HandsIndicator_AKDustCover_R; public GameObject HandsIndicator_AKFireSelectorComponent_R; public GameObject HandsIndicator_AKForeGripComponent_R; public GameObject HandsIndicator_AKGasBlock_R; public GameObject HandsIndicator_AKRecoilSpring_R; public GameObject HandsIndicator_AKS74EFT3_R; public GameObject HandsIndicator_AKS74MagEFT2_R; public GameObject HandsIndicator_AKSightComponent_R; public GameObject HandsIndicator_AKStockComponent_R; public FVRInteractiveObject cachedL; public FVRInteractiveObject cachedR; public float cdL1 = 0.25f; public float cdL2 = 0.25f; public float cdR1 = 0.25f; public float cdR2 = 0.25f; private void FixedUpdate() { //IL_00af: Unknown result type (might be due to invalid IL or missing references) //IL_00cf: Unknown result type (might be due to invalid IL or missing references) //IL_0123: Unknown result type (might be due to invalid IL or missing references) //IL_0147: Unknown result type (might be due to invalid IL or missing references) //IL_19c3: Unknown result type (might be due to invalid IL or missing references) //IL_19e3: Unknown result type (might be due to invalid IL or missing references) //IL_1a37: Unknown result type (might be due to invalid IL or missing references) //IL_1a5b: Unknown result type (might be due to invalid IL or missing references) //IL_01cd: Unknown result type (might be due to invalid IL or missing references) //IL_01ed: Unknown result type (might be due to invalid IL or missing references) //IL_0241: Unknown result type (might be due to invalid IL or missing references) //IL_0265: Unknown result type (might be due to invalid IL or missing references) //IL_1ae1: Unknown result type (might be due to invalid IL or missing references) //IL_1b01: Unknown result type (might be due to invalid IL or missing references) //IL_1b55: Unknown result type (might be due to invalid IL or missing references) //IL_1b79: Unknown result type (might be due to invalid IL or missing references) //IL_02eb: Unknown result type (might be due to invalid IL or missing references) //IL_030b: Unknown result type (might be due to invalid IL or missing references) //IL_035f: Unknown result type (might be due to invalid IL or missing references) //IL_0383: Unknown result type (might be due to invalid IL or missing references) //IL_1bff: Unknown result type (might be due to invalid IL or missing references) //IL_1c1f: Unknown result type (might be due to invalid IL or missing references) //IL_1c73: Unknown result type (might be due to invalid IL or missing references) //IL_1c97: Unknown result type (might be due to invalid IL or missing references) //IL_0409: Unknown result type (might be due to invalid IL or missing references) //IL_0429: Unknown result type (might be due to invalid IL or missing references) //IL_047d: Unknown result type (might be due to invalid IL or missing references) //IL_04a1: Unknown result type (might be due to invalid IL or missing references) //IL_1d1d: Unknown result type (might be due to invalid IL or missing references) //IL_1d3d: Unknown result type (might be due to invalid IL or missing references) //IL_1d91: Unknown result type (might be due to invalid IL or missing references) //IL_1db5: Unknown result type (might be due to invalid IL or missing references) //IL_0527: Unknown result type (might be due to invalid IL or missing references) //IL_0547: Unknown result type (might be due to invalid IL or missing references) //IL_059b: Unknown result type (might be due to invalid IL or missing references) //IL_05bf: Unknown result type (might be due to invalid IL or missing references) //IL_1e3b: Unknown result type (might be due to invalid IL or missing references) //IL_1e5b: Unknown result type (might be due to invalid IL or missing references) //IL_1eaf: Unknown result type (might be due to invalid IL or missing references) //IL_1ed3: Unknown result type (might be due to invalid IL or missing references) //IL_0645: Unknown result type (might be due to invalid IL or missing references) //IL_0665: Unknown result type (might be due to invalid IL or missing references) //IL_06b9: Unknown result type (might be due to invalid IL or missing references) //IL_06dd: Unknown result type (might be due to invalid IL or missing references) //IL_1f59: Unknown result type (might be due to invalid IL or missing references) //IL_1f79: Unknown result type (might be due to invalid IL or missing references) //IL_1fcd: Unknown result type (might be due to invalid IL or missing references) //IL_1ff1: Unknown result type (might be due to invalid IL or missing references) //IL_07c4: Unknown result type (might be due to invalid IL or missing references) //IL_07e4: Unknown result type (might be due to invalid IL or missing references) //IL_0838: Unknown result type (might be due to invalid IL or missing references) //IL_085c: Unknown result type (might be due to invalid IL or missing references) //IL_20d8: Unknown result type (might be due to invalid IL or missing references) //IL_20f8: Unknown result type (might be due to invalid IL or missing references) //IL_214c: Unknown result type (might be due to invalid IL or missing references) //IL_2170: Unknown result type (might be due to invalid IL or missing references) //IL_0945: Unknown result type (might be due to invalid IL or missing references) //IL_0965: Unknown result type (might be due to invalid IL or missing references) //IL_09b9: Unknown result type (might be due to invalid IL or missing references) //IL_09dd: Unknown result type (might be due to invalid IL or missing references) //IL_2259: Unknown result type (might be due to invalid IL or missing references) //IL_2279: Unknown result type (might be due to invalid IL or missing references) //IL_22cd: Unknown result type (might be due to invalid IL or missing references) //IL_22f1: Unknown result type (might be due to invalid IL or missing references) //IL_0ac6: Unknown result type (might be due to invalid IL or missing references) //IL_0ae6: Unknown result type (might be due to invalid IL or missing references) //IL_0b3a: Unknown result type (might be due to invalid IL or missing references) //IL_0b5e: Unknown result type (might be due to invalid IL or missing references) //IL_23da: Unknown result type (might be due to invalid IL or missing references) //IL_23fa: Unknown result type (might be due to invalid IL or missing references) //IL_244e: Unknown result type (might be due to invalid IL or missing references) //IL_2472: Unknown result type (might be due to invalid IL or missing references) //IL_0ee8: Unknown result type (might be due to invalid IL or missing references) //IL_0f08: Unknown result type (might be due to invalid IL or missing references) //IL_0f5c: Unknown result type (might be due to invalid IL or missing references) //IL_0f80: Unknown result type (might be due to invalid IL or missing references) //IL_0c47: Unknown result type (might be due to invalid IL or missing references) //IL_0c67: Unknown result type (might be due to invalid IL or missing references) //IL_0cbb: Unknown result type (might be due to invalid IL or missing references) //IL_0cdf: Unknown result type (might be due to invalid IL or missing references) //IL_27fc: Unknown result type (might be due to invalid IL or missing references) //IL_281c: Unknown result type (might be due to invalid IL or missing references) //IL_2870: Unknown result type (might be due to invalid IL or missing references) //IL_2894: Unknown result type (might be due to invalid IL or missing references) //IL_255b: Unknown result type (might be due to invalid IL or missing references) //IL_257b: Unknown result type (might be due to invalid IL or missing references) //IL_25cf: Unknown result type (might be due to invalid IL or missing references) //IL_25f3: Unknown result type (might be due to invalid IL or missing references) //IL_0dc8: Unknown result type (might be due to invalid IL or missing references) //IL_0de8: Unknown result type (might be due to invalid IL or missing references) //IL_0e3c: Unknown result type (might be due to invalid IL or missing references) //IL_0e60: Unknown result type (might be due to invalid IL or missing references) //IL_26dc: Unknown result type (might be due to invalid IL or missing references) //IL_26fc: Unknown result type (might be due to invalid IL or missing references) //IL_2750: Unknown result type (might be due to invalid IL or missing references) //IL_2774: Unknown result type (might be due to invalid IL or missing references) //IL_1067: Unknown result type (might be due to invalid IL or missing references) //IL_1087: Unknown result type (might be due to invalid IL or missing references) //IL_10db: Unknown result type (might be due to invalid IL or missing references) //IL_10ff: Unknown result type (might be due to invalid IL or missing references) //IL_297b: Unknown result type (might be due to invalid IL or missing references) //IL_299b: Unknown result type (might be due to invalid IL or missing references) //IL_29ef: Unknown result type (might be due to invalid IL or missing references) //IL_2a13: Unknown result type (might be due to invalid IL or missing references) //IL_11e8: Unknown result type (might be due to invalid IL or missing references) //IL_1208: Unknown result type (might be due to invalid IL or missing references) //IL_125c: Unknown result type (might be due to invalid IL or missing references) //IL_1280: Unknown result type (might be due to invalid IL or missing references) //IL_2afc: Unknown result type (might be due to invalid IL or missing references) //IL_2b1c: Unknown result type (might be due to invalid IL or missing references) //IL_2b70: Unknown result type (might be due to invalid IL or missing references) //IL_2b94: Unknown result type (might be due to invalid IL or missing references) //IL_13a9: Unknown result type (might be due to invalid IL or missing references) //IL_13c9: Unknown result type (might be due to invalid IL or missing references) //IL_141d: Unknown result type (might be due to invalid IL or missing references) //IL_1441: Unknown result type (might be due to invalid IL or missing references) //IL_2cbd: Unknown result type (might be due to invalid IL or missing references) //IL_2cdd: Unknown result type (might be due to invalid IL or missing references) //IL_2d31: Unknown result type (might be due to invalid IL or missing references) //IL_2d55: Unknown result type (might be due to invalid IL or missing references) //IL_1609: Unknown result type (might be due to invalid IL or missing references) //IL_1629: Unknown result type (might be due to invalid IL or missing references) //IL_167d: Unknown result type (might be due to invalid IL or missing references) //IL_16a1: Unknown result type (might be due to invalid IL or missing references) //IL_2f1d: Unknown result type (might be due to invalid IL or missing references) //IL_2f3d: Unknown result type (might be due to invalid IL or missing references) //IL_2f91: Unknown result type (might be due to invalid IL or missing references) //IL_2fb5: Unknown result type (might be due to invalid IL or missing references) //IL_186b: Unknown result type (might be due to invalid IL or missing references) //IL_188b: Unknown result type (might be due to invalid IL or missing references) //IL_18df: Unknown result type (might be due to invalid IL or missing references) //IL_1903: Unknown result type (might be due to invalid IL or missing references) //IL_317f: Unknown result type (might be due to invalid IL or missing references) //IL_319f: Unknown result type (might be due to invalid IL or missing references) //IL_31f3: Unknown result type (might be due to invalid IL or missing references) //IL_3217: Unknown result type (might be due to invalid IL or missing references) if ((Object)(object)GM.CurrentMovementManager.Hands[0].m_currentInteractable != (Object)null) { cachedL = GM.CurrentMovementManager.Hands[0].m_currentInteractable; if (((Object)((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject).name == "AKS74EFT3(Clone)" && (Object)(object)this.GetComponentInDirectChildren<HandPoseItem>(((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform) == (Object)null) { HandsIndicator_AKS74EFT3_L = Object.Instantiate<GameObject>(HandsIndicator_AKS74EFT3, ((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform.position, ((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform.rotation); HandsIndicator_AKS74EFT3_L.transform.SetParent(((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform); HandsIndicator_AKS74EFT3_L.transform.localPosition = new Vector3(0f, 0f, 0f); HandsIndicator_AKS74EFT3_L.transform.localEulerAngles = new Vector3(0f, 0f, 0f); } if (((Object)((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject).name == "AKBolt(Clone)" && (Object)(object)this.GetComponentInDirectChildren<HandPoseItem>(((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform) == (Object)null) { HandsIndicator_AKBolt_L = Object.Instantiate<GameObject>(HandsIndicator_AKBolt, ((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform.position, ((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform.rotation); HandsIndicator_AKBolt_L.transform.SetParent(((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform); HandsIndicator_AKBolt_L.transform.localPosition = new Vector3(0f, 0f, 0f); HandsIndicator_AKBolt_L.transform.localEulerAngles = new Vector3(0f, 0f, 0f); } if (((Object)((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject).name == "AKBoltHead(Clone)" && (Object)(object)this.GetComponentInDirectChildren<HandPoseItem>(((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform) == (Object)null) { HandsIndicator_AKBoltHead_L = Object.Instantiate<GameObject>(HandsIndicator_AKBoltHead, ((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform.position, ((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform.rotation); HandsIndicator_AKBoltHead_L.transform.SetParent(((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform); HandsIndicator_AKBoltHead_L.transform.localPosition = new Vector3(0f, 0f, 0f); HandsIndicator_AKBoltHead_L.transform.localEulerAngles = new Vector3(0f, 0f, 0f); } if (((Object)((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject).name == "AKDustCover(Clone)" && (Object)(object)this.GetComponentInDirectChildren<HandPoseItem>(((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform) == (Object)null) { HandsIndicator_AKDustCover_L = Object.Instantiate<GameObject>(HandsIndicator_AKDustCover, ((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform.position, ((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform.rotation); HandsIndicator_AKDustCover_L.transform.SetParent(((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform); HandsIndicator_AKDustCover_L.transform.localPosition = new Vector3(0f, 0f, 0f); HandsIndicator_AKDustCover_L.transform.localEulerAngles = new Vector3(0f, 0f, 0f); } if (((Object)((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject).name == "AKGasBlock(Clone)" && (Object)(object)this.GetComponentInDirectChildren<HandPoseItem>(((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform) == (Object)null) { HandsIndicator_AKGasBlock_L = Object.Instantiate<GameObject>(HandsIndicator_AKGasBlock, ((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform.position, ((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform.rotation); HandsIndicator_AKGasBlock_L.transform.SetParent(((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform); HandsIndicator_AKGasBlock_L.transform.localPosition = new Vector3(0f, 0f, 0f); HandsIndicator_AKGasBlock_L.transform.localEulerAngles = new Vector3(0f, 0f, 0f); } if (((Object)((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject).name == "AKRecoilSpring(Clone)" && (Object)(object)this.GetComponentInDirectChildren<HandPoseItem>(((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform) == (Object)null) { HandsIndicator_AKRecoilSpring_L = Object.Instantiate<GameObject>(HandsIndicator_AKRecoilSpring, ((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform.position, ((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform.rotation); HandsIndicator_AKRecoilSpring_L.transform.SetParent(((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform); HandsIndicator_AKRecoilSpring_L.transform.localPosition = new Vector3(0f, 0f, 0f); HandsIndicator_AKRecoilSpring_L.transform.localEulerAngles = new Vector3(0f, 0f, 0f); } if (((Object)((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject).name == "interface" && (Object)(object)((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform.parent != (Object)null && ((Object)((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform.parent).name == "AKBolt(Clone)" && (Object)(object)this.GetComponentInDirectChildren<HandPoseItem>(((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform) == (Object)null) { HandsIndicator_AKBolt_L = Object.Instantiate<GameObject>(HandsIndicator_AKBolt, ((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform.position, ((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform.rotation); HandsIndicator_AKBolt_L.transform.SetParent(((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform); HandsIndicator_AKBolt_L.transform.localPosition = new Vector3(0f, 0f, 0f); HandsIndicator_AKBolt_L.transform.localEulerAngles = new Vector3(0f, 0f, 0f); } if (((Object)((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject).name == "interface" && (Object)(object)((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform.parent != (Object)null && ((Object)((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform.parent).name == "AKBoltHead(Clone)" && (Object)(object)this.GetComponentInDirectChildren<HandPoseItem>(((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform) == (Object)null) { HandsIndicator_AKBoltHead_L = Object.Instantiate<GameObject>(HandsIndicator_AKBoltHead, ((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform.position, ((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform.rotation); HandsIndicator_AKBoltHead_L.transform.SetParent(((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform); HandsIndicator_AKBoltHead_L.transform.localPosition = new Vector3(0f, 0f, 0f); HandsIndicator_AKBoltHead_L.transform.localEulerAngles = new Vector3(0f, 0f, 0f); } if (((Object)((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject).name == "interface (1)" && (Object)(object)((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform.parent != (Object)null && ((Object)((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform.parent).name == "AKDustCover(Clone)" && (Object)(object)this.GetComponentInDirectChildren<HandPoseItem>(((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform) == (Object)null) { HandsIndicator_AKDustCover_L = Object.Instantiate<GameObject>(HandsIndicator_AKDustCover, ((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform.position, ((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform.rotation); HandsIndicator_AKDustCover_L.transform.SetParent(((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform); HandsIndicator_AKDustCover_L.transform.localPosition = new Vector3(0f, 0f, 0f); HandsIndicator_AKDustCover_L.transform.localEulerAngles = new Vector3(0f, 0f, 0f); } if (((Object)((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject).name == "interface" && (Object)(object)((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform.parent != (Object)null && ((Object)((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform.parent).name == "AKGasBlock(Clone)" && (Object)(object)this.GetComponentInDirectChildren<HandPoseItem>(((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform) == (Object)null) { HandsIndicator_AKGasBlock_L = Object.Instantiate<GameObject>(HandsIndicator_AKGasBlock, ((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform.position, ((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform.rotation); HandsIndicator_AKGasBlock_L.transform.SetParent(((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform); HandsIndicator_AKGasBlock_L.transform.localPosition = new Vector3(0f, 0f, 0f); HandsIndicator_AKGasBlock_L.transform.localEulerAngles = new Vector3(0f, 0f, 0f); } if (((Object)((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject).name == "interface" && (Object)(object)((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform.parent != (Object)null && ((Object)((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform.parent).name == "AKRecoilSpring(Clone)" && (Object)(object)this.GetComponentInDirectChildren<HandPoseItem>(((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform) == (Object)null) { HandsIndicator_AKRecoilSpring_L = Object.Instantiate<GameObject>(HandsIndicator_AKRecoilSpring, ((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform.position, ((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform.rotation); HandsIndicator_AKRecoilSpring_L.transform.SetParent(((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform); HandsIndicator_AKRecoilSpring_L.transform.localPosition = new Vector3(0f, 0f, 0f); HandsIndicator_AKRecoilSpring_L.transform.localEulerAngles = new Vector3(0f, 0f, 0f); } if (((Object)((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject).name == "AKS74MagEFT2(Clone)" && (Object)(object)this.GetComponentInDirectChildren<HandPoseItem>(((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform) == (Object)null) { HandsIndicator_AKS74MagEFT2_L = Object.Instantiate<GameObject>(HandsIndicator_AKS74MagEFT2, ((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform.position, ((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform.rotation); HandsIndicator_AKS74MagEFT2_L.transform.SetParent(((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform); HandsIndicator_AKS74MagEFT2_L.transform.localPosition = new Vector3(0f, 0f, 0f); HandsIndicator_AKS74MagEFT2_L.transform.localEulerAngles = new Vector3(0f, 0f, 0f); } if (((Object)((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject).name == "_Trigger_Foregrip" && (Object)(object)((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform.parent != (Object)null && ((Object)((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform.parent).name == "AKS74EFT3(Clone)" && (Object)(object)this.GetComponentInDirectChildren<HandPoseItem>(((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform) == (Object)null) { HandsIndicator_AKForeGripComponent_L = Object.Instantiate<GameObject>(HandsIndicator_AKForeGripComponent, ((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform.position, ((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform.rotation); HandsIndicator_AKForeGripComponent_L.transform.SetParent(((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform); HandsIndicator_AKForeGripComponent_L.transform.localPosition = new Vector3(0f, 0f, 0f); HandsIndicator_AKForeGripComponent_L.transform.localEulerAngles = new Vector3(0f, 0f, 0f); } if (((Object)((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject).name == "_Bolt" && (Object)(object)((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform.parent != (Object)null && ((Object)((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform.parent).name == "AKS74EFT3(Clone)" && (Object)(object)this.GetComponentInDirectChildren<HandPoseItem>(((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform) == (Object)null) { HandsIndicator_AKBoltComponent_L = Object.Instantiate<GameObject>(HandsIndicator_AKBoltComponent, ((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform.position, ((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform.rotation); HandsIndicator_AKBoltComponent_L.transform.SetParent(((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform); HandsIndicator_AKBoltComponent_L.transform.localPosition = new Vector3(0f, 0f, 0f); HandsIndicator_AKBoltComponent_L.transform.localEulerAngles = new Vector3(0f, 0f, 0f); } if (((Object)((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject).name == "Selector" && (Object)(object)((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform.parent != (Object)null && (Object)(object)((Component)((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform.parent).transform.parent != (Object)null && ((Object)((Component)((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform.parent).transform.parent).name == "AKS74EFT3(Clone)" && (Object)(object)this.GetComponentInDirectChildren<HandPoseItem>(((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform) == (Object)null) { HandsIndicator_AKFireSelectorComponent_L = Object.Instantiate<GameObject>(HandsIndicator_AKFireSelectorComponent, ((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform.position, ((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform.rotation); HandsIndicator_AKFireSelectorComponent_L.transform.SetParent(((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform); HandsIndicator_AKFireSelectorComponent_L.transform.localPosition = new Vector3(0f, 0f, 0f); HandsIndicator_AKFireSelectorComponent_L.transform.localEulerAngles = new Vector3(0f, 0f, 0f); } if (((Object)((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject).name == "GrabPoint" && (Object)(object)((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform.parent != (Object)null && (Object)(object)((Component)((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform.parent).transform.parent != (Object)null && (Object)(object)((Component)((Component)((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform.parent).transform.parent).transform.parent != (Object)null && (Object)(object)((Component)((Component)((Component)((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform.parent).transform.parent).transform.parent).transform.parent != (Object)null && ((Object)((Component)((Component)((Component)((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform.parent).transform.parent).transform.parent).transform.parent).name == "AKS74EFT3(Clone)" && (Object)(object)this.GetComponentInDirectChildren<HandPoseItem>(((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform) == (Object)null) { HandsIndicator_AKStockComponent_L = Object.Instantiate<GameObject>(HandsIndicator_AKStockComponent, ((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform.position, ((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform.rotation); HandsIndicator_AKStockComponent_L.transform.SetParent(((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform); HandsIndicator_AKStockComponent_L.transform.localPosition = new Vector3(0f, 0f, 0f); HandsIndicator_AKStockComponent_L.transform.localEulerAngles = new Vector3(0f, 0f, 0f); } if (((Object)((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject).name == "SightGrab" && (Object)(object)((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform.parent != (Object)null && (Object)(object)((Component)((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform.parent).transform.parent != (Object)null && (Object)(object)((Component)((Component)((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform.parent).transform.parent).transform.parent != (Object)null && (Object)(object)((Component)((Component)((Component)((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform.parent).transform.parent).transform.parent).transform.parent != (Object)null && ((Object)((Component)((Component)((Component)((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform.parent).transform.parent).transform.parent).transform.parent).name == "AKS74EFT3(Clone)" && (Object)(object)this.GetComponentInDirectChildren<HandPoseItem>(((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform) == (Object)null) { HandsIndicator_AKSightComponent_L = Object.Instantiate<GameObject>(HandsIndicator_AKSightComponent, ((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform.position, ((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform.rotation); HandsIndicator_AKSightComponent_L.transform.SetParent(((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.transform); HandsIndicator_AKSightComponent_L.transform.localPosition = new Vector3(0f, 0f, 0f); HandsIndicator_AKSightComponent_L.transform.localEulerAngles = new Vector3(0f, 0f, 0f); } } if ((Object)(object)GM.CurrentMovementManager.Hands[1].m_currentInteractable != (Object)null) { cachedR = GM.CurrentMovementManager.Hands[1].m_currentInteractable; if (((Object)((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject).name == "AKS74EFT3(Clone)" && (Object)(object)this.GetComponentInDirectChildren<HandPoseItem>(((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform) == (Object)null) { HandsIndicator_AKS74EFT3_R = Object.Instantiate<GameObject>(HandsIndicator_AKS74EFT3, ((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform.position, ((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform.rotation); HandsIndicator_AKS74EFT3_R.transform.SetParent(((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform); HandsIndicator_AKS74EFT3_R.transform.localPosition = new Vector3(0f, 0f, 0f); HandsIndicator_AKS74EFT3_R.transform.localEulerAngles = new Vector3(0f, 0f, 0f); } if (((Object)((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject).name == "AKBolt(Clone)" && (Object)(object)this.GetComponentInDirectChildren<HandPoseItem>(((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform) == (Object)null) { HandsIndicator_AKBolt_R = Object.Instantiate<GameObject>(HandsIndicator_AKBolt, ((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform.position, ((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform.rotation); HandsIndicator_AKBolt_R.transform.SetParent(((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform); HandsIndicator_AKBolt_R.transform.localPosition = new Vector3(0f, 0f, 0f); HandsIndicator_AKBolt_R.transform.localEulerAngles = new Vector3(0f, 0f, 0f); } if (((Object)((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject).name == "AKBoltHead(Clone)" && (Object)(object)this.GetComponentInDirectChildren<HandPoseItem>(((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform) == (Object)null) { HandsIndicator_AKBoltHead_R = Object.Instantiate<GameObject>(HandsIndicator_AKBoltHead, ((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform.position, ((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform.rotation); HandsIndicator_AKBoltHead_R.transform.SetParent(((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform); HandsIndicator_AKBoltHead_R.transform.localPosition = new Vector3(0f, 0f, 0f); HandsIndicator_AKBoltHead_R.transform.localEulerAngles = new Vector3(0f, 0f, 0f); } if (((Object)((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject).name == "AKDustCover(Clone)" && (Object)(object)this.GetComponentInDirectChildren<HandPoseItem>(((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform) == (Object)null) { HandsIndicator_AKDustCover_R = Object.Instantiate<GameObject>(HandsIndicator_AKDustCover, ((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform.position, ((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform.rotation); HandsIndicator_AKDustCover_R.transform.SetParent(((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform); HandsIndicator_AKDustCover_R.transform.localPosition = new Vector3(0f, 0f, 0f); HandsIndicator_AKDustCover_R.transform.localEulerAngles = new Vector3(0f, 0f, 0f); } if (((Object)((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject).name == "AKGasBlock(Clone)" && (Object)(object)this.GetComponentInDirectChildren<HandPoseItem>(((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform) == (Object)null) { HandsIndicator_AKGasBlock_R = Object.Instantiate<GameObject>(HandsIndicator_AKGasBlock, ((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform.position, ((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform.rotation); HandsIndicator_AKGasBlock_R.transform.SetParent(((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform); HandsIndicator_AKGasBlock_R.transform.localPosition = new Vector3(0f, 0f, 0f); HandsIndicator_AKGasBlock_R.transform.localEulerAngles = new Vector3(0f, 0f, 0f); } if (((Object)((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject).name == "AKRecoilSpring(Clone)" && (Object)(object)this.GetComponentInDirectChildren<HandPoseItem>(((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform) == (Object)null) { HandsIndicator_AKRecoilSpring_R = Object.Instantiate<GameObject>(HandsIndicator_AKRecoilSpring, ((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform.position, ((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform.rotation); HandsIndicator_AKRecoilSpring_R.transform.SetParent(((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform); HandsIndicator_AKRecoilSpring_R.transform.localPosition = new Vector3(0f, 0f, 0f); HandsIndicator_AKRecoilSpring_R.transform.localEulerAngles = new Vector3(0f, 0f, 0f); } if (((Object)((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject).name == "interface" && (Object)(object)((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform.parent != (Object)null && ((Object)((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform.parent).name == "AKBolt(Clone)" && (Object)(object)this.GetComponentInDirectChildren<HandPoseItem>(((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform) == (Object)null) { HandsIndicator_AKBolt_R = Object.Instantiate<GameObject>(HandsIndicator_AKBolt, ((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform.position, ((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform.rotation); HandsIndicator_AKBolt_R.transform.SetParent(((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform); HandsIndicator_AKBolt_R.transform.localPosition = new Vector3(0f, 0f, 0f); HandsIndicator_AKBolt_R.transform.localEulerAngles = new Vector3(0f, 0f, 0f); } if (((Object)((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject).name == "interface" && (Object)(object)((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform.parent != (Object)null && ((Object)((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform.parent).name == "AKBoltHead(Clone)" && (Object)(object)this.GetComponentInDirectChildren<HandPoseItem>(((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform) == (Object)null) { HandsIndicator_AKBoltHead_R = Object.Instantiate<GameObject>(HandsIndicator_AKBoltHead, ((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform.position, ((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform.rotation); HandsIndicator_AKBoltHead_R.transform.SetParent(((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform); HandsIndicator_AKBoltHead_R.transform.localPosition = new Vector3(0f, 0f, 0f); HandsIndicator_AKBoltHead_R.transform.localEulerAngles = new Vector3(0f, 0f, 0f); } if (((Object)((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject).name == "interface (1)" && (Object)(object)((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform.parent != (Object)null && ((Object)((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform.parent).name == "AKDustCover(Clone)" && (Object)(object)this.GetComponentInDirectChildren<HandPoseItem>(((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform) == (Object)null) { HandsIndicator_AKDustCover_R = Object.Instantiate<GameObject>(HandsIndicator_AKDustCover, ((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform.position, ((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform.rotation); HandsIndicator_AKDustCover_R.transform.SetParent(((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform); HandsIndicator_AKDustCover_R.transform.localPosition = new Vector3(0f, 0f, 0f); HandsIndicator_AKDustCover_R.transform.localEulerAngles = new Vector3(0f, 0f, 0f); } if (((Object)((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject).name == "interface" && (Object)(object)((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform.parent != (Object)null && ((Object)((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform.parent).name == "AKGasBlock(Clone)" && (Object)(object)this.GetComponentInDirectChildren<HandPoseItem>(((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform) == (Object)null) { HandsIndicator_AKGasBlock_R = Object.Instantiate<GameObject>(HandsIndicator_AKGasBlock, ((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform.position, ((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform.rotation); HandsIndicator_AKGasBlock_R.transform.SetParent(((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform); HandsIndicator_AKGasBlock_R.transform.localPosition = new Vector3(0f, 0f, 0f); HandsIndicator_AKGasBlock_R.transform.localEulerAngles = new Vector3(0f, 0f, 0f); } if (((Object)((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject).name == "interface" && (Object)(object)((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform.parent != (Object)null && ((Object)((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform.parent).name == "AKRecoilSpring(Clone)" && (Object)(object)this.GetComponentInDirectChildren<HandPoseItem>(((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform) == (Object)null) { HandsIndicator_AKRecoilSpring_R = Object.Instantiate<GameObject>(HandsIndicator_AKRecoilSpring, ((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform.position, ((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform.rotation); HandsIndicator_AKRecoilSpring_R.transform.SetParent(((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform); HandsIndicator_AKRecoilSpring_R.transform.localPosition = new Vector3(0f, 0f, 0f); HandsIndicator_AKRecoilSpring_R.transform.localEulerAngles = new Vector3(0f, 0f, 0f); } if (((Object)((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject).name == "AKS74MagEFT2(Clone)" && (Object)(object)this.GetComponentInDirectChildren<HandPoseItem>(((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform) == (Object)null) { HandsIndicator_AKS74MagEFT2_R = Object.Instantiate<GameObject>(HandsIndicator_AKS74MagEFT2, ((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform.position, ((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform.rotation); HandsIndicator_AKS74MagEFT2_R.transform.SetParent(((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform); HandsIndicator_AKS74MagEFT2_R.transform.localPosition = new Vector3(0f, 0f, 0f); HandsIndicator_AKS74MagEFT2_R.transform.localEulerAngles = new Vector3(0f, 0f, 0f); } if (((Object)((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject).name == "_Trigger_Foregrip" && (Object)(object)((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform.parent != (Object)null && ((Object)((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform.parent).name == "AKS74EFT3(Clone)" && (Object)(object)this.GetComponentInDirectChildren<HandPoseItem>(((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform) == (Object)null) { HandsIndicator_AKForeGripComponent_R = Object.Instantiate<GameObject>(HandsIndicator_AKForeGripComponent, ((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform.position, ((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform.rotation); HandsIndicator_AKForeGripComponent_R.transform.SetParent(((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform); HandsIndicator_AKForeGripComponent_R.transform.localPosition = new Vector3(0f, 0f, 0f); HandsIndicator_AKForeGripComponent_R.transform.localEulerAngles = new Vector3(0f, 0f, 0f); } if (((Object)((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject).name == "_Bolt" && (Object)(object)((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform.parent != (Object)null && ((Object)((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform.parent).name == "AKS74EFT3(Clone)" && (Object)(object)this.GetComponentInDirectChildren<HandPoseItem>(((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform) == (Object)null) { HandsIndicator_AKBoltComponent_R = Object.Instantiate<GameObject>(HandsIndicator_AKBoltComponent, ((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform.position, ((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform.rotation); HandsIndicator_AKBoltComponent_R.transform.SetParent(((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform); HandsIndicator_AKBoltComponent_R.transform.localPosition = new Vector3(0f, 0f, 0f); HandsIndicator_AKBoltComponent_R.transform.localEulerAngles = new Vector3(0f, 0f, 0f); } if (((Object)((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject).name == "Selector" && (Object)(object)((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform.parent != (Object)null && (Object)(object)((Component)((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform.parent).transform.parent != (Object)null && ((Object)((Component)((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform.parent).transform.parent).name == "AKS74EFT3(Clone)" && (Object)(object)this.GetComponentInDirectChildren<HandPoseItem>(((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform) == (Object)null) { HandsIndicator_AKFireSelectorComponent_R = Object.Instantiate<GameObject>(HandsIndicator_AKFireSelectorComponent, ((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform.position, ((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform.rotation); HandsIndicator_AKFireSelectorComponent_R.transform.SetParent(((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform); HandsIndicator_AKFireSelectorComponent_R.transform.localPosition = new Vector3(0f, 0f, 0f); HandsIndicator_AKFireSelectorComponent_R.transform.localEulerAngles = new Vector3(0f, 0f, 0f); } if (((Object)((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject).name == "GrabPoint" && (Object)(object)((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform.parent != (Object)null && (Object)(object)((Component)((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform.parent).transform.parent != (Object)null && (Object)(object)((Component)((Component)((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform.parent).transform.parent).transform.parent != (Object)null && (Object)(object)((Component)((Component)((Component)((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform.parent).transform.parent).transform.parent).transform.parent != (Object)null && ((Object)((Component)((Component)((Component)((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform.parent).transform.parent).transform.parent).transform.parent).name == "AKS74EFT3(Clone)" && (Object)(object)this.GetComponentInDirectChildren<HandPoseItem>(((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform) == (Object)null) { HandsIndicator_AKStockComponent_R = Object.Instantiate<GameObject>(HandsIndicator_AKStockComponent, ((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform.position, ((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform.rotation); HandsIndicator_AKStockComponent_R.transform.SetParent(((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform); HandsIndicator_AKStockComponent_R.transform.localPosition = new Vector3(0f, 0f, 0f); HandsIndicator_AKStockComponent_R.transform.localEulerAngles = new Vector3(0f, 0f, 0f); } if (((Object)((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject).name == "SightGrab" && (Object)(object)((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform.parent != (Object)null && (Object)(object)((Component)((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform.parent).transform.parent != (Object)null && (Object)(object)((Component)((Component)((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform.parent).transform.parent).transform.parent != (Object)null && (Object)(object)((Component)((Component)((Component)((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform.parent).transform.parent).transform.parent).transform.parent != (Object)null && ((Object)((Component)((Component)((Component)((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform.parent).transform.parent).transform.parent).transform.parent).name == "AKS74EFT3(Clone)" && (Object)(object)this.GetComponentInDirectChildren<HandPoseItem>(((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform) == (Object)null) { HandsIndicator_AKSightComponent_R = Object.Instantiate<GameObject>(HandsIndicator_AKSightComponent, ((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform.position, ((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform.rotation); HandsIndicator_AKSightComponent_R.transform.SetParent(((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.transform); HandsIndicator_AKSightComponent_R.transform.localPosition = new Vector3(0f, 0f, 0f); HandsIndicator_AKSightComponent_R.transform.localEulerAngles = new Vector3(0f, 0f, 0f); } } } public T GetComponentInDirectChildren<T>(Transform transformtarg) where T : Component { //IL_0014: Unknown result type (might be due to invalid IL or missing references) //IL_001a: Expected O, but got Unknown foreach (Transform item in transformtarg) { Transform val = item; T component = ((Component)val).GetComponent<T>(); if ((Object)(object)component != (Object)null) { return component; } } return (T)(object)null; } } public class HandPose : MonoBehaviour { public GameObject[] Fingers; } public class HandPoseItem : MonoBehaviour { public FVRViveHand cacheHand; private FVRViveHand cacheHandL; private FVRViveHand cacheHandR; private bool _leftOnForegrip; private bool _rightOnForegrip; private float _leftForeBlend = 0f; private float _rightForeBlend = 0f; [Tooltip("护木姿势与主握把姿势之间的过渡速度(越大越快)")] public float foreBlendSpeed = 8f; public FVRFireArm allguns; public Handgun pistol; public TubeFedShotgun shotguntubefed; public RevolvingShotgun shotgunrevolving; public BoltActionRifle boltaction; public ClosedBoltWeapon gunclosedbolt; public OpenBoltReceiver gunopenbolt; public BreakActionWeapon gunbreakaction; public CarlGustaf carlgustaf; public SingleActionRevolver revolversa; public Revolver revolverda; public M72 m72; public RPG7 rpg7; public FVRInteractiveObject Obj; public HandPose CurPoseL; public HandPose IdleL; public HandPose CurPoseR; public HandPose IdleR; public HandPose ForeL; public HandPose ForeR; public bool hasTrigger; public HandPose FireStartL; public HandPose FireEndL; public HandPose FireStartR; public HandPose FireEndR; public bool TriggerPressed; public bool TriggerReached; public bool canTriggerPull; public bool hasSlideRelease; public HandPose SlideReleaseStart; public HandPose SlideReleaseEnd; public bool SlideReleasePressed; public bool SlideReleaseReached; public bool canSlideLockToggle; public bool hasMagRelease; public HandPose MagReleaseStart; public HandPose MagReleaseEnd; public bool MagReleasePressed; public bool MagReleaseReached; public bool hasSafety; public HandPose[] Safetys; public bool SafetyPressed; public bool SafetyReached; public bool canSafetyToggle; public bool hasSelector; public HandPose Selector; public bool SelectorPressed; public bool SelectorReached; public bool hasHammer; public HandPose HammerStart; public HandPose HammerEnd; public bool HammerPressed; public bool HammerReached; public GameObject grabpos; public bool isAltHold; private void Start() { //IL_0080: Unknown result type (might be due to invalid IL or missing references) //IL_00a5: Unknown result type (might be due to invalid IL or missing references) if ((Object)(object)((Component)this).GetComponentInParent<FVRInteractiveObject>() != (Object)null) { Obj = ((Component)this).GetComponentInParent<FVRInteractiveObject>(); } CopyPose(CurPoseL, IdleL); CopyPose(CurPoseR, IdleR); if ((Object)(object)Obj != (Object)null && (Object)(object)grabpos != (Object)null) { ((Component)Obj.PoseOverride).transform.position = grabpos.transform.position; ((Component)Obj.PoseOverride).transform.rotation = grabpos.transform.rotation; } } public void RefreshPoseNow(bool isLeft, FVRViveHand hand, bool onFore) { //IL_0160: Unknown result type (might be due to invalid IL or missing references) //IL_0174: Unknown result type (might be due to invalid IL or missing references) //IL_017b: Unknown result type (might be due to invalid IL or missing references) //IL_01a1: Unknown result type (might be due to invalid IL or missing references) //IL_01b5: Unknown result type (might be due to invalid IL or missing references) //IL_01bc: Unknown result type (might be due to invalid IL or missing references) if ((Object)(object)hand == (Object)null) { return; } HandPose handPose = (isLeft ? CurPoseL : CurPoseR); HandPose src = (isLeft ? IdleL : IdleR); HandPose handPose2 = (isLeft ? ForeL : ForeR); HandPose handPose3 = (isLeft ? FireStartL : FireStartR); HandPose handPose4 = (isLeft ? FireEndL : FireEndR); if ((Object)(object)handPose == (Object)null) { return; } if (onFore && (Object)(object)handPose2 != (Object)null) { CopyPose(handPose, handPose2); } else if (hasTrigger && (Object)(object)handPose3 != (Object)null && (Object)(object)handPose4 != (Object)null) { float triggerFloat = hand.Input.TriggerFloat; int num = Mathf.Min(handPose.Fingers.Length, handPose3.Fingers.Length); for (int i = 0; i < num; i++) { if (!((Object)(object)handPose.Fingers[i] == (Object)null) && !((Object)(object)handPose3.Fingers[i] == (Object)null) && !((Object)(object)handPose4.Fingers[i] == (Object)null)) { handPose.Fingers[i].transform.rotation = EulerLerp(handPose3.Fingers[i].transform.eulerAngles, handPose4.Fingers[i].transform.eulerAngles, triggerFloat); handPose.Fingers[i].transform.position = Vector3.Lerp(handPose3.Fingers[i].transform.position, handPose4.Fingers[i].transform.position, triggerFloat); } } } else { CopyPose(handPose, src); } } private void Update() { if ((Object)(object)Obj == (Object)null) { return; } FVRViveHand[] hands = GM.CurrentMovementManager.Hands; FVRViveHand val = hands[0]; FVRViveHand val2 = hands[1]; UpdateForegripSticky(val, ref _leftOnForegrip); UpdateForegripSticky(val2, ref _rightOnForegrip); bool flag = HandBelongsToThis(val) || ((Object)(object)val != (Object)null && val.Input.GripPressed && _leftOnForegrip); bool flag2 = HandBelongsToThis(val2) || ((Object)(object)val2 != (Object)null && val2.Input.GripPressed && _rightOnForegrip); if (!flag) { CopyPose(CurPoseL, IdleL); } if (!flag2) { CopyPose(CurPoseR, IdleR); } if (!flag && !flag2) { isAltHold = false; return; } FVRFireArm component = ((Component)Obj).gameObject.GetComponent<FVRFireArm>(); isAltHold = (Object)(object)component != (Object)null && ((FVRPhysicalObject)component).IsAltHeld; FVRAlternateGrip component2 = ((Component)Obj).gameObject.GetComponent<FVRAlternateGrip>(); if ((Object)(object)component2 != (Object)null && ((FVRInteractiveObject)component2).m_isHeld && !((FVRInteractiveObject)component2.PrimaryObject).m_isHeld && (Object)(object)((Component)component2.PrimaryObject).gameObject.GetComponentInChildren<HandPoseItem>() != (Object)null) { if (flag) { CopyPose(((Component)component2.PrimaryObject).gameObject.GetComponentInChildren<HandPoseItem>().CurPoseL, ((Component)component2.PrimaryObject).gameObject.GetComponentInChildren<HandPoseItem>().ForeL); } if (flag2) { CopyPose(((Component)component2.PrimaryObject).gameObject.GetComponentInChildren<HandPoseItem>().CurPoseR, ((Component)component2.PrimaryObject).gameObject.GetComponentInChildren<HandPoseItem>().ForeR); } } if (flag) { UpdateOneHand(CurPoseL, IdleL, ForeL, FireStartL, FireEndL, val, isAltHold); } if (flag2) { UpdateOneHand(CurPoseR, IdleR, ForeR, FireStartR, FireEndR, val2, isAltHold); } } private bool IsHandOnForegrip(FVRViveHand hand) { if ((Object)(object)hand == (Object)null || (Object)(object)hand.m_currentInteractable == (Object)null) { return false; } FVRAlternateGrip component = ((Component)hand.m_currentInteractable).gameObject.GetComponent<FVRAlternateGrip>(); if ((Object)(object)component == (Object)null) { return false; } FVRFireArm componentInParent = ((Component)this).GetComponentInParent<FVRFireArm>(); return (Object)(object)componentInParent != (Object)null && ((Component)component).transform.IsChildOf(((Component)componentInParent).transform); } private void ApplyHandPoseBlended(HandPose cur, HandPose idle, HandPose fore, HandPose fireStart, HandPose fireEnd, FVRViveHand hand, float foreBlend) { //IL_017e: Unknown result type (might be due to invalid IL or missing references) //IL_0183: Unknown result type (might be due to invalid IL or missing references) //IL_0191: Unknown result type (might be due to invalid IL or missing references) //IL_0196: Unknown result type (might be due to invalid IL or missing references) //IL_0221: Unknown result type (might be due to invalid IL or missing references) //IL_0234: Unknown result type (might be due to invalid IL or missing references) //IL_00de: Unknown result type (might be due to invalid IL or missing references) //IL_00f1: Unknown result type (might be due to invalid IL or missing references) //IL_00f8: Unknown result type (might be due to invalid IL or missing references) //IL_00fd: Unknown result type (might be due to invalid IL or missing references) //IL_010c: 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_0126: Unknown result type (might be due to invalid IL or missing references) //IL_012b: Unknown result type (might be due to invalid IL or missing references) //IL_01dd: Unknown result type (might be due to invalid IL or missing references) //IL_01eb: Unknown result type (might be due to invalid IL or missing references) //IL_01f2: Unknown result type (might be due to invalid IL or missing references) //IL_01f7: Unknown result type (might be due to invalid IL or missing references) //IL_01f8: Unknown result type (might be due to invalid IL or missing references) //IL_0206: Unknown result type (might be due to invalid IL or missing references) //IL_020d: Unknown result type (might be due to invalid IL or missing references) //IL_0212: Unknown result type (might be due to invalid IL or missing references) if ((Object)(object)cur == (Object)null || cur.Fingers == null) { return; } int num = cur.Fingers.Length; for (int i = 0; i < num; i++) { if ((Object)(object)cur.Fingers[i] == (Object)null) { continue; } Quaternion val; Vector3 val2; if (hasTrigger && (Object)(object)fireStart != (Object)null && (Object)(object)fireEnd != (Object)null && fireStart.Fingers != null && i < fireStart.Fingers.Length && fireEnd.Fingers != null && i < fireEnd.Fingers.Length && (Object)(object)fireStart.Fingers[i] != (Object)null && (Object)(object)fireEnd.Fingers[i] != (Object)null) { float triggerFloat = hand.Input.TriggerFloat; val = EulerLerp(fireStart.Fingers[i].transform.eulerAngles, fireEnd.Fingers[i].transform.eulerAngles, triggerFloat); val2 = Vector3.Lerp(fireStart.Fingers[i].transform.position, fireEnd.Fingers[i].transform.position, triggerFloat); } else { if (!((Object)(object)idle != (Object)null) || idle.Fingers == null || i >= idle.Fingers.Length || !((Object)(object)idle.Fingers[i] != (Object)null)) { continue; } val = idle.Fingers[i].transform.rotation; val2 = idle.Fingers[i].transform.position; } if (foreBlend > 0f && (Object)(object)fore != (Object)null && fore.Fingers != null && i < fore.Fingers.Length && (Object)(object)fore.Fingers[i] != (Object)null) { val = Quaternion.Slerp(val, fore.Fingers[i].transform.rotation, foreBlend); val2 = Vector3.Lerp(val2, fore.Fingers[i].transform.position, foreBlend); } cur.Fingers[i].transform.rotation = val; cur.Fingers[i].transform.position = val2; } } private static void CopyPose(HandPose dst, HandPose src) { //IL_0079: Unknown result type (might be due to invalid IL or missing references) //IL_009d: Unknown result type (might be due to invalid IL or missing references) if ((Object)(object)dst == (Object)null || (Object)(object)src == (Object)null) { return; } int num = Mathf.Min(dst.Fingers.Length, src.Fingers.Length); for (int i = 0; i < num; i++) { if (!((Object)(object)dst.Fingers[i] == (Object)null) && !((Object)(object)src.Fingers[i] == (Object)null)) { dst.Fingers[i].transform.rotation = src.Fingers[i].transform.rotation; dst.Fingers[i].transform.position = src.Fingers[i].transform.position; } } } private void UpdateForegripSticky(FVRViveHand hand, ref bool sticky) { if ((Object)(object)hand == (Object)null || !hand.Input.GripPressed) { sticky = false; } else if (!((Object)(object)hand.m_currentInteractable == (Object)null) && (Object)(object)((Component)hand.m_currentInteractable).gameObject.GetComponent<FVRAlternateGrip>() != (Object)null) { sticky = true; } } private bool HandBelongsToThis(FVRViveHand hand) { if ((Object)(object)hand == (Object)null || (Object)(object)hand.m_currentInteractable == (Object)null) { return false; } if ((Object)(object)hand.m_currentInteractable == (Object)(object)Obj) { return true; } HandPoseItem componentInDirectChildren = this.GetComponentInDirectChildren<HandPoseItem>(hand.m_currentInteractable.GameObject.transform); return (Object)(object)componentInDirectChildren == (Object)(object)this; } private void UpdateOneHand(HandPose cur, HandPose idle, HandPose fore, HandPose fireStart, HandPose fireEnd, FVRViveHand hand, bool onForegrip) { //IL_00cb: Unknown result type (might be due to invalid IL or missing references) //IL_00de: Unknown result type (might be due to invalid IL or missing references) //IL_00e4: Unknown result type (might be due to invalid IL or missing references) //IL_0109: Unknown result type (might be due to invalid IL or missing references) //IL_011c: Unknown result type (might be due to invalid IL or missing references) //IL_0122: Unknown result type (might be due to invalid IL or missing references) if (onForegrip && (Object)(object)fore != (Object)null) { CopyPose(cur, fore); } else if (hasTrigger && (Object)(object)fireStart != (Object)null && (Object)(object)fireEnd != (Object)null) { float triggerFloat = hand.Input.TriggerFloat; int num = Mathf.Min(cur.Fingers.Length, fireStart.Fingers.Length); for (int i = 0; i < num; i++) { if (!((Object)(object)cur.Fingers[i] == (Object)null) && !((Object)(object)fireStart.Fingers[i] == (Object)null) && !((Object)(object)fireEnd.Fingers[i] == (Object)null)) { cur.Fingers[i].transform.rotation = EulerLerp(fireStart.Fingers[i].transform.eulerAngles, fireEnd.Fingers[i].transform.eulerAngles, triggerFloat); cur.Fingers[i].transform.position = Vector3.Lerp(fireStart.Fingers[i].transform.position, fireEnd.Fingers[i].transform.position, triggerFloat); } } } else { CopyPose(cur, idle); } } private bool IsHandHoldingThis(FVRViveHand hand) { if ((Object)(object)hand == (Object)null || (Object)(object)hand.m_currentInteractable == (Object)null) { return false; } HandPoseItem componentInDirectChildren = this.GetComponentInDirectChildren<HandPoseItem>(hand.m_currentInteractable.GameObject.transform); return (Object)(object)componentInDirectChildren == (Object)(object)this; } public static Quaternion EulerLerp(Vector3 fromEuler, Vector3 toEuler, float t) { //IL_0001: Unknown result type (might be due to invalid IL or missing references) //IL_0002: Unknown result type (might be due to invalid IL or missing references) //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_0009: Unknown result type (might be due to invalid IL or missing references) //IL_000e: Unknown result type (might be due to invalid IL or missing references) //IL_000f: Unknown result type (might be due to invalid IL or missing references) //IL_0010: Unknown result type (might be due to invalid IL or missing references) //IL_0049: Unknown result type (might be due to invalid IL or missing references) //IL_004a: Unknown result type (might be due to invalid IL or missing references) //IL_0051: Unknown result type (might be due to invalid IL or missing references) //IL_0056: Unknown result type (might be due to invalid IL or missing references) //IL_005c: Unknown result type (might be due to invalid IL or missing references) Quaternion val = Quaternion.Euler(fromEuler); Quaternion val2 = Quaternion.Euler(toEuler); if (Quaternion.Dot(val, val2) < 0f) { ((Quaternion)(ref val2))..ctor(0f - val2.x, 0f - val2.y, 0f - val2.z, 0f - val2.w); } return Quaternion.Slerp(val, val2, Mathf.Clamp01(t)); } public static Vector3 EulerLerpAngles(Vector3 fromEuler, Vector3 toEuler, float t) { //IL_0001: Unknown result type (might be due to invalid IL or missing references) //IL_0002: Unknown result type (might be due to invalid IL or missing references) //IL_0004: Unknown result type (might be due to invalid IL or missing references) //IL_0009: Unknown result type (might be due to invalid IL or missing references) //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_0017: Unknown result type (might be due to invalid IL or missing references) Quaternion val = EulerLerp(fromEuler, toEuler, t); return ((Quaternion)(ref val)).eulerAngles; } public static Quaternion EulerLerpUnclamped(Vector3 fromEuler, Vector3 toEuler, float t) { //IL_0001: Unknown result type (might be due to invalid IL or missing references) //IL_0002: Unknown result type (might be due to invalid IL or missing references) //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_0009: Unknown result type (might be due to invalid IL or missing references) //IL_000e: Unknown result type (might be due to invalid IL or missing references) //IL_000f: Unknown result type (might be due to invalid IL or missing references) //IL_0010: Unknown result type (might be due to invalid IL or missing references) //IL_0049: Unknown result type (might be due to invalid IL or missing references) //IL_004a: 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_0051: Unknown result type (might be due to invalid IL or missing references) //IL_0057: Unknown result type (might be due to invalid IL or missing references) Quaternion val = Quaternion.Euler(fromEuler); Quaternion val2 = Quaternion.Euler(toEuler); if (Quaternion.Dot(val, val2) < 0f) { ((Quaternion)(ref val2))..ctor(0f - val2.x, 0f - val2.y, 0f - val2.z, 0f - val2.w); } return Quaternion.SlerpUnclamped(val, val2, t); } public T GetComponentInDirectChildren<T>(Transform transformtarg) where T : Component { //IL_0014: Unknown result type (might be due to invalid IL or missing references) //IL_001a: Expected O, but got Unknown foreach (Transform item in transformtarg) { Transform val = item; T component = ((Component)val).GetComponent<T>(); if ((Object)(object)component != (Object)null) { return component; } } return (T)(object)null; } } } namespace JerryHand { public class HandsFingerCol : MonoBehaviour { public HandsPalm HP; public Collider col; public bool isIndex; public bool isLeft; public bool isCol; public HingeJoint HJ; public JointMotor JMClose; public JointMotor JMOpen; public JointMotor JMIdle; public Vector3 startpos; public float motorSpeed; public float motorForce; public Collider[] cols; public Rigidbody thisRig; public HandsFingerCol nextfinger; public HandsFingerCol prevfinger; public bool isX; private void Start() { } private void Update() { //IL_0023: Unknown result type (might be due to invalid IL or missing references) //IL_0028: Unknown result type (might be due to invalid IL or missing references) //IL_003a: 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) //IL_012d: Unknown result type (might be due to invalid IL or missing references) //IL_0076: Unknown result type (might be due to invalid IL or missing references) //IL_007b: Unknown result type (might be due to invalid IL or missing references) //IL_0083: Unknown result type (might be due to invalid IL or missing references) //IL_0478: Unknown result type (might be due to invalid IL or missing references) //IL_11e0: Unknown result type (might be due to invalid IL or missing references) //IL_01fe: Unknown result type (might be due to invalid IL or missing references) //IL_04ce: Unknown result type (might be due to invalid IL or missing references) //IL_0f66: Unknown result type (might be due to invalid IL or missing references) //IL_1236: Unknown result type (might be due to invalid IL or missing references) //IL_0ec0: Unknown result type (might be due to invalid IL or missing references) //IL_07fe: Unknown result type (might be due to invalid IL or missing references) //IL_035e: Unknown result type (might be due to invalid IL or missing references) //IL_1c28: Unknown result type (might be due to invalid IL or missing references) //IL_1566: Unknown result type (might be due to invalid IL or missing references) //IL_10c6: Unknown result type (might be due to invalid IL or missing references) //IL_0e74: Unknown result type (might be due to invalid IL or missing references) //IL_0b66: Unknown result type (might be due to invalid IL or missing references) //IL_0584: Unknown result type (might be due to invalid IL or missing references) //IL_0238: Unknown result type (might be due to invalid IL or missing references) //IL_1bdc: Unknown result type (might be due to invalid IL or missing references) //IL_18ce: Unknown result type (might be due to invalid IL or missing references) //IL_12ec: Unknown result type (might be due to invalid IL or missing references) //IL_0fa0: Unknown result type (might be due to invalid IL or missing references) //IL_0bfa: Unknown result type (might be due to invalid IL or missing references) //IL_0b1a: Unknown result type (might be due to invalid IL or missing references) //IL_06e4: Unknown result type (might be due to invalid IL or missing references) //IL_03d5: Unknown result type (might be due to invalid IL or missing references) //IL_1962: Unknown result type (might be due to invalid IL or missing references) //IL_1882: Unknown result type (might be due to invalid IL or missing references) //IL_144c: Unknown result type (might be due to invalid IL or missing references) //IL_113d: Unknown result type (might be due to invalid IL or missing references) //IL_0d5a: Unknown result type (might be due to invalid IL or missing references) //IL_08a0: Unknown result type (might be due to invalid IL or missing references) //IL_05be: Unknown result type (might be due to invalid IL or missing references) //IL_043a: Unknown result type (might be due to invalid IL or missing references) //IL_02af: Unknown result type (might be due to invalid IL or missing references) //IL_1ac2: Unknown result type (might be due to invalid IL or missing references) //IL_1608: Unknown result type (might be due to invalid IL or missing references) //IL_1326: Unknown result type (might be due to invalid IL or missing references) //IL_11a2: Unknown result type (might be due to invalid IL or missing references) //IL_1017: Unknown result type (might be due to invalid IL or missing references) //IL_0c34: Unknown result type (might be due to invalid IL or missing references) //IL_0a00: Unknown result type (might be due to invalid IL or missing references) //IL_075b: Unknown result type (might be due to invalid IL or missing references) //IL_0314: Unknown result type (might be due to invalid IL or missing references) //IL_199c: Unknown result type (might be due to invalid IL or missing references) //IL_1768: Unknown result type (might be due to invalid IL or missing references) //IL_14c3: Unknown result type (might be due to invalid IL or missing references) //IL_107c: Unknown result type (might be due to invalid IL or missing references) //IL_0dd1: Unknown result type (might be due to invalid IL or missing references) //IL_08da: Unknown result type (might be due to invalid IL or missing references) //IL_07c0: Unknown result type (might be due to invalid IL or missing references) //IL_0635: Unknown result type (might be due to invalid IL or missing references) //IL_1b39: Unknown result type (might be due to invalid IL or missing references) //IL_1642: Unknown result type (might be due to invalid IL or missing references) //IL_1528: Unknown result type (might be due to invalid IL or missing references) //IL_139d: Unknown result type (might be due to invalid IL or missing references) //IL_0e36: Unknown result type (might be due to invalid IL or missing references) //IL_0cab: Unknown result type (might be due to invalid IL or missing references) //IL_0a77: Unknown result type (might be due to invalid IL or missing references) //IL_069a: Unknown result type (might be due to invalid IL or missing references) //IL_1b9e: Unknown result type (might be due to invalid IL or missing references) //IL_1a13: Unknown result type (might be due to invalid IL or missing references) //IL_17df: Unknown result type (might be due to invalid IL or missing references) //IL_1402: Unknown result type (might be due to invalid IL or missing references) //IL_0d10: Unknown result type (might be due to invalid IL or missing references) //IL_0adc: Unknown result type (might be due to invalid IL or missing references) //IL_0951: Unknown result type (might be due to invalid IL or missing references) //IL_1a78: Unknown result type (might be due to invalid IL or missing references) //IL_1844: Unknown result type (might be due to invalid IL or missing references) //IL_16b9: Unknown result type (might be due to invalid IL or missing references) //IL_09b6: Unknown result type (might be due to invalid IL or missing references) //IL_171e: Unknown result type (might be due to invalid IL or missing references) if (isX) { ((Component)this).gameObject.transform.localEulerAngles = new Vector3(((Component)this).gameObject.transform.localEulerAngles.x, 0f, 0f); } else if (!isX) { ((Component)this).gameObject.transform.localEulerAngles = new Vector3(0f, 0f, ((Component)this).gameObject.transform.localEulerAngles.z); } ((Component)this).gameObject.transform.localPosition = new Vector3(0f, 0f, 0f); ((JointMotor)(ref JMClose)).force = motorForce; ((JointMotor)(ref JMOpen)).force = motorForce; ((JointMotor)(ref JMClose)).targetVelocity = motorSpeed; ((JointMotor)(ref JMOpen)).targetVelocity = 0f - motorSpeed; ((JointMotor)(ref JMIdle)).targetVelocity = 0f; ((JointMotor)(ref JMIdle)).force = motorForce; thisRig.centerOfMass = new Vector3(0f, 0f, 0f); for (int i = 0; i < cols.Length; i++) { Physics.IgnoreCollision(col, cols[i], true); } if (isLeft) { if (!isIndex) { if (GM.CurrentMovementManager.Hands[0].Input.GripPressed || GM.CurrentMovementManager.Hands[0].Input.IsGrabbing) { if (!isCol) { if ((Object)(object)nextfinger != (Object)null) { if (nextfinger.isCol) { isCol = true; col.enabled = false; HJ.motor = JMIdle; } else if (!nextfinger.isCol) { if ((Object)(object)prevfinger == (Object)null) { HJ.motor = JMClose; if ((Object)(object)GM.CurrentMovementManager.Hands[0].m_currentInteractable != (Object)null) { col.enabled = true; } else { col.enabled = false; } } else if ((Object)(object)prevfinger != (Object)null) { if (prevfinger.isCol) { HJ.motor = JMClose; if ((Object)(object)GM.CurrentMovementManager.Hands[0].m_currentInteractable != (Object)null) { col.enabled = true; } else { col.enabled = false; } } else if (!prevfinger.isCol) { HJ.motor = JMIdle; col.enabled = false; } } } } else if ((Object)(object)nextfinger == (Object)null) { if ((Object)(object)prevfinger == (Object)null) { HJ.motor = JMClose; if ((Object)(object)GM.CurrentMovementManager.Hands[0].m_currentInteractable != (Object)null) { col.enabled = true; } else { col.enabled = false; } } else if ((Object)(object)prevfinger != (Object)null) { if (prevfinger.isCol) { HJ.motor = JMClose; if ((Object)(object)GM.CurrentMovementManager.Hands[0].m_currentInteractable != (Object)null) { col.enabled = true; } else { col.enabled = false; } } else if (!prevfinger.isCol) { HJ.motor = JMIdle; col.enabled = false; } } } } else if (isCol) { col.enabled = false; HJ.motor = JMIdle; } } else if (!GM.CurrentMovementManager.Hands[0].Input.GripPressed && !GM.CurrentMovementManager.Hands[0].Input.IsGrabbing) { isCol = false; HJ.motor = JMOpen; col.enabled = false; } } else if (isIndex) { if ((Object)(object)GM.CurrentMovementManager.Hands[0].m_currentInteractable != (Object)null) { if ((Object)(object)((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.GetComponent<FVRFireArm>() == (Object)null) { if (!isCol) { if ((Object)(object)nextfinger != (Object)null) { if (nextfinger.isCol) { isCol = true; col.enabled = false; HJ.motor = JMIdle; } else if (!nextfinger.isCol) { if ((Object)(object)prevfinger == (Object)null) { HJ.motor = JMClose; if ((Object)(object)GM.CurrentMovementManager.Hands[0].m_currentInteractable != (Object)null) { col.enabled = true; } else { col.enabled = false; } } else if ((Object)(object)prevfinger != (Object)null) { if (prevfinger.isCol) { HJ.motor = JMClose; if ((Object)(object)GM.CurrentMovementManager.Hands[0].m_currentInteractable != (Object)null) { col.enabled = true; } else { col.enabled = false; } } else if (!prevfinger.isCol) { HJ.motor = JMIdle; col.enabled = false; } } } } else if ((Object)(object)nextfinger == (Object)null) { if ((Object)(object)prevfinger == (Object)null) { HJ.motor = JMClose; if ((Object)(object)GM.CurrentMovementManager.Hands[0].m_currentInteractable != (Object)null) { col.enabled = true; } else { col.enabled = false; } } else if ((Object)(object)prevfinger != (Object)null) { if (prevfinger.isCol) { HJ.motor = JMClose; if ((Object)(object)GM.CurrentMovementManager.Hands[0].m_currentInteractable != (Object)null) { col.enabled = true; } else { col.enabled = false; } } else if (!prevfinger.isCol) { HJ.motor = JMIdle; col.enabled = false; } } } } else if (isCol) { col.enabled = false; HJ.motor = JMIdle; } } else if ((Object)(object)((Component)GM.CurrentMovementManager.Hands[0].m_currentInteractable).gameObject.GetComponent<FVRFireArm>() != (Object)null) { if (GM.CurrentMovementManager.Hands[0].Input.TriggerFloat >= 0.25f) { if (!isCol) { if ((Object)(object)nextfinger != (Object)null) { if (nextfinger.isCol) { isCol = true; col.enabled = false; HJ.motor = JMIdle; } else if (!nextfinger.isCol) { if ((Object)(object)prevfinger == (Object)null) { HJ.motor = JMClose; if ((Object)(object)GM.CurrentMovementManager.Hands[0].m_currentInteractable != (Object)null) { col.enabled = true; } else { col.enabled = false; } } else if ((Object)(object)prevfinger != (Object)null) { if (prevfinger.isCol) { HJ.motor = JMClose; if ((Object)(object)GM.CurrentMovementManager.Hands[0].m_currentInteractable != (Object)null) { col.enabled = true; } else { col.enabled = false; } } else if (!prevfinger.isCol) { HJ.motor = JMIdle; col.enabled = false; } } } } else if ((Object)(object)nextfinger == (Object)null) { if ((Object)(object)prevfinger == (Object)null) { HJ.motor = JMClose; if ((Object)(object)GM.CurrentMovementManager.Hands[0].m_currentInteractable != (Object)null) { col.enabled = true; } else { col.enabled = false; } } else if ((Object)(object)prevfinger != (Object)null) { if (prevfinger.isCol) { HJ.motor = JMClose; if ((Object)(object)GM.CurrentMovementManager.Hands[0].m_currentInteractable != (Object)null) { col.enabled = true; } else { col.enabled = false; } } else if (!prevfinger.isCol) { HJ.motor = JMIdle; col.enabled = false; } } } } else if (isCol) { col.enabled = false; HJ.motor = JMIdle; } } else if (GM.CurrentMovementManager.Hands[0].Input.TriggerFloat < 0.25f) { col.enabled = false; isCol = false; HJ.motor = JMOpen; } } } if ((Object)(object)GM.CurrentMovementManager.Hands[0].m_currentInteractable == (Object)null) { if (GM.CurrentMovementManager.Hands[0].Input.TriggerFloat >= 0.25f) { if (!isCol) { if ((Object)(object)nextfinger != (Object)null) { if (nextfinger.isCol) { isCol = true; col.enabled = false; HJ.motor = JMIdle; } else if (!nextfinger.isCol) { if ((Object)(object)prevfinger == (Object)null) { HJ.motor = JMClose; if ((Object)(object)GM.CurrentMovementManager.Hands[0].m_currentInteractable != (Object)null) { col.enabled = true; } else { col.enabled = false; } } else if ((Object)(object)prevfinger != (Object)null) { if (prevfinger.isCol) { HJ.motor = JMClose; if ((Object)(object)GM.CurrentMovementManager.Hands[0].m_currentInteractable != (Object)null) { col.enabled = true; } else { col.enabled = false; } } else if (!prevfinger.isCol) { HJ.motor = JMIdle; col.enabled = false; } } } } else if ((Object)(object)nextfinger == (Object)null) { if ((Object)(object)prevfinger == (Object)null) { HJ.motor = JMClose; if ((Object)(object)GM.CurrentMovementManager.Hands[0].m_currentInteractable != (Object)null) { col.enabled = true; } else { col.enabled = false; } } else if ((Object)(object)prevfinger != (Object)null) { if (prevfinger.isCol) { HJ.motor = JMClose; if ((Object)(object)GM.CurrentMovementManager.Hands[0].m_currentInteractable != (Object)null) { col.enabled = true; } else { col.enabled = false; } } else if (!prevfinger.isCol) { HJ.motor = JMIdle; col.enabled = false; } } } } else if (isCol) { col.enabled = false; HJ.motor = JMIdle; } } else if (GM.CurrentMovementManager.Hands[0].Input.TriggerFloat < 0.25f) { col.enabled = false; isCol = false; HJ.motor = JMOpen; } } } } if (isLeft) { return; } if (!isIndex) { if (GM.CurrentMovementManager.Hands[1].Input.GripPressed || GM.CurrentMovementManager.Hands[1].Input.IsGrabbing) { if (!isCol) { if ((Object)(object)nextfinger != (Object)null) { if (nextfinger.isCol) { isCol = true; col.enabled = false; HJ.motor = JMIdle; } else { if (nextfinger.isCol) { return; } if ((Object)(object)prevfinger == (Object)null) { HJ.motor = JMClose; if ((Object)(object)GM.CurrentMovementManager.Hands[1].m_currentInteractable != (Object)null) { col.enabled = true; } else { col.enabled = false; } } else { if (!((Object)(object)prevfinger != (Object)null)) { return; } if (prevfinger.isCol) { HJ.motor = JMClose; if ((Object)(object)GM.CurrentMovementManager.Hands[1].m_currentInteractable != (Object)null) { col.enabled = true; } else { col.enabled = false; } } else if (!prevfinger.isCol) { HJ.motor = JMIdle; col.enabled = false; } } } } else { if (!((Object)(object)nextfinger == (Object)null)) { return; } if ((Object)(object)prevfinger == (Object)null) { HJ.motor = JMClose; if ((Object)(object)GM.CurrentMovementManager.Hands[1].m_currentInteractable != (Object)null) { col.enabled = true; } else { col.enabled = false; } } else { if (!((Object)(object)prevfinger != (Object)null)) { return; } if (prevfinger.isCol) { HJ.motor = JMClose; if ((Object)(object)GM.CurrentMovementManager.Hands[1].m_currentInteractable != (Object)null) { col.enabled = true; } else { col.enabled = false; } } else if (!prevfinger.isCol) { HJ.motor = JMIdle; col.enabled = false; } } } } else if (isCol) { col.enabled = false; HJ.motor = JMIdle; } } else if (!GM.CurrentMovementManager.Hands[1].Input.GripPressed && !GM.CurrentMovementManager.Hands[1].Input.IsGrabbing) { isCol = false; HJ.motor = JMOpen; col.enabled = false; } } else { if (!isIndex) { return; } if ((Object)(object)GM.CurrentMovementManager.Hands[1].m_currentInteractable != (Object)null) { if ((Object)(object)((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.GetComponent<FVRFireArm>() == (Object)null) { if (!isCol) { if ((Object)(object)nextfinger != (Object)null) { if (nextfinger.isCol) { isCol = true; col.enabled = false; HJ.motor = JMIdle; } else if (!nextfinger.isCol) { if ((Object)(object)prevfinger == (Object)null) { HJ.motor = JMClose; if ((Object)(object)GM.CurrentMovementManager.Hands[1].m_currentInteractable != (Object)null) { col.enabled = true; } else { col.enabled = false; } } else if ((Object)(object)prevfinger != (Object)null) { if (prevfinger.isCol) { HJ.motor = JMClose; if ((Object)(object)GM.CurrentMovementManager.Hands[1].m_currentInteractable != (Object)null) { col.enabled = true; } else { col.enabled = false; } } else if (!prevfinger.isCol) { HJ.motor = JMIdle; col.enabled = false; } } } } else if ((Object)(object)nextfinger == (Object)null) { if ((Object)(object)prevfinger == (Object)null) { HJ.motor = JMClose; if ((Object)(object)GM.CurrentMovementManager.Hands[1].m_currentInteractable != (Object)null) { col.enabled = true; } else { col.enabled = false; } } else if ((Object)(object)prevfinger != (Object)null) { if (prevfinger.isCol) { HJ.motor = JMClose; if ((Object)(object)GM.CurrentMovementManager.Hands[1].m_currentInteractable != (Object)null) { col.enabled = true; } else { col.enabled = false; } } else if (!prevfinger.isCol) { HJ.motor = JMIdle; col.enabled = false; } } } } else if (isCol) { col.enabled = false; HJ.motor = JMIdle; } } else if ((Object)(object)((Component)GM.CurrentMovementManager.Hands[1].m_currentInteractable).gameObject.GetComponent<FVRFireArm>() != (Object)null) { if (GM.CurrentMovementManager.Hands[1].Input.TriggerFloat >= 0.25f) { if (!isCol) { if ((Object)(object)nextfinger != (Object)null) { if (nextfinger.isCol) { isCol = true; col.enabled = false; HJ.motor = JMIdle; } else if (!nextfinger.isCol) { if ((Object)(object)prevfinger == (Object)null) { HJ.motor = JMClose; if ((Object)(object)GM.CurrentMovementManager.Hands[1].m_currentInteractable != (Object)null) { col.enabled = true; } else { col.enabled = false; } } else if ((Object)(object)prevfinger != (Object)null) { if (prevfinger.isCol) { HJ.motor = JMClose; if ((Object)(object)GM.CurrentMovementManager.Hands[1].m_currentInteractable != (Object)null) { col.enabled = true; } else { col.enabled = false; } } else if (!prevfinger.isCol) { HJ.motor = JMIdle; col.enabled = false; } } } } else if ((Object)(object)nextfinger == (Object)null) { if ((Object)(object)prevfinger == (Object)null) { HJ.motor = JMClose; if ((Object)(object)GM.CurrentMovementManager.Hands[1].m_currentInteractable != (Object)null) { col.enabled = true; } else { col.enabled = false; } } else if ((Object)(object)prevfinger != (Object)null) { if (prevfinger.isCol) { HJ.motor = JMClose; if ((Object)(object)GM.CurrentMovementManager.Hands[1].m_currentInteractable != (Object)null) { col.enabled = true; } else { col.enabled = false; } } else if (!prevfinger.isCol) { HJ.motor = JMIdle; col.enabled = false; } } } } else if (isCol) { col.enabled = false; HJ.motor = JMIdle; } } else if (GM.CurrentMovementManager.Hands[1].Input.TriggerFloat < 0.25f) { col.enabled = false; isCol = false; HJ.motor = JMOpen; } } } if (!((Object)(object)GM.CurrentMovementManager.Hands[1].m_currentInteractable == (Object)null)) { return; } if (GM.CurrentMovementManager.Hands[1].Input.TriggerFloat >= 0.25f) { if (!isCol) { if ((Object)(object)nextfinger != (Object)null) { if (nextfinger.isCol) { isCol = true; col.enabled = false; HJ.motor = JMIdle; } else { if (nextfinger.isCol) { return; } if ((Object)(object)prevfinger == (Object)null) { HJ.motor = JMClose; if ((Object)(object)GM.CurrentMovementManager.Hands[1].m_currentInteractable != (Object)null) { col.enabled = true; } else { col.enabled = false; } } else { if (!((Object)(object)prevfinger != (Object)null)) { return; } if (prevfinger.isCol) { HJ.motor = JMClose; if ((Obj