This commit is contained in:
Mikhail 2023-03-29 19:40:18 +08:00
parent 7dd9f6bc5e
commit 17b8e596a9
2 changed files with 11 additions and 5 deletions

View File

@ -61,10 +61,13 @@ namespace DCFApixels.DragonECS
Type runnerBaseType = typeof(EcsRunner<>);
List<Type> runnerHandlerTypes = new List<Type>();
runnerHandlerTypes = Assembly.GetAssembly(runnerBaseType)
.GetTypes()
.Where(type => type.BaseType != null && type.BaseType.IsGenericType && runnerBaseType == type.BaseType.GetGenericTypeDefinition())
.ToList();
foreach (var assembly in AppDomain.CurrentDomain.GetAssemblies())
{
runnerHandlerTypes.AddRange(
assembly.GetTypes()
.Where(type => type.BaseType != null && type.BaseType.IsGenericType && runnerBaseType == type.BaseType.GetGenericTypeDefinition()));
}
#if DEBUG || !DRAGONECS_NO_SANITIZE_CHECKS
for (int i = 0; i < runnerHandlerTypes.Count; i++)

View File

@ -190,7 +190,10 @@ namespace DCFApixels.DragonECS
}
foreach (var item in _blockExecutionOrder)
{
result.AddRange(_systems[item]);
if(_systems.TryGetValue(item, out var list))
{
result.AddRange(list);
}
}
return new EcsSystems(result.ToArray());