コード例 #1
0
    // Update is called once per frame
    void Update()
    {
        if (camWaypointIndex == 0 && rotateAround)
        {
            mainCam.transform.RotateAround(Vector3.zero, Vector3.up, 10 * Time.deltaTime);
        }

        if (camWaypointIndex == 2 || camWaypointIndex == 4)
        {
            if (overlayPowerBook != null && overlayPowerBook.GetBookState() == PBook.BookState.CLOSED)
            {
                if (camWaypointIndex == 2)
                {
                    stepTexts [camWaypointIndex].SetActive(true);
                    overlayPowerBook.transform.position = overlayBookOriginalPos;
                    overlayPowerBook.transform.rotation = overlayBookOriginalRot;
                    overlayCam.gameObject.SetActive(false);
                }
                if (camWaypointIndex == 4)
                {
                    stepTexts [camWaypointIndex].SetActive(true);
                }
                exampleUIController.gameObject.SetActive(false);
                exampleUIController.pBook = null;
                overlayPowerBook          = null;
            }

            if (Input.GetMouseButtonDown(0) && overlayPowerBook == null)
            {
                RaycastHit hit;
                Ray        ray = mainCam.ScreenPointToRay(Input.mousePosition);
                if (Physics.Raycast(ray, out hit))
                {
                    if (hit.transform.parent.GetComponent <PBook> () != null)
                    {
                        overlayPowerBook = hit.transform.parent.GetComponent <PBook> ();
                        if (camWaypointIndex == 2)
                        {
                            BoxCollider bookCollider = (BoxCollider)hit.collider;
                            overlayBookOriginalPos = hit.transform.position;
                            overlayBookOriginalRot = hit.transform.rotation;
                            overlayPowerBook.transform.position = new Vector3((bookCollider.size.y / 2) - 0.005f, 0, 9.875f);
                            overlayPowerBook.transform.rotation = Quaternion.identity;
                            overlayCam.gameObject.SetActive(true);
                        }
                        overlayPowerBook.OpenBook();
                        exampleUIController.gameObject.SetActive(true);
                        exampleUIController.pBook = overlayPowerBook;
                        stepTexts [camWaypointIndex].SetActive(false);
                    }
                }
            }
        }

        if (Input.GetKeyDown(KeyCode.RightArrow))
        {
            NextWaypoint();
        }
    }
コード例 #2
0
    // Update is called once per frame
    void Update()
    {
        if (!bookIsOpen)
        {
            if (Input.GetMouseButtonDown(0))
            {
                RaycastHit hit;
                Ray        ray = cam.ScreenPointToRay(Input.mousePosition);
                if (Physics.Raycast(ray, out hit, raycastDistance))
                {
                    if (hit.transform.parent != null && hit.transform.parent.GetComponent <PBook> () != null)
                    {
                        activePowerBook = hit.transform.parent.GetComponent <PBook> ();
                        activePowerBookOriginalLayer = activePowerBook.gameObject.layer;
                        SetLayer(activePowerBook.gameObject, LayerMask.NameToLayer(overlayLayer));
                        BoxCollider bookCollider = (BoxCollider)hit.collider;
                        activePowerBookOriginalPos         = hit.transform.position;
                        activePowerBookOriginalRot         = hit.transform.rotation;
                        activePowerBook.transform.position = new Vector3((bookCollider.size.y / 2) - 0.005f, 0, -bookCollider.size.z / 2);
                        activePowerBook.transform.rotation = Quaternion.Euler(perspectiveAngle, 0, 0);
                        overlayCam.transform.position      = new Vector3(0, ((bookCollider.size.z * 1.4f) - (bookCollider.size.y / 2)) - perspectiveAngle * 0.003f, -perspectiveAngle * 0.001f);
                        overlayCam.gameObject.SetActive(true);
                        if (autoOpenBook)
                        {
                            activePowerBook.OpenBook();
                        }
                        bookIsOpen = true;

                        foreach (GameObject go in disabledGameObjectsWhileReading)
                        {
                            go.SetActive(false);
                        }
                    }
                }
            }
        }
        else
        {
            if (Input.GetKey(openCloseKey))
            {
                if (activePowerBook.GetBookState() == PBook.BookState.CLOSED)
                {
                    activePowerBook.OpenBook();
                }
                else if (activePowerBook.GetBookState() == PBook.BookState.OPEN)
                {
                    CloseOverlay();
                }
            }
            if (Input.GetKey(nextPageKey))
            {
                activePowerBook.NextPage();
            }
            if (Input.GetKey(prevPageKey))
            {
                activePowerBook.PrevPage();
            }
        }
    }
コード例 #3
0
 // Use this for initialization
 void Start()
 {
     cam             = Camera.main;
     activePowerBook = null;
     if (useThisCameraInsteadOfMain != null)
     {
         cam = useThisCameraInsteadOfMain;
     }
 }
