void IGlobalTriggerClickHandler.OnGlobalTriggerClick(VREventData eventData) { if (eventData.currentRaycast != null && eventData.currentRaycast.GetComponent <TeleportLocation>() != null) { Teleport(eventData.worldPosition); } }
/// <summary> /// This function is called when the trigger is released. Called once per press context. /// </summary> /// <param name="eventData">The corresponding event data for the module.</param> public void OnGlobalTriggerPressUp(VREventData eventData) { //If the grabbing module releases it's trigger, unbind it from this object. if (grabbingModule == eventData.module) { Release(eventData.module); } }
void IPointerTriggerPressUpHandler.OnPointerTriggerPressUp(VREventData eventData) { //If the grabbing module releases it's trigger, unbind it from this object. if (grabbingModule == eventData.module) { Release(eventData.module); } }
public void OnGlobalTriggerPressDown(VREventData eventData) { if (cdTimer <= 0f) { cdTimer = cooldown; FireWall(eventData); } }
void FireWall(VREventData eventData) { //TODO: add haptic + visual feedback ViveControllerModule vive = (ViveControllerModule)eventData.module; vive.TriggerHapticPulse(.3f, 3999); Instantiate(wallPrefab, eventData.module.transform.position, eventData.module.transform.rotation); }
void IPointerTriggerPressDownHandler.OnPointerTriggerPressDown(VREventData eventData) { //Only "grab" the object if it's within the bounds of the object. //If the object has already been grabbed, ignore this event call. if (grabbingModule == null && pointerGrab) { //Check for a GlobalGrabber if this object should expect one. if (!expectGrabber || (expectGrabber && eventData.module.GetComponent <Grabber>() != null && eventData.module.GetComponent <Grabber>().isActiveAndEnabled)) { Grab(eventData.module); } } }
/// <summary> /// This function is called when the trigger is initially pressed. Called once per press context. /// </summary> /// <param name="eventData">The corresponding event data for the module.</param> public void OnGlobalTriggerPressDown(VREventData eventData) { //Only "grab" the object if it's within the bounds of the object. //If the object has already been grabbed, ignore this event call. if (collider.bounds.Contains(eventData.module.transform.position) && grabbingModule == null && colliderGrab) { //Check for a GlobalGrabber if this object should expect one. if (!expectGrabber || (expectGrabber && eventData.module.GetComponent <Grabber>() != null && eventData.module.GetComponent <Grabber>().isActiveAndEnabled)) { Grab(eventData.module); } } }
void IPointerTriggerPressHandler.OnPointerTriggerPress(VREventData eventData) { //Only accept this call if it's from the module currently grabbing this object. if (grabbingModule == eventData.module) { //Check for a GlobalGrabber if this object should expect one. if (!expectGrabber) { Hold(eventData.module); } else if (expectGrabber) { Grabber grabber = eventData.module.GetComponent <Grabber>(); if (grabber != null && grabber.isActiveAndEnabled) { Hold(eventData.module); } else { Release(eventData.module); } } } }
public void OnGlobalTriggerPressDown(VREventData eventData) { TryHold(eventData.module, ButtonType.TriggerPress); }
public void OnGlobalTouchpadPressDown(VREventData eventData) { TryHold(eventData.module, ButtonType.TouchpadPress); }
public void OnGlobalGripPressDown(VREventData eventData) { TryHold(eventData.module, ButtonType.Grip); }
public void OnGlobalApplicationMenuPressDown(VREventData eventData) { TryHold(eventData.module, ButtonType.AppMenu); }