using Assets.MyGame.Scripts.Net; using Assets.MyGame.Scripts.Net.API; // using CameraShake; using Newtonsoft.Json; using System; using UnityEngine; using UnityEngine.InputSystem; using UnityEngine.Rendering; using UnityEngine.SceneManagement; using UnityEngine.UI; using UnityEngine.Video; public class GameManager : MonoSingleton { public GameConfig gameConfig; public UserData user; public GameData gameData = new GameData(); public Scene scene; // public CameraShaker cameraShake; // // 指定此方法在加载时立即调用,在显示启动动画前之前执行 // [RuntimeInitializeOnLoadMethod(RuntimeInitializeLoadType.BeforeSplashScreen)] // private static void BeforeSplashScreen() // { // //平台适配 //#if UNITY_WEBGL // // 如果在 WebGL 平台上运行,立即停止启动动画 // SplashScreen.Stop(SplashScreen.StopBehavior.StopImmediate); //#else // // 如果不是在 WebGL 平台上,启动一个异步任务来停止启动动画 // System.Threading.Tasks.Task.Run(() => // { // SplashScreen.Stop(SplashScreen.StopBehavior.StopImmediate); // }); //#endif // } public void UpdataUserData(UserData user) { this.user = user; var a = UIManager.Instance.Get(UIPanel.HomeMainPanel); if (a!=null) { a.UpdateUserData(); } } protected override async void Awake() { Application.runInBackground = true; base.Awake(); // cameraShake = Camera.main.GetComponent(); gameData.currUser = "123"; //string json = Resources.Load("Config/GameConfig").text; //gameConfig = JsonConvert.DeserializeObject>(json).data; APIManager.Response(APIType.GameConfig_Get, res => { gameConfig = res; var v = CreateFishManager.Instance.CreateDic; }); } public void StartGame(Action action) { switch (gameData.currGameType) { case GameType.JQQD: break; case GameType.defaultPanel: UIManager.Instance.ShowAsync(UIPanel.MainGamePanelDefault); break; case GameType.FLZY: if (action != null) WebSocketManager.Instance.Connect(SocketType.game, action); //UIManager.Instance.ShowAsync(UIPanel.MainGamePanelFLZY); break; case GameType.TGXX: UIManager.Instance.ShowAsync(UIPanel.MainGamePanelTGXX); break; case GameType.ZGXQ: //UIManager.Instance.ShowAsync(UIPanel.MainGamePanelZGXQ); //这里设置触发棋盘的初始化 break; case GameType.XJMH: if (action != null) { WebSocketManager.Instance.Connect(SocketType.game, action); } else WebSocketManager.Instance.Connect(SocketType.game); break; case GameType.HHWK: //UIManager.Instance.ShowAsync(UIPanel.MainGamePanelDefault); if (action != null) WebSocketManager.Instance.Connect(SocketType.game, action); break; default: break; } } // Start is called before the first frame update public Button btn_Skip; public VideoClip startVideoClip; void Start() { var v = UIManager.Instance.ShowLoadPanel(startVideoClip); UIManager.Instance.ShowAsync(UIPanel.LoginPanel,null,null,28); btn_Skip.onClick.AddListener(() => { UIManager.Instance.StopShowPanel(UIPanel.LoginPanel, null, null, 28); UIManager.Instance.ShowAsync(UIPanel.LoginPanel, null, null, 0); v.LoadBar(100); }); } // Update is called once per frame void Update() { #if UNITY_EDITOR if (Keyboard.current.qKey.wasPressedThisFrame) { UIManager.Instance.ShowBoardGongGao("太有实力了dadadadwawafdsdrgdfghdsufhkjghjksdfdgdffghgjhgykhjkhjghjfg"); } #endif } }