package org.castelodelego.spacedebris.battlesystems; import java.util.Iterator; import org.castelodelego.spacedebris.battlecomponents.ComponentType; import org.castelodelego.spacedebris.battleentities.Entity; import org.castelodelego.spacedebris.battleentities.EntityManager; /** * This system removes entities from the entity manager, * It also does anything that needs to be done to an entity before removing it (it usually does NOT postpone death, though) * * @author caranha * */ public class KillSystem { public KillSystem() { } public void update(float dt, EntityManager m) { Iterator<Entity> it = m.iterator(); while (it.hasNext()) { Entity e = it.next(); if (e.getComponentByType(ComponentType.COMP_KILL) != null) { // TODO: Do anything else that needs to be done before removing the entity; it.remove(); } } } }