49 lines
1.2 KiB
C#
49 lines
1.2 KiB
C#
using Cysharp.Threading.Tasks;
|
|
using Framework;
|
|
using Gameplay;
|
|
using Gameplay.Guide;
|
|
using Gameplay.SubSystems;
|
|
using System;
|
|
using System.Runtime.CompilerServices;
|
|
#if SDK_TAPTAP
|
|
using PhxhSDK;
|
|
#endif
|
|
|
|
public class GameStateMainScene : IState
|
|
{
|
|
private readonly Func<UniTask> callbackFunc;
|
|
|
|
public bool IsLogin { get; }
|
|
|
|
public GameStateMainScene(bool isLogin = false, Func<UniTask> callback = null)
|
|
{
|
|
callbackFunc = callback;
|
|
IsLogin = isLogin;
|
|
}
|
|
|
|
public void OnEnter()
|
|
{
|
|
E_LoadingType loadingType = IsLogin ? E_LoadingType.Login : E_LoadingType.CommonLoading;
|
|
LoadingManager.Instance.ExecuteLoading(new MainSceneLoadingExecutor(loadingType, OnLoadingComplete)).Forget();
|
|
|
|
#if SDK_TAPTAP
|
|
var antiAddictionService = SDKManager.Instance.GetSdkHelper(SDKManager.SdkName.TapTap) as IAntiAddictionService;
|
|
antiAddictionService?.AntiAddictionEnterGame();
|
|
#endif
|
|
}
|
|
|
|
public void OnUpdate(float deltaTime)
|
|
{
|
|
}
|
|
|
|
public void OnExit()
|
|
{
|
|
}
|
|
|
|
private async UniTask OnLoadingComplete()
|
|
{
|
|
await UI_MainPanelController.Open();
|
|
if (null != callbackFunc)
|
|
await callbackFunc.Invoke();
|
|
}
|
|
} |