コード例 #4
0
 public void NextWaypoint()
 {
     StopCoroutine("NextWaypointAnim");
     nextStepText.text = "Next Step";
     camWaypointIndex++;
     if (camWaypointIndex >= camWaypoints.Length)
     {
         camWaypointIndex  = 0;
         nextStepText.text = "Start";
     }
     if (exampleUIController.pBook != null && exampleUIController.pBook.GetBookState() != PBook.BookState.CLOSED)
     {
         exampleUIController.pBook.CloseBook();
     }
     exampleUIController.gameObject.SetActive(false);
     foreach (GameObject go in stepTexts)
     {
         go.SetActive(false);
     }
     stepTexts [camWaypointIndex].SetActive(true);
     if (camWaypointIndex == 0)
     {
         overlayPowerBook = null;
     }
     if (camWaypointIndex == 1)
     {
         exampleUIController.pBook = demoBook1;
         exampleUIController.gameObject.SetActive(true);
     }
     if (camWaypointIndex == 3)
     {
         if (overlayPowerBook != null)
         {
             overlayPowerBook.transform.position = overlayBookOriginalPos;
             overlayPowerBook.transform.rotation = overlayBookOriginalRot;
             overlayCam.gameObject.SetActive(false);
         }
     }
     StartCoroutine("NextWaypointAnim");
 }
コード例 #5
0
 // Token: 0x060000AE RID: 174 RVA: 0x00005299 File Offset: 0x00003499
 public void SetPBook(PBook book)
 {
     this.pBook = book;
     this.ResetMaxDragStartDistance();
 }
コード例 #6
0
    // Update is called once per frame
    void Update()
    {
        RaycastHit hit;

        pointer.color = Color.white;
        if (Physics.Raycast(camTr.position + (camTr.forward * raycastStartDistance), camTr.forward, out hit, raycastDistance, bookLayer.value))
        {
            if ((hit.transform.parent != null && hit.transform.parent.GetComponent <PBook> () != null) || (hit.transform.parent.parent != null && hit.transform.parent.parent.GetComponent <PBook> () != null))
            {
                pointer.color = Color.red;
            }
        }

        if (Input.GetKeyDown(openCloseBookKey) && activePowerBook == null)
        {
            if (Physics.Raycast(camTr.position + (camTr.forward * raycastStartDistance), camTr.forward, out hit, raycastDistance, bookLayer.value))
            {
                if (hit.transform.parent != null && hit.transform.parent.GetComponent <PBook> () != null)
                {
                    activePowerBook = hit.transform.parent.GetComponent <PBook> ();
                    if (activePowerBook.GetBookState() == PBook.BookState.CLOSED)
                    {
                        activePowerBook.OpenBook();
                    }
                    activePowerBook = null;
                }
            }

            if (Physics.Raycast(camTr.position + (camTr.forward * raycastStartDistance), camTr.forward, out hit, raycastDistance, bookLayer.value))
            {
                if (hit.transform.parent.parent != null && hit.transform.parent.parent.GetComponent <PBook> () != null)
                {
                    activePowerBook = hit.transform.parent.parent.GetComponent <PBook> ();
                    if (activePowerBook.GetBookState() == PBook.BookState.OPEN)
                    {
                        activePowerBook.CloseBook();
                    }
                    activePowerBook = null;
                }
            }
        }

        if (Input.GetKeyDown(prevPageKey) && activePowerBook == null)
        {
            if (Physics.Raycast(camTr.position + (camTr.forward * raycastStartDistance), camTr.forward, out hit, raycastDistance, bookLayer.value))
            {
                if (hit.transform.parent.parent != null && hit.transform.parent.parent.GetComponent <PBook> () != null)
                {
                    activePowerBook = hit.transform.parent.parent.GetComponent <PBook> ();
                    if (activePowerBook.GetBookState() == PBook.BookState.OPEN)
                    {
                        activePowerBook.PrevPage();
                    }
                    activePowerBook = null;
                }
            }
        }

        if (Input.GetKeyDown(nextPageKey) && activePowerBook == null)
        {
            if (Physics.Raycast(camTr.position + camTr.forward * raycastStartDistance, camTr.forward, out hit, raycastDistance, bookLayer.value))
            {
                if (hit.transform.parent.parent != null && hit.transform.parent.parent.GetComponent <PBook> () != null)
                {
                    activePowerBook = hit.transform.parent.parent.GetComponent <PBook> ();
                    if (activePowerBook.GetBookState() == PBook.BookState.OPEN)
                    {
                        activePowerBook.NextPage();
                    }
                    activePowerBook = null;
                }
            }
        }
    }
コード例 #7
0
 public void SetPBook(PBook book)
 {
     pBook = book;
     ResetMaxDragStartDistance();
 }