mirror of
https://github.com/Alex-Rachel/TEngine.git
synced 2025-08-14 16:51:28 +00:00
DataCenter
DataCenter
This commit is contained in:
@@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 0c082721d12c4e246bfc778ee308fdca
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
@@ -0,0 +1,47 @@
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace TEngine.Runtime
|
||||
{
|
||||
/// <summary>
|
||||
/// 数据中心系统
|
||||
/// </summary>
|
||||
public class DataCenterSys : BehaviourSingleton<DataCenterSys>
|
||||
{
|
||||
private List<IDataCenterModule> m_listModule = new List<IDataCenterModule>();
|
||||
|
||||
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);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
@@ -0,0 +1,3 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 4464f308141d4b9281adb17d25a224fd
|
||||
timeCreated: 1661939800
|
@@ -0,0 +1,48 @@
|
||||
namespace TEngine.Runtime
|
||||
{
|
||||
public interface IDataCenterModule
|
||||
{
|
||||
void Init();
|
||||
|
||||
void OnRoleLogout();
|
||||
|
||||
void OnUpdate();
|
||||
|
||||
void OnMainPlayerMapChange();
|
||||
}
|
||||
public class DataCenterModule<T> : 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()
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
}
|
@@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 331a154d1cbde224492f4e072ba6796d
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
Reference in New Issue
Block a user