mirror of
https://github.com/DCFApixels/DragonECS.git
synced 2025-09-18 09:54:35 +08:00
update EcsMask
This commit is contained in:
parent
3b33c0fab8
commit
5e3913b31b
@ -5,7 +5,7 @@ using System.Collections.Generic;
|
|||||||
|
|
||||||
namespace DCFApixels.DragonECS
|
namespace DCFApixels.DragonECS
|
||||||
{
|
{
|
||||||
public abstract class EcsAspect : ITemplateNode
|
public abstract class EcsAspect : ITemplateNode, IEcsComponentMask
|
||||||
{
|
{
|
||||||
#region Initialization Halpers
|
#region Initialization Halpers
|
||||||
[ThreadStatic]
|
[ThreadStatic]
|
||||||
@ -302,6 +302,10 @@ namespace DCFApixels.DragonECS
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
|
#region Other
|
||||||
|
EcsMask IEcsComponentMask.ToMask(EcsWorld world) { return _mask; }
|
||||||
|
#endregion
|
||||||
}
|
}
|
||||||
|
|
||||||
#region EcsAspectExtensions
|
#region EcsAspectExtensions
|
||||||
|
@ -495,10 +495,26 @@ namespace DCFApixels.DragonECS
|
|||||||
{
|
{
|
||||||
return a.World.Get<WorldMaskComponent>().ExceptMask(a, b);
|
return a.World.Get<WorldMaskComponent>().ExceptMask(a, b);
|
||||||
}
|
}
|
||||||
|
public static EcsMask operator -(EcsMask a, IEcsComponentMask b)
|
||||||
|
{
|
||||||
|
return a.World.Get<WorldMaskComponent>().ExceptMask(a, b.ToMask(a.World));
|
||||||
|
}
|
||||||
|
public static EcsMask operator -(IEcsComponentMask b, EcsMask a)
|
||||||
|
{
|
||||||
|
return a.World.Get<WorldMaskComponent>().ExceptMask(b.ToMask(a.World), a);
|
||||||
|
}
|
||||||
public static EcsMask operator +(EcsMask a, EcsMask b)
|
public static EcsMask operator +(EcsMask a, EcsMask b)
|
||||||
{
|
{
|
||||||
return a.World.Get<WorldMaskComponent>().CombineMask(a, b);
|
return a.World.Get<WorldMaskComponent>().CombineMask(a, b);
|
||||||
}
|
}
|
||||||
|
public static EcsMask operator +(EcsMask a, IEcsComponentMask b)
|
||||||
|
{
|
||||||
|
return a.World.Get<WorldMaskComponent>().CombineMask(a, b.ToMask(a.World));
|
||||||
|
}
|
||||||
|
public static EcsMask operator +(IEcsComponentMask b, EcsMask a)
|
||||||
|
{
|
||||||
|
return a.World.Get<WorldMaskComponent>().CombineMask(b.ToMask(a.World), a);
|
||||||
|
}
|
||||||
public static implicit operator EcsMask((IEcsComponentMask mask, EcsWorld world) a)
|
public static implicit operator EcsMask((IEcsComponentMask mask, EcsWorld world) a)
|
||||||
{
|
{
|
||||||
return a.mask.ToMask(a.world);
|
return a.mask.ToMask(a.world);
|
||||||
|
Loading…
Reference in New Issue
Block a user