Merge branch 'bf' into dev

This commit is contained in:
DCFApixels 2025-05-23 17:18:13 +08:00
commit 067eb467e1
2 changed files with 21 additions and 11 deletions

View File

@ -84,19 +84,17 @@ namespace DCFApixels.DragonECS.Core.Unchecked
#endregion #endregion
} }
internal class EntityDebuggerProxy internal class EntityDebuggerProxy
{ {
private List<object> _componentsList = new List<object>(); private List<object> _componentsList = new List<object>();
private EntitySlotInfo _info; private EntitySlotInfo _info;
public long full { get { return _info.full; } } public virtual long full { get { return _info.full; } }
public int id { get { return _info.id; } } public virtual int id { get { return _info.id; } }
public short gen { get { return _info.gen; } } public virtual short gen { get { return _info.gen; } }
public short worldID { get { return _info.worldID; } } public virtual short worldID { get { return _info.worldID; } }
public EntitySlotInfo.StateFlag State { get { return _info.State; } } public virtual EntitySlotInfo.StateFlag State { get { return _info.State; } }
public EcsWorld World { get { return _info.World; } } public virtual EcsWorld World { get { return _info.World; } }
public IEnumerable<object> Components public virtual IEnumerable<object> Components
{ {
get get
{ {
@ -129,6 +127,10 @@ namespace DCFApixels.DragonECS.Core.Unchecked
{ {
_info = info; _info = info;
} }
public EntityDebuggerProxy(entlong info)
{
_info = (EntitySlotInfo)info;
}
public EntityDebuggerProxy(int entityID, short gen, short worldID) public EntityDebuggerProxy(int entityID, short gen, short worldID)
{ {
_info = new EntitySlotInfo(entityID, gen, worldID); _info = new EntitySlotInfo(entityID, gen, worldID);

View File

@ -6,6 +6,7 @@
using DCFApixels.DragonECS.Core.Internal; using DCFApixels.DragonECS.Core.Internal;
using DCFApixels.DragonECS.Core.Unchecked; using DCFApixels.DragonECS.Core.Unchecked;
using System; using System;
using System.Collections.Generic;
using System.Diagnostics; using System.Diagnostics;
using System.Runtime.CompilerServices; using System.Runtime.CompilerServices;
using System.Runtime.InteropServices; using System.Runtime.InteropServices;
@ -391,7 +392,14 @@ namespace DCFApixels.DragonECS
internal class DebuggerProxy : EntityDebuggerProxy internal class DebuggerProxy : EntityDebuggerProxy
{ {
public DebuggerProxy(entlong entity) : base(entity._id, entity._gen, entity._world) { } public override long full => base.full;
public override int id => base.id;
public override short gen => base.gen;
public override short worldID => base.worldID;
public override EntitySlotInfo.StateFlag State => base.State;
public override EcsWorld World => base.World;
public override IEnumerable<object> Components { get => base.Components; set => base.Components = value; }
public DebuggerProxy(entlong entity) : base(entity) { }
} }
#endregion #endregion
} }