Example usage for com.badlogic.gdx.scenes.scene2d.actions SequenceAction SequenceAction

List of usage examples for com.badlogic.gdx.scenes.scene2d.actions SequenceAction SequenceAction

Introduction

In this page you can find the example usage for com.badlogic.gdx.scenes.scene2d.actions SequenceAction SequenceAction.

Prototype

public SequenceAction(Action action1, Action action2, Action action3) 

Source Link

Usage

From source file:actors.Arrow.java

public Arrow(float startX, float startY, float destX, float destY) {
    this.setName("arrow");
    texture = new Texture("arrow.png");
    sprite = new Sprite(texture);
    sprite.setScale(0.1f);//from  w  ww  .  j a v a2  s  .c om
    angle = (float) Math.toDegrees(atan((destY - startY) / (destX - startX)));
    System.out.println(String.valueOf(angle));
    sprite.setOriginCenter();
    sprite.rotate(angle + 270);
    //sprite.setRotation(angle);

    velocity = 300;

    init = new MoveToAction();
    init.setPosition(startX, startY);
    distSquared = ((startX - destX) * (startX - destX) + (startY - destY) * (startY - destY));

    shoot = new MoveToAction();
    shoot.setPosition(destX, destY);
    shoot.setDuration((float) (sqrt(distSquared) / velocity));

    moveOff = new MoveToAction();
    moveOff.setPosition(-100f, -100f);

    SequenceAction sa = new SequenceAction(init, shoot, moveOff);

    this.addAction(sa);
}

From source file:actors.Fireball.java

public Fireball(float startX, float startY, float destX, float destY) {
    this.setName("fireball");
    texture = new Texture("firearrow.png");
    sprite = new Sprite(texture);
    sprite.setScale(0.5f);//  w  w  w.  j  a v a2s.  c  o m
    angle = (float) Math.toDegrees(atan((destY - startY) / (destX - startX)));
    System.out.println(String.valueOf(angle));
    sprite.setOriginCenter();
    sprite.rotate(angle + 270);
    //sprite.setRotation(angle);

    velocity = 500;

    init = new MoveToAction();
    init.setPosition(startX, startY);
    distSquared = ((startX - destX) * (startX - destX) + (startY - destY) * (startY - destY));

    shoot = new MoveToAction();
    shoot.setPosition(destX, destY);
    shoot.setDuration((float) (sqrt(distSquared) / velocity));

    moveOff = new MoveToAction();
    moveOff.setPosition(-100f, -100f);

    SequenceAction sa = new SequenceAction(init, shoot, moveOff);

    this.addAction(sa);
}

From source file:actors.IceBolt.java

public IceBolt(float startX, float startY, float destX, float destY) {
    this.setName("icebolt");
    texture = new Texture("icearrow.png");
    sprite = new Sprite(texture);
    sprite.setScale(0.5f);/* w  w  w  .jav a2  s  .  c  o  m*/
    angle = (float) Math.toDegrees(atan((destY - startY) / (destX - startX)));
    System.out.println(String.valueOf(angle));
    sprite.setOriginCenter();
    sprite.rotate(angle + 270);
    //sprite.setRotation(angle);

    velocity = 500;

    init = new MoveToAction();
    init.setPosition(startX, startY);
    distSquared = ((startX - destX) * (startX - destX) + (startY - destY) * (startY - destY));

    shoot = new MoveToAction();
    shoot.setPosition(destX, destY);
    shoot.setDuration((float) (sqrt(distSquared) / velocity));

    moveOff = new MoveToAction();
    moveOff.setPosition(-100f, -100f);

    SequenceAction sa = new SequenceAction(init, shoot, moveOff);

    this.addAction(sa);
}

From source file:actors.NecromancerAttack.java

