public IEnumerator RollForGreyman() { _hasSpawnedGreyman = false; while (true) { if (RandUtil.OneIn(CHANCE_FOR_GREYMAN) && !_hasSpawnedGreyman) { Spawn(); _hasSpawnedGreyman = true; } yield return(new WaitForSeconds(RandUtil.Float(MIN_WAIT_BETWEEN_SPAWN_CHANCES_SECONDS, MAX_WAIT_BETWEEN_SPAWN_CHANCES_SECONDS))); } // ReSharper disable once IteratorNeverReturns }
public void Transition(Color fadeCol, Dream dream, bool playSound = true, string spawnPointID = null) { if (!_canTransition) { return; } Debug.Log($"Linking to {dream.Name}"); _currentlyTransitioning = true; SettingsSystem.CanControlPlayer = false; _forcedSpawnID = spawnPointID; // disable pausing to prevent throwing off timers etc PauseSystem.CanPause = false; if (playSound) { AudioPlayer.Instance.PlayClip(LinkSound, false, "SFX"); } CurrentSequence.Visited.Add(dream); ToriiFader.Instance.FadeIn(fadeCol, 1F, () => { // see if we should switch texture sets if (RandUtil.OneIn(CHANCE_TO_SWITCH_TEXTURES_WHEN_LINKING)) { TextureSetSystem.SetTextureSet( randomTextureSetFromDayNumber(GameSave.CurrentJournalSave.DayNumber)); } Coroutines.Instance.StartCoroutine(LoadDream(dream)); }); }