// Token: 0x06003B51 RID: 15185 RVA: 0x0012A9A8 File Offset: 0x00128DA8 private void OnTriggerExit(Collider otherCollider) { GrabTrigger component = otherCollider.GetComponent <GrabTrigger>(); if (component == null) { return; } Grabbable grabbable = component.Grabbable; int num = 0; if (!this.m_grabCandidates.TryGetValue(grabbable, out num)) { return; } if (num > 1) { this.m_grabCandidates[grabbable] = num - 1; } else { grabbable.OverlapEnd(this); this.m_grabCandidates.Remove(grabbable); } }
// Token: 0x06003B43 RID: 15171 RVA: 0x0012A5B8 File Offset: 0x001289B8 private void Awake() { if (this.m_grabPoints.Length == 0) { Collider component = base.GetComponent <Collider>(); if (component == null) { throw new ArgumentException("Grabbable: Grabbables cannot have zero grab points and no collider -- please add a grab point or collider."); } this.m_grabPoints = new GrabPoint[] { new GrabPoint(component) }; } foreach (GrabPoint grabPoint in this.m_grabPoints) { grabPoint.Initialize(); GameObject gameObject = grabPoint.GrabCollider.gameObject; GrabTrigger grabTrigger = gameObject.GetComponent <GrabTrigger>(); if (grabTrigger == null) { grabTrigger = gameObject.AddComponent <GrabTrigger>(); } grabTrigger.SetGrabbable(this); } }
// Token: 0x06003B50 RID: 15184 RVA: 0x0012A928 File Offset: 0x00128D28 private void OnTriggerEnter(Collider otherCollider) { GrabTrigger component = otherCollider.GetComponent <GrabTrigger>(); if (component == null) { return; } Grabbable grabbable = component.Grabbable; int num = 0; this.m_grabCandidates.TryGetValue(grabbable, out num); this.m_grabCandidates[grabbable] = num + 1; if (num == 0) { grabbable.OverlapBegin(this); if (this.m_wasGrabVolumeEnabled == this.m_grabVolumeEnabled) { this.m_trackedController.PlayHapticEvent(320f, 0.25f, 0.05f); } } }