package ihm.controller; import java.io.IOException; import java.net.URL; import java.util.Locale; import java.util.ResourceBundle; import ihm.PopUpBoolean; import javafx.fxml.FXML; import javafx.fxml.FXMLLoader; import javafx.fxml.Initializable; import javafx.scene.Parent; import javafx.scene.control.ScrollPane; import javafx.scene.image.ImageView; import javafx.scene.layout.AnchorPane; import javafx.scene.layout.BorderPane; import javafx.scene.layout.GridPane; import javafx.scene.layout.Pane; import main.Joueur; public class PlateauControllerTest implements Initializable { @FXML private BorderPane root; /** * initialise les donn�es du plateau */ @Override public void initialize(URL arg0, ResourceBundle arg1) { //initialisation des attributs des joueurs for(int i = 0; i < 8; i++) { AnchorPane ap = getAnchorPaneJoueur(i); Pane p; try { final URL fxmlURL = getClass().getResource("/ihm/ressources/MenuJoueur.fxml"); final ResourceBundle bundle = ResourceBundle.getBundle("domaine.properties.langue", Locale.ENGLISH); final FXMLLoader fxmlLoader = new FXMLLoader(fxmlURL, bundle); p = fxmlLoader.load(); if(i > 1 && i < 3) { rotateContent(p, 90); } setContentAnchorPane(ap, p); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } public GridPane getGridPaneJoueur(int pos) { int position = pos%8 / 2; position++; AnchorPane apParent = (AnchorPane) root.getChildren().get(position); GridPane gp = (GridPane) apParent.getChildren().get(0); return (GridPane) gp.getChildren().get(pos%2); } public AnchorPane getAnchorPaneJoueur(int pos) { GridPane gp = getGridPaneJoueur(pos); return (AnchorPane) gp.getChildren().get(0); } public ImageView getImageViewJoueur(int pos) { GridPane gp = getGridPaneJoueur(pos); return (ImageView) gp.getChildren().get(1); } public ScrollPane getScrollPaneJoueur(int pos) { GridPane gp = getGridPaneJoueur(pos); return (ScrollPane) gp.getChildren().get(2); } public void setContentAnchorPane(AnchorPane ap, Pane p) { ap.getChildren().setAll(p); AnchorPane.setTopAnchor(p, 0.0); AnchorPane.setBottomAnchor(p, 0.0); AnchorPane.setLeftAnchor(p, 0.0); AnchorPane.setRightAnchor(p, 0.0); } public void rotateContent(Pane p, double rotation) { p.setRotate(rotation); } /* int OFFSET_X = 0; int OFFSET_Y = 0; int WIDTH = 557; int HEIGHT = 557; int COUNT = 6; int COLUMNS = 6; //anchorPane1.getChildren().setAll(imageView); ImageView imageView; try { imageView = FXMLLoader.load(getClass().getResource("../ressources/Dés.fxml")); imageView.setViewport(new Rectangle2D(OFFSET_X, OFFSET_Y, WIDTH, HEIGHT)); imageView.fitWidthProperty().bind(anchorPane1.widthProperty()); final SpriteAnimation animation = new SpriteAnimation( imageView, Duration.millis(250), COUNT, COLUMNS, OFFSET_X, OFFSET_Y, WIDTH, HEIGHT ); animation.setCycleCount(Animation.INDEFINITE); animation.play(); anchorPane1.getChildren().addAll(new Group(imageView)); anchorPane1.setOnMousePressed(new EventHandler( ) { @Override public void handle(Event arg0) { animation.stop(); } }); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } */ /** * Affiche aux yeux de tous la carte personnage du joueur * * @param j : Le joueur sur lequel on a cliqu� */ public boolean choisir(Joueur j) throws IOException { final URL fxmlURL = getClass().getResource("/ihm/ressources/choisirBoolean.fxml"); final ResourceBundle bundle = ResourceBundle.getBundle("domaine.properties.langue", Locale.ENGLISH); final FXMLLoader fxmlLoader = new FXMLLoader(fxmlURL, bundle); Parent root = fxmlLoader.load(); PopUpBoolean popup = new PopUpBoolean(root, "Consulter sa carte"); return popup.display(); } public void rollDice(Joueur j, int typeDice, int[] resultats) { } /** * Permet de consulter sa carte perssonage en cas d'oublie * * @param j : Le joueur sur lequel on a cliqu� */ }