From f0c9ec2000b8ca81222d60cc06cea1b7933d946a Mon Sep 17 00:00:00 2001
From: ALEXTANG <574809918@qq.com>
Date: Wed, 7 Sep 2022 14:50:18 +0800
Subject: [PATCH] EntitySystem
EntitySystem
---
...tInspector.cs => EntitySystemInspector.cs} | 6 +--
....cs.meta => EntitySystemInspector.cs.meta} | 0
.../Runtime/Entity/Core/Entity/Entity.cs | 2 +-
.../Entity/Core/Entity/EntityExtension.cs | 47 +++++++++++++------
...tyGroup.cs => EntitySystem.EntityGroup.cs} | 2 +-
....meta => EntitySystem.EntityGroup.cs.meta} | 0
.../{EntityComponent.cs => EntitySystem.cs} | 4 +-
...Component.cs.meta => EntitySystem.cs.meta} | 0
8 files changed, 40 insertions(+), 21 deletions(-)
rename Assets/TEngine/Scripts/Editor/Inspector/{EntityComponentInspector.cs => EntitySystemInspector.cs} (94%)
rename Assets/TEngine/Scripts/Editor/Inspector/{EntityComponentInspector.cs.meta => EntitySystemInspector.cs.meta} (100%)
rename Assets/TEngine/Scripts/Runtime/Entity/{EntityComponent.EntityGroup.cs => EntitySystem.EntityGroup.cs} (95%)
rename Assets/TEngine/Scripts/Runtime/Entity/{EntityComponent.EntityGroup.cs.meta => EntitySystem.EntityGroup.cs.meta} (100%)
rename Assets/TEngine/Scripts/Runtime/Entity/{EntityComponent.cs => EntitySystem.cs} (99%)
rename Assets/TEngine/Scripts/Runtime/Entity/{EntityComponent.cs.meta => EntitySystem.cs.meta} (100%)
diff --git a/Assets/TEngine/Scripts/Editor/Inspector/EntityComponentInspector.cs b/Assets/TEngine/Scripts/Editor/Inspector/EntitySystemInspector.cs
similarity index 94%
rename from Assets/TEngine/Scripts/Editor/Inspector/EntityComponentInspector.cs
rename to Assets/TEngine/Scripts/Editor/Inspector/EntitySystemInspector.cs
index 6efba58d..4dbe758c 100644
--- a/Assets/TEngine/Scripts/Editor/Inspector/EntityComponentInspector.cs
+++ b/Assets/TEngine/Scripts/Editor/Inspector/EntitySystemInspector.cs
@@ -4,8 +4,8 @@ using TEngine.Runtime.Entity;
namespace TEngine.Editor
{
- [CustomEditor(typeof(EntityComponent))]
- internal sealed class EntityComponentInspector : TEngineInspector
+ [CustomEditor(typeof(EntitySystem))]
+ internal sealed class EntitySystemInspector : TEngineInspector
{
private SerializedProperty m_EnableShowEntityUpdateEvent = null;
private SerializedProperty m_EnableShowEntityDependencyAssetEvent = null;
@@ -23,7 +23,7 @@ namespace TEngine.Editor
serializedObject.Update();
- EntityComponent t = (EntityComponent)target;
+ EntitySystem t = (EntitySystem)target;
EditorGUI.BeginDisabledGroup(EditorApplication.isPlayingOrWillChangePlaymode);
{
diff --git a/Assets/TEngine/Scripts/Editor/Inspector/EntityComponentInspector.cs.meta b/Assets/TEngine/Scripts/Editor/Inspector/EntitySystemInspector.cs.meta
similarity index 100%
rename from Assets/TEngine/Scripts/Editor/Inspector/EntityComponentInspector.cs.meta
rename to Assets/TEngine/Scripts/Editor/Inspector/EntitySystemInspector.cs.meta
diff --git a/Assets/TEngine/Scripts/Runtime/Entity/Core/Entity/Entity.cs b/Assets/TEngine/Scripts/Runtime/Entity/Core/Entity/Entity.cs
index 11aa6359..cd84e5a3 100644
--- a/Assets/TEngine/Scripts/Runtime/Entity/Core/Entity/Entity.cs
+++ b/Assets/TEngine/Scripts/Runtime/Entity/Core/Entity/Entity.cs
@@ -6,7 +6,7 @@ namespace TEngine.Runtime.Entity
///
/// 实体。
///
- public sealed class Entity : MonoBehaviour, IEntity
+ public partial class Entity : MonoBehaviour, IEntity
{
private int m_Id;
private string m_EntityAssetName;
diff --git a/Assets/TEngine/Scripts/Runtime/Entity/Core/Entity/EntityExtension.cs b/Assets/TEngine/Scripts/Runtime/Entity/Core/Entity/EntityExtension.cs
index d756ee2d..d391ff37 100644
--- a/Assets/TEngine/Scripts/Runtime/Entity/Core/Entity/EntityExtension.cs
+++ b/Assets/TEngine/Scripts/Runtime/Entity/Core/Entity/EntityExtension.cs
@@ -7,17 +7,36 @@
///
/// 生成客户端序列化ID/EntityID,服务器默认不用
///
- ///
+ ///
///
- public static int GenerateSerialId(this EntityComponent entityComponent)
+ public static int GenerateSerialId(this EntitySystem entitySystem)
{
return ++_serialId;
}
+
+ ///
+ /// 创建实体
+ ///
+ /// EntitySystem
+ /// 实体资源路径
+ /// 实体数据
+ /// 实体实例对象池自动释放可释放对象的间隔秒数
+ /// 实体实例对象池容量
+ /// 实体实例对象池对象过期秒数
+ /// 实体实例对象池的优先级
+ /// 实体类型
+ public static void CreateEntity(this EntitySystem entitySystem, string assetPath,
+ object userData, float autoReleaseInterval = 60f,
+ int capacity = 60, float expireTime = 60f, int priority = 0)
+ {
+ entitySystem.CreateEntity(typeof(T), assetPath, userData, autoReleaseInterval, capacity, expireTime,
+ priority);
+ }
///
/// 创建实体
///
- /// EntityComponent
+ /// EntitySystem
/// 实体资源路径
/// EntityData实体数据
/// 实体实例对象池自动释放可释放对象的间隔秒数
@@ -25,7 +44,7 @@
/// 实体实例对象池对象过期秒数
/// 实体实例对象池的优先级
/// 实体类型
- public static void CreateEntity(this EntityComponent entityComponent, string assetPath,
+ public static void CreateEntity(this EntitySystem entitySystem, string assetPath,
EntityData userData = null, float autoReleaseInterval = 60f,
int capacity = 60, float expireTime = 60f, int priority = 0)
{
@@ -34,14 +53,14 @@
userData = EntityData.Create();
}
- entityComponent.CreateEntity(typeof(T), assetPath, userData, autoReleaseInterval, capacity, expireTime,
+ entitySystem.CreateEntity(typeof(T), assetPath, userData, autoReleaseInterval, capacity, expireTime,
priority);
}
///
/// 创建实体
///
- ///
+ ///
///
///
///
@@ -49,20 +68,20 @@
///
///
///
- public static void CreateEntity(this EntityComponent entityComponent, System.Type logicType, string assetPath,
+ public static void CreateEntity(this EntitySystem entitySystem, System.Type logicType, string assetPath,
object userData = null, float autoReleaseInterval = 60f,
int capacity = 60,
float expireTime = 60f, int priority = 0)
{
- var entityId = entityComponent.GenerateSerialId();
- entityComponent.CreateEntity(entityId, logicType, assetPath, userData, autoReleaseInterval, capacity,
+ var entityId = entitySystem.GenerateSerialId();
+ entitySystem.CreateEntity(entityId, logicType, assetPath, userData, autoReleaseInterval, capacity,
expireTime, priority);
}
///
/// 创建实体
///
- ///
+ ///
///
///
///
@@ -71,7 +90,7 @@
///
///
///
- public static void CreateEntity(this EntityComponent entityComponent, int entityId,
+ public static void CreateEntity(this EntitySystem entitySystem, int entityId,
System.Type logicType, string assetPath, object userData = null, float autoReleaseInterval = 60f,
int capacity = 60,
float expireTime = 60f, int priority = 0)
@@ -82,14 +101,14 @@
return;
}
- if (!entityComponent.HasEntityGroup(logicType.Name))
+ if (!entitySystem.HasEntityGroup(logicType.Name))
{
- EntityComponent.Instance.AddEntityGroup(logicType.Name,
+ EntitySystem.Instance.AddEntityGroup(logicType.Name,
autoReleaseInterval, capacity,
expireTime, priority);
}
- entityComponent.ShowEntity(entityId, logicType, assetPath, logicType.Name,
+ entitySystem.ShowEntity(entityId, logicType, assetPath, logicType.Name,
Constant.DefaultPriority, userData);
}
}
diff --git a/Assets/TEngine/Scripts/Runtime/Entity/EntityComponent.EntityGroup.cs b/Assets/TEngine/Scripts/Runtime/Entity/EntitySystem.EntityGroup.cs
similarity index 95%
rename from Assets/TEngine/Scripts/Runtime/Entity/EntityComponent.EntityGroup.cs
rename to Assets/TEngine/Scripts/Runtime/Entity/EntitySystem.EntityGroup.cs
index 37531162..d81b256f 100644
--- a/Assets/TEngine/Scripts/Runtime/Entity/EntityComponent.EntityGroup.cs
+++ b/Assets/TEngine/Scripts/Runtime/Entity/EntitySystem.EntityGroup.cs
@@ -3,7 +3,7 @@ using UnityEngine;
namespace TEngine.Runtime.Entity
{
- public sealed partial class EntityComponent
+ public sealed partial class EntitySystem
{
[Serializable]
private sealed class EntityGroup
diff --git a/Assets/TEngine/Scripts/Runtime/Entity/EntityComponent.EntityGroup.cs.meta b/Assets/TEngine/Scripts/Runtime/Entity/EntitySystem.EntityGroup.cs.meta
similarity index 100%
rename from Assets/TEngine/Scripts/Runtime/Entity/EntityComponent.EntityGroup.cs.meta
rename to Assets/TEngine/Scripts/Runtime/Entity/EntitySystem.EntityGroup.cs.meta
diff --git a/Assets/TEngine/Scripts/Runtime/Entity/EntityComponent.cs b/Assets/TEngine/Scripts/Runtime/Entity/EntitySystem.cs
similarity index 99%
rename from Assets/TEngine/Scripts/Runtime/Entity/EntityComponent.cs
rename to Assets/TEngine/Scripts/Runtime/Entity/EntitySystem.cs
index 3b8c673a..00d55cf2 100644
--- a/Assets/TEngine/Scripts/Runtime/Entity/EntityComponent.cs
+++ b/Assets/TEngine/Scripts/Runtime/Entity/EntitySystem.cs
@@ -9,8 +9,8 @@ namespace TEngine.Runtime.Entity
/// 实体组件。
///
[DisallowMultipleComponent]
- [AddComponentMenu("TEngine/EntityManager")]
- public sealed partial class EntityComponent : UnitySingleton
+ [AddComponentMenu("TEngine/EntitySys")]
+ public sealed partial class EntitySystem : UnitySingleton
{
private const int DefaultPriority = 0;
diff --git a/Assets/TEngine/Scripts/Runtime/Entity/EntityComponent.cs.meta b/Assets/TEngine/Scripts/Runtime/Entity/EntitySystem.cs.meta
similarity index 100%
rename from Assets/TEngine/Scripts/Runtime/Entity/EntityComponent.cs.meta
rename to Assets/TEngine/Scripts/Runtime/Entity/EntitySystem.cs.meta