public abstract class DispersedIntervalEntitySystem
extends com.artemis.BaseEntitySystem
implements com.artemis.EntitySubscription.SubscriptionListener
EntitySystem that will wait for an interval then queue all
entities to be updated over the duration of the next interval.| Modifier and Type | Field and Description |
|---|---|
protected int |
entitiesPerUpdate |
protected com.artemis.utils.IntBag |
processingQueue |
| Constructor and Description |
|---|
DispersedIntervalEntitySystem(com.artemis.Aspect.Builder aspect,
float interval)
Creates an entity system that uses the specified aspect as a matcher
against entities.
|
| Modifier and Type | Method and Description |
|---|---|
com.artemis.utils.Bag<com.artemis.Entity> |
getEntities()
Gets the entities processed by this
DispersedIntervalEntitySystem. |
float |
getInterval()
Returns the interval of the system
|
void |
inserted(com.artemis.Entity e) |
protected void |
inserted(int entityId) |
void |
inserted(com.artemis.utils.IntBag entities) |
protected void |
processSystem() |
void |
removed(com.artemis.Entity e) |
protected void |
removed(int entityId) |
void |
removed(com.artemis.utils.IntBag entities) |
void |
setInterval(float interval)
Sets the interval of the system
|
protected void |
setWorld(com.artemis.World world) |
protected abstract void |
update(int entityId,
float delta)
Updates an entity
|
protected final com.artemis.utils.IntBag processingQueue
protected int entitiesPerUpdate
public DispersedIntervalEntitySystem(com.artemis.Aspect.Builder aspect,
float interval)
aspect - to match against entitiesprotected abstract void update(int entityId,
float delta)
entityId - The entity iddelta - The delta since the last updateprotected void processSystem()
processSystem in class com.artemis.BaseSystemprotected void setWorld(com.artemis.World world)
setWorld in class com.artemis.BaseEntitySystempublic final void inserted(com.artemis.utils.IntBag entities)
inserted in interface com.artemis.EntitySubscription.SubscriptionListenerinserted in class com.artemis.BaseEntitySystemprotected final void inserted(int entityId)
inserted in class com.artemis.BaseEntitySystempublic final void removed(com.artemis.utils.IntBag entities)
removed in interface com.artemis.EntitySubscription.SubscriptionListenerremoved in class com.artemis.BaseEntitySystemprotected final void removed(int entityId)
removed in class com.artemis.BaseEntitySystempublic void inserted(com.artemis.Entity e)
public void removed(com.artemis.Entity e)
public com.artemis.utils.Bag<com.artemis.Entity> getEntities()
DispersedIntervalEntitySystem. Warning: do not delete entities from
this bag.DispersedIntervalEntitySystem's entity bag, as matched by Aspect.public float getInterval()
public void setInterval(float interval)
interval -