private IEnumerator CinematicFinishedRoutine() { TransitionFader.PlayTransition(_transitionPrefab, _nextSceneName); yield return(new WaitForSeconds(0.5f)); LevelLoader.LoadNextLevel(); }
// called when zone is triggered private IEnumerator CutsceneCompleteRoutine() { TransitionFader.PlayTransition(_transitionPrefab, _transitionName); yield return(new WaitForSeconds(_playDelay)); ComManager.Instance.EndCommunicationCutscene(); // end communication if (_deactivatePlayer && PlayerController.Instance != null) { PlayerController.Instance.FreezePlayer(); PlayerController.Instance.gameObject.GetComponent <SpriteRenderer>().sortingLayerName = "Ground"; PlayerController.Instance.gameObject.GetComponent <SpriteRenderer>().sortingOrder = -10; } if (_activatePlayer && PlayerController.Instance != null) { PlayerController.Instance.UnfreezePlayer(); PlayerController.Instance.DisplayHUD(); PlayerController.Instance.AttackRangeOn(); // TODO: REPLACE PLAYER POSITION PlayerController.Instance.gameObject.GetComponent <SpriteRenderer>().sortingLayerName = "Player"; PlayerController.Instance.gameObject.GetComponent <SpriteRenderer>().sortingOrder = 0; AbilityDescriptionUIController.Instance.Activatable = true; } LevelLoader.LoadNextLevel(); _active = false; }
private IEnumerator TransitionIn() { //fade to black TransitionFader.FadeToBlack(transitionTime * 0.95f); // Wait while the camera moves to transition and the screen fades to black yield return(new WaitForSeconds(transitionTime)); // Set the zodiac puzzle to the correct mode for startup ZodiacPuzzle.Mode mode = GlobalState.ObservatoryPowered ? ZodiacPuzzle.Mode.Stars : ZodiacPuzzle.Mode.Moon; zodiacPuzzle.ChangeMode(mode, true); // jump-cut the camera to the correct starting mode brain.m_DefaultBlend = new CinemachineBlendDefinition(CinemachineBlendDefinition.Style.Cut, 0); ; transitionCam.Priority = 0; starCam.Priority = GlobalState.ObservatoryPowered ? 100 : 0; moonCam.Priority = GlobalState.ObservatoryPowered ? 0 : 100; // Pause for effect yield return(new WaitForSeconds(0.2f)); // Activate all children in preperation for the screen to fade back in for (int i = 0; i < transform.childCount; i++) { transform.GetChild(i).gameObject.SetActive(true); } // Fade back in TransitionFader.WipeFromBlackFromCenter(transitionTime); // Reset the cinemachine blend mode back to it's original state before we started. brain.m_DefaultBlend = oldBlend; }
private IEnumerator SkipCutscene() { CutsceneManager.Instance.Active = false; CutsceneManager.Instance.StopAllCoroutines(); TransitionFader.PlayTransition(_transitionPrefab, CutsceneManager.Instance.TransitionName); yield return(new WaitForSeconds(0.5f)); ComManager.Instance.EndCommunicationCutscene(); // end communication if (CutsceneManager.Instance.DeactivatePlayer && PlayerController.Instance != null) { PlayerController.Instance.FreezePlayer(); PlayerController.Instance.gameObject.GetComponent <SpriteRenderer>().sortingLayerName = "Ground"; PlayerController.Instance.gameObject.GetComponent <SpriteRenderer>().sortingOrder = -10; } if (CutsceneManager.Instance.ActivatePlayer && PlayerController.Instance != null) { PlayerController.Instance.UnfreezePlayer(); PlayerController.Instance.DisplayHUD(); PlayerController.Instance.AttackRangeOn(); PlayerController.Instance.gameObject.GetComponent <SpriteRenderer>().sortingLayerName = "Player"; PlayerController.Instance.gameObject.GetComponent <SpriteRenderer>().sortingOrder = 0; AbilityDescriptionUIController.Instance.Activatable = true; } LevelLoader.LoadNextLevel(); }
private void OnTransitionComplete(RoomManager.Room from, RoomManager.Room to) { Transform dest = RoomManager.GetExitPosition(to, from); TransitionFader.WipeFromBlack(dest.position, RoomManager.animationTime); SpawnPlayerAt(dest.position, dest.rotation * Quaternion.AngleAxis(180.0f, Vector3.up)); }
public static void PlayTransition(TransitionFader transitionPrefab) { if (transitionPrefab != null) { TransitionFader instance = Instantiate(transitionPrefab, Vector3.zero, Quaternion.identity); instance.Play(); } }
private void Awake() { Instance = this; _tempMaterial = Instantiate(gameObject.GetComponent <RawImage>().material); _cam = Camera.main; gameObject.GetComponent <RawImage>().material = _tempMaterial; }
public static void PlayTransition(TransitionFader transitionPrefab) { if (transitionPrefab != null) { TransitionFader instance = Instantiate(transitionPrefab); instance.Play(); } }
IEnumerator StartMissionRoutine(string sceneName) { TransitionFader.PlayTransition(_startTransitionPrefab); LevelLoader.LoadLevel(sceneName); yield return(new WaitForSeconds(_playDelay)); GameMenu.Open(); }
private IEnumerator OnPlayPressedRoutine() { TransitionFader.PlayTransition(startTransitionPrefab); LevelLoader.LoadNextLevel(); yield return(new WaitForSeconds(_playDelay)); GameMenu.Open(); }
private IEnumerator WinRoutine() { TransitionFader.PlayTransition(_endTransitionPrefab); float fadeDelay = (_endTransitionPrefab != null) ? _endTransitionPrefab.Delay + _endTransitionPrefab.FadeOnDuration : 0f; yield return(new WaitForSeconds(fadeDelay)); WinScreen.Open(); }
IEnumerator EndLevelTransitionRoutine() { TransitionFader.CreateAndPlayTransition(_endLevelTransitionPrefab); float fadeDelay = (_endLevelTransitionPrefab != null) ? _endLevelTransitionPrefab.Delay + _endLevelTransitionPrefab.FadeOnDuration : 0f; yield return(new WaitForSeconds(fadeDelay)); WinMenu.Open(); }
// called when zone is triggered private IEnumerator OnZonerTriggered() { ActionBarUIController.Instance.HideAllFlashes(); // hide all flashes when zoning to new zone PlayerController.Instance.FreezePlayer(); TransitionFader.PlayTransition(_transitionPrefab, _zoneName); yield return(new WaitForSeconds(_playDelay)); PlayerInformationController.Instance.UpdateZones(_zoneName); LevelLoader.LoadLevel(_zoneSceneName); PlayerController.Instance.UnfreezePlayer(); }
// Start is called before the first frame update void Awake() { if (instance != null && instance != this) { Destroy(rootObject); } else { instance = this; DontDestroyOnLoad(transform.parent.gameObject); DontDestroyOnLoad(this); } image = GetComponent <Image>(); }
private IEnumerator TransitionOut() { //wipe to black TransitionFader.WipeToBlackFromCenter(transitionTime); // Wait while the camera moves to transition and the screen wipes to black yield return(new WaitForSeconds(transitionTime)); // Turn the puzzle off zodiacPuzzle.ChangeMode(ZodiacPuzzle.Mode.Off, true); // unlock the player PlayerMovement player; if (PlayerManager.IsLoaded) { player = PlayerManager.CurrentPlayer.GetComponent <PlayerMovement>(); } else { player = GameObject.FindWithTag("Player").GetComponent <PlayerMovement>(); } player.ChangeState(PlayerMovement.PlayerState.Waiting); //wipe to black TransitionFader.FadeFromBlack(transitionTime); // Deactivate all children. Remember that THIS object must remain active or the coroutine dies! for (int i = 0; i < transform.childCount; i++) { transform.GetChild(i).gameObject.SetActive(false); } //cooldown for re-entering.. _isCoolingDown = true; yield return(new WaitForSeconds(cooldownPeriod)); _isCoolingDown = false; }
// level complete coroutine private IEnumerator WinRoutine() { TransitionFader.PlayTransition(_transitionPrefab); float fadeDelay = (_transitionPrefab != null) ? _transitionPrefab.Delay + _transitionPrefab.FadeOnDuration : 0f; yield return(new WaitForSeconds(fadeDelay)); #if UNITY_ADS UnityAdsPlayer.Instance.PlayAd(); #endif // TODO: ALTER THIS IF NOT IN TUTORIAL if (LevelLoader.CurrentSceneIndex == 6) { FinishMenu.Open(); } else { WinScreen.Open(); } }
private IEnumerator GameOver() { TransitionFader.PlayTransition(_transitionPrefab, "THE END"); yield return(new WaitForSeconds(1.5f)); // reset item object counters ItemObject.ItemIdCounter = 0; ItemObject.ItemIdDatabase = null; DontDestroyOnLoad[] objectsToDestroy = FindObjectsOfType <DontDestroyOnLoad>(); foreach (DontDestroyOnLoad obj in objectsToDestroy) { if (obj.tag != "Persist") { Destroy(obj.gameObject); } } LevelLoader.LoadMainMenuLevel(); }
public override void Interact() { if (key != null && !GlobalState.observatoryDoorUnlocked) { if (!TryUnlockDoor()) { return; } } if (Time.time - lastTransition < spamClickProtection) { return; } lastTransition = Time.time; // Start doing the cool wipe animation var position = transform.position; TransitionFader.WipeToBlack(position, RoomManager.animationTime); SFXManager.PlaySoundAt(SFXManager.ClipCategory.ChangeArea, position); RoomManager.TransitionToRoom(room); }