mirror of
https://github.com/AlexMacocian/MonoGame.Extended.git
synced 2026-07-24 03:56:31 +00:00
37 lines
954 B
C#
37 lines
954 B
C#
using Microsoft.Xna.Framework;
|
|
using MonoGame.Extended.Collections;
|
|
using MonoGame.Extended.Entities.Systems;
|
|
|
|
namespace MonoGame.Extended.Entities
|
|
{
|
|
public class EntityManager : UpdateSystem
|
|
{
|
|
public EntityManager(ComponentManager componentManager)
|
|
{
|
|
_componentManager = componentManager;
|
|
Entities = new Bag<Entity>(128);
|
|
}
|
|
|
|
private readonly ComponentManager _componentManager;
|
|
private int _nextId;
|
|
|
|
public Bag<Entity> Entities { get; }
|
|
|
|
public Entity CreateEntity()
|
|
{
|
|
// TODO: Recycle dead entites
|
|
var id = _nextId++;
|
|
var entity = new Entity(id, _componentManager);
|
|
Entities[id] = entity;
|
|
return entity;
|
|
}
|
|
|
|
public override void Update(GameTime gameTime)
|
|
{
|
|
}
|
|
|
|
public override void Initialize(ComponentManager componentManager)
|
|
{
|
|
}
|
|
}
|
|
} |