blob: 18211f06b61a2de3849e9c27e1814b4132be083d (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
|
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
namespace WK
{
/// <summary>
/// 主循环,所有子系统的更新理论上都走这里的循环
/// </summary>
public class ApplicationMain : Singleton<ApplicationMain>
{
public delegate void ApplicationCallback();
#region 事件
public event ApplicationCallback onAwakeHandler;
public event ApplicationCallback onStartHandler;
public event ApplicationCallback onUpdateHandler;
public event ApplicationCallback onFixedUpdateHandler;
public event ApplicationCallback onApplicationQuitHandler;
public event ApplicationCallback onDestroyHandler;
public event ApplicationCallback onApplicationPauseHandler;
#endregion
public void OnAwake()
{
onAwakeHandler?.Invoke();
GamePhaseManager.Instance.OnAwake();
}
public void OnStart()
{
onStartHandler?.Invoke();
GamePhaseManager.Instance.OnStart();
}
public void OnUpdate()
{
onUpdateHandler?.Invoke();
GamePhaseManager.Instance.OnUpdate();
}
public void OnFixedUpdate()
{
onFixedUpdateHandler?.Invoke();
GamePhaseManager.Instance.OnFixedUpdate();
}
public void OnDestroy()
{
onDestroyHandler?.Invoke();
GamePhaseManager.Instance.OnDestroy();
}
public void OnApplicationQuit()
{
onApplicationQuitHandler?.Invoke();
GamePhaseManager.Instance.OnApplicationQuit();
}
public void OnApplicationPause()
{
onApplicationPauseHandler?.Invoke();
GamePhaseManager.Instance.OnApplicationPause();
}
}
}
|