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; } } }