using Unity.VisualScripting; using UnityEngine; public class Bootstrap : SingletonMono { public static UIManager UIMgr { get; private set; } public EventCenter eventCenter; public ScenesManager scenesManager; protected override void Awake() { base.Awake(); UIMgr = new UIManager(); eventCenter = new EventCenter(); scenesManager = new ScenesManager(); DontDestroyOnLoad(gameObject); } private void Start() { UIMgr.ShowPanel(this, E_UI_Layer.System, (panel) => { eventCenter.EventTrigger(Enum_EventType.UpdateProgress, 0.1f); scenesManager.LoadSceneAsyn(this, "MainScene", () => { Debug.Log("加载场景成功"); eventCenter.EventTrigger(Enum_EventType.UpdateProgress, 0.9f); }); UIMgr.ShowPanel(this, E_UI_Layer.System, (p) => { AudioManager.tipsSource = Camera.main.AddComponent(); }); }); } // Update is called once per frame void Update() { if (Input.GetKeyDown("s")) { UIMgr.ShowPanel(this, E_UI_Layer.Bot, (panel) => { panel.OnInit(); Debug.Log("UI_TestPanel显示成功"); }); } if (Input.GetKeyDown("h")) { UIMgr.HidePanel(); } if (Input.GetKeyDown("e")) { eventCenter.EventTrigger(Enum_EventType.TestEvent1); } } }