using System.Collections.Generic; using TEngine; using UnityEngine; public partial class GameApp { private List _listLogicMgr; private void Init() { _listLogicMgr = new List(); RegisterAllSystem(); InitSystemSetting(); } /// /// 设置一些通用的系统属性。 /// private void InitSystemSetting() { Application.targetFrameRate = 120; Log.Warning("Set UnityEngine.Application.targetFrameRate = 120"); } /// /// 注册所有逻辑系统 /// private void RegisterAllSystem() { //带生命周期的单例系统。 AddLogicSys(BehaviourSingleSystem.Instance); } /// /// 注册逻辑系统。 /// /// ILogicSys /// protected bool AddLogicSys(ILogicSys logicSys) { if (_listLogicMgr.Contains(logicSys)) { Log.Fatal("Repeat add logic system: {0}", logicSys.GetType().Name); return false; } if (!logicSys.OnInit()) { Log.Fatal("{0} Init failed", logicSys.GetType().Name); return false; } _listLogicMgr.Add(logicSys); return true; } }