public void AttemptToShowActiveEpisodeInfoScreen() { if (!this.IsEpisodeActive()) { return; } EpisodeInfoScreen screen = new EpisodeInfoScreen(); Service.ScreenController.AddScreen(screen); this.MarkEpisodePanelOpened(); }
public override void Execute() { base.Execute(); EpisodeInfoScreen highestLevelScreen = Service.ScreenController.GetHighestLevelScreen <EpisodeInfoScreen>(); if (highestLevelScreen != null && highestLevelScreen.IsLoaded()) { this.parent.ChildComplete(this); } else { Service.EventManager.RegisterObserver(this, EventId.ScreenLoaded, EventPriority.Default); if (highestLevelScreen == null) { bool flag = Service.EpisodeController.PlayIntroStoryAction(); if (flag) { return; } Service.EpisodeController.AttemptToShowActiveEpisodeInfoScreen(); } } }