public override void Start() { PlanetDetailsScreen highestLevelScreen = Service.Get <ScreenController>().GetHighestLevelScreen <PlanetDetailsScreen>(); if (highestLevelScreen != null) { highestLevelScreen.Close(null); } if (Service.Get <GameStateMachine>().CurrentState is GalaxyState) { Service.Get <GalaxyViewController>().GoToHome(); } BattleInitializationData data = BattleInitializationData.CreateFromDefensiveCampaignMissionVO(this.parent.MissionVO); BattleStartState.GoToBattleStartState(data, null); EventManager eventManager = Service.Get <EventManager>(); eventManager.RegisterObserver(this, EventId.BattleEndFullyProcessed, EventPriority.Default); eventManager.RegisterObserver(this, EventId.GameStateChanged, EventPriority.Default); if (this.parent.OnIntroHook()) { base.PauseBattle(); return; } this.StartMission(); }
public override void Start() { PlanetDetailsScreen highestLevelScreen = Service.Get <ScreenController>().GetHighestLevelScreen <PlanetDetailsScreen>(); if (highestLevelScreen != null) { highestLevelScreen.Close(null); } if (Service.Get <GameStateMachine>().CurrentState is GalaxyState) { Service.Get <GalaxyViewController>().GoToHome(); } if (this.parent.OnIntroHook()) { Service.Get <UserInputInhibitor>().DenyAll(); return; } this.StartCounting(); }