using cfg.StoryCfg; using Code.Scripts.Gameplay.Game; using Cysharp.Threading.Tasks; using Framework; using Framework.GameApp; using Gameplay; using Gameplay.SubSystems; public class GameStateStart : IState { public void OnEnter() { _WaitLoading(); } private async void _WaitLoading() { switch (StartParam_Mono.Instance.startType) { case EGameStartType.Normal: await LoadingManager.Instance.ExecuteLoading(new GameStartLoading()); break; case EGameStartType.ForceStory: await LoadingManager.Instance.ExecuteLoading(new FakeStoryStartLoadingExecutor()); var fakeStoryConfig = new DataStoryMain( "fakeStory", StartParam_Mono.Instance.startParam, 1, 30); GameStateManager.Instance.ChangeState(new GameStateStory(fakeStoryConfig)); break; } } public void OnUpdate(float deltaTime) { } public void OnExit() { } }