This commit is contained in:
CortexCore
2023-10-24 23:37:59 +08:00
parent 325f63d6bc
commit 3e39e627bc
388 changed files with 29043 additions and 889 deletions

View File

@@ -84,9 +84,16 @@ namespace BITKit.Entities
{
try
{
foreach (var x in entityComponents)
var monoBehaviours = GetComponentsInChildren<MonoBehaviour>(true);
foreach (var x in monoBehaviours)
{
foreach (var att in x.GetType().GetCustomAttributes<CustomTypeAttribute>())
foreach (var att in x
//.GetCustomAttributes<CustomTypeAttribute>()
.GetType()
//.GetCustomAttributes<CustomTypeAttribute>()
.GetCustomAttributes()
.OfType<CustomTypeAttribute>()
)
{
genericEvent.Set(att.Type,x);
genericEvent.Set(att.Type.FullName, x);
@@ -94,7 +101,7 @@ namespace BITKit.Entities
}
genericEvent.Set(x.GetType(),x);
}
foreach (var x in GetComponentsInChildren<MonoBehaviour>(true))
foreach (var x in monoBehaviours)
{
Inject(x);
}

View File

@@ -9,6 +9,7 @@ namespace BITKit.Entities
bool IsOvering { get; }
void AddOverride(object key);
void RemoveOverride(object key);
event Action<bool> OnOverride;
}
public interface IEntityOverrideCallback
{
@@ -17,10 +18,13 @@ namespace BITKit.Entities
[CustomType(typeof(IEntityOverride))]
public class EntityOverride : EntityComponent,IEntityOverride
{
[SerializeField,ReadOnly] private bool isOvering;
public bool IsOvering => _allowOverrideHandle;
private readonly ValidHandle _allowOverrideHandle = new();
public void AddOverride(object key) => _allowOverrideHandle.AddElement(key);
public void RemoveOverride(object key)=>_allowOverrideHandle.RemoveElement(key);
public event Action<bool> OnOverride;
public override void Initialize(IEntity _entity)
{
base.Initialize(_entity);
@@ -33,10 +37,8 @@ namespace BITKit.Entities
}
private void Override(bool @override)
{
foreach (var x in entity.GetCallbacks<IEntityOverrideCallback>())
{
x.OnEntryOverride(@override);
}
OnOverride?.Invoke(@override);
isOvering=@override;
}
}
}