nom par defaut ia et grisement bouton si <4

This commit is contained in:
Chiara 2020-04-24 11:52:19 +02:00
parent 8c25d99e3c
commit 962e4e4abd
2 changed files with 74 additions and 47 deletions

View File

@ -12,7 +12,7 @@ public class Main extends Application{
@Override @Override
public void start(Stage primaryStage) throws Exception{ public void start(Stage primaryStage) throws Exception{
System.out.println("Lancement de l'application"); System.out.println("Lancement de l'application");
Pane root = FXMLLoader.load(getClass().getResource("ressources/Jouer_tour(1)lancer_des.fxml")); Pane root = FXMLLoader.load(getClass().getResource("ressources/Menu.fxml"));
primaryStage.setTitle("Shadow Hunters"); primaryStage.setTitle("Shadow Hunters");
primaryStage.setScene(new Scene(root)); primaryStage.setScene(new Scene(root));
primaryStage.centerOnScreen(); primaryStage.centerOnScreen();

View File

@ -31,6 +31,7 @@ import main.Joueur;
public class PlayersController implements Initializable{ public class PlayersController implements Initializable{
@FXML private AnchorPane rootPane; @FXML private AnchorPane rootPane;
@FXML private Button btnCommencer;
@FXML private HBox hb1; @FXML private HBox hb1;
@FXML private HBox hb2; @FXML private HBox hb2;
@ -46,8 +47,10 @@ public class PlayersController implements Initializable{
private List<TextField> txt = new ArrayList<TextField>(); private List<TextField> txt = new ArrayList<TextField>();
private List<CheckBox> ia = new ArrayList<CheckBox>(); private List<CheckBox> ia = new ArrayList<CheckBox>();
//private List<Joueur> joueurs = new ArrayList<Joueur>();
private HashMap<Integer, Couple> joueurs = new HashMap<Integer, Couple>(); private HashMap<Integer, Couple> joueurs = new HashMap<Integer, Couple>();
private int nbJoueursH = 0;
private int nbJoueursV = 0;
/** /**
@ -72,7 +75,7 @@ public class PlayersController implements Initializable{
int i=0; int i=0;
for (Button btn : plus) { for (Button btn : plus) {
int compteur = i; int compteur = i;
btn.setOnAction(e -> {ajoutJoueur(compteur);}); btn.setOnAction(e -> {ajoutJoueur(compteur);});
i++; i++;
} }
@ -80,57 +83,55 @@ public class PlayersController implements Initializable{
tf.setEditable(false); tf.setEditable(false);
tf.setStyle("-fx-background-color: silver;"); tf.setStyle("-fx-background-color: silver;");
} }
int j=0;
for (CheckBox cb : ia) {
int compteur = j;
cb.setOnAction(e -> {mettreNomDefaut(compteur);});
j++;
}
btnCommencer.setStyle("-fx-background-color: gray; -fx-text-fill: black;");
} }
@FXML @FXML
public void commencerJeux(MouseEvent mouseEvent) throws IOException{ public void commencerJeux(MouseEvent mouseEvent) throws IOException{
//ajout des joueurs finalement selectionner if (nbJoueursH + nbJoueursV >= 4) {
int nbJoueursH = 0; //ajout des joueurs finalement selectionner
int nbJoueursV = 0; int i = 0;
int i = 0; for (HBox hb : ligne) {
for (HBox hb : ligne) { TextField tf = (TextField) hb.getChildren().get(0);
TextField tf = (TextField) hb.getChildren().get(0); CheckBox cb = (CheckBox) hb.getChildren().get(2);
CheckBox cb = (CheckBox) hb.getChildren().get(2); if (tf.isEditable()) {
if (tf.isEditable()) { if(cb.isSelected()) {
if(cb.isSelected()) { joueurs.put(i, new Couple(tf.getText(), true));
joueurs.put(i, new Couple(tf.getText(), true)); }
nbJoueursV++; else {
joueurs.put(i, new Couple(tf.getText(), false));
}
} }
else { i++;
joueurs.put(i, new Couple(tf.getText(), false));
nbJoueursH++;
}
} }
i++; // Creer une configuration
} //View.applyConfiguration(new Configuration(joueurs, nbJoueursV, nbJoueursH));
if (nbJoueursH + nbJoueursV < 4) { FXMLLoader loader = new FXMLLoader(getClass().getResource("../ressources/Plateau.fxml"));
Alert alert = new Alert(AlertType.WARNING, "Il faut au moins de 4 joueurs !"); Parent root = loader.load();
alert.showAndWait();
}else {
System.out.println("Lancement du jeu..."); PlateauController pc = loader.getController();
GestionnaireJeu.setPlateauController(pc);
// Creer une configuration GestionnaireJeu.setConfiguration(new Configuration(this.joueurs));
//View.applyConfiguration(new Configuration(joueurs, nbJoueursV, nbJoueursH)); Map<Integer, Joueur> map = GestionnaireJeu.getJoueursMap(new Configuration(this.joueurs));
FXMLLoader loader = new FXMLLoader(getClass().getResource("../ressources/Plateau.fxml"));
Parent root = loader.load(); pc.showInformation(map);
Scene scene = new Scene(root);
Stage appStage = (Stage) ((Node) mouseEvent.getSource()).getScene().getWindow();
PlateauController pc = loader.getController(); appStage.setScene(scene);
GestionnaireJeu.setPlateauController(pc); appStage.show();
GestionnaireJeu.setConfiguration(new Configuration(this.joueurs)); GestionnaireJeu.lancerPartie();
Map<Integer, Joueur> map = GestionnaireJeu.getJoueursMap(new Configuration(this.joueurs));
pc.showInformation(map);
Scene scene = new Scene(root);
Stage appStage = (Stage) ((Node) mouseEvent.getSource()).getScene().getWindow();
appStage.setScene(scene);
appStage.show();
GestionnaireJeu.lancerPartie();
} }
} }
@ -147,6 +148,15 @@ public class PlayersController implements Initializable{
txt.get(indice).setEditable(true); txt.get(indice).setEditable(true);
txt.get(indice).setStyle("-fx-background-color: white;"); txt.get(indice).setStyle("-fx-background-color: white;");
plus.get(indice).setOnAction(e -> {enleverJoueur(indice);}); plus.get(indice).setOnAction(e -> {enleverJoueur(indice);});
if (ia.get(indice).isSelected()) {
nbJoueursV++;
}else
nbJoueursH++;
if (nbJoueursH + nbJoueursV >= 4) {
btnCommencer.setStyle("-fx-background-color: #1d1d1d; -fx-text-fill: #d8d8d8;");
}
} }
/** /**
@ -161,5 +171,22 @@ public class PlayersController implements Initializable{
txt.get(indice).setText(""); txt.get(indice).setText("");
txt.get(indice).setStyle("-fx-background-color: silver;"); txt.get(indice).setStyle("-fx-background-color: silver;");
plus.get(indice).setOnAction(e -> {ajoutJoueur(indice);}); plus.get(indice).setOnAction(e -> {ajoutJoueur(indice);});
if (ia.get(indice).isSelected())
nbJoueursV--;
else
nbJoueursH--;
if (nbJoueursH + nbJoueursV < 4) {
btnCommencer.setStyle("-fx-background-color: gray; -fx-text-fill: black;");
}
}
public void mettreNomDefaut(int indice) {
if (ia.get(indice).isSelected()) {
ajoutJoueur(indice);
txt.get(indice).setText("Joueur" + indice);
}else
enleverJoueur(indice);
} }
} }