public NecromancerAttack(float startX, float startY, float destX, float destY) {
    this.setName("necromancerbolt");
    texture = new Texture("deathbolt.png");
    sprite = new Sprite(texture);
    sprite.setScale(0.5f);/*w w  w  .ja  va  2s .  c o  m*/
    angle = (float) Math.toDegrees(atan((destY - startY) / (destX - startX)));
    System.out.println(String.valueOf(angle));
    sprite.setOriginCenter();
    sprite.rotate(angle + 270);
    //sprite.setRotation(angle);

    velocity = 500;

    init = new MoveToAction();
    init.setPosition(startX, startY);
    distSquared = ((startX - destX) * (startX - destX) + (startY - destY) * (startY - destY));

    shoot = new MoveToAction();
    shoot.setPosition(destX, destY);
    shoot.setDuration((float) (sqrt(distSquared) / velocity));

    moveOff = new MoveToAction();
    moveOff.setPosition(-100f, -100f);

    SequenceAction sa = new SequenceAction(init, shoot, moveOff);

    this.addAction(sa);
}

From source file:com.jmolina.orb.screens.BaseScreen.java

License:Open Source License

/**
 * Devuelve una accion de transicion desde dentro
 *//*from   w  w  w.j av a 2 s .co  m*/
private Action fromInsideAction() {
    return new SequenceAction(alpha(0f), scaleTo(SIZE_SMALL, SIZE_SMALL),
            parallel(fadeIn(TRANSITION_DURATION, INTERPOLATION_OUT),
                    scaleTo(1f, 1f, TRANSITION_DURATION, INTERPOLATION_OUT)));
}

From source file:com.jmolina.orb.screens.BaseScreen.java

License:Open Source License

/**
 * Devuelve una accion de transicion desde fuera
 *//*from  w  w w  . j a  va 2  s  .  c  om*/
private Action fromOutsideAction() {
    return new SequenceAction(alpha(0f), scaleTo(SIZE_LARGE, SIZE_LARGE),
            parallel(fadeIn(TRANSITION_DURATION, INTERPOLATION_OUT),
                    scaleTo(1f, 1f, TRANSITION_DURATION, INTERPOLATION_OUT)));
}

From source file:com.jmolina.orb.screens.BaseScreen.java

License:Open Source License

/**
 * Devuelve una accion de aparicion (por defecto)
 *///ww  w .  jav a2  s.  c o  m
private Action appearAction() {
    return new SequenceAction(alpha(0f), scaleTo(SIZE_LARGE, SIZE_LARGE),
            fadeIn(TRANSITION_DURATION, INTERPOLATION_IN));
}

From source file:com.jmolina.orb.screens.BaseScreen.java

License:Open Source License

/**
 * Devuelve una accion de desaparicion (por defecto)
 */// w w  w  . j a v  a  2s . com
private Action disappearAction() {
    return new SequenceAction(alpha(1f), scaleTo(1f, 1f), fadeOut(TRANSITION_DURATION, INTERPOLATION_IN));
}

From source file:com.jmolina.orb.widgets.game.LinearField.java

License:Open Source License

@Override
protected Action getAttraction() {
    RepeatAction forever = new RepeatAction();
    forever.setCount(RepeatAction.FOREVER);
    forever.setAction(new SequenceAction(
            parallel(moveTo(0, Utils.cell(2 * getThreshold()) - particle.getHeight(), 0), alpha(0),
                    scaleTo(particle.getScaleX(), 1)),
            parallel(moveTo(0, Utils.cell(getThreshold()), PERIOD, Interpolation.pow2In),
                    alpha(MAX_ALPHA, PERIOD, Interpolation.pow2In)),
            parallel(scaleTo(particle.getScaleX(), 0, SHORT_TIME))));

    return forever;
}

From source file:com.jmolina.orb.widgets.game.LinearField.java

License:Open Source License

@Override
protected Action getRepulsion() {
    RepeatAction forever = new RepeatAction();
    forever.setCount(RepeatAction.FOREVER);
    forever.setAction(new SequenceAction(
            parallel(moveTo(0, Utils.cell(getThreshold()), 0), alpha(MAX_ALPHA),
                    scaleTo(particle.getScaleX(), 0)),
            parallel(scaleTo(particle.getScaleX(), 1, SHORT_TIME)),
            parallel(moveTo(0, Utils.cell(2 * getThreshold()) - particle.getHeight(), PERIOD,
                    Interpolation.pow2Out), alpha(0, PERIOD, Interpolation.pow2Out))));

    return forever;
}