mirror of
https://github.com/Alex-Rachel/TEngine.git
synced 2025-08-14 16:51:28 +00:00
[+] 接入ET8服务端
[+] 接入ET8服务端
This commit is contained in:
43
Assets/GameScripts/DotNet/Core/Entity/ISerializeSystem.cs
Normal file
43
Assets/GameScripts/DotNet/Core/Entity/ISerializeSystem.cs
Normal file
@@ -0,0 +1,43 @@
|
||||
using System;
|
||||
|
||||
namespace ET
|
||||
{
|
||||
public interface ISerialize
|
||||
{
|
||||
}
|
||||
|
||||
public interface ISerializeSystem: ISystemType
|
||||
{
|
||||
void Run(Entity o);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 序列化前执行的System
|
||||
/// </summary>
|
||||
/// <typeparam name="T"></typeparam>
|
||||
[EntitySystem]
|
||||
public abstract class SerializeSystem<T> : ISerializeSystem where T: Entity, ISerialize
|
||||
{
|
||||
void ISerializeSystem.Run(Entity o)
|
||||
{
|
||||
this.Serialize((T)o);
|
||||
}
|
||||
|
||||
Type ISystemType.SystemType()
|
||||
{
|
||||
return typeof(ISerializeSystem);
|
||||
}
|
||||
|
||||
int ISystemType.GetInstanceQueueIndex()
|
||||
{
|
||||
return InstanceQueueIndex.None;
|
||||
}
|
||||
|
||||
Type ISystemType.Type()
|
||||
{
|
||||
return typeof(T);
|
||||
}
|
||||
|
||||
protected abstract void Serialize(T self);
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user