From 33e67b4dff0afaa83254233ce5b1b66030a395d8 Mon Sep 17 00:00:00 2001 From: Bastien NOEL Date: Thu, 14 May 2020 14:09:04 +0200 Subject: [PATCH 1/6] ajout de l'ecran de fin de partie --- .../controller/FinDePartieControlleur.java | 39 ++++++++++++++++++- src/ihm/controller/PlateauController.java | 10 +++++ src/ihm/ressources/Fin_De_Partie.fxml | 12 ++++-- 3 files changed, 57 insertions(+), 4 deletions(-) diff --git a/src/ihm/controller/FinDePartieControlleur.java b/src/ihm/controller/FinDePartieControlleur.java index b0369ac..621b02b 100644 --- a/src/ihm/controller/FinDePartieControlleur.java +++ b/src/ihm/controller/FinDePartieControlleur.java @@ -1,22 +1,59 @@ package ihm.controller; import java.net.URL; +import java.util.ArrayList; +import java.util.List; import java.util.ResourceBundle; import javafx.fxml.FXML; import javafx.fxml.Initializable; import javafx.scene.control.Label; import javafx.scene.layout.Pane; +import main.Joueur; public class FinDePartieControlleur implements Initializable { @FXML private Pane rootPane; @FXML private Label labelWinner; + public static List listeWinner = new ArrayList(); + + /* Pour faire des tests + private Joueur j1 = new Joueur("j1"); + private Joueur j2 = new Joueur("j2"); + private Joueur j3 = new Joueur("j3"); +*/ + String names; @Override public void initialize(URL arg0, ResourceBundle arg1) { + /* + listeWinner.add(j1); + listeWinner.add(j2); + listeWinner.add(j3); +*/ - labelWinner.setText("ceci est un test d'affichage"); + for (Joueur winner : listeWinner) { + if(names != null) { + names = names +"\n" + winner.getNom(); + } + else { + names = winner.getNom(); + } + + } + + + labelWinner.setText(names); } + + public List getListeWinner() { + return listeWinner; + } + + public void setListeWinner(List listeWinner) { + FinDePartieControlleur.listeWinner = listeWinner; + } + + } diff --git a/src/ihm/controller/PlateauController.java b/src/ihm/controller/PlateauController.java index d136d6e..9fb3d04 100644 --- a/src/ihm/controller/PlateauController.java +++ b/src/ihm/controller/PlateauController.java @@ -409,6 +409,16 @@ public class PlateauController implements Initializable { JoueurIHM jihm = getJoueurIHM(j); jihm.setZoneJoueur(root); } + + public void afficherFinDePartie(List listeJoueursGagnants) throws IOException { + + final URL fxmlURL = getClass().getResource("/ihm/ressources/Fin_De_Partie.fxml"); + final ResourceBundle bundle = ResourceBundle.getBundle("domaine.properties.langue", Locale.FRANCE); + final FXMLLoader fxmlLoader = new FXMLLoader(fxmlURL, bundle); + Pane root = (Pane)fxmlLoader.load(); + + FinDePartieControlleur.listeWinner = listeJoueursGagnants; + } public CarteEquipement getChoixEquipementVole(Joueur joueur) { JoueurIHM jihm = getJoueurIHM(joueur); diff --git a/src/ihm/ressources/Fin_De_Partie.fxml b/src/ihm/ressources/Fin_De_Partie.fxml index 5436189..bc597b2 100644 --- a/src/ihm/ressources/Fin_De_Partie.fxml +++ b/src/ihm/ressources/Fin_De_Partie.fxml @@ -5,9 +5,8 @@ - - + @@ -27,7 +26,14 @@ - + From bedabccb2e4efb8317036cce5de6f1c4135b00c8 Mon Sep 17 00:00:00 2001 From: Yessine-iut Date: Thu, 14 May 2020 15:05:20 +0200 Subject: [PATCH 2/6] =?UTF-8?q?Pseudo=20vide=20ou=20m=C3=AAme=20pseudo=20a?= =?UTF-8?q?vec=20un=20autre=20joueur=20interdit?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/ihm/controller/PlayersController.java | 63 +++++++++++++++++++++-- 1 file changed, 59 insertions(+), 4 deletions(-) diff --git a/src/ihm/controller/PlayersController.java b/src/ihm/controller/PlayersController.java index e4679dc..020a0d9 100644 --- a/src/ihm/controller/PlayersController.java +++ b/src/ihm/controller/PlayersController.java @@ -45,7 +45,16 @@ public class PlayersController implements Initializable{ @FXML private HBox hb7; @FXML private HBox hb8; - + //TextField + /*@FXML private TextField txt1; + @FXML private TextField txt2; + @FXML private TextField txt3; + @FXML private TextField txt4; + @FXML private TextField txt5; + @FXML private TextField txt6; + @FXML private TextField txt7; + @FXML private TextField txt8; +*/ //pour les radios boutons @FXML private HBox hbr1; @FXML private HBox hbr2; @@ -99,6 +108,15 @@ public class PlayersController implements Initializable{ ligne.add(hb7); ligne.add(hb8); + /*txt.add(txt1); + txt.add(txt2); + txt.add(txt3); + txt.add(txt4); + txt.add(txt5); + txt.add(txt6); + txt.add(txt7); + txt.add(txt8);*/ + listeHbIA.add(hbr1); listeHbIA.add(hbr2); listeHbIA.add(hbr3); @@ -119,7 +137,6 @@ public class PlayersController implements Initializable{ listeToggleRbIa.add(tg8); - for (HBox hb : ligne) { txt.add((TextField) hb.getChildren().get(0)); plus.add((Button) hb.getChildren().get(1)); @@ -163,6 +180,9 @@ public class PlayersController implements Initializable{ @FXML public void commencerJeux(MouseEvent mouseEvent) throws IOException{ if (nbJoueursH + nbJoueursV >= 4) { + + if(textVide()==false && memeNom()==false) { + //ajout des joueurs finalement selectionner int i = 0; for (HBox hb : ligne) { @@ -205,7 +225,11 @@ public class PlayersController implements Initializable{ appStage.setScene(scene); appStage.show(); gj.lancerPartie(); - + } + else { + System.out.println("On ne peut pas prendre un nom vide ou prendre le même nom"); + + } } else { @@ -310,11 +334,42 @@ public class PlayersController implements Initializable{ public void mettreNomDefaut(int indice) { if (ia.get(indice).isSelected()) { - ajoutJoueur(indice); txt.get(indice).setText("Joueur" + indice); + + ajoutJoueur(indice); }else enleverJoueur(indice); } + public boolean textVide() { + for(int i=0;i Date: Thu, 14 May 2020 17:15:13 +0200 Subject: [PATCH 3/6] =?UTF-8?q?Avoir=20le=20m=C3=AAme=20pseudo=20et=20un?= =?UTF-8?q?=20nom=20vide=20impossible?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/ihm/controller/PlayersController.java | 19 +------------------ 1 file changed, 1 insertion(+), 18 deletions(-) diff --git a/src/ihm/controller/PlayersController.java b/src/ihm/controller/PlayersController.java index 239f6fb..d776e97 100644 --- a/src/ihm/controller/PlayersController.java +++ b/src/ihm/controller/PlayersController.java @@ -1,6 +1,7 @@ package ihm.controller; import java.io.IOException; + import java.io.InputStream; import java.net.URL; import java.util.ArrayList; @@ -45,16 +46,6 @@ public class PlayersController implements Initializable{ @FXML private HBox hb7; @FXML private HBox hb8; - //TextField - /*@FXML private TextField txt1; - @FXML private TextField txt2; - @FXML private TextField txt3; - @FXML private TextField txt4; - @FXML private TextField txt5; - @FXML private TextField txt6; - @FXML private TextField txt7; - @FXML private TextField txt8; -*/ //pour les radios boutons @FXML private HBox hbr1; @FXML private HBox hbr2; @@ -108,14 +99,6 @@ public class PlayersController implements Initializable{ ligne.add(hb7); ligne.add(hb8); - /*txt.add(txt1); - txt.add(txt2); - txt.add(txt3); - txt.add(txt4); - txt.add(txt5); - txt.add(txt6); - txt.add(txt7); - txt.add(txt8);*/ listeHbIA.add(hbr1); listeHbIA.add(hbr2); From e0a99f1a1a3e6c8b55be8403721a1d307ede343e Mon Sep 17 00:00:00 2001 From: Bastien NOEL Date: Thu, 14 May 2020 18:36:14 +0200 Subject: [PATCH 4/6] modification de l'ecran de fin de partie --- .../controller/FinDePartieControlleur.java | 102 +++++++++++++++--- src/ihm/controller/PlateauController.java | 3 +- src/ihm/ressources/Fin_De_Partie.fxml | 16 +-- src/personnage/Allie.java | 3 +- 4 files changed, 101 insertions(+), 23 deletions(-) diff --git a/src/ihm/controller/FinDePartieControlleur.java b/src/ihm/controller/FinDePartieControlleur.java index 621b02b..320bdb2 100644 --- a/src/ihm/controller/FinDePartieControlleur.java +++ b/src/ihm/controller/FinDePartieControlleur.java @@ -1,50 +1,111 @@ package ihm.controller; + +import java.io.IOException; +import java.io.InputStream; import java.net.URL; import java.util.ArrayList; import java.util.List; import java.util.ResourceBundle; +import ihm.EffetSonore; import javafx.fxml.FXML; +import javafx.fxml.FXMLLoader; import javafx.fxml.Initializable; +import javafx.geometry.Pos; +import javafx.scene.Node; +import javafx.scene.Scene; import javafx.scene.control.Label; +import javafx.scene.input.MouseEvent; +import javafx.scene.layout.AnchorPane; +import javafx.scene.layout.HBox; import javafx.scene.layout.Pane; +import javafx.scene.layout.VBox; +import javafx.scene.text.Font; +import javafx.stage.Stage; import main.Joueur; public class FinDePartieControlleur implements Initializable { @FXML private Pane rootPane; @FXML private Label labelWinner; + @FXML private VBox vbListeWinner; public static List listeWinner = new ArrayList(); + //public static List listeImageCarte = new ArrayList(); + - /* Pour faire des tests - private Joueur j1 = new Joueur("j1"); - private Joueur j2 = new Joueur("j2"); - private Joueur j3 = new Joueur("j3"); + /* + //initialise pour faire des test (a supprimer) + private Joueur j1 = new Joueur("Joueur1"); + private Joueur j2 = new Joueur("Joueur2"); + private Joueur j3 = new Joueur("Joueur3"); + private Joueur j4 = new Joueur("Joueur4"); + private Joueur j5 = new Joueur("Joueur5"); + private Joueur j6 = new Joueur("Joueur6"); */ - String names; @Override public void initialize(URL arg0, ResourceBundle arg1) { + /* + //initialise pour faire des test (a supprimer) listeWinner.add(j1); listeWinner.add(j2); listeWinner.add(j3); -*/ + listeWinner.add(j4); + listeWinner.add(j5); + listeWinner.add(j6); - for (Joueur winner : listeWinner) { - if(names != null) { - names = names +"\n" + winner.getNom(); - } - else { - names = winner.getNom(); - } + + listeImageCarte.add(PlateauController.getImageDosCarte(RessourceLoader.DOS_LUMIERE)); + listeImageCarte.add(PlateauController.getImageDosCarte(RessourceLoader.CARTES_TENEBRE)); + listeImageCarte.add(PlateauController.getImageDosCarte(RessourceLoader.DOS_VISION)); + */ + + + for(int i = 0 ; i getListeWinner() { @@ -54,6 +115,19 @@ public class FinDePartieControlleur implements Initializable { public void setListeWinner(List listeWinner) { FinDePartieControlleur.listeWinner = listeWinner; } + + /* + public static List getListeImageCarte() { + return listeImageCarte; + } + + public static void setListeImageCarte(List listeImageCarte) { + FinDePartieControlleur.listeImageCarte = listeImageCarte; + } + + */ + + } diff --git a/src/ihm/controller/PlateauController.java b/src/ihm/controller/PlateauController.java index 9fb3d04..d0c6b2d 100644 --- a/src/ihm/controller/PlateauController.java +++ b/src/ihm/controller/PlateauController.java @@ -410,7 +410,7 @@ public class PlateauController implements Initializable { jihm.setZoneJoueur(root); } - public void afficherFinDePartie(List listeJoueursGagnants) throws IOException { + public void afficherFinDePartie(List listeJoueursGagnants /*, List listeImagesGagnant*/) throws IOException { final URL fxmlURL = getClass().getResource("/ihm/ressources/Fin_De_Partie.fxml"); final ResourceBundle bundle = ResourceBundle.getBundle("domaine.properties.langue", Locale.FRANCE); @@ -418,6 +418,7 @@ public class PlateauController implements Initializable { Pane root = (Pane)fxmlLoader.load(); FinDePartieControlleur.listeWinner = listeJoueursGagnants; + //FinDePartieControlleur.listeImageCarte = listeImagesGagnant; } public CarteEquipement getChoixEquipementVole(Joueur joueur) { diff --git a/src/ihm/ressources/Fin_De_Partie.fxml b/src/ihm/ressources/Fin_De_Partie.fxml index bc597b2..177f818 100644 --- a/src/ihm/ressources/Fin_De_Partie.fxml +++ b/src/ihm/ressources/Fin_De_Partie.fxml @@ -1,6 +1,7 @@ + @@ -23,17 +24,18 @@ - + -