package com.indignado.logicbricks.systems.actuators; import com.badlogic.gdx.graphics.g2d.ParticleEffect; import com.indignado.logicbricks.components.actuators.EffectActuatorComponent; import com.indignado.logicbricks.core.actuators.EffectActuator; import com.indignado.logicbricks.core.data.ParticleEffectView; import com.indignado.logicbricks.utils.Log; /** * @author Rubentxu */ public class EffectActuatorSystem extends ActuatorSystem<EffectActuator, EffectActuatorComponent> { public EffectActuatorSystem() { super(EffectActuatorComponent.class); } @Override public void processActuator(EffectActuator actuator, float deltaTime) { ParticleEffectView view = actuator.effectView; ParticleEffect effect = view.effect; if (actuator.active) { Log.debug(tag, "Effect reset"); effect.reset(); } else { Log.debug(tag, "Effect allowCompletion"); effect.allowCompletion(); } if (actuator.opacity != -1) view.setOpacity(actuator.opacity); if (actuator.tint != null) view.setTint(actuator.tint); if (actuator.position != null) { if (view.attachedTransform != null) view.setLocalPosition(actuator.position); else view.setPosition(actuator.position); } } }