using ET; using GFGGame.Launcher; using System; using System.Threading; namespace GFGGame { public class ETManager : SingletonMonoBase { public void Init() { AppDomain.CurrentDomain.UnhandledException += (sender, e) => { Log.Error(e.ExceptionObject.ToString()); }; SynchronizationContext.SetSynchronizationContext(ThreadSynchronizationContext.Instance); ETTask.ExceptionHandler += Log.Error; Log.ILog = new UnityLogger(); Options.Instance = new Options(); TimeInfo.Instance.TimeZone = 8; try { Game.EventSystem.Add(HotUpdateCodeLoader.Instance.GetTypes()); Game.Scene.AddComponent(); Game.Scene.AddComponent(); Game.Scene.AddComponent(); Game.Scene.AddComponent(); Game.Scene.AddComponent(); Game.Scene.AddComponent(); Game.Scene.AddComponent(); Game.Scene.AddComponent(); GameGlobal.zoneScene = SceneFactory.CreateZoneScene(1, "Game", Game.Scene); } catch (Exception e) { Log.Error(e); } } private void Update() { Game.Update(); } private void LateUpdate() { Game.LateUpdate(); } private void OnApplicationQuit() { //退出进程被杀掉了,暂不执行 //Game.Close(); } } }