is it possible to shake primary stage with Timeline and so Use XTimeline and YTimeLine?
final Timeline Xtimeline = new Timeline();//for Animate On X'-Stage
Xtimeline.setCycleCount(Timeline.INDEFINITE);
Xtimeline.setAutoReverse(true);
final Timeline Ytimeline = new Timeline();//for Animate On Y'-Stage
Ytimeline.setCycleCount(Timeline.INDEFINITE);
Ytimeline.setAutoReverse(true);
Try This..
int x = 0;
int y = 0;
public void shakeStage() {
Timeline timelineX = new Timeline(new KeyFrame(Duration.seconds(0.1), new EventHandler<ActionEvent>() {
@Override
public void handle(ActionEvent t) {
if (x == 0) {
primaryStage.setX(primaryStage.getX() + 10);
x = 1;
} else {
primaryStage.setX(primaryStage.getX() - 10);
x = 0;
}
}
}));
timelineX.setCycleCount(Timeline.INDEFINITE);
timelineX.setAutoReverse(false);
timelineX.play();
Timeline timelineY = new Timeline(new KeyFrame(Duration.seconds(0.1), new EventHandler<ActionEvent>() {
@Override
public void handle(ActionEvent t) {
if (y == 0) {
primaryStage.setY(primaryStage.getY() + 10);
y = 1;
} else {
primaryStage.setY(primaryStage.getY() - 10);
y = 0;
}
}
}));
timelineY.setCycleCount(Timeline.INDEFINITE);
timelineY.setAutoReverse(false);
timelineY.play();
}