update EcsEntityConnect

This commit is contained in:
DCFApixels 2025-03-24 20:12:07 +08:00
parent b91b012add
commit 822b231a47

View File

@ -66,7 +66,7 @@ namespace DCFApixels.DragonECS
[MetaGroup(EcsUnityConsts.PACK_GROUP, EcsUnityConsts.ENTITY_BUILDING_GROUP)] [MetaGroup(EcsUnityConsts.PACK_GROUP, EcsUnityConsts.ENTITY_BUILDING_GROUP)]
[MetaDescription(AUTHOR, nameof(MonoBehaviour) + ". Responsible for connecting the entity and GameObject using the EcsEntityConnect.ConnectWith method.")] [MetaDescription(AUTHOR, nameof(MonoBehaviour) + ". Responsible for connecting the entity and GameObject using the EcsEntityConnect.ConnectWith method.")]
[MetaID("DragonECS_FF7EB3809201DEC2F1977C00D3B3443B")] [MetaID("DragonECS_FF7EB3809201DEC2F1977C00D3B3443B")]
public class EcsEntityConnect : MonoBehaviour public class EcsEntityConnect : MonoBehaviour, ITemplateNode
{ {
private entlong _entity; private entlong _entity;
private EcsWorld _world; private EcsWorld _world;
@ -82,6 +82,12 @@ namespace DCFApixels.DragonECS
private bool _isConnectInvoked = false; private bool _isConnectInvoked = false;
[RuntimeInitializeOnLoadMethod(RuntimeInitializeLoadType.SubsystemRegistration)]
private static void OnLoad()
{
_connectedEntities.Clear();
}
#region Properties #region Properties
public entlong Entity public entlong Entity
{ {
@ -113,6 +119,10 @@ namespace DCFApixels.DragonECS
#endregion #endregion
#region Connect #region Connect
void ITemplateNode.Apply(short worldID, int entityID)
{
ConnectWith((EcsWorld.GetWorld(worldID), entityID), true);
}
public void ConnectWith(entlong entity, bool applyTemplates) public void ConnectWith(entlong entity, bool applyTemplates)
{ {
Disconnect(); Disconnect();