mirror of
https://github.com/Alex-Rachel/TEngine.git
synced 2025-08-14 16:51:28 +00:00
GameModule
GameModule
This commit is contained in:
@@ -7,8 +7,8 @@ using UnityEngine;
|
||||
|
||||
namespace TEngine.Editor.Inspector
|
||||
{
|
||||
[CustomEditor(typeof(MemoryPoolComponent))]
|
||||
internal sealed class MemoryPoolComponentInspector : GameFrameworkInspector
|
||||
[CustomEditor(typeof(MemoryPoolModule))]
|
||||
internal sealed class MemoryPoolModuleInspector : GameFrameworkInspector
|
||||
{
|
||||
private readonly Dictionary<string, List<MemoryPoolInfo>> m_MemoryPoolInfos = new Dictionary<string, List<MemoryPoolInfo>>(StringComparer.Ordinal);
|
||||
private readonly HashSet<string> m_OpenedItems = new HashSet<string>();
|
||||
@@ -23,7 +23,7 @@ namespace TEngine.Editor.Inspector
|
||||
|
||||
serializedObject.Update();
|
||||
|
||||
MemoryPoolComponent t = (MemoryPoolComponent)target;
|
||||
MemoryPoolModule t = (MemoryPoolModule)target;
|
||||
|
||||
if (EditorApplication.isPlaying && IsPrefabInHierarchy(t.gameObject))
|
||||
{
|
@@ -7,8 +7,8 @@ using UnityEngine;
|
||||
|
||||
namespace TEngine.Editor.Inspector
|
||||
{
|
||||
[CustomEditor(typeof(ObjectPoolComponent))]
|
||||
internal sealed class ObjectPoolComponentInspector : GameFrameworkInspector
|
||||
[CustomEditor(typeof(ObjectPoolModule))]
|
||||
internal sealed class ObjectPoolModuleInspector : GameFrameworkInspector
|
||||
{
|
||||
private readonly HashSet<string> m_OpenedItems = new HashSet<string>();
|
||||
|
||||
@@ -22,7 +22,7 @@ namespace TEngine.Editor.Inspector
|
||||
return;
|
||||
}
|
||||
|
||||
ObjectPoolComponent t = (ObjectPoolComponent)target;
|
||||
ObjectPoolModule t = (ObjectPoolModule)target;
|
||||
|
||||
if (IsPrefabInHierarchy(t.gameObject))
|
||||
{
|
@@ -3,8 +3,8 @@ using UnityEngine;
|
||||
|
||||
namespace TEngine.Editor.Inspector
|
||||
{
|
||||
[CustomEditor(typeof(SettingComponent))]
|
||||
internal sealed class SettingComponentInspector : GameFrameworkInspector
|
||||
[CustomEditor(typeof(SettingModule))]
|
||||
internal sealed class SettingModuleInspector : GameFrameworkInspector
|
||||
{
|
||||
private HelperInfo<SettingHelperBase> m_SettingHelperInfo = new HelperInfo<SettingHelperBase>("Setting");
|
||||
|
||||
@@ -12,7 +12,7 @@ namespace TEngine.Editor.Inspector
|
||||
{
|
||||
base.OnInspectorGUI();
|
||||
|
||||
SettingComponent t = (SettingComponent)target;
|
||||
SettingModule t = (SettingModule)target;
|
||||
|
||||
EditorGUI.BeginDisabledGroup(EditorApplication.isPlayingOrWillChangePlaymode);
|
||||
{
|
@@ -5,25 +5,25 @@ using UnityEngine.Rendering;
|
||||
|
||||
namespace TEngine
|
||||
{
|
||||
public sealed partial class DebuggerModule : GameFrameworkComponent
|
||||
public sealed partial class DebuggerModule : GameFrameworkModuleBase
|
||||
{
|
||||
private sealed class EnvironmentInformationWindow : ScrollableDebuggerWindowBase
|
||||
{
|
||||
private RootModule _mRootModule = null;
|
||||
|
||||
private ResourceComponent m_ResourceComponent = null;
|
||||
private ResourceModuleBase _mResourceModuleBase = null;
|
||||
|
||||
public override void Initialize(params object[] args)
|
||||
{
|
||||
_mRootModule = GameEntry.GetComponent<RootModule>();
|
||||
_mRootModule = GameEntry.GetModule<RootModule>();
|
||||
if (_mRootModule == null)
|
||||
{
|
||||
Log.Fatal("Base component is invalid.");
|
||||
return;
|
||||
}
|
||||
|
||||
m_ResourceComponent = GameEntry.GetComponent<ResourceComponent>();
|
||||
if (m_ResourceComponent == null)
|
||||
_mResourceModuleBase = GameEntry.GetModule<ResourceModuleBase>();
|
||||
if (_mResourceModuleBase == null)
|
||||
{
|
||||
Log.Fatal("Resource component is invalid.");
|
||||
return;
|
||||
@@ -44,7 +44,7 @@ namespace TEngine
|
||||
#endif
|
||||
DrawItem("Game Framework Version", Version.GameFrameworkVersion);
|
||||
DrawItem("Game Version", Utility.Text.Format("{0} ({1})", Version.GameVersion, Version.InternalGameVersion));
|
||||
DrawItem("Resource Version", (string.IsNullOrEmpty(m_ResourceComponent.ApplicableGameVersion) ? "Unknown" : Utility.Text.Format("{0} ({1})", m_ResourceComponent.ApplicableGameVersion, m_ResourceComponent.InternalResourceVersion)));
|
||||
DrawItem("Resource Version", (string.IsNullOrEmpty(_mResourceModuleBase.ApplicableGameVersion) ? "Unknown" : Utility.Text.Format("{0} ({1})", _mResourceModuleBase.ApplicableGameVersion, _mResourceModuleBase.InternalResourceVersion)));
|
||||
DrawItem("Application Version", Application.version);
|
||||
DrawItem("Unity Version", Application.unityVersion);
|
||||
DrawItem("Platform", Application.platform.ToString());
|
||||
|
@@ -2,7 +2,7 @@
|
||||
|
||||
namespace TEngine
|
||||
{
|
||||
public sealed partial class DebuggerModule : GameFrameworkComponent
|
||||
public sealed partial class DebuggerModule : GameFrameworkModuleBase
|
||||
{
|
||||
private sealed class GraphicsInformationWindow : ScrollableDebuggerWindowBase
|
||||
{
|
||||
|
@@ -2,7 +2,7 @@
|
||||
|
||||
namespace TEngine
|
||||
{
|
||||
public sealed partial class DebuggerModule : GameFrameworkComponent
|
||||
public sealed partial class DebuggerModule : GameFrameworkModuleBase
|
||||
{
|
||||
private sealed class InputAccelerationInformationWindow : ScrollableDebuggerWindowBase
|
||||
{
|
||||
|
@@ -2,7 +2,7 @@
|
||||
|
||||
namespace TEngine
|
||||
{
|
||||
public sealed partial class DebuggerModule : GameFrameworkComponent
|
||||
public sealed partial class DebuggerModule : GameFrameworkModuleBase
|
||||
{
|
||||
private sealed class InputCompassInformationWindow : ScrollableDebuggerWindowBase
|
||||
{
|
||||
|
@@ -2,7 +2,7 @@
|
||||
|
||||
namespace TEngine
|
||||
{
|
||||
public sealed partial class DebuggerModule : GameFrameworkComponent
|
||||
public sealed partial class DebuggerModule : GameFrameworkModuleBase
|
||||
{
|
||||
private sealed class InputGyroscopeInformationWindow : ScrollableDebuggerWindowBase
|
||||
{
|
||||
|
@@ -2,7 +2,7 @@
|
||||
|
||||
namespace TEngine
|
||||
{
|
||||
public sealed partial class DebuggerModule : GameFrameworkComponent
|
||||
public sealed partial class DebuggerModule : GameFrameworkModuleBase
|
||||
{
|
||||
private sealed class InputLocationInformationWindow : ScrollableDebuggerWindowBase
|
||||
{
|
||||
|
@@ -2,7 +2,7 @@
|
||||
|
||||
namespace TEngine
|
||||
{
|
||||
public sealed partial class DebuggerModule : GameFrameworkComponent
|
||||
public sealed partial class DebuggerModule : GameFrameworkModuleBase
|
||||
{
|
||||
private sealed class InputSummaryInformationWindow : ScrollableDebuggerWindowBase
|
||||
{
|
||||
|
@@ -2,7 +2,7 @@
|
||||
|
||||
namespace TEngine
|
||||
{
|
||||
public sealed partial class DebuggerModule : GameFrameworkComponent
|
||||
public sealed partial class DebuggerModule : GameFrameworkModuleBase
|
||||
{
|
||||
private sealed class InputTouchInformationWindow : ScrollableDebuggerWindowBase
|
||||
{
|
||||
|
@@ -3,7 +3,7 @@ using UnityEngine;
|
||||
|
||||
namespace TEngine
|
||||
{
|
||||
public sealed partial class DebuggerModule : GameFrameworkComponent
|
||||
public sealed partial class DebuggerModule : GameFrameworkModuleBase
|
||||
{
|
||||
/// <summary>
|
||||
/// 日志记录结点。
|
||||
|
@@ -4,7 +4,7 @@ using UnityEngine;
|
||||
|
||||
namespace TEngine
|
||||
{
|
||||
public sealed partial class DebuggerModule : GameFrameworkComponent
|
||||
public sealed partial class DebuggerModule : GameFrameworkModuleBase
|
||||
{
|
||||
private sealed class MemoryPoolPoolInformationWindow : ScrollableDebuggerWindowBase
|
||||
{
|
||||
|
@@ -2,7 +2,7 @@
|
||||
//
|
||||
// namespace TEngine
|
||||
// {
|
||||
// public sealed partial class DebuggerModule : GameFrameworkComponent
|
||||
// public sealed partial class DebuggerModule : GameFrameworkModuleBase
|
||||
// {
|
||||
// private sealed class NetworkInformationWindow : ScrollableDebuggerWindowBase
|
||||
// {
|
||||
|
@@ -2,16 +2,16 @@
|
||||
|
||||
namespace TEngine
|
||||
{
|
||||
public sealed partial class DebuggerModule : GameFrameworkComponent
|
||||
public sealed partial class DebuggerModule : GameFrameworkModuleBase
|
||||
{
|
||||
private sealed class ObjectPoolInformationWindow : ScrollableDebuggerWindowBase
|
||||
{
|
||||
private ObjectPoolComponent m_ObjectPoolComponent = null;
|
||||
private ObjectPoolModule _mObjectPoolModule = null;
|
||||
|
||||
public override void Initialize(params object[] args)
|
||||
{
|
||||
m_ObjectPoolComponent = GameEntry.GetComponent<ObjectPoolComponent>();
|
||||
if (m_ObjectPoolComponent == null)
|
||||
_mObjectPoolModule = GameEntry.GetModule<ObjectPoolModule>();
|
||||
if (_mObjectPoolModule == null)
|
||||
{
|
||||
Log.Fatal("Object pool component is invalid.");
|
||||
return;
|
||||
@@ -23,10 +23,10 @@ namespace TEngine
|
||||
GUILayout.Label("<b>Object Pool Information</b>");
|
||||
GUILayout.BeginVertical("box");
|
||||
{
|
||||
DrawItem("Object Pool Count", m_ObjectPoolComponent.Count.ToString());
|
||||
DrawItem("Object Pool Count", _mObjectPoolModule.Count.ToString());
|
||||
}
|
||||
GUILayout.EndVertical();
|
||||
ObjectPoolBase[] objectPools = m_ObjectPoolComponent.GetAllObjectPools(true);
|
||||
ObjectPoolBase[] objectPools = _mObjectPoolModule.GetAllObjectPools(true);
|
||||
for (int i = 0; i < objectPools.Length; i++)
|
||||
{
|
||||
DrawObjectPool(objectPools[i]);
|
||||
|
@@ -2,7 +2,7 @@
|
||||
|
||||
namespace TEngine
|
||||
{
|
||||
public sealed partial class DebuggerModule : GameFrameworkComponent
|
||||
public sealed partial class DebuggerModule : GameFrameworkModuleBase
|
||||
{
|
||||
private sealed class OperationsWindow : ScrollableDebuggerWindowBase
|
||||
{
|
||||
@@ -11,21 +11,21 @@ namespace TEngine
|
||||
GUILayout.Label("<b>Operations</b>");
|
||||
GUILayout.BeginVertical("box");
|
||||
{
|
||||
ObjectPoolComponent objectPoolComponent = GameEntry.GetComponent<ObjectPoolComponent>();
|
||||
if (objectPoolComponent != null)
|
||||
ObjectPoolModule objectPoolModule = GameEntry.GetModule<ObjectPoolModule>();
|
||||
if (objectPoolModule != null)
|
||||
{
|
||||
if (GUILayout.Button("Object Pool Release", GUILayout.Height(30f)))
|
||||
{
|
||||
objectPoolComponent.Release();
|
||||
objectPoolModule.Release();
|
||||
}
|
||||
|
||||
if (GUILayout.Button("Object Pool Release All Unused", GUILayout.Height(30f)))
|
||||
{
|
||||
objectPoolComponent.ReleaseAllUnused();
|
||||
objectPoolModule.ReleaseAllUnused();
|
||||
}
|
||||
}
|
||||
|
||||
ResourceComponent resourceCompoent = GameEntry.GetComponent<ResourceComponent>();
|
||||
ResourceModuleBase resourceCompoent = GameEntry.GetModule<ResourceModuleBase>();
|
||||
if (resourceCompoent != null)
|
||||
{
|
||||
if (GUILayout.Button("Unload Unused Assets", GUILayout.Height(30f)))
|
||||
|
@@ -3,7 +3,7 @@ using UnityEngine;
|
||||
|
||||
namespace TEngine
|
||||
{
|
||||
public sealed partial class DebuggerModule : GameFrameworkComponent
|
||||
public sealed partial class DebuggerModule : GameFrameworkModuleBase
|
||||
{
|
||||
private sealed class PathInformationWindow : ScrollableDebuggerWindowBase
|
||||
{
|
||||
|
@@ -5,7 +5,7 @@ using UnityEngine.Profiling;
|
||||
|
||||
namespace TEngine
|
||||
{
|
||||
public sealed partial class DebuggerModule : GameFrameworkComponent
|
||||
public sealed partial class DebuggerModule : GameFrameworkModuleBase
|
||||
{
|
||||
private sealed class ProfilerInformationWindow : ScrollableDebuggerWindowBase
|
||||
{
|
||||
|
@@ -2,7 +2,7 @@
|
||||
|
||||
namespace TEngine
|
||||
{
|
||||
public sealed partial class DebuggerModule : GameFrameworkComponent
|
||||
public sealed partial class DebuggerModule : GameFrameworkModuleBase
|
||||
{
|
||||
private sealed class QualityInformationWindow : ScrollableDebuggerWindowBase
|
||||
{
|
||||
|
@@ -1,6 +1,6 @@
|
||||
namespace TEngine
|
||||
{
|
||||
public sealed partial class DebuggerModule : GameFrameworkComponent
|
||||
public sealed partial class DebuggerModule : GameFrameworkModuleBase
|
||||
{
|
||||
private sealed partial class RuntimeMemoryInformationWindow<T> : ScrollableDebuggerWindowBase where T : UnityEngine.Object
|
||||
{
|
||||
|
@@ -7,7 +7,7 @@ using UnityEngine.Profiling;
|
||||
|
||||
namespace TEngine
|
||||
{
|
||||
public sealed partial class DebuggerModule : GameFrameworkComponent
|
||||
public sealed partial class DebuggerModule : GameFrameworkModuleBase
|
||||
{
|
||||
private sealed partial class RuntimeMemoryInformationWindow<T> : ScrollableDebuggerWindowBase where T : UnityEngine.Object
|
||||
{
|
||||
|
@@ -1,6 +1,6 @@
|
||||
namespace TEngine
|
||||
{
|
||||
public sealed partial class DebuggerModule : GameFrameworkComponent
|
||||
public sealed partial class DebuggerModule : GameFrameworkModuleBase
|
||||
{
|
||||
private sealed partial class RuntimeMemorySummaryWindow : ScrollableDebuggerWindowBase
|
||||
{
|
||||
|
@@ -7,7 +7,7 @@ using UnityEngine.Profiling;
|
||||
|
||||
namespace TEngine
|
||||
{
|
||||
public sealed partial class DebuggerModule : GameFrameworkComponent
|
||||
public sealed partial class DebuggerModule : GameFrameworkModuleBase
|
||||
{
|
||||
private sealed partial class RuntimeMemorySummaryWindow : ScrollableDebuggerWindowBase
|
||||
{
|
||||
|
@@ -3,7 +3,7 @@ using UnityEngine.SceneManagement;
|
||||
|
||||
namespace TEngine
|
||||
{
|
||||
public sealed partial class DebuggerModule : GameFrameworkComponent
|
||||
public sealed partial class DebuggerModule : GameFrameworkModuleBase
|
||||
{
|
||||
private sealed class SceneInformationWindow : ScrollableDebuggerWindowBase
|
||||
{
|
||||
|
@@ -2,7 +2,7 @@
|
||||
|
||||
namespace TEngine
|
||||
{
|
||||
public sealed partial class DebuggerModule : GameFrameworkComponent
|
||||
public sealed partial class DebuggerModule : GameFrameworkModuleBase
|
||||
{
|
||||
private sealed class ScreenInformationWindow : ScrollableDebuggerWindowBase
|
||||
{
|
||||
|
@@ -2,7 +2,7 @@
|
||||
|
||||
namespace TEngine
|
||||
{
|
||||
public sealed partial class DebuggerModule : GameFrameworkComponent
|
||||
public sealed partial class DebuggerModule : GameFrameworkModuleBase
|
||||
{
|
||||
private abstract class ScrollableDebuggerWindowBase : IDebuggerWindow
|
||||
{
|
||||
|
@@ -2,12 +2,12 @@
|
||||
|
||||
namespace TEngine
|
||||
{
|
||||
public sealed partial class DebuggerModule : GameFrameworkComponent
|
||||
public sealed partial class DebuggerModule : GameFrameworkModuleBase
|
||||
{
|
||||
private sealed class SettingsWindow : ScrollableDebuggerWindowBase
|
||||
{
|
||||
private DebuggerModule _mDebuggerModule = null;
|
||||
private SettingComponent m_SettingComponent = null;
|
||||
private SettingModule _mSettingModule = null;
|
||||
private float m_LastIconX = 0f;
|
||||
private float m_LastIconY = 0f;
|
||||
private float m_LastWindowX = 0f;
|
||||
@@ -18,27 +18,27 @@ namespace TEngine
|
||||
|
||||
public override void Initialize(params object[] args)
|
||||
{
|
||||
_mDebuggerModule = GameEntry.GetComponent<DebuggerModule>();
|
||||
_mDebuggerModule = GameEntry.GetModule<DebuggerModule>();
|
||||
if (_mDebuggerModule == null)
|
||||
{
|
||||
Log.Fatal("Debugger component is invalid.");
|
||||
return;
|
||||
}
|
||||
|
||||
m_SettingComponent = GameEntry.GetComponent<SettingComponent>();
|
||||
if (m_SettingComponent == null)
|
||||
_mSettingModule = GameEntry.GetModule<SettingModule>();
|
||||
if (_mSettingModule == null)
|
||||
{
|
||||
Log.Fatal("Setting component is invalid.");
|
||||
return;
|
||||
}
|
||||
|
||||
m_LastIconX = m_SettingComponent.GetFloat("Debugger.Icon.X", DefaultIconRect.x);
|
||||
m_LastIconY = m_SettingComponent.GetFloat("Debugger.Icon.Y", DefaultIconRect.y);
|
||||
m_LastWindowX = m_SettingComponent.GetFloat("Debugger.Window.X", DefaultWindowRect.x);
|
||||
m_LastWindowY = m_SettingComponent.GetFloat("Debugger.Window.Y", DefaultWindowRect.y);
|
||||
m_LastWindowWidth = m_SettingComponent.GetFloat("Debugger.Window.Width", DefaultWindowRect.width);
|
||||
m_LastWindowHeight = m_SettingComponent.GetFloat("Debugger.Window.Height", DefaultWindowRect.height);
|
||||
_mDebuggerModule.WindowScale = m_LastWindowScale = m_SettingComponent.GetFloat("Debugger.Window.Scale", DefaultWindowScale);
|
||||
m_LastIconX = _mSettingModule.GetFloat("Debugger.Icon.X", DefaultIconRect.x);
|
||||
m_LastIconY = _mSettingModule.GetFloat("Debugger.Icon.Y", DefaultIconRect.y);
|
||||
m_LastWindowX = _mSettingModule.GetFloat("Debugger.Window.X", DefaultWindowRect.x);
|
||||
m_LastWindowY = _mSettingModule.GetFloat("Debugger.Window.Y", DefaultWindowRect.y);
|
||||
m_LastWindowWidth = _mSettingModule.GetFloat("Debugger.Window.Width", DefaultWindowRect.width);
|
||||
m_LastWindowHeight = _mSettingModule.GetFloat("Debugger.Window.Height", DefaultWindowRect.height);
|
||||
_mDebuggerModule.WindowScale = m_LastWindowScale = _mSettingModule.GetFloat("Debugger.Window.Scale", DefaultWindowScale);
|
||||
_mDebuggerModule.IconRect = new Rect(m_LastIconX, m_LastIconY, DefaultIconRect.width, DefaultIconRect.height);
|
||||
_mDebuggerModule.WindowRect = new Rect(m_LastWindowX, m_LastWindowY, m_LastWindowWidth, m_LastWindowHeight);
|
||||
}
|
||||
@@ -48,43 +48,43 @@ namespace TEngine
|
||||
if (m_LastIconX != _mDebuggerModule.IconRect.x)
|
||||
{
|
||||
m_LastIconX = _mDebuggerModule.IconRect.x;
|
||||
m_SettingComponent.SetFloat("Debugger.Icon.X", _mDebuggerModule.IconRect.x);
|
||||
_mSettingModule.SetFloat("Debugger.Icon.X", _mDebuggerModule.IconRect.x);
|
||||
}
|
||||
|
||||
if (m_LastIconY != _mDebuggerModule.IconRect.y)
|
||||
{
|
||||
m_LastIconY = _mDebuggerModule.IconRect.y;
|
||||
m_SettingComponent.SetFloat("Debugger.Icon.Y", _mDebuggerModule.IconRect.y);
|
||||
_mSettingModule.SetFloat("Debugger.Icon.Y", _mDebuggerModule.IconRect.y);
|
||||
}
|
||||
|
||||
if (m_LastWindowX != _mDebuggerModule.WindowRect.x)
|
||||
{
|
||||
m_LastWindowX = _mDebuggerModule.WindowRect.x;
|
||||
m_SettingComponent.SetFloat("Debugger.Window.X", _mDebuggerModule.WindowRect.x);
|
||||
_mSettingModule.SetFloat("Debugger.Window.X", _mDebuggerModule.WindowRect.x);
|
||||
}
|
||||
|
||||
if (m_LastWindowY != _mDebuggerModule.WindowRect.y)
|
||||
{
|
||||
m_LastWindowY = _mDebuggerModule.WindowRect.y;
|
||||
m_SettingComponent.SetFloat("Debugger.Window.Y", _mDebuggerModule.WindowRect.y);
|
||||
_mSettingModule.SetFloat("Debugger.Window.Y", _mDebuggerModule.WindowRect.y);
|
||||
}
|
||||
|
||||
if (m_LastWindowWidth != _mDebuggerModule.WindowRect.width)
|
||||
{
|
||||
m_LastWindowWidth = _mDebuggerModule.WindowRect.width;
|
||||
m_SettingComponent.SetFloat("Debugger.Window.Width", _mDebuggerModule.WindowRect.width);
|
||||
_mSettingModule.SetFloat("Debugger.Window.Width", _mDebuggerModule.WindowRect.width);
|
||||
}
|
||||
|
||||
if (m_LastWindowHeight != _mDebuggerModule.WindowRect.height)
|
||||
{
|
||||
m_LastWindowHeight = _mDebuggerModule.WindowRect.height;
|
||||
m_SettingComponent.SetFloat("Debugger.Window.Height", _mDebuggerModule.WindowRect.height);
|
||||
_mSettingModule.SetFloat("Debugger.Window.Height", _mDebuggerModule.WindowRect.height);
|
||||
}
|
||||
|
||||
if (m_LastWindowScale != _mDebuggerModule.WindowScale)
|
||||
{
|
||||
m_LastWindowScale = _mDebuggerModule.WindowScale;
|
||||
m_SettingComponent.SetFloat("Debugger.Window.Scale", _mDebuggerModule.WindowScale);
|
||||
_mSettingModule.SetFloat("Debugger.Window.Scale", _mDebuggerModule.WindowScale);
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -2,7 +2,7 @@
|
||||
|
||||
namespace TEngine
|
||||
{
|
||||
public sealed partial class DebuggerModule : GameFrameworkComponent
|
||||
public sealed partial class DebuggerModule : GameFrameworkModuleBase
|
||||
{
|
||||
private sealed class SystemInformationWindow : ScrollableDebuggerWindowBase
|
||||
{
|
||||
|
@@ -2,7 +2,7 @@
|
||||
|
||||
namespace TEngine
|
||||
{
|
||||
public sealed partial class DebuggerModule : GameFrameworkComponent
|
||||
public sealed partial class DebuggerModule : GameFrameworkModuleBase
|
||||
{
|
||||
private sealed class TimeInformationWindow : ScrollableDebuggerWindowBase
|
||||
{
|
||||
|
@@ -4,14 +4,14 @@ using UnityEngine;
|
||||
|
||||
namespace TEngine
|
||||
{
|
||||
public sealed partial class DebuggerModule : GameFrameworkComponent
|
||||
public sealed partial class DebuggerModule : GameFrameworkModuleBase
|
||||
{
|
||||
[Serializable]
|
||||
private sealed class ConsoleWindow : IDebuggerWindow
|
||||
{
|
||||
private readonly Queue<LogNode> m_LogNodes = new Queue<LogNode>();
|
||||
|
||||
private SettingComponent m_SettingComponent = null;
|
||||
private SettingModule _mSettingModule = null;
|
||||
private Vector2 m_LogScrollPosition = Vector2.zero;
|
||||
private Vector2 m_StackScrollPosition = Vector2.zero;
|
||||
private int m_InfoCount = 0;
|
||||
@@ -209,19 +209,19 @@ namespace TEngine
|
||||
|
||||
public void Initialize(params object[] args)
|
||||
{
|
||||
m_SettingComponent = GameEntry.GetComponent<SettingComponent>();
|
||||
if (m_SettingComponent == null)
|
||||
_mSettingModule = GameEntry.GetModule<SettingModule>();
|
||||
if (_mSettingModule == null)
|
||||
{
|
||||
Log.Fatal("Setting component is invalid.");
|
||||
return;
|
||||
}
|
||||
|
||||
Application.logMessageReceived += OnLogMessageReceived;
|
||||
m_LockScroll = m_LastLockScroll = m_SettingComponent.GetBool("Debugger.Console.LockScroll", true);
|
||||
m_InfoFilter = m_LastInfoFilter = m_SettingComponent.GetBool("Debugger.Console.InfoFilter", true);
|
||||
m_WarningFilter = m_LastWarningFilter = m_SettingComponent.GetBool("Debugger.Console.WarningFilter", true);
|
||||
m_ErrorFilter = m_LastErrorFilter = m_SettingComponent.GetBool("Debugger.Console.ErrorFilter", true);
|
||||
m_FatalFilter = m_LastFatalFilter = m_SettingComponent.GetBool("Debugger.Console.FatalFilter", true);
|
||||
m_LockScroll = m_LastLockScroll = _mSettingModule.GetBool("Debugger.Console.LockScroll", true);
|
||||
m_InfoFilter = m_LastInfoFilter = _mSettingModule.GetBool("Debugger.Console.InfoFilter", true);
|
||||
m_WarningFilter = m_LastWarningFilter = _mSettingModule.GetBool("Debugger.Console.WarningFilter", true);
|
||||
m_ErrorFilter = m_LastErrorFilter = _mSettingModule.GetBool("Debugger.Console.ErrorFilter", true);
|
||||
m_FatalFilter = m_LastFatalFilter = _mSettingModule.GetBool("Debugger.Console.FatalFilter", true);
|
||||
}
|
||||
|
||||
public void Shutdown()
|
||||
@@ -243,31 +243,31 @@ namespace TEngine
|
||||
if (m_LastLockScroll != m_LockScroll)
|
||||
{
|
||||
m_LastLockScroll = m_LockScroll;
|
||||
m_SettingComponent.SetBool("Debugger.Console.LockScroll", m_LockScroll);
|
||||
_mSettingModule.SetBool("Debugger.Console.LockScroll", m_LockScroll);
|
||||
}
|
||||
|
||||
if (m_LastInfoFilter != m_InfoFilter)
|
||||
{
|
||||
m_LastInfoFilter = m_InfoFilter;
|
||||
m_SettingComponent.SetBool("Debugger.Console.InfoFilter", m_InfoFilter);
|
||||
_mSettingModule.SetBool("Debugger.Console.InfoFilter", m_InfoFilter);
|
||||
}
|
||||
|
||||
if (m_LastWarningFilter != m_WarningFilter)
|
||||
{
|
||||
m_LastWarningFilter = m_WarningFilter;
|
||||
m_SettingComponent.SetBool("Debugger.Console.WarningFilter", m_WarningFilter);
|
||||
_mSettingModule.SetBool("Debugger.Console.WarningFilter", m_WarningFilter);
|
||||
}
|
||||
|
||||
if (m_LastErrorFilter != m_ErrorFilter)
|
||||
{
|
||||
m_LastErrorFilter = m_ErrorFilter;
|
||||
m_SettingComponent.SetBool("Debugger.Console.ErrorFilter", m_ErrorFilter);
|
||||
_mSettingModule.SetBool("Debugger.Console.ErrorFilter", m_ErrorFilter);
|
||||
}
|
||||
|
||||
if (m_LastFatalFilter != m_FatalFilter)
|
||||
{
|
||||
m_LastFatalFilter = m_FatalFilter;
|
||||
m_SettingComponent.SetBool("Debugger.Console.FatalFilter", m_FatalFilter);
|
||||
_mSettingModule.SetBool("Debugger.Console.FatalFilter", m_FatalFilter);
|
||||
}
|
||||
}
|
||||
|
||||
|
@@ -1,6 +1,6 @@
|
||||
namespace TEngine
|
||||
{
|
||||
public sealed partial class DebuggerModule : GameFrameworkComponent
|
||||
public sealed partial class DebuggerModule : GameFrameworkModuleBase
|
||||
{
|
||||
private sealed class FpsCounter
|
||||
{
|
||||
|
@@ -8,7 +8,7 @@ namespace TEngine
|
||||
/// 调试器组件。
|
||||
/// </summary>
|
||||
[DisallowMultipleComponent]
|
||||
public sealed partial class DebuggerModule : GameFrameworkComponent
|
||||
public sealed partial class DebuggerModule : GameFrameworkModuleBase
|
||||
{
|
||||
/// <summary>
|
||||
/// 默认调试器漂浮框大小。
|
||||
@@ -154,7 +154,7 @@ namespace TEngine
|
||||
}
|
||||
}
|
||||
|
||||
private SettingComponent m_SettingComponent = null;
|
||||
private SettingModule _mSettingModule = null;
|
||||
|
||||
/// <summary>
|
||||
/// 游戏框架组件初始化。
|
||||
@@ -172,33 +172,33 @@ namespace TEngine
|
||||
|
||||
m_FpsCounter = new FpsCounter(0.5f);
|
||||
|
||||
m_SettingComponent = GameEntry.GetComponent<SettingComponent>();
|
||||
if (m_SettingComponent == null)
|
||||
_mSettingModule = GameEntry.GetModule<SettingModule>();
|
||||
if (_mSettingModule == null)
|
||||
{
|
||||
Log.Fatal("Setting component is invalid.");
|
||||
return;
|
||||
}
|
||||
|
||||
var lastIconX = m_SettingComponent.GetFloat("Debugger.Icon.X", DefaultIconRect.x);
|
||||
var lastIconY = m_SettingComponent.GetFloat("Debugger.Icon.Y", DefaultIconRect.y);
|
||||
var lastWindowX = m_SettingComponent.GetFloat("Debugger.Window.X", DefaultWindowRect.x);
|
||||
var lastWindowY = m_SettingComponent.GetFloat("Debugger.Window.Y", DefaultWindowRect.y);
|
||||
var lastWindowWidth = m_SettingComponent.GetFloat("Debugger.Window.Width", DefaultWindowRect.width);
|
||||
var lastWindowHeight = m_SettingComponent.GetFloat("Debugger.Window.Height", DefaultWindowRect.height);
|
||||
m_WindowScale = m_SettingComponent.GetFloat("Debugger.Window.Scale", DefaultWindowScale);
|
||||
var lastIconX = _mSettingModule.GetFloat("Debugger.Icon.X", DefaultIconRect.x);
|
||||
var lastIconY = _mSettingModule.GetFloat("Debugger.Icon.Y", DefaultIconRect.y);
|
||||
var lastWindowX = _mSettingModule.GetFloat("Debugger.Window.X", DefaultWindowRect.x);
|
||||
var lastWindowY = _mSettingModule.GetFloat("Debugger.Window.Y", DefaultWindowRect.y);
|
||||
var lastWindowWidth = _mSettingModule.GetFloat("Debugger.Window.Width", DefaultWindowRect.width);
|
||||
var lastWindowHeight = _mSettingModule.GetFloat("Debugger.Window.Height", DefaultWindowRect.height);
|
||||
m_WindowScale = _mSettingModule.GetFloat("Debugger.Window.Scale", DefaultWindowScale);
|
||||
m_WindowRect = new Rect(lastIconX, lastIconY, DefaultIconRect.width, DefaultIconRect.height);
|
||||
m_WindowRect = new Rect(lastWindowX, lastWindowY, lastWindowWidth, lastWindowHeight);
|
||||
}
|
||||
|
||||
private void OnDestroy()
|
||||
{
|
||||
if (m_SettingComponent == null)
|
||||
if (_mSettingModule == null)
|
||||
{
|
||||
Log.Fatal("Setting component is invalid.");
|
||||
return;
|
||||
}
|
||||
|
||||
m_SettingComponent.Save();
|
||||
_mSettingModule.Save();
|
||||
}
|
||||
|
||||
private void Start()
|
||||
|
@@ -8,7 +8,7 @@ namespace TEngine
|
||||
/// 有限状态机模块。
|
||||
/// </summary>
|
||||
[DisallowMultipleComponent]
|
||||
public sealed class FsmModule : GameFrameworkComponent
|
||||
public sealed class FsmModule : GameFrameworkModuleBase
|
||||
{
|
||||
private IFsmManager m_FsmManager = null;
|
||||
|
||||
|
@@ -10,7 +10,7 @@ namespace TEngine
|
||||
/// </summary>
|
||||
public static class GameEntry
|
||||
{
|
||||
private static readonly GameFrameworkLinkedList<GameFrameworkComponent> s_GameFrameworkComponents = new GameFrameworkLinkedList<GameFrameworkComponent>();
|
||||
private static readonly GameFrameworkLinkedList<GameFrameworkModuleBase> s_GameFrameworkModules = new GameFrameworkLinkedList<GameFrameworkModuleBase>();
|
||||
|
||||
/// <summary>
|
||||
/// 游戏框架所在的场景编号。
|
||||
@@ -18,23 +18,23 @@ namespace TEngine
|
||||
internal const int GameFrameworkSceneId = 0;
|
||||
|
||||
/// <summary>
|
||||
/// 获取游戏框架组件。
|
||||
/// 获取游戏框架模块。
|
||||
/// </summary>
|
||||
/// <typeparam name="T">要获取的游戏框架组件类型。</typeparam>
|
||||
/// <returns>要获取的游戏框架组件。</returns>
|
||||
public static T GetComponent<T>() where T : GameFrameworkComponent
|
||||
public static T GetModule<T>() where T : GameFrameworkModuleBase
|
||||
{
|
||||
return (T)GetComponent(typeof(T));
|
||||
return (T)GetModule(typeof(T));
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取游戏框架组件。
|
||||
/// 获取游戏框架模块。
|
||||
/// </summary>
|
||||
/// <param name="type">要获取的游戏框架组件类型。</param>
|
||||
/// <returns>要获取的游戏框架组件。</returns>
|
||||
public static GameFrameworkComponent GetComponent(Type type)
|
||||
public static GameFrameworkModuleBase GetModule(Type type)
|
||||
{
|
||||
LinkedListNode<GameFrameworkComponent> current = s_GameFrameworkComponents.First;
|
||||
LinkedListNode<GameFrameworkModuleBase> current = s_GameFrameworkModules.First;
|
||||
while (current != null)
|
||||
{
|
||||
if (current.Value.GetType() == type)
|
||||
@@ -49,13 +49,13 @@ namespace TEngine
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 获取游戏框架组件。
|
||||
/// 获取游戏框架模块。
|
||||
/// </summary>
|
||||
/// <param name="typeName">要获取的游戏框架组件类型名称。</param>
|
||||
/// <returns>要获取的游戏框架组件。</returns>
|
||||
public static GameFrameworkComponent GetComponent(string typeName)
|
||||
public static GameFrameworkModuleBase GetModule(string typeName)
|
||||
{
|
||||
LinkedListNode<GameFrameworkComponent> current = s_GameFrameworkComponents.First;
|
||||
LinkedListNode<GameFrameworkModuleBase> current = s_GameFrameworkModules.First;
|
||||
while (current != null)
|
||||
{
|
||||
Type type = current.Value.GetType();
|
||||
@@ -78,14 +78,14 @@ namespace TEngine
|
||||
{
|
||||
Log.Info("Shutdown Game Framework ({0})...", shutdownType);
|
||||
Utility.Unity.Release();
|
||||
RootModule rootModule = GetComponent<RootModule>();
|
||||
RootModule rootModule = GetModule<RootModule>();
|
||||
if (rootModule != null)
|
||||
{
|
||||
rootModule.Shutdown();
|
||||
rootModule = null;
|
||||
}
|
||||
|
||||
s_GameFrameworkComponents.Clear();
|
||||
s_GameFrameworkModules.Clear();
|
||||
|
||||
if (shutdownType == ShutdownType.None)
|
||||
{
|
||||
@@ -108,20 +108,20 @@ namespace TEngine
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 注册游戏框架组件。
|
||||
/// 注册游戏框架模块。
|
||||
/// </summary>
|
||||
/// <param name="gameFrameworkComponent">要注册的游戏框架组件。</param>
|
||||
internal static void RegisterComponent(GameFrameworkComponent gameFrameworkComponent)
|
||||
/// <param name="gameFrameworkModule">要注册的游戏框架模块。</param>
|
||||
internal static void RegisterModule(GameFrameworkModuleBase gameFrameworkModule)
|
||||
{
|
||||
if (gameFrameworkComponent == null)
|
||||
if (gameFrameworkModule == null)
|
||||
{
|
||||
Log.Error("Game Framework component is invalid.");
|
||||
return;
|
||||
}
|
||||
|
||||
Type type = gameFrameworkComponent.GetType();
|
||||
Type type = gameFrameworkModule.GetType();
|
||||
|
||||
LinkedListNode<GameFrameworkComponent> current = s_GameFrameworkComponents.First;
|
||||
LinkedListNode<GameFrameworkModuleBase> current = s_GameFrameworkModules.First;
|
||||
while (current != null)
|
||||
{
|
||||
if (current.Value.GetType() == type)
|
||||
@@ -133,7 +133,7 @@ namespace TEngine
|
||||
current = current.Next;
|
||||
}
|
||||
|
||||
s_GameFrameworkComponents.AddLast(gameFrameworkComponent);
|
||||
s_GameFrameworkModules.AddLast(gameFrameworkModule);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -5,14 +5,14 @@ namespace TEngine
|
||||
/// <summary>
|
||||
/// 游戏框架组件抽象类。
|
||||
/// </summary>
|
||||
public abstract class GameFrameworkComponent : MonoBehaviour
|
||||
public abstract class GameFrameworkModuleBase : MonoBehaviour
|
||||
{
|
||||
/// <summary>
|
||||
/// 游戏框架组件初始化。
|
||||
/// </summary>
|
||||
protected virtual void Awake()
|
||||
{
|
||||
GameEntry.RegisterComponent(this);
|
||||
GameEntry.RegisterModule(this);
|
||||
}
|
||||
}
|
||||
}
|
@@ -32,7 +32,7 @@ namespace TEngine
|
||||
/// 基础组件。
|
||||
/// </summary>
|
||||
[DisallowMultipleComponent]
|
||||
public sealed class MemoryPoolComponent : GameFrameworkComponent
|
||||
public sealed class MemoryPoolModule : GameFrameworkModuleBase
|
||||
{
|
||||
[SerializeField]
|
||||
private MemoryStrictCheckType m_EnableStrictCheck = MemoryStrictCheckType.AlwaysEnable;
|
@@ -8,7 +8,7 @@ namespace TEngine
|
||||
/// 对象池组件。
|
||||
/// </summary>
|
||||
[DisallowMultipleComponent]
|
||||
public sealed class ObjectPoolComponent : GameFrameworkComponent
|
||||
public sealed class ObjectPoolModule : GameFrameworkModuleBase
|
||||
{
|
||||
private IObjectPoolManager m_ObjectPoolManager = null;
|
||||
|
@@ -4,7 +4,7 @@ using UnityEngine;
|
||||
namespace TEngine
|
||||
{
|
||||
[DisallowMultipleComponent]
|
||||
public class ResourceComponent: GameFrameworkComponent
|
||||
public class ResourceModuleBase: GameFrameworkModuleBase
|
||||
{
|
||||
private IResourceManager m_ResourceManager;
|
||||
|
@@ -8,7 +8,7 @@ namespace TEngine
|
||||
/// 基础模块。
|
||||
/// </summary>
|
||||
[DisallowMultipleComponent]
|
||||
public sealed class RootModule : GameFrameworkComponent
|
||||
public sealed class RootModule : GameFrameworkModuleBase
|
||||
{
|
||||
private const int DefaultDpi = 96; // default windows dpi
|
||||
|
||||
@@ -318,16 +318,16 @@ namespace TEngine
|
||||
{
|
||||
Log.Warning("Low memory reported...");
|
||||
|
||||
ObjectPoolComponent objectPoolComponent = GameEntry.GetComponent<ObjectPoolComponent>();
|
||||
if (objectPoolComponent != null)
|
||||
ObjectPoolModule objectPoolModule = GameEntry.GetModule<ObjectPoolModule>();
|
||||
if (objectPoolModule != null)
|
||||
{
|
||||
objectPoolComponent.ReleaseAllUnused();
|
||||
objectPoolModule.ReleaseAllUnused();
|
||||
}
|
||||
|
||||
ResourceComponent resourceComponent = GameEntry.GetComponent<ResourceComponent>();
|
||||
if (resourceComponent != null)
|
||||
ResourceModuleBase resourceModuleBase = GameEntry.GetModule<ResourceModuleBase>();
|
||||
if (resourceModuleBase != null)
|
||||
{
|
||||
resourceComponent.ForceUnloadUnusedAssets(true);
|
||||
resourceModuleBase.ForceUnloadUnusedAssets(true);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -8,7 +8,7 @@ namespace TEngine
|
||||
/// 游戏配置组件。
|
||||
/// </summary>
|
||||
[DisallowMultipleComponent]
|
||||
public sealed class SettingComponent : GameFrameworkComponent
|
||||
public sealed class SettingModule : GameFrameworkModuleBase
|
||||
{
|
||||
private ISettingManager m_SettingManager = null;
|
||||
|
@@ -7,7 +7,7 @@ namespace TEngine
|
||||
/// </summary>
|
||||
public class DefaultUIWindowHelper : UIWindowHelperBase
|
||||
{
|
||||
private ResourceComponent m_ResourceComponent = null;
|
||||
private ResourceModuleBase _mResourceModuleBase = null;
|
||||
|
||||
private Vector2 m_Half = new Vector2(0.5f,0.5f);
|
||||
|
||||
@@ -16,8 +16,8 @@ namespace TEngine
|
||||
private void Start()
|
||||
{
|
||||
m_UILayer = LayerMask.NameToLayer("UI");
|
||||
m_ResourceComponent = GameEntry.GetComponent<ResourceComponent>();
|
||||
if (m_ResourceComponent == null)
|
||||
_mResourceModuleBase = GameEntry.GetModule<ResourceModuleBase>();
|
||||
if (_mResourceModuleBase == null)
|
||||
{
|
||||
Log.Fatal("Resource component is invalid.");
|
||||
return;
|
||||
|
@@ -3,7 +3,7 @@ using UnityEngine;
|
||||
|
||||
namespace TEngine
|
||||
{
|
||||
public sealed partial class UIModule : GameFrameworkComponent
|
||||
public sealed partial class UIModule : GameFrameworkModuleBase
|
||||
{
|
||||
[Serializable]
|
||||
private sealed class UIGroup
|
||||
|
@@ -19,7 +19,7 @@ namespace TEngine
|
||||
/// UI模块。
|
||||
/// </summary>
|
||||
[DisallowMultipleComponent]
|
||||
public sealed partial class UIModule : GameFrameworkComponent
|
||||
public sealed partial class UIModule : GameFrameworkModuleBase
|
||||
{
|
||||
private const int DefaultPriority = 0;
|
||||
|
||||
@@ -63,7 +63,7 @@ namespace TEngine
|
||||
|
||||
private void Start()
|
||||
{
|
||||
RootModule rootModule = GameEntry.GetComponent<RootModule>();
|
||||
RootModule rootModule = GameEntry.GetModule<RootModule>();
|
||||
if (rootModule == null)
|
||||
{
|
||||
Log.Fatal("Base component is invalid.");
|
||||
|
@@ -8,7 +8,7 @@ using UnityEngine;
|
||||
/// </summary>
|
||||
public class GameModule:MonoBehaviour
|
||||
{
|
||||
#region BaseComponents
|
||||
#region BaseModules
|
||||
/// <summary>
|
||||
/// 获取游戏基础模块。
|
||||
/// </summary>
|
||||
@@ -27,17 +27,17 @@ public class GameModule:MonoBehaviour
|
||||
/// <summary>
|
||||
/// 获取对象池模块。
|
||||
/// </summary>
|
||||
public static ObjectPoolComponent ObjectPool { get; private set; }
|
||||
public static ObjectPoolModule ObjectPool { get; private set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取资源模块。
|
||||
/// </summary>
|
||||
public static ResourceComponent Resource { get; private set; }
|
||||
public static ResourceModuleBase Resource { get; private set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取配置模块。
|
||||
/// </summary>
|
||||
public static SettingComponent Setting { get; private set; }
|
||||
public static SettingModule Setting { get; private set; }
|
||||
|
||||
/// <summary>
|
||||
/// 获取UI模块。
|
||||
@@ -49,46 +49,46 @@ public class GameModule:MonoBehaviour
|
||||
/// <summary>
|
||||
/// 初始化系统框架模块
|
||||
/// </summary>
|
||||
public static void InitFrameWorkComponents()
|
||||
public static void InitFrameWorkModules()
|
||||
{
|
||||
Base = Get<RootModule>();
|
||||
Debugger = Get<DebuggerModule>();
|
||||
Fsm = Get<FsmModule>();
|
||||
ObjectPool = Get<ObjectPoolComponent>();
|
||||
Resource = Get<ResourceComponent>();
|
||||
Setting = Get<SettingComponent>();
|
||||
ObjectPool = Get<ObjectPoolModule>();
|
||||
Resource = Get<ResourceModuleBase>();
|
||||
Setting = Get<SettingModule>();
|
||||
UI = Get<UIModule>();
|
||||
}
|
||||
|
||||
public static void InitCustomComponents()
|
||||
public static void InitCustomModules()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
private static readonly Dictionary<Type, GameFrameworkComponent> s_Components = new Dictionary<Type, GameFrameworkComponent>();
|
||||
private static readonly Dictionary<Type, GameFrameworkModuleBase> Modules = new Dictionary<Type, GameFrameworkModuleBase>();
|
||||
|
||||
public static T Get<T>()where T : GameFrameworkComponent
|
||||
public static T Get<T>()where T : GameFrameworkModuleBase
|
||||
{
|
||||
Type type = typeof(T);
|
||||
|
||||
if (s_Components.ContainsKey(type))
|
||||
if (Modules.ContainsKey(type))
|
||||
{
|
||||
return s_Components[type] as T;
|
||||
return Modules[type] as T;
|
||||
}
|
||||
|
||||
T component = TEngine.GameEntry.GetComponent<T>();
|
||||
T module = TEngine.GameEntry.GetModule<T>();
|
||||
|
||||
Log.Assert(condition:component != null,$"{typeof(T)} is null");
|
||||
Log.Assert(condition:module != null,$"{typeof(T)} is null");
|
||||
|
||||
s_Components.Add(type,component);
|
||||
Modules.Add(type,module);
|
||||
|
||||
return component;
|
||||
return module;
|
||||
}
|
||||
|
||||
public void Start()
|
||||
{
|
||||
Log.Info("GameModule Active");
|
||||
InitFrameWorkComponents();
|
||||
InitCustomComponents();
|
||||
InitFrameWorkModules();
|
||||
InitCustomModules();
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user