Je réalise une animation simple en utilisant des acteurs (étiquettes, à préciser) et des actions. Mon plan initial était de déplacer l'un d'eux loin vers la gauche instantanément, puis de le faire apparaître doucement à travers le bord de l'écran, en remplaçant un autre. Mais chaque fois qu'une nouvelle action est exécutée, la position de Label se réinitialise, donc je ne peux pas obtenir l'effet que j'ai prévu. Comment l'éviter? le code est ici, si vous en avez besoin:La position de l'acteur Libgdx se réinitialise après l'ajout d'une autre action
newAttack.addAction(Actions.moveBy(-1 * game.W, 0));
newAttack.setText(game.local.get(_attack));
newAttackType.background = game.skin.getDrawable("attack_" + getAttackType(_attack));
lastAttack.addAction(Actions.sequence(Actions.moveBy(game.W, 0, 1.5f),
Actions.run(new Runnable() {
public void run() {
System.out.println(lastAttack.getX() + " " + lastAttack.getY());
newAttack.addAction(Actions.sequence(Actions.moveBy(game.W, 0, 1.5f), Actions.run(new Runnable() {
public void run() {
lastAttack.addAction(Actions.moveBy(-1 * game.W, 0));
newAttack.addAction(Actions.moveBy(-1 * game.W, 0));
System.out.println(lastAttack.getX() + " " + lastAttack.getY() + "\n" + "--");
lastAttack.setText(game.local.get(_attack));
lastAttackType.background = game.skin.getDrawable("attack_" + getAttackType(_attack));
}
})));
}
})));