public void ManageTransitions(On.GameManager.orig_BeginSceneTransition orig, GameManager self, GameManager.SceneLoadInfo info) { // The only thing we need here is to see if the user is making a new game. if (info.SceneName == "GG_Entrance_Cutscene") { Send(MakeEvent("game_level_event", "game_level_event", "new_game")); } orig(self, info); }
private static void OverrideBeginSceneTransition(On.GameManager.orig_BeginSceneTransition orig, GameManager self, GameManager.SceneLoadInfo info) { ApplySaveDataChanges(info.SceneName, info.EntryGateName); orig(self, info); }
private static void RandomizeTransition(On.GameManager.orig_BeginSceneTransition orig, GameManager self, GameManager.SceneLoadInfo info) { if (string.IsNullOrEmpty(info.EntryGateName) || string.IsNullOrEmpty(info.SceneName)) { orig(self, info); return; } string s = info.EntryGateName.Substring(0, 3); SceneItem scene = RandomScene(s); info.SceneName = scene.Name; info.EntryGateName = GetGate(scene, s); Logger.Log("gate: " + info.EntryGateName); orig(self, info); }
public extern void orig_BeginSceneTransition(GameManager.SceneLoadInfo info);
public void BeginSceneTransition(GameManager.SceneLoadInfo info) { info.SceneName = ModHooks.Instance.BeforeSceneLoad(info.SceneName); orig_BeginSceneTransition(info); }
public void Reset(On.GameManager.SceneLoadInfo.orig_NotifyFetchComplete origNotifyFetchComplete, GameManager.SceneLoadInfo sceneLoadInfo) { RestoreCameraBehaviour(); ToggleOff(); origNotifyFetchComplete(sceneLoadInfo); }
private void GetLoadStart(On.GameManager.orig_BeginSceneTransition orig, GameManager self, GameManager.SceneLoadInfo info) { lastSceneLoaded = info.SceneName; lastSceneLoadStart = Time.realtimeSinceStartup; orig(self, info); }
private static void EditTransition(On.GameManager.orig_BeginSceneTransition orig, GameManager self, GameManager.SceneLoadInfo info) { if (info.SceneName == "Room_Final_Boss_Core") { info.SceneName = "Room_Final_Boss_Atrium"; } orig(self, info); }
private static IEnumerator BeginSceneTransition(On.GameManager.orig_BeginSceneTransitionRoutine orig, GameManager self, GameManager.SceneLoadInfo info) { info.EntryDelay = 0f; yield return(orig(self, info)); }
private void GameManager_BeginSceneTransition(On.GameManager.orig_BeginSceneTransition orig, GameManager self, GameManager.SceneLoadInfo info) { Log("PROP " + info.EntryGateName); Log("PROP " + BossLevel); if (info.SceneName == "GG_Workshop" && BossLevel != -1) { info.EntryGateName = "door_dreamReturnGGPropeller"; } orig(self, info); }
private static IEnumerator Dreamers(On.GameManager.orig_BeginSceneTransitionRoutine orig, GameManager self, GameManager.SceneLoadInfo info) { info.EntryDelay = 0f; if (info.SceneName.Length <= 15 || info.SceneName.Substring(0, 15) != GUARDIAN) { yield return(orig(self, info)); yield break; } string @bool = info.SceneName.Substring(15); PlayerData pd = PlayerData.instance; pd.SetBool($"{@bool.ToLower()}Defeated", true); pd.SetBool($"maskBroken{@bool}", true); pd.guardiansDefeated++; pd.crossroadsInfected = true; if (pd.guardiansDefeated == 3) { pd.mrMushroomState = 1; pd.brettaState++; foreach (string pdBool in ALL_DREAMER_BOOLS) { pd.SetBool(pdBool, true); } } info.SceneName = GameManager.instance.sceneName; info.EntryGateName = "door_dreamReturn"; GameCameras.instance.cameraFadeFSM.Fsm.Event("FADE INSTANT"); yield return(orig(self, info)); GameCameras.instance.cameraFadeFSM.Fsm.SetState("FadeIn"); yield return(null); HeroController.instance.MaxHealth(); while (GameManager.instance.gameState != GameState.PLAYING) { yield return(null); } yield return(null); PlayMakerFSM.BroadcastEvent("BOX DOWN"); PlayMakerFSM.BroadcastEvent("BOX DOWN DREAM"); pd.SetBenchRespawn(UObject.FindObjectOfType <RespawnMarker>(), GameManager.instance.sceneName, 2); GameManager.instance.SaveGame(); HeroController.instance.AcceptInput(); }
public static void Reset(On.GameManager.SceneLoadInfo.orig_NotifyFetchComplete origNotifyFetchComplete, GameManager.SceneLoadInfo sceneLoadInfo) { RestoreCameraBehaviour(); ToggleOff(); if (_blurPlaneOff) { ToggleBlurPlane(); } origNotifyFetchComplete(sceneLoadInfo); }
public static void StopFreeze(On.GameManager.SceneLoadInfo.orig_NotifyFetchComplete origNotifyFetchComplete, GameManager.SceneLoadInfo sceneLoadInfo) { CoroutineStarter.StopAllCoroutines(); foreach (KeyValuePair <ParticleSystem, float> pair in LoopingParticles) { if (pair.Key == null) { continue; } pair.Key.Play(); // Play the particles in case they were off due to the class stopping them ParticleSystem.EmissionModule emissionModule = pair.Key.emission; emissionModule.rateOverTimeMultiplier = pair.Value; } LoopingParticles.Clear(); origNotifyFetchComplete(sceneLoadInfo); }
private IEnumerator GameManagerOnBeginSceneTransitionRoutine(On.GameManager.orig_BeginSceneTransitionRoutine orig, GameManager self, GameManager.SceneLoadInfo info) { // If going to Abyss_09, go to TestAbyss instead. info.SceneName = info.SceneName == "Abyss_09" ? "TestAbyss" : info.SceneName; yield return(orig(self, info)); if (info.SceneName != "TestAbyss") { yield break; } GameObject blur = null; // Wait until BlurPlane is found yield return(new WaitWhile(() => !(blur = GameObject.Find("BlurPlane")))); // Destroy it and create a new BlurPlane from our Preloaded object Destroy(blur); blur = Instantiate(SceneTutorial.blur); blur.SetActive(true); blur.transform.position = new Vector3(111.5f, 65.3f, 10.9f); blur.transform.localRotation = Quaternion.Euler(-180f, -90f, 90f); blur.transform.localScale = new Vector3(11.48f, 11.48f, 25.01f); }
public void BeginSceneTransition(GameManager.SceneLoadInfo info) { }
private void GameManager_BeginSceneTransition(On.GameManager.orig_BeginSceneTransition orig, GameManager self, GameManager.SceneLoadInfo info) { if (info.SceneName == "GG_Workshop" && BossLevel != -1) { info.EntryGateName = "door_dreamReturnGGFennel"; } orig(self, info); }