[+] 接入ET8服务端

[+] 接入ET8服务端
This commit is contained in:
ALEXTANG
2023-07-13 12:23:48 +08:00
parent e0be062006
commit 336d4b2eb9
1316 changed files with 130657 additions and 626 deletions

View File

@@ -0,0 +1,43 @@
using System;
namespace ET
{
// GetComponentSystem有巨大作用比如每次保存Unit的数据不需要所有组件都保存只需要保存Unit变化过的组件
// 是否变化可以通过判断该组件是否GetComponentGet了就记录该组件
// 这样可以只保存Unit变化过的组件
// 再比如传送也可以做此类优化
public interface IGetComponent
{
}
public interface IGetComponentSystem: ISystemType
{
void Run(Entity o, Entity component);
}
[EntitySystem]
public abstract class GetComponentSystem<T> : IGetComponentSystem where T: Entity, IGetComponent
{
void IGetComponentSystem.Run(Entity o, Entity component)
{
this.GetComponent((T)o, component);
}
Type ISystemType.SystemType()
{
return typeof(IGetComponentSystem);
}
int ISystemType.GetInstanceQueueIndex()
{
return InstanceQueueIndex.None;
}
Type ISystemType.Type()
{
return typeof(T);
}
protected abstract void GetComponent(T self, Entity component);
}
}