TestCodeStructure/Assets/Scripts/Bootstrap.cs

62 lines
1.6 KiB
C#

using System.Collections;
using System.Collections.Generic;
using System.Diagnostics.Tracing;
using UnityEngine;
using UnityEngine.SceneManagement;
public class Bootstrap : SingletonMono<Bootstrap>
{
public UIManager uiManager;
public EventCenter eventCenter;
public ScenesManager scenesManager;
protected override void Awake()
{
base.Awake();
uiManager = new UIManager();
eventCenter = new EventCenter();
scenesManager = new ScenesManager();
DontDestroyOnLoad(gameObject);
}
private void Start()
{
uiManager.ShowPanel<UI_LoadingPanel>(this, E_UI_Layer.System, (panel) =>
{
eventCenter.EventTrigger(Enum_EventType.UpdateProgress, 0.1f);
scenesManager.LoadSceneAsyn(this, "TestScene", () =>
{
Debug.Log("¼ÓÔس¡¾°³É¹¦");
eventCenter.EventTrigger(Enum_EventType.UpdateProgress, 0.9f);
});
});
}
// Update is called once per frame
void Update()
{
if (Input.GetKeyDown("s"))
{
Debug.Log("Input.GetKeyDown(\"u\")");
uiManager.ShowPanel<UI_TestPanel>(this, E_UI_Layer.Bot, (panel) =>
{
panel.OnInit();
Debug.Log("UI_TestPanelÏÔʾ³É¹¦");
});
}
if (Input.GetKeyDown("h"))
{
Debug.Log("Input.GetKeyDown(\"h\")");
uiManager.HidePanel<UI_TestPanel>();
}
if (Input.GetKeyDown("e"))
{
Debug.Log("Input.GetKeyDown(\"e\")");
eventCenter.EventTrigger(Enum_EventType.TestEvent1);
}
}
}