lien bouton plateau

This commit is contained in:
Chiara 2020-04-20 16:06:41 +02:00
parent 86635e6980
commit 7e59fc9c60
3 changed files with 141 additions and 24 deletions

View File

@ -1,36 +1,106 @@
package ihm.controller;
import java.io.IOException;
import java.net.URL;
import java.util.ArrayList;
import java.util.List;
import java.util.ResourceBundle;
import ihm.PopUp;
import javafx.fxml.FXML;
import javafx.fxml.FXMLLoader;
import javafx.fxml.Initializable;
import javafx.scene.control.Alert;
import javafx.scene.control.Alert.AlertType;
import javafx.scene.input.MouseEvent;
import javafx.scene.layout.BorderPane;
import javafx.scene.control.Button;
import javafx.scene.layout.Pane;
import javafx.scene.layout.VBox;
import javafx.scene.layout.HBox;
import main.Joueur;
public class PlateauController implements Initializable {
private List<VBox> vboxJoueur = new ArrayList<VBox>();
private List<Button> btnRevelation = new ArrayList<Button>();
private List<Button> btnCartePerso = new ArrayList<Button>();
@FXML private VBox joueur1;
@FXML private VBox joueur2;
@FXML private VBox joueur3;
@FXML private VBox joueur4;
@FXML private VBox joueur5;
@FXML private VBox joueur6;
@FXML private VBox joueur7;
@FXML private VBox joueur8;
/**
* attribuer les cartes
* ecrire le nom des joueurs au bon endroit
* placer les cartes lieux
*/
@Override
public void initialize(URL arg0, ResourceBundle arg1) {
// TODO Auto-generated method stub
//initialisation des joueurs
this.vboxJoueur.add(joueur1);
this.vboxJoueur.add(joueur2);
this.vboxJoueur.add(joueur3);
this.vboxJoueur.add(joueur4);
this.vboxJoueur.add(joueur5);
this.vboxJoueur.add(joueur6);
this.vboxJoueur.add(joueur7);
this.vboxJoueur.add(joueur8);
for (VBox vbox : vboxJoueur) {
HBox enfant = (HBox) vbox.getChildren().get(3);
btnCartePerso.add((Button) enfant.getChildren().get(0));
btnRevelation.add((Button) enfant.getChildren().get(1));
}
//initilaisation des boutons se reveler
for (Button b : btnRevelation) {
b.setOnAction(e -> {
try {
seReveler(null);
} catch (IOException e1) {
e1.printStackTrace();
}
});
}
//initialisation des bouton carte personnage
for (Button b : btnCartePerso) {
b.setOnAction(e -> {
try {
consulterSaCarte(null);
} catch (IOException e1) {
e1.printStackTrace();
}
});
}
}
/**
* Affiche aux yeux de tous la carte personnage du joueur
*
* @param mouseEvent : clique sur le bouton
* @param mouseEvent : clique sur le bouton "Se reveler"
* @throws IOException
*/
public void seReveler(MouseEvent mouseEvent) throws IOException {
public void seReveler(Joueur j) throws IOException {
System.out.println("Le joueur ... se revèle");
Pane pane = FXMLLoader.load(getClass().getResource("../ressources/Reveler_son_identite.fxml"));
PopUp popup = new PopUp(pane, "reveler son identité");
popup.display();
}
/**
* Permet de consulter sa carte perssonage en cas d'oublie
*
* @param mouseEvent : clique sur le bouton "Carte personnage"
* @throws IOException
*/
public void consulterSaCarte(Joueur j) throws IOException {
System.out.println("Le joueur ... consulte sa carte");
Pane pane = FXMLLoader.load(getClass().getResource("../ressources/afficher_carte_perso.fxml"));
PopUp popup = new PopUp(pane, "Consulter sa carte");
popup.display();
}
}

View File

@ -13,7 +13,7 @@
<top>
<HBox alignment="CENTER" prefHeight="149.0" prefWidth="1280.0" BorderPane.alignment="CENTER">
<children>
<VBox alignment="CENTER" prefHeight="164.0" prefWidth="212.0" rotate="180.0">
<VBox fx:id="joueur1" alignment="CENTER" prefHeight="164.0" prefWidth="212.0" rotate="180.0">
<children>
<Label styleClass="text" stylesheets="@style/plateau.css" text="Nom Faction" />
<Label styleClass="text" stylesheets="@style/plateau.css" text="Nom Perssonage" />
@ -21,7 +21,7 @@
<HBox alignment="CENTER" prefHeight="46.0" prefWidth="212.0">
<children>
<Button mnemonicParsing="false" styleClass="bouton" stylesheets="@style/plateau.css" text="Carte personnage" />
<Button mnemonicParsing="false" onMouseClicked="#seReveler" styleClass="bouton" stylesheets="@style/plateau.css" text="Se révéler">
<Button mnemonicParsing="false" styleClass="bouton" stylesheets="@style/plateau.css" text="Se révéler">
<HBox.margin>
<Insets left="5.0" />
</HBox.margin>
@ -48,7 +48,7 @@
<Insets right="5.0" />
</HBox.margin>
</VBox>
<VBox alignment="CENTER" prefHeight="164.0" prefWidth="212.0" rotate="180.0">
<VBox fx:id="joueur2" alignment="CENTER" prefHeight="164.0" prefWidth="212.0" rotate="180.0">
<children>
<Label styleClass="text" stylesheets="@style/plateau.css" text="Nom Faction" />
<Label styleClass="text" stylesheets="@style/plateau.css" text="Nom Perssonage" />
@ -56,7 +56,7 @@
<HBox alignment="CENTER" prefHeight="46.0" prefWidth="212.0">
<children>
<Button mnemonicParsing="false" styleClass="bouton" stylesheets="@style/plateau.css" text="Carte personnage" />
<Button mnemonicParsing="false" onMouseClicked="#seReveler" styleClass="bouton" stylesheets="@style/plateau.css" text="Se révéler">
<Button mnemonicParsing="false" styleClass="bouton" stylesheets="@style/plateau.css" text="Se révéler">
<HBox.margin>
<Insets left="5.0" />
</HBox.margin>
@ -89,7 +89,7 @@
<bottom>
<HBox alignment="CENTER" prefHeight="155.0" prefWidth="1280.0" BorderPane.alignment="CENTER">
<children>
<VBox alignment="CENTER" prefHeight="164.0" prefWidth="212.0">
<VBox fx:id="joueur3" alignment="CENTER" prefHeight="164.0" prefWidth="212.0">
<children>
<Label styleClass="text" stylesheets="@style/plateau.css" text="Nom Faction" />
<Label styleClass="text" stylesheets="@style/plateau.css" text="Nom Personnage" />
@ -97,7 +97,7 @@
<HBox alignment="CENTER" prefHeight="44.0" prefWidth="274.0">
<children>
<Button mnemonicParsing="false" styleClass="bouton" stylesheets="@style/plateau.css" text="Carte personnage" />
<Button mnemonicParsing="false" onMouseClicked="#seReveler" styleClass="bouton" stylesheets="@style/plateau.css" text="Se reveler">
<Button mnemonicParsing="false" styleClass="bouton" stylesheets="@style/plateau.css" text="Se reveler">
<HBox.margin>
<Insets left="5.0" />
</HBox.margin>
@ -123,7 +123,7 @@
<Insets right="5.0" />
</HBox.margin>
</VBox>
<VBox alignment="CENTER" prefHeight="164.0" prefWidth="212.0">
<VBox fx:id="joueur4" alignment="CENTER" prefHeight="164.0" prefWidth="212.0">
<children>
<Label styleClass="text" stylesheets="@style/plateau.css" text="Nom Faction" />
<Label styleClass="text" stylesheets="@style/plateau.css" text="Nom Personnage" />
@ -131,7 +131,7 @@
<HBox alignment="CENTER" prefHeight="44.0" prefWidth="274.0">
<children>
<Button mnemonicParsing="false" styleClass="bouton" stylesheets="@style/plateau.css" text="Carte personnage" />
<Button mnemonicParsing="false" onMouseClicked="#seReveler" styleClass="bouton" stylesheets="@style/plateau.css" text="Se reveler">
<Button mnemonicParsing="false" styleClass="bouton" stylesheets="@style/plateau.css" text="Se reveler">
<HBox.margin>
<Insets left="5.0" />
</HBox.margin>
@ -163,7 +163,7 @@
<left>
<VBox alignment="CENTER" prefHeight="496.0" prefWidth="160.0" BorderPane.alignment="CENTER">
<children>
<VBox alignment="CENTER" prefHeight="181.0" prefWidth="333.0" rotate="90.0">
<VBox fx:id="joueur5" alignment="CENTER" prefHeight="181.0" prefWidth="333.0" rotate="90.0">
<children>
<Label styleClass="text" stylesheets="@style/plateau.css" text="Nom Faction" />
<Label styleClass="text" stylesheets="@style/plateau.css" text="Nom personnage" />
@ -171,7 +171,7 @@
<HBox alignment="CENTER" prefHeight="53.0" prefWidth="198.0">
<children>
<Button mnemonicParsing="false" styleClass="bouton" stylesheets="@style/plateau.css" text="Carte perssonage" />
<Button mnemonicParsing="false" onMouseClicked="#seReveler" styleClass="bouton" stylesheets="@style/plateau.css" text="Se révéler">
<Button mnemonicParsing="false" styleClass="bouton" stylesheets="@style/plateau.css" text="Se révéler">
<HBox.margin>
<Insets left="5.0" />
</HBox.margin>
@ -197,7 +197,7 @@
<Insets bottom="100.0" left="-80.0" />
</VBox.margin>
</VBox>
<VBox alignment="CENTER" prefHeight="179.0" prefWidth="329.0" rotate="90.0">
<VBox fx:id="joueur7" alignment="CENTER" prefHeight="179.0" prefWidth="329.0" rotate="90.0">
<children>
<Label styleClass="text" stylesheets="@style/plateau.css" text="Nom Faction" />
<Label styleClass="text" stylesheets="@style/plateau.css" text="Nom personnage" />
@ -205,7 +205,7 @@
<HBox alignment="CENTER" prefHeight="53.0" prefWidth="198.0">
<children>
<Button mnemonicParsing="false" styleClass="bouton" stylesheets="@style/plateau.css" text="Carte perssonage" />
<Button mnemonicParsing="false" onMouseClicked="#seReveler" styleClass="bouton" stylesheets="@style/plateau.css" text="Se révéler">
<Button mnemonicParsing="false" styleClass="bouton" stylesheets="@style/plateau.css" text="Se révéler">
<HBox.margin>
<Insets left="5.0" />
</HBox.margin>
@ -237,7 +237,7 @@
<right>
<VBox prefHeight="496.0" prefWidth="214.0" BorderPane.alignment="CENTER">
<children>
<VBox alignment="CENTER" prefHeight="163.0" prefWidth="329.0" rotate="270.0">
<VBox fx:id="joueur6" alignment="CENTER" prefHeight="163.0" prefWidth="329.0" rotate="270.0">
<children>
<Label styleClass="text" stylesheets="@style/plateau.css" text="Nom Faction" />
<Label styleClass="text" stylesheets="@style/plateau.css" text="Nom perssonage" />
@ -245,7 +245,7 @@
<HBox alignment="CENTER" prefHeight="39.0" prefWidth="214.0">
<children>
<Button mnemonicParsing="false" styleClass="bouton" stylesheets="@style/plateau.css" text="Carte personnage" />
<Button mnemonicParsing="false" onMouseClicked="#seReveler" styleClass="bouton" stylesheets="@style/plateau.css" text="Se révéler">
<Button mnemonicParsing="false" styleClass="bouton" stylesheets="@style/plateau.css" text="Se révéler">
<HBox.margin>
<Insets left="5.0" />
</HBox.margin>
@ -271,7 +271,7 @@
<Insets bottom="100.0" right="-80.0" />
</VBox.margin>
</VBox>
<VBox alignment="CENTER" prefHeight="163.0" prefWidth="329.0" rotate="270.0">
<VBox fx:id="joueur8" alignment="CENTER" prefHeight="163.0" prefWidth="329.0" rotate="270.0">
<children>
<Label styleClass="text" stylesheets="@style/plateau.css" text="Nom Faction" />
<Label styleClass="text" stylesheets="@style/plateau.css" text="Nom perssonage" />
@ -279,7 +279,7 @@
<HBox alignment="CENTER" prefHeight="39.0" prefWidth="214.0">
<children>
<Button mnemonicParsing="false" styleClass="bouton" stylesheets="@style/plateau.css" text="Carte personnage" />
<Button mnemonicParsing="false" onMouseClicked="#seReveler" styleClass="bouton" stylesheets="@style/plateau.css" text="Se révéler">
<Button mnemonicParsing="false" styleClass="bouton" stylesheets="@style/plateau.css" text="Se révéler">
<HBox.margin>
<Insets left="5.0" />
</HBox.margin>

View File

@ -0,0 +1,47 @@
<?xml version="1.0" encoding="UTF-8"?>
<?import javafx.scene.control.Label?>
<?import javafx.scene.image.ImageView?>
<?import javafx.scene.layout.HBox?>
<?import javafx.scene.layout.Pane?>
<?import javafx.scene.layout.VBox?>
<?import javafx.scene.text.Font?>
<Pane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="400.0" prefWidth="600.0" xmlns="http://javafx.com/javafx/11.0.1" xmlns:fx="http://javafx.com/fxml/1">
<children>
<VBox alignment="CENTER" layoutY="-1.0" prefHeight="400.0" prefWidth="600.0">
<children>
<Label text="Vous êtes :">
<font>
<Font size="24.0" />
</font>
</Label>
<HBox alignment="CENTER" prefHeight="231.0" prefWidth="600.0">
<children>
<ImageView fitHeight="326.0" fitWidth="233.5" pickOnBounds="true" preserveRatio="true" />
<VBox alignment="CENTER" prefHeight="326.0" prefWidth="319.0">
<children>
<Label text="Nom Personnage">
<font>
<Font size="18.0" />
</font>
</Label>
<Label text="Votre compétence :">
<font>
<Font size="18.0" />
</font>
</Label>
<Label text="Text compétance">
<font>
<Font size="18.0" />
</font>
</Label>
</children>
</VBox>
</children>
</HBox>
</children>
</VBox>
</children>
</Pane>