package com.cookbook.ashley;
import com.badlogic.ashley.core.ComponentMapper;
import com.badlogic.ashley.core.Entity;
import com.badlogic.ashley.core.Family;
import com.badlogic.ashley.systems.IteratingSystem;
public class MovementSystem extends IteratingSystem {
private ComponentMapper<TransformComponent> tm = ComponentMapper.getFor(TransformComponent.class);
private ComponentMapper<MovementComponent> mm = ComponentMapper.getFor(MovementComponent.class);
public MovementSystem() {
super(Family.all(TransformComponent.class, MovementComponent.class).get());
}
@Override
public void processEntity(Entity entity, float deltaTime) {
TransformComponent transform = tm.get(entity);
MovementComponent movement = mm.get(entity);
transform.pos.x += movement.velocity.x * deltaTime;
transform.pos.y += movement.velocity.y * deltaTime;
}
}