|
|
|
@ -11,9 +11,11 @@ import javafx.scene.image.WritableImage;
|
|
|
|
|
import javafx.scene.layout.AnchorPane;
|
|
|
|
|
import javafx.scene.layout.GridPane;
|
|
|
|
|
import javafx.scene.paint.Color;
|
|
|
|
|
import javafx.scene.text.Text;
|
|
|
|
|
import javafx.util.Duration;
|
|
|
|
|
import model.Case;
|
|
|
|
|
import model.GameLoop;
|
|
|
|
|
import model.GameTime;
|
|
|
|
|
import model.Map;
|
|
|
|
|
|
|
|
|
|
import java.io.IOException;
|
|
|
|
@ -39,6 +41,10 @@ public class GamePlayController implements Initializable {
|
|
|
|
|
String pathPerso;
|
|
|
|
|
int i, diceNumber;
|
|
|
|
|
Thread personnage;
|
|
|
|
|
boolean finJeu = false;
|
|
|
|
|
GameTime gameTime;
|
|
|
|
|
GameLoop loop;
|
|
|
|
|
Text textEnd;
|
|
|
|
|
|
|
|
|
|
public int difficulty;
|
|
|
|
|
public int perso;
|
|
|
|
@ -52,10 +58,37 @@ public class GamePlayController implements Initializable {
|
|
|
|
|
levelRoot.getChildren().addAll(mapController.mapInitialisation(this.difficulty), persoController.playerInitialisation(this.difficulty,this.perso, mapController.getMap()), creatureImageView);
|
|
|
|
|
persoController.setActualCase(mapController.getStartCase());
|
|
|
|
|
playerImagePerso.setImage(new Image("image/personnage/Perso" + this.perso + ".2.png"));
|
|
|
|
|
GameLoop loop = new GameLoop(this.difficulty, mapController.getMap(), creatureImageView);
|
|
|
|
|
loop = new GameLoop(this.difficulty, mapController.getMap(), creatureImageView);
|
|
|
|
|
loop.start();
|
|
|
|
|
Text text = new Text();
|
|
|
|
|
text.setText("Time : ");
|
|
|
|
|
text.setX(1000);
|
|
|
|
|
text.setY(50);
|
|
|
|
|
text.setFill(Color.WHITE);
|
|
|
|
|
text.setStyle("-fx-font: 20 arial;");
|
|
|
|
|
Text textTimer = new Text();
|
|
|
|
|
textTimer.setText("");
|
|
|
|
|
textTimer.setX(1070);
|
|
|
|
|
textTimer.setY(50);
|
|
|
|
|
textTimer.setFill(Color.WHITE);
|
|
|
|
|
textTimer.setStyle("-fx-font: 20 arial;");
|
|
|
|
|
textEnd = new Text();
|
|
|
|
|
textEnd.setText("");
|
|
|
|
|
textEnd.setX(500);
|
|
|
|
|
textEnd.setY(500);
|
|
|
|
|
textEnd.setFill(Color.WHITE);
|
|
|
|
|
textEnd.setStyle("-fx-font: 100 arial;");
|
|
|
|
|
levelRoot.getChildren().addAll(text,textTimer,textEnd);
|
|
|
|
|
gameTime = new GameTime(textTimer);
|
|
|
|
|
gameTime.start();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public void timer(){
|
|
|
|
|
if(finJeu){
|
|
|
|
|
gameTime.stop();
|
|
|
|
|
loop.stop();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public void movePlayerNextCase() throws InterruptedException {
|
|
|
|
|
persoImageView = persoController.persoImageView;
|
|
|
|
@ -79,163 +112,171 @@ public class GamePlayController implements Initializable {
|
|
|
|
|
int time6 = 600;
|
|
|
|
|
int time7 = 700;
|
|
|
|
|
int time8 = 800;
|
|
|
|
|
|
|
|
|
|
//animation déplacement vers la droite
|
|
|
|
|
if(caseActuelle.getCoordX() > caseAncienne.getCoordX()){
|
|
|
|
|
System.out.println(pathPerso + "7.png");
|
|
|
|
|
Image imagePerso7 = new Image(Objects.requireNonNull(getClass().getClassLoader().getResource(pathPerso + "7.png")).toExternalForm());
|
|
|
|
|
Image imagePerso8 = new Image(Objects.requireNonNull(getClass().getClassLoader().getResource(pathPerso + "8.png")).toExternalForm());
|
|
|
|
|
Image imagePerso9 = new Image(Objects.requireNonNull(getClass().getClassLoader().getResource(pathPerso + "9.png")).toExternalForm());
|
|
|
|
|
timeline.getKeyFrames().add(new KeyFrame(Duration.millis(time1), event -> {
|
|
|
|
|
persoImageView.setImage(imagePerso8);
|
|
|
|
|
persoImageView.setLayoutX(persoImageView.getLayoutX()+avancementCase);
|
|
|
|
|
}));
|
|
|
|
|
timeline.getKeyFrames().add(new KeyFrame(Duration.millis(time2), event -> {
|
|
|
|
|
persoImageView.setImage(imagePerso7);
|
|
|
|
|
persoImageView.setLayoutX(persoImageView.getLayoutX()+avancementCase);
|
|
|
|
|
}));
|
|
|
|
|
timeline.getKeyFrames().add(new KeyFrame(Duration.millis(time3), event -> {
|
|
|
|
|
persoImageView.setImage(imagePerso9);
|
|
|
|
|
persoImageView.setLayoutX(persoImageView.getLayoutX()+avancementCase);
|
|
|
|
|
}));
|
|
|
|
|
timeline.getKeyFrames().add(new KeyFrame(Duration.millis(time4), event -> {
|
|
|
|
|
persoImageView.setImage(imagePerso7);
|
|
|
|
|
persoImageView.setLayoutX(persoImageView.getLayoutX()+avancementCase);
|
|
|
|
|
}));
|
|
|
|
|
timeline.getKeyFrames().add(new KeyFrame(Duration.millis(time5), event -> {
|
|
|
|
|
persoImageView.setImage(imagePerso9);
|
|
|
|
|
persoImageView.setLayoutX(persoImageView.getLayoutX()+avancementCase);
|
|
|
|
|
}));
|
|
|
|
|
timeline.getKeyFrames().add(new KeyFrame(Duration.millis(time6), event -> {
|
|
|
|
|
persoImageView.setImage(imagePerso7);
|
|
|
|
|
persoImageView.setLayoutX(persoImageView.getLayoutX()+avancementCase);
|
|
|
|
|
}));
|
|
|
|
|
timeline.getKeyFrames().add(new KeyFrame(Duration.millis(time7), event -> {
|
|
|
|
|
persoImageView.setImage(imagePerso9);
|
|
|
|
|
persoImageView.setLayoutX(persoImageView.getLayoutX()+avancementCase);
|
|
|
|
|
}));
|
|
|
|
|
timeline.getKeyFrames().add(new KeyFrame(Duration.millis(time8), event -> {
|
|
|
|
|
persoImageView.setImage(imagePerso8);
|
|
|
|
|
persoImageView.setLayoutX(persoImageView.getLayoutX()+avancementCase);
|
|
|
|
|
}));
|
|
|
|
|
timeline.play();
|
|
|
|
|
}
|
|
|
|
|
//animation déplacement vers la gauche
|
|
|
|
|
if(caseActuelle.getCoordX() < caseAncienne.getCoordX()){
|
|
|
|
|
Image imagePerso4 = new Image(getClass().getClassLoader().getResource(pathPerso+"4.png").toExternalForm());
|
|
|
|
|
Image imagePerso5 = new Image(getClass().getClassLoader().getResource(pathPerso+"5.png").toExternalForm());
|
|
|
|
|
Image imagePerso6 = new Image(getClass().getClassLoader().getResource(pathPerso+"6.png").toExternalForm());
|
|
|
|
|
timeline.getKeyFrames().add(new KeyFrame(Duration.millis(time1), event -> {
|
|
|
|
|
persoImageView.setImage(imagePerso5);
|
|
|
|
|
persoImageView.setLayoutX(persoImageView.getLayoutX()-avancementCase);
|
|
|
|
|
}));
|
|
|
|
|
timeline.getKeyFrames().add(new KeyFrame(Duration.millis(time2), event -> {
|
|
|
|
|
persoImageView.setImage(imagePerso4);
|
|
|
|
|
persoImageView.setLayoutX(persoImageView.getLayoutX()-avancementCase);
|
|
|
|
|
}));
|
|
|
|
|
timeline.getKeyFrames().add(new KeyFrame(Duration.millis(time3), event -> {
|
|
|
|
|
persoImageView.setImage(imagePerso6);
|
|
|
|
|
persoImageView.setLayoutX(persoImageView.getLayoutX()-avancementCase);
|
|
|
|
|
}));
|
|
|
|
|
timeline.getKeyFrames().add(new KeyFrame(Duration.millis(time4), event -> {
|
|
|
|
|
persoImageView.setImage(imagePerso4);
|
|
|
|
|
persoImageView.setLayoutX(persoImageView.getLayoutX()-avancementCase);
|
|
|
|
|
}));
|
|
|
|
|
timeline.getKeyFrames().add(new KeyFrame(Duration.millis(time5), event -> {
|
|
|
|
|
persoImageView.setImage(imagePerso6);
|
|
|
|
|
persoImageView.setLayoutX(persoImageView.getLayoutX()-avancementCase);
|
|
|
|
|
}));
|
|
|
|
|
timeline.getKeyFrames().add(new KeyFrame(Duration.millis(time6), event -> {
|
|
|
|
|
persoImageView.setImage(imagePerso4);
|
|
|
|
|
persoImageView.setLayoutX(persoImageView.getLayoutX()-avancementCase);
|
|
|
|
|
}));
|
|
|
|
|
timeline.getKeyFrames().add(new KeyFrame(Duration.millis(time7), event -> {
|
|
|
|
|
persoImageView.setImage(imagePerso6);
|
|
|
|
|
persoImageView.setLayoutX(persoImageView.getLayoutX()-avancementCase);
|
|
|
|
|
}));
|
|
|
|
|
timeline.getKeyFrames().add(new KeyFrame(Duration.millis(time8), event -> {
|
|
|
|
|
persoImageView.setImage(imagePerso5);
|
|
|
|
|
persoImageView.setLayoutX(persoImageView.getLayoutX()-avancementCase);
|
|
|
|
|
}));
|
|
|
|
|
timeline.play();
|
|
|
|
|
}
|
|
|
|
|
//animation déplacement vers le haut
|
|
|
|
|
if(caseActuelle.getCoordY() < caseAncienne.getCoordY()){
|
|
|
|
|
Image imagePerso10 = new Image(getClass().getClassLoader().getResource(pathPerso+"10.png").toExternalForm());
|
|
|
|
|
Image imagePerso11 = new Image(getClass().getClassLoader().getResource(pathPerso+"11.png").toExternalForm());
|
|
|
|
|
Image imagePerso12 = new Image(getClass().getClassLoader().getResource(pathPerso+"12.png").toExternalForm());
|
|
|
|
|
timeline.getKeyFrames().add(new KeyFrame(Duration.millis(time1), event -> {
|
|
|
|
|
persoImageView.setImage(imagePerso11);
|
|
|
|
|
persoImageView.setLayoutY(persoImageView.getLayoutY()-avancementCase);
|
|
|
|
|
}));
|
|
|
|
|
timeline.getKeyFrames().add(new KeyFrame(Duration.millis(time2), event -> {
|
|
|
|
|
persoImageView.setImage(imagePerso10);
|
|
|
|
|
persoImageView.setLayoutY(persoImageView.getLayoutY()-avancementCase);
|
|
|
|
|
}));
|
|
|
|
|
timeline.getKeyFrames().add(new KeyFrame(Duration.millis(time3), event -> {
|
|
|
|
|
persoImageView.setImage(imagePerso12);
|
|
|
|
|
persoImageView.setLayoutY(persoImageView.getLayoutY()-avancementCase);
|
|
|
|
|
}));
|
|
|
|
|
timeline.getKeyFrames().add(new KeyFrame(Duration.millis(time4), event -> {
|
|
|
|
|
persoImageView.setImage(imagePerso10);
|
|
|
|
|
persoImageView.setLayoutY(persoImageView.getLayoutY()-avancementCase);
|
|
|
|
|
}));
|
|
|
|
|
timeline.getKeyFrames().add(new KeyFrame(Duration.millis(time5), event -> {
|
|
|
|
|
persoImageView.setImage(imagePerso12);
|
|
|
|
|
persoImageView.setLayoutY(persoImageView.getLayoutY()-avancementCase);
|
|
|
|
|
}));
|
|
|
|
|
timeline.getKeyFrames().add(new KeyFrame(Duration.millis(time6), event -> {
|
|
|
|
|
persoImageView.setImage(imagePerso10);
|
|
|
|
|
persoImageView.setLayoutY(persoImageView.getLayoutY()-avancementCase);
|
|
|
|
|
}));
|
|
|
|
|
timeline.getKeyFrames().add(new KeyFrame(Duration.millis(time7), event -> {
|
|
|
|
|
persoImageView.setImage(imagePerso12);
|
|
|
|
|
persoImageView.setLayoutY(persoImageView.getLayoutY()-avancementCase);
|
|
|
|
|
}));
|
|
|
|
|
timeline.getKeyFrames().add(new KeyFrame(Duration.millis(time8), event -> {
|
|
|
|
|
persoImageView.setImage(imagePerso11);
|
|
|
|
|
persoImageView.setLayoutY(persoImageView.getLayoutY()-avancementCase);
|
|
|
|
|
}));
|
|
|
|
|
timeline.play();
|
|
|
|
|
}
|
|
|
|
|
//animation déplacement vers le bas
|
|
|
|
|
if(caseActuelle.getCoordY() > caseAncienne.getCoordY()){
|
|
|
|
|
Image imagePerso1 = new Image(getClass().getClassLoader().getResource(pathPerso+"1.png").toExternalForm());
|
|
|
|
|
Image imagePerso2 = new Image(getClass().getClassLoader().getResource(pathPerso+"2.png").toExternalForm());
|
|
|
|
|
Image imagePerso3 = new Image(getClass().getClassLoader().getResource(pathPerso+"3.png").toExternalForm());
|
|
|
|
|
timeline.getKeyFrames().add(new KeyFrame(Duration.millis(time1), event -> {
|
|
|
|
|
persoImageView.setImage(imagePerso2);
|
|
|
|
|
persoImageView.setLayoutY(persoImageView.getLayoutY()+avancementCase);
|
|
|
|
|
}));
|
|
|
|
|
timeline.getKeyFrames().add(new KeyFrame(Duration.millis(time2), event -> {
|
|
|
|
|
persoImageView.setImage(imagePerso1);
|
|
|
|
|
persoImageView.setLayoutY(persoImageView.getLayoutY()+avancementCase);
|
|
|
|
|
}));
|
|
|
|
|
timeline.getKeyFrames().add(new KeyFrame(Duration.millis(time3), event -> {
|
|
|
|
|
persoImageView.setImage(imagePerso3);
|
|
|
|
|
persoImageView.setLayoutY(persoImageView.getLayoutY()+avancementCase);
|
|
|
|
|
}));
|
|
|
|
|
timeline.getKeyFrames().add(new KeyFrame(Duration.millis(time4), event -> {
|
|
|
|
|
persoImageView.setImage(imagePerso1);
|
|
|
|
|
persoImageView.setLayoutY(persoImageView.getLayoutY()+avancementCase);
|
|
|
|
|
}));
|
|
|
|
|
timeline.getKeyFrames().add(new KeyFrame(Duration.millis(time5), event -> {
|
|
|
|
|
persoImageView.setImage(imagePerso3);
|
|
|
|
|
persoImageView.setLayoutY(persoImageView.getLayoutY()+avancementCase);
|
|
|
|
|
}));
|
|
|
|
|
timeline.getKeyFrames().add(new KeyFrame(Duration.millis(time6), event -> {
|
|
|
|
|
persoImageView.setImage(imagePerso1);
|
|
|
|
|
persoImageView.setLayoutY(persoImageView.getLayoutY()+avancementCase);
|
|
|
|
|
}));
|
|
|
|
|
timeline.getKeyFrames().add(new KeyFrame(Duration.millis(800), event -> {
|
|
|
|
|
persoImageView.setImage(imagePerso3);
|
|
|
|
|
persoImageView.setLayoutY(persoImageView.getLayoutY()+avancementCase);
|
|
|
|
|
}));
|
|
|
|
|
timeline.getKeyFrames().add(new KeyFrame(Duration.millis(900), event -> {
|
|
|
|
|
persoImageView.setImage(imagePerso2);
|
|
|
|
|
persoImageView.setLayoutY(persoImageView.getLayoutY()+avancementCase);
|
|
|
|
|
}));
|
|
|
|
|
timeline.play();
|
|
|
|
|
if(caseActuelle != null){
|
|
|
|
|
//animation déplacement vers la droite
|
|
|
|
|
if (caseActuelle.getCoordX() > caseAncienne.getCoordX()) {
|
|
|
|
|
System.out.println(pathPerso + "7.png");
|
|
|
|
|
Image imagePerso7 = new Image(Objects.requireNonNull(getClass().getClassLoader().getResource(pathPerso + "7.png")).toExternalForm());
|
|
|
|
|
Image imagePerso8 = new Image(Objects.requireNonNull(getClass().getClassLoader().getResource(pathPerso + "8.png")).toExternalForm());
|
|
|
|
|
Image imagePerso9 = new Image(Objects.requireNonNull(getClass().getClassLoader().getResource(pathPerso + "9.png")).toExternalForm());
|
|
|
|
|
timeline.getKeyFrames().add(new KeyFrame(Duration.millis(time1), event -> {
|
|
|
|
|
persoImageView.setImage(imagePerso8);
|
|
|
|
|
persoImageView.setLayoutX(persoImageView.getLayoutX() + avancementCase);
|
|
|
|
|
}));
|
|
|
|
|
timeline.getKeyFrames().add(new KeyFrame(Duration.millis(time2), event -> {
|
|
|
|
|
persoImageView.setImage(imagePerso7);
|
|
|
|
|
persoImageView.setLayoutX(persoImageView.getLayoutX() + avancementCase);
|
|
|
|
|
}));
|
|
|
|
|
timeline.getKeyFrames().add(new KeyFrame(Duration.millis(time3), event -> {
|
|
|
|
|
persoImageView.setImage(imagePerso9);
|
|
|
|
|
persoImageView.setLayoutX(persoImageView.getLayoutX() + avancementCase);
|
|
|
|
|
}));
|
|
|
|
|
timeline.getKeyFrames().add(new KeyFrame(Duration.millis(time4), event -> {
|
|
|
|
|
persoImageView.setImage(imagePerso7);
|
|
|
|
|
persoImageView.setLayoutX(persoImageView.getLayoutX() + avancementCase);
|
|
|
|
|
}));
|
|
|
|
|
timeline.getKeyFrames().add(new KeyFrame(Duration.millis(time5), event -> {
|
|
|
|
|
persoImageView.setImage(imagePerso9);
|
|
|
|
|
persoImageView.setLayoutX(persoImageView.getLayoutX() + avancementCase);
|
|
|
|
|
}));
|
|
|
|
|
timeline.getKeyFrames().add(new KeyFrame(Duration.millis(time6), event -> {
|
|
|
|
|
persoImageView.setImage(imagePerso7);
|
|
|
|
|
persoImageView.setLayoutX(persoImageView.getLayoutX() + avancementCase);
|
|
|
|
|
}));
|
|
|
|
|
timeline.getKeyFrames().add(new KeyFrame(Duration.millis(time7), event -> {
|
|
|
|
|
persoImageView.setImage(imagePerso9);
|
|
|
|
|
persoImageView.setLayoutX(persoImageView.getLayoutX() + avancementCase);
|
|
|
|
|
}));
|
|
|
|
|
timeline.getKeyFrames().add(new KeyFrame(Duration.millis(time8), event -> {
|
|
|
|
|
persoImageView.setImage(imagePerso8);
|
|
|
|
|
persoImageView.setLayoutX(persoImageView.getLayoutX() + avancementCase);
|
|
|
|
|
}));
|
|
|
|
|
timeline.play();
|
|
|
|
|
}
|
|
|
|
|
//animation déplacement vers la gauche
|
|
|
|
|
if (caseActuelle.getCoordX() < caseAncienne.getCoordX()) {
|
|
|
|
|
Image imagePerso4 = new Image(getClass().getClassLoader().getResource(pathPerso + "4.png").toExternalForm());
|
|
|
|
|
Image imagePerso5 = new Image(getClass().getClassLoader().getResource(pathPerso + "5.png").toExternalForm());
|
|
|
|
|
Image imagePerso6 = new Image(getClass().getClassLoader().getResource(pathPerso + "6.png").toExternalForm());
|
|
|
|
|
timeline.getKeyFrames().add(new KeyFrame(Duration.millis(time1), event -> {
|
|
|
|
|
persoImageView.setImage(imagePerso5);
|
|
|
|
|
persoImageView.setLayoutX(persoImageView.getLayoutX() - avancementCase);
|
|
|
|
|
}));
|
|
|
|
|
timeline.getKeyFrames().add(new KeyFrame(Duration.millis(time2), event -> {
|
|
|
|
|
persoImageView.setImage(imagePerso4);
|
|
|
|
|
persoImageView.setLayoutX(persoImageView.getLayoutX() - avancementCase);
|
|
|
|
|
}));
|
|
|
|
|
timeline.getKeyFrames().add(new KeyFrame(Duration.millis(time3), event -> {
|
|
|
|
|
persoImageView.setImage(imagePerso6);
|
|
|
|
|
persoImageView.setLayoutX(persoImageView.getLayoutX() - avancementCase);
|
|
|
|
|
}));
|
|
|
|
|
timeline.getKeyFrames().add(new KeyFrame(Duration.millis(time4), event -> {
|
|
|
|
|
persoImageView.setImage(imagePerso4);
|
|
|
|
|
persoImageView.setLayoutX(persoImageView.getLayoutX() - avancementCase);
|
|
|
|
|
}));
|
|
|
|
|
timeline.getKeyFrames().add(new KeyFrame(Duration.millis(time5), event -> {
|
|
|
|
|
persoImageView.setImage(imagePerso6);
|
|
|
|
|
persoImageView.setLayoutX(persoImageView.getLayoutX() - avancementCase);
|
|
|
|
|
}));
|
|
|
|
|
timeline.getKeyFrames().add(new KeyFrame(Duration.millis(time6), event -> {
|
|
|
|
|
persoImageView.setImage(imagePerso4);
|
|
|
|
|
persoImageView.setLayoutX(persoImageView.getLayoutX() - avancementCase);
|
|
|
|
|
}));
|
|
|
|
|
timeline.getKeyFrames().add(new KeyFrame(Duration.millis(time7), event -> {
|
|
|
|
|
persoImageView.setImage(imagePerso6);
|
|
|
|
|
persoImageView.setLayoutX(persoImageView.getLayoutX() - avancementCase);
|
|
|
|
|
}));
|
|
|
|
|
timeline.getKeyFrames().add(new KeyFrame(Duration.millis(time8), event -> {
|
|
|
|
|
persoImageView.setImage(imagePerso5);
|
|
|
|
|
persoImageView.setLayoutX(persoImageView.getLayoutX() - avancementCase);
|
|
|
|
|
}));
|
|
|
|
|
timeline.play();
|
|
|
|
|
}
|
|
|
|
|
//animation déplacement vers le haut
|
|
|
|
|
if (caseActuelle.getCoordY() < caseAncienne.getCoordY()) {
|
|
|
|
|
Image imagePerso10 = new Image(getClass().getClassLoader().getResource(pathPerso + "10.png").toExternalForm());
|
|
|
|
|
Image imagePerso11 = new Image(getClass().getClassLoader().getResource(pathPerso + "11.png").toExternalForm());
|
|
|
|
|
Image imagePerso12 = new Image(getClass().getClassLoader().getResource(pathPerso + "12.png").toExternalForm());
|
|
|
|
|
timeline.getKeyFrames().add(new KeyFrame(Duration.millis(time1), event -> {
|
|
|
|
|
persoImageView.setImage(imagePerso11);
|
|
|
|
|
persoImageView.setLayoutY(persoImageView.getLayoutY() - avancementCase);
|
|
|
|
|
}));
|
|
|
|
|
timeline.getKeyFrames().add(new KeyFrame(Duration.millis(time2), event -> {
|
|
|
|
|
persoImageView.setImage(imagePerso10);
|
|
|
|
|
persoImageView.setLayoutY(persoImageView.getLayoutY() - avancementCase);
|
|
|
|
|
}));
|
|
|
|
|
timeline.getKeyFrames().add(new KeyFrame(Duration.millis(time3), event -> {
|
|
|
|
|
persoImageView.setImage(imagePerso12);
|
|
|
|
|
persoImageView.setLayoutY(persoImageView.getLayoutY() - avancementCase);
|
|
|
|
|
}));
|
|
|
|
|
timeline.getKeyFrames().add(new KeyFrame(Duration.millis(time4), event -> {
|
|
|
|
|
persoImageView.setImage(imagePerso10);
|
|
|
|
|
persoImageView.setLayoutY(persoImageView.getLayoutY() - avancementCase);
|
|
|
|
|
}));
|
|
|
|
|
timeline.getKeyFrames().add(new KeyFrame(Duration.millis(time5), event -> {
|
|
|
|
|
persoImageView.setImage(imagePerso12);
|
|
|
|
|
persoImageView.setLayoutY(persoImageView.getLayoutY() - avancementCase);
|
|
|
|
|
}));
|
|
|
|
|
timeline.getKeyFrames().add(new KeyFrame(Duration.millis(time6), event -> {
|
|
|
|
|
persoImageView.setImage(imagePerso10);
|
|
|
|
|
persoImageView.setLayoutY(persoImageView.getLayoutY() - avancementCase);
|
|
|
|
|
}));
|
|
|
|
|
timeline.getKeyFrames().add(new KeyFrame(Duration.millis(time7), event -> {
|
|
|
|
|
persoImageView.setImage(imagePerso12);
|
|
|
|
|
persoImageView.setLayoutY(persoImageView.getLayoutY() - avancementCase);
|
|
|
|
|
}));
|
|
|
|
|
timeline.getKeyFrames().add(new KeyFrame(Duration.millis(time8), event -> {
|
|
|
|
|
persoImageView.setImage(imagePerso11);
|
|
|
|
|
persoImageView.setLayoutY(persoImageView.getLayoutY() - avancementCase);
|
|
|
|
|
}));
|
|
|
|
|
timeline.play();
|
|
|
|
|
}
|
|
|
|
|
//animation déplacement vers le bas
|
|
|
|
|
if (caseActuelle.getCoordY() > caseAncienne.getCoordY()) {
|
|
|
|
|
Image imagePerso1 = new Image(getClass().getClassLoader().getResource(pathPerso + "1.png").toExternalForm());
|
|
|
|
|
Image imagePerso2 = new Image(getClass().getClassLoader().getResource(pathPerso + "2.png").toExternalForm());
|
|
|
|
|
Image imagePerso3 = new Image(getClass().getClassLoader().getResource(pathPerso + "3.png").toExternalForm());
|
|
|
|
|
timeline.getKeyFrames().add(new KeyFrame(Duration.millis(time1), event -> {
|
|
|
|
|
persoImageView.setImage(imagePerso2);
|
|
|
|
|
persoImageView.setLayoutY(persoImageView.getLayoutY() + avancementCase);
|
|
|
|
|
}));
|
|
|
|
|
timeline.getKeyFrames().add(new KeyFrame(Duration.millis(time2), event -> {
|
|
|
|
|
persoImageView.setImage(imagePerso1);
|
|
|
|
|
persoImageView.setLayoutY(persoImageView.getLayoutY() + avancementCase);
|
|
|
|
|
}));
|
|
|
|
|
timeline.getKeyFrames().add(new KeyFrame(Duration.millis(time3), event -> {
|
|
|
|
|
persoImageView.setImage(imagePerso3);
|
|
|
|
|
persoImageView.setLayoutY(persoImageView.getLayoutY() + avancementCase);
|
|
|
|
|
}));
|
|
|
|
|
timeline.getKeyFrames().add(new KeyFrame(Duration.millis(time4), event -> {
|
|
|
|
|
persoImageView.setImage(imagePerso1);
|
|
|
|
|
persoImageView.setLayoutY(persoImageView.getLayoutY() + avancementCase);
|
|
|
|
|
}));
|
|
|
|
|
timeline.getKeyFrames().add(new KeyFrame(Duration.millis(time5), event -> {
|
|
|
|
|
persoImageView.setImage(imagePerso3);
|
|
|
|
|
persoImageView.setLayoutY(persoImageView.getLayoutY() + avancementCase);
|
|
|
|
|
}));
|
|
|
|
|
timeline.getKeyFrames().add(new KeyFrame(Duration.millis(time6), event -> {
|
|
|
|
|
persoImageView.setImage(imagePerso1);
|
|
|
|
|
persoImageView.setLayoutY(persoImageView.getLayoutY() + avancementCase);
|
|
|
|
|
}));
|
|
|
|
|
timeline.getKeyFrames().add(new KeyFrame(Duration.millis(800), event -> {
|
|
|
|
|
persoImageView.setImage(imagePerso3);
|
|
|
|
|
persoImageView.setLayoutY(persoImageView.getLayoutY() + avancementCase);
|
|
|
|
|
}));
|
|
|
|
|
timeline.getKeyFrames().add(new KeyFrame(Duration.millis(900), event -> {
|
|
|
|
|
persoImageView.setImage(imagePerso2);
|
|
|
|
|
persoImageView.setLayoutY(persoImageView.getLayoutY() + avancementCase);
|
|
|
|
|
}));
|
|
|
|
|
timeline.play();
|
|
|
|
|
}
|
|
|
|
|
if(caseActuelle.isEnd() == true){
|
|
|
|
|
textEnd.setText("Fin");
|
|
|
|
|
}
|
|
|
|
|
}else{
|
|
|
|
|
System.out.println("Fin du jeu");
|
|
|
|
|
finJeu = true;
|
|
|
|
|
timer();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|