private void OnTriggerEnter(Collider other)
        {
            if (other.gameObject.GetComponent <FPSController>() != null)
            {
                if (!fightHasHappened)
                {
                    if (entranceDoor1.GetComponent <DoorController>().isOpen)
                    {
                        entranceDoor1.GetComponent <DoorController>().Use();
                    }
                    entranceDoor1.GetComponent <DoorController>().DisableDoor();


                    guestBedroomInfoUI.SetActive(false);
                    enemy.SetActive(true);
                    dad.SetActive(false);
                    StartCoroutine(PlayFinalFight());


                    if (triggersNewSpawnPoint)
                    {
                        fPSController.RecordNewSpawnPoint();
                    }
                }
            }
        }
 private void OnTriggerEnter(Collider other)
 {
     if (other.gameObject.GetComponent <FPSController>() != null)
     {
         if (!goodbyeHasHappened)
         {
             //Debug.Log("Final Goodbyes");
             StartCoroutine(PlayFinalDadWords());
             if (triggersNewSpawnPoint)
             {
                 fPSController.RecordNewSpawnPoint();
             }
         }
     }
 }
Exemple #3
0
        public void Use()
        {
            // In case we want something you can use more than once
            if (isEnabled && (useCount < uses) && (Time.time > timeAvailable))
            {
                timeAvailable = Time.time + timeDisabledAfterUse;
                Debug.Log("using item " + gameObject);
                useCount++;
                if (playSeriesOfAudioClips != null)
                {
                    playSeriesOfAudioClips.PlaySeries();
                    lengthOfAudio     = playSeriesOfAudioClips.GetClipsLength();
                    timeDoneWithAudio = Time.time + lengthOfAudio;
                    //Debug.Log("Playing series");
                }
                else if (useSound != null)
                {
                    audioSource.PlayOneShot(useSound);
                }
                else
                {
                    Debug.Log("No audio");
                }

                // This is the last use
                if (useCount == uses)
                {
                    GetComponent <FlashingIndicator>().DisableFlasher();
                }

                if (triggersNightmareMode)
                {
                    StartCoroutine(TriggerNightmareWithDelay(nightmareTriggerDelay));
                }

                if (triggersDreamMode)
                {
                    backgroundMusicController.PlayMusic(BackgroundMusicController.MusicTypes.normal);
                    nightmareController.SwitchToDream();
                    blockage.SetActive(false);
                    if (spawnsEnemy)
                    {
                        enemy.SetActive(false);
                    }
                }


                // Changing to respawn even at nightmare trigger, because last good location could be harder to get back to the new good location
                // This could end up resulting in repeated deaths though...
                if (triggersNewSpawnPoint)
                {
                    fPSController.RecordNewSpawnPoint();
                }


                originalPosition = transform.position;
                originalScale    = transform.localScale;
                originalRotation = transform.rotation;
                ViewClue();

                StartCoroutine(DelayClueEnable(timeDoneWithAudio));
            }
        }