Exemple #1
0
    void Update()
    {
        if (Input.GetButtonDown("Interact"))
        {
        }
        if (Input.GetButtonDown("Flash"))
        {
            if (isFlashOn)
            {
                isFlashOn = false;
            }
            else
            {
                isFlashOn = true;
            }
        }

        if (Input.GetButtonDown("TakePhoto"))
        {
            if (isCameraActive && cameraShots > 0)
            {
                RaycastHit[] targets = Physics.SphereCastAll(transform.position, CameraRadius, transform.forward, CameraRange, clueLayerMask);
                foreach (RaycastHit hit in targets)
                {
                    if (hit.collider.gameObject.layer == LayerMask.NameToLayer("Clue"))
                    {
                        Clue clue = hit.collider.gameObject.GetComponent <Clue>();
                        if (clue.clueType != ClueType.PhotoTarget)
                        {
                            return;
                        }
                        if (!clue.foundClue)
                        {
                            clue.foundClue   = true;
                            energyBar.value += clue.energyValue;
                        }
                    }
                    else if (hit.collider.gameObject.layer == LayerMask.NameToLayer("Ghost"))
                    {
                        if (energyBar.value == 100)
                        {
                            currentGhost         = hit.collider.gameObject.GetComponent <SpriteRenderer>();
                            currentGhost.enabled = true;
                            spookyStingSource.Play();
                        }
                    }
                }
                cameraShots--;
                StartCoroutine(TakePhoto());
            }
        }

        if (Input.GetButtonDown("ViewPhotos"))
        {
            photoLibrary.TogglePhotoLibrary();
            if (photoLibrary.isLibraryActive)
            {
                isCameraActive = false;
            }
            else
            {
                isCameraActive = true;
            }
        }
    }