diff --git a/src/EcsAspect.cs b/src/EcsAspect.cs index 3c35c3d..5474f08 100644 --- a/src/EcsAspect.cs +++ b/src/EcsAspect.cs @@ -87,6 +87,10 @@ namespace DCFApixels.DragonECS { get { return EcsAspect.CurrentBuilder.Opt; } } + public static EcsMask.Builder GetMask() + { + return EcsAspect.CurrentBuilder.GetMask(); + } } public abstract class EcsAspect : IEcsAspect, ITemplateNode, IComponentMask { @@ -130,6 +134,10 @@ namespace DCFApixels.DragonECS { get { return B.Singleton; } } + protected static EcsMask.Builder GetMask() + { + return B.GetMask(); + } #endregion //Инициализация аспектов проходит в синхронизированном состоянии, поэтому использование _staticMaskCache потоко безопасно. @@ -277,6 +285,10 @@ namespace DCFApixels.DragonECS #endregion #region Include/Exclude/Optional/Combine/Except + public EcsMask.Builder GetMask() + { + return EcsMask.New(_world); + } public Singleton Get() where T : struct { return new Singleton(_world.ID);