IEnumerator Start() { dogCutsceneController = playerController.GetComponent<DogCutsceneController>(); canSkip = true; hud.gameObject.SetActive(false); movieBars.Show(); playerController.enabled = false; dogCutsceneController.enabled = true; chihuahua.MoveToNextPoint(); if (PersistentData.HasWatchedEndingCutscene) { skipButton.Show(); } yield return new WaitForSeconds(startChattingDelay); bossFightChatting.Chat(); yield return new WaitUntil(() => { return bossFightChatting.HasEnded; }); chihuahua.transform.FlipX(); chihuahua.MoveToNextPoint(); yield return new WaitForSeconds(endDelay); canSkip = false; skipButton.Hide(); cutsceneCamera.NextShot(); hud.gameObject.SetActive(true); movieBars.Hide(); playerController.enabled = true; dogCutsceneController.enabled = false; chihuahua.gameObject.SetActive(false); dragon.SetActive(true); flameThrowers.SetActive(false); yield return new WaitForSeconds(showHudDelay); hud.Show(); PersistentData.HasWatchedEndingCutscene = true; }
IEnumerator Start() { dogCutsceneController = playerController.GetComponent<DogCutsceneController>(); canSkip = true; hud.gameObject.SetActive(false); movieBars.Show(); hellfire.gameObject.SetActive(false); playerController.enabled = false; dogCutsceneController.enabled = true; if (PersistentData.HasWatchedDragonCutscene) { skipButton.Show(); } yield return new WaitForSeconds(startChattingDelay); chatting.Chat(); yield return new WaitUntil(() => { return chatting.HasEnded; }); moveFade.Show(); yield return new WaitForSeconds(fadeoutDuration); playerController.gameObject.SetActive(true); cutsceneCamera.Skip(); moveFade.Hide(); canSkip = false; skipButton.Hide(); hud.gameObject.SetActive(true); hellfire.gameObject.SetActive(true); movieBars.Hide(); playerController.enabled = true; dogCutsceneController.enabled = false; yield return new WaitForSeconds(showHudDelay); hud.Show(); cutsceneCamera.enabled = false; PersistentData.HasWatchedDragonCutscene = true; }
IEnumerator Start() { dogCutsceneController = playerController.GetComponent<DogCutsceneController>(); canSkip = true; hud.gameObject.SetActive(false); movieBars.Show(); playerController.enabled = false; dogCutsceneController.enabled = true; if (PersistentData.HasWatchedExplanationCutscene) { skipButton.Show(); } yield return new WaitForSeconds(startChattingDelay); chatting.Chat(); yield return new WaitUntil(() => { return chatting.HasEnded; }); lift.SetTrigger(upAnimHash); yield return new WaitForSeconds(endDelay); canSkip = false; skipButton.Hide(); cutsceneCamera.NextShot(); hud.gameObject.SetActive(true); lift.gameObject.SetActive(false); movieBars.Hide(); playerController.enabled = true; dogCutsceneController.enabled = false; yield return new WaitForSeconds(showHudDelay); hud.Show(); cutsceneCamera.enabled = false; PersistentData.HasWatchedExplanationCutscene = true; }
IEnumerator Start() { dogCutsceneController = playerController.GetComponent<DogCutsceneController>(); canSkip = true; sleepingDoge.SetActive(false); hud.gameObject.SetActive(false); movieBars.Show(); playerController.enabled = false; dogCutsceneController.enabled = true; if (PersistentData.HasWatchedIntroCutscene) { skipButton.Show(); } king.MoveToNextPoint(); yield return new WaitUntil(() => { return king.HasReachedCurrentPoint; }); yield return new WaitForSeconds(startChattingDelay); welcomeChatting.Chat(); yield return new WaitUntil(() => { return welcomeChatting.HasEnded; }); lord.MoveToNextPoint(); yield return new WaitUntil(() => { return lord.DistanceToCurrentPoint < distanceThresholdToContinue; }); introduceChihuahuaChatting.Chat(); yield return new WaitUntil(() => { return introduceChihuahuaChatting.HasEnded; }); chihuahua.MoveToNextPoint(); yield return new WaitUntil(() => { return chihuahua.DistanceToCurrentPoint < distanceThresholdToContinue; }); afterIntroductionChatting.Chat(); yield return new WaitUntil(() => { return afterIntroductionChatting.HasEnded; }); moveFade.Show(); yield return new WaitForSeconds(fadeoutDuration); king.gameObject.SetActive(false); lord.gameObject.SetActive(false); chihuahua.gameObject.SetActive(false); cutsceneCamera.NextShot(); sleepingDoge.SetActive(true); playerController.gameObject.SetActive(false); moveFade.Hide(); yield return new WaitForSeconds(sleepAnimationDuration); moveFade.Show(); yield return new WaitForSeconds(fadeoutDuration); sleepingDoge.SetActive(false); playerController.gameObject.SetActive(true); cutsceneCamera.NextShot(); kitten.SetActive(false); moveFade.Hide(); yield return new WaitForSeconds(delayAfterFadeout); dogeWakesUpChatting.Chat(); yield return new WaitUntil(() => { return dogeWakesUpChatting.HasEnded; }); dogePivot.FlipX(); endingChatting.Chat(); yield return new WaitUntil(() => { return endingChatting.HasEnded; }); canSkip = false; skipButton.Hide(); dogePivot.FlipX(); cutsceneCamera.NextShot(); hud.gameObject.SetActive(true); movieBars.Hide(); playerController.enabled = true; dogCutsceneController.enabled = false; yield return new WaitForSeconds(showHudDelay); hud.Show(); yield return new WaitForSeconds(startTutorialDelay); cutsceneCamera.enabled = false; tutorial.SetTrigger(stepAnimHash); PersistentData.HasWatchedIntroCutscene = true; }
IEnumerator Start() { dogCutsceneController = playerController.GetComponent<DogCutsceneController>(); canSkip = true; hud.gameObject.SetActive(false); movieBars.Show(); playerController.enabled = false; dogCutsceneController.enabled = true; if (PersistentData.HasWatchedPlotTwistCutscene) { skipButton.Show(); } yield return new WaitForSeconds(startChattingDelay); introChatting.Chat(); yield return new WaitUntil(() => { return introChatting.HasEnded; }); knight.MoveToNextPoint(); yield return new WaitForSeconds(guardIntroChattingDelay); guardIntroChatting.Chat(); yield return new WaitUntil(() => { return guardIntroChatting.HasEnded; }); lift.SetTrigger(upAnimHash); yield return new WaitForSeconds(outroChattingDelay); StartCoroutine(MoveHellfire()); fireballThrowers.SetActive(true); outroChatting.Chat(); yield return new WaitUntil(() => { return outroChatting.HasEnded; }); canSkip = false; skipButton.Hide(); cutsceneCamera.NextShot(); hud.gameObject.SetActive(true); lift.gameObject.SetActive(false); fireballThrowers.SetActive(false); knight.GetComponent<Knight>().enabled = true; knight.enabled = false; movieBars.Hide(); playerController.enabled = true; dogCutsceneController.enabled = false; SocialManager.UnlockAchievement(SocialManager.Achievements.kidnappedKitten); yield return new WaitForSeconds(showHudDelay); hud.Show(); cutsceneCamera.enabled = false; PersistentData.HasWatchedPlotTwistCutscene = true; }