// Automatically override intro cutscenes private static void SlugcatSelectMenu_StartGame(On.Menu.SlugcatSelectMenu.orig_StartGame orig, SlugcatSelectMenu self, int storyGameCharacter) { orig(self, storyGameCharacter); if (!self.restartChecked && self.manager.rainWorld.progression.IsThereASavedGame(storyGameCharacter)) { return; } // Only continue to the slideshow if this character has an intro slideshow SlugBaseCharacter ply = PlayerManager.GetCustomPlayer(storyGameCharacter); if (ply == null) { return; } if (ply.HasSlideshow("Intro") && !Input.GetKey("s")) { OverrideNextSlideshow(ply, "Intro"); self.manager.upcomingProcess = null; self.manager.RequestMainProcessSwitch(ProcessManager.ProcessID.SlideShow); } else { self.manager.upcomingProcess = null; self.manager.RequestMainProcessSwitch(ProcessManager.ProcessID.Game); } }
// Automatically override outro cutscenes private static void RainWorldGame_ExitToVoidSeaSlideShow(On.RainWorldGame.orig_ExitToVoidSeaSlideShow orig, RainWorldGame self) { orig(self); // Override the outro if this character has the corresponding slideshow SlugBaseCharacter ply = PlayerManager.GetCustomPlayer(self.StoryCharacter); if (ply == null) { return; } if (ply.HasSlideshow("Outro")) { OverrideNextSlideshow(ply, "Outro"); } }