Afficher piocher une carte

This commit is contained in:
Yessine-iut 2020-05-12 15:56:10 +02:00
parent 83c080f719
commit 697a35679c
3 changed files with 60 additions and 8 deletions

View File

@ -1,8 +1,11 @@
package ihm.controller;
import java.net.URL;
import java.util.ResourceBundle;
import carte.CartePiochable;
import carte.CartePiochable.Type;
import javafx.fxml.FXML;
import javafx.fxml.Initializable;
import javafx.scene.control.Button;
@ -12,24 +15,24 @@ public class PiocherCarte implements Initializable{
@FXML private Button vision;
@FXML private Button tenebre;
//private Type carte;
private Type carte;
@Override
public void initialize(URL arg0, ResourceBundle arg1) {
/*lumiere.setOnAction(e ->{
carte = new TypeLumiere();
lumiere.setOnAction(e ->{
carte = CartePiochable.Type.LUMIERE;
});
vision.setOnAction(e -> {
carte = new TypeVision();
carte = CartePiochable.Type.VISION;
});
tenebre.setOnAction(e -> {
carte = new TypeTenebre();
});*/
carte = CartePiochable.Type.TENEBRE;
});
}
/*
public Type getCarte() {
return carte;
}*/
}
}

View File

@ -57,6 +57,7 @@ public class PlateauController implements Initializable {
private ChoisirBoolean cb;
private ChoisirEquipement ce;
private ChoisirJoueur cj;
private PiocherCarte pc;
private LancerDes ld;
@ -399,6 +400,17 @@ public class PlateauController implements Initializable {
JoueurIHM jihm = getJoueurIHM(j);
jihm.setZoneJoueur(root);
}
public void afficherPiocher(Joueur j) throws IOException {
final URL fxmlURL = getClass().getResource("/ihm/ressources/Jouer_tour(2b)piocher_carte.fxml");
final ResourceBundle bundle = ResourceBundle.getBundle("domaine.properties.langue", Locale.FRANCE);
final FXMLLoader fxmlLoader = new FXMLLoader(fxmlURL, bundle);
Pane root = (Pane)fxmlLoader.load();
//CartePiochable lzj = fxmlLoader.getController();
//lzj.setImageView(this.getImageCarte(j.getCarteLieu()));
JoueurIHM jihm = getJoueurIHM(j);
jihm.setZoneJoueur(root);
}
public CarteEquipement getChoixEquipementVole(Joueur joueur) {
JoueurIHM jihm = getJoueurIHM(joueur);
@ -422,6 +434,13 @@ public class PlateauController implements Initializable {
jihm.getZoneJoueur().getChildren().setAll();
return result.getJoueur();
}
public Type getChoixCarte(Joueur joueur) {
JoueurIHM jihm = getJoueurIHM(joueur);
Type result = this.pc.getCarte();
this.pc = null;
jihm.getZoneJoueur().getChildren().setAll();
return result;
}
public void deplacer(Joueur currentJoueur) {
JoueurIHM jIHM = getJoueurIHM(currentJoueur);

View File

@ -241,6 +241,36 @@ public class GestionnaireJeu {
}
}
public Type choisirCarte(Joueur joueur) {
Platform.runLater(() -> {
try {
pc.afficherPiocher(joueur);
} catch (IOException e) {
e.printStackTrace();
}
});
this.waitPlateau();
final FutureTask<Type> query = new FutureTask<Type>(new Callable<Type>() {
@Override
public Type call() throws Exception {
return pc.getChoixCarte(joueur);
}
});
Platform.runLater(query);
try {
return query.get();
} catch (InterruptedException | ExecutionException e) {
e.printStackTrace();
}
return null;
}
public void rollDice(Joueur joueur, int typeDice, int ... rolls){
pc.rollDice(joueur,typeDice,rolls);