package com.github.czyzby.lml.parser.impl.attribute; import com.badlogic.gdx.graphics.Color; import com.badlogic.gdx.scenes.scene2d.Actor; import com.github.czyzby.lml.parser.LmlParser; import com.github.czyzby.lml.parser.tag.LmlAttribute; import com.github.czyzby.lml.parser.tag.LmlTag; /** Sets actor's red color value. Expects a float. By default, mapped to "red" and "r" attribute names. * * @author MJ */ public class ColorRedLmlAttribute implements LmlAttribute<Actor> { @Override public Class<Actor> getHandledType() { return Actor.class; } @Override public void process(final LmlParser parser, final LmlTag tag, final Actor actor, final String rawAttributeData) { final Color currentColor = actor.getColor(); // getColor() returns actor's Color instance, but just to be safe - setting with Actor's API: actor.setColor(parser.parseFloat(rawAttributeData, actor), currentColor.g, currentColor.b, currentColor.a); } }