コード例 #1
0
    protected virtual void PointerSet()
    {
        if (!pointerContactTarget)
        {
            return;
        }

        SteamVR_InteractableObject interactableObject = pointerContactTarget.GetComponent <SteamVR_InteractableObject>();

        if (interactableObject && interactableObject.pointerActivatesUseAction)
        {
            if (interactableObject.IsUsing())
            {
                Debug.Log("interactableObject.StopUsing(this.gameObject);============");
                interactableObject.StopUsing(this.gameObject);
            }
            else if (!interactableObject.holdButtonToUse)
            {
                Debug.Log("interactableObject.StartUsing(this.gameObject);");
                interactableObject.StartUsing(this.gameObject);
            }
        }

        if (!playAreaCursorCollided && (interactableObject == null || !interactableObject.pointerActivatesUseAction))
        {
            OnWorldPointerDestinationSet(SetPointerEvent(controllerIndex, pointerContactDistance, pointerContactTarget, destinationPosition));
        }
    }
コード例 #2
0
ファイル: BowAim.cs プロジェクト: smorgan0902/zomb-vr
 private void Start()
 {
     bowAnimation = GetComponent <BowAnimation>();
     handle       = GetComponentInChildren <BowHandle>();
     controllers  = FindObjectOfType <SteamVR_ControllerManager>();
     interact     = GetComponent <SteamVR_InteractableObject>();
     interact.InteractableObjectGrabbed += new InteractableObjectEventHandler(DoObjectGrab);
 }
コード例 #3
0
    protected virtual void PointerOut()
    {
        if (!pointerContactTarget)
        {
            return;
        }

        OnWorldPointerOut(SetPointerEvent(controllerIndex, pointerContactDistance, pointerContactTarget, destinationPosition));

        SteamVR_InteractableObject interactableObject = pointerContactTarget.GetComponent <SteamVR_InteractableObject>();

        if (interactableObject && interactableObject.pointerActivatesUseAction && interactableObject.holdButtonToUse)
        {
            interactableObject.StopUsing(this.gameObject);
        }
    }
コード例 #4
0
    protected override void PointerOut()
    {
        if (!pointerContactTarget)
        {
            return;
        }

        OnWorldPointerOut(SetPointerEvent(controllerIndex, pointerContactDistance, pointerContactTarget, destinationPosition));

        SteamVR_InteractableObject interactableObject = pointerContactTarget.GetComponent <SteamVR_InteractableObject>();

        if (interactableObject && interactableObject.pointerActivatesUseAction && firstFocus)
        {
            firstFocus = false;
            interactableObject.FadeIn();
        }
    }
コード例 #5
0
 private void Start()
 {
     arrow = this.transform.FindChild("Arrow").gameObject;
     obj   = this.GetComponent <SteamVR_InteractableObject>();
 }