public void handleTouchpad_Play(ButtonStage buttonStage, Vector2 axis)
        {
            TouchpadDirection touchpadDirection = ViveSR_Experience_ControllerDelegate.GetTouchpadDirection(axis, false);

            switch (buttonStage)
            {
            case ButtonStage.PressDown:
                switch (touchpadDirection)
                {
                case TouchpadDirection.Up:
                    this.DelayOneFrame(() =>
                    {
                        if (isOn)
                        {
                            StaticMeshScript.ClearHintLocators();
                            PortalScript.PortalManager.gameObject.SetActive(true);

                            ViveSR_DualCameraRig.Instance.VirtualCamera.cullingMask &= ~(1 << LayerMask.NameToLayer("UI"));
                            PortalScript.PortalManager.TurnOnCamera();

                            portalCamerasEnabledEvent.Invoke();
                            Transform controller_fwd = PlayerHandUILaserPointer.LaserPointer.gameObject.transform;
                            npcGenerator.Play(controller_fwd.position + controller_fwd.forward * 8, controller_fwd.forward, MR_Chairs);
                        }
                    });
                    break;
                }
                break;
            }
        }
Ejemplo n.º 2
0
        void GenerateNPC()
        {
            if (MR_Chairs.Count <= 0)
            {
                return;
            }

            HintText.text = "";

            Vector3 lineStartPos = RaycastStartPoint.transform.position;
            Vector3 spawnFwd     = RaycastStartPoint.transform.forward;
            Vector3 spawnPos     = lineStartPos + spawnFwd * 8;

            npcGenerator.Play(spawnPos, RaycastStartPoint.transform.forward, MR_Chairs);
        }