Files
MonoGame.Extended/source/MonoGame.Extended.Entities/Systems/EntityProcessingSystem.cs
T
2024-05-18 19:59:41 -04:00

26 lines
655 B
C#

using Microsoft.Xna.Framework;
namespace MonoGame.Extended.Entities.Systems
{
public abstract class EntityProcessingSystem : EntityUpdateSystem
{
protected EntityProcessingSystem(AspectBuilder aspectBuilder)
: base(aspectBuilder)
{
}
public override void Update(GameTime gameTime)
{
Begin();
foreach (var entityId in ActiveEntities)
Process(gameTime, entityId);
End();
}
public virtual void Begin() { }
public abstract void Process(GameTime gameTime, int entityId);
public virtual void End() { }
}
}