From 5223d4f93677c2c7a81ef9b246a3c68e697c4103 Mon Sep 17 00:00:00 2001
From: ALEXTANG <574809918@qq.com>
Date: Wed, 31 Aug 2022 17:58:03 +0800
Subject: [PATCH] DataCenter
DataCenter
---
.../Runtime/Core/NetWork/DataCenter.meta | 8 ++++
.../Core/NetWork/DataCenter/DataCenterSys.cs | 47 ++++++++++++++++++
.../NetWork/DataCenter/DataCenterSys.cs.meta | 3 ++
.../NetWork/DataCenter/IDataCenterModule.cs | 48 +++++++++++++++++++
.../DataCenter/IDataCenterModule.cs.meta | 11 +++++
5 files changed, 117 insertions(+)
create mode 100644 Assets/TEngine/Scripts/Runtime/Core/NetWork/DataCenter.meta
create mode 100644 Assets/TEngine/Scripts/Runtime/Core/NetWork/DataCenter/DataCenterSys.cs
create mode 100644 Assets/TEngine/Scripts/Runtime/Core/NetWork/DataCenter/DataCenterSys.cs.meta
create mode 100644 Assets/TEngine/Scripts/Runtime/Core/NetWork/DataCenter/IDataCenterModule.cs
create mode 100644 Assets/TEngine/Scripts/Runtime/Core/NetWork/DataCenter/IDataCenterModule.cs.meta
diff --git a/Assets/TEngine/Scripts/Runtime/Core/NetWork/DataCenter.meta b/Assets/TEngine/Scripts/Runtime/Core/NetWork/DataCenter.meta
new file mode 100644
index 00000000..1f87e024
--- /dev/null
+++ b/Assets/TEngine/Scripts/Runtime/Core/NetWork/DataCenter.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 0c082721d12c4e246bfc778ee308fdca
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/Assets/TEngine/Scripts/Runtime/Core/NetWork/DataCenter/DataCenterSys.cs b/Assets/TEngine/Scripts/Runtime/Core/NetWork/DataCenter/DataCenterSys.cs
new file mode 100644
index 00000000..6080182a
--- /dev/null
+++ b/Assets/TEngine/Scripts/Runtime/Core/NetWork/DataCenter/DataCenterSys.cs
@@ -0,0 +1,47 @@
+using System.Collections.Generic;
+
+namespace TEngine.Runtime
+{
+ ///
+ /// 数据中心系统
+ ///
+ public class DataCenterSys : BehaviourSingleton
+ {
+ private List m_listModule = new List();
+
+ public override void Awake()
+ {
+ InitModule();
+ base.Awake();
+ }
+
+ public override void Update()
+ {
+ var listModule = m_listModule;
+ for (int i = 0; i < listModule.Count; i++)
+ {
+ listModule[i].OnUpdate();
+ }
+ base.Update();
+ }
+
+ public override void Destroy()
+ {
+ base.Destroy();
+ }
+
+ private void InitModule()
+ {
+ //InitModule(LoginDataMgr.Instance);
+ }
+
+ public void InitModule(IDataCenterModule module)
+ {
+ if (!m_listModule.Contains(module))
+ {
+ module.Init();
+ m_listModule.Add(module);
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/Assets/TEngine/Scripts/Runtime/Core/NetWork/DataCenter/DataCenterSys.cs.meta b/Assets/TEngine/Scripts/Runtime/Core/NetWork/DataCenter/DataCenterSys.cs.meta
new file mode 100644
index 00000000..763dfebd
--- /dev/null
+++ b/Assets/TEngine/Scripts/Runtime/Core/NetWork/DataCenter/DataCenterSys.cs.meta
@@ -0,0 +1,3 @@
+fileFormatVersion: 2
+guid: 4464f308141d4b9281adb17d25a224fd
+timeCreated: 1661939800
\ No newline at end of file
diff --git a/Assets/TEngine/Scripts/Runtime/Core/NetWork/DataCenter/IDataCenterModule.cs b/Assets/TEngine/Scripts/Runtime/Core/NetWork/DataCenter/IDataCenterModule.cs
new file mode 100644
index 00000000..b00e9abe
--- /dev/null
+++ b/Assets/TEngine/Scripts/Runtime/Core/NetWork/DataCenter/IDataCenterModule.cs
@@ -0,0 +1,48 @@
+namespace TEngine.Runtime
+{
+ public interface IDataCenterModule
+ {
+ void Init();
+
+ void OnRoleLogout();
+
+ void OnUpdate();
+
+ void OnMainPlayerMapChange();
+ }
+ public class DataCenterModule : IDataCenterModule where T : new()
+ {
+ private static T instance;
+ public static T Instance
+ {
+ get
+ {
+ if (null == instance)
+ {
+ instance = new T();
+ }
+ return instance;
+ }
+ }
+
+ public virtual void Init()
+ {
+
+ }
+
+ public virtual void OnRoleLogout()
+ {
+
+ }
+
+ public virtual void OnUpdate()
+ {
+
+ }
+
+ public virtual void OnMainPlayerMapChange()
+ {
+
+ }
+ }
+}
\ No newline at end of file
diff --git a/Assets/TEngine/Scripts/Runtime/Core/NetWork/DataCenter/IDataCenterModule.cs.meta b/Assets/TEngine/Scripts/Runtime/Core/NetWork/DataCenter/IDataCenterModule.cs.meta
new file mode 100644
index 00000000..7da4ab5a
--- /dev/null
+++ b/Assets/TEngine/Scripts/Runtime/Core/NetWork/DataCenter/IDataCenterModule.cs.meta
@@ -0,0 +1,11 @@
+fileFormatVersion: 2
+guid: 331a154d1cbde224492f4e072ba6796d
+MonoImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ defaultReferences: []
+ executionOrder: 0
+ icon: {instanceID: 0}
+ userData:
+ assetBundleName:
+ assetBundleVariant: