Révélation des cartes personnage fonctionnel

This commit is contained in:
Paul Gross 2020-05-09 16:23:12 +02:00
parent 3e88a7d1a7
commit b10e068a28
10 changed files with 37 additions and 21 deletions

Binary file not shown.

View File

@ -2,6 +2,7 @@ package ihm.controller;
import javafx.scene.control.Button; import javafx.scene.control.Button;
import javafx.scene.control.Label; import javafx.scene.control.Label;
import javafx.scene.image.Image;
import javafx.scene.image.ImageView; import javafx.scene.image.ImageView;
import javafx.scene.layout.AnchorPane; import javafx.scene.layout.AnchorPane;
import javafx.scene.layout.Border; import javafx.scene.layout.Border;
@ -21,14 +22,16 @@ public class JoueurIHM {
private Pane zoneJoueur; private Pane zoneJoueur;
private GestionnaireDePions gestionnaireDePions; private GestionnaireDePions gestionnaireDePions;
private Color color; private Color color;
private PlateauController pc;
public JoueurIHM(int i, Joueur joueur, Pane zoneJoueur, Color color, GridPane gridPaneVie, GridPane gridPaneLieux) { public JoueurIHM(int i, Joueur joueur, Pane zoneJoueur, Color color, GridPane gridPaneVie, GridPane gridPaneLieux, PlateauController pc) {
this.setPosition(i); this.setPosition(i);
this.setJoueur(joueur); this.setJoueur(joueur);
this.zoneJoueur = zoneJoueur; this.zoneJoueur = zoneJoueur;
this.color = color; this.color = color;
this.gestionnaireDePions = new GestionnaireDePions(this.color,gridPaneVie, gridPaneLieux); this.gestionnaireDePions = new GestionnaireDePions(this.color,gridPaneVie, gridPaneLieux);
this.pc = pc;
zoneJoueur.setBorder(new Border(new BorderStroke(color, BorderStrokeStyle.SOLID, CornerRadii.EMPTY, new BorderWidths(5)))); zoneJoueur.setBorder(new Border(new BorderStroke(color, BorderStrokeStyle.SOLID, CornerRadii.EMPTY, new BorderWidths(5))));
@ -43,10 +46,11 @@ public class JoueurIHM {
this.joueur.reveal(); this.joueur.reveal();
ImageView iv = this.getCartePersonnage(); ImageView iv = this.getCartePersonnage();
// TODO System.out.println(this.joueur.getCartePersonnage());
//this.joueur.getCartePersonnage().getId(); Image im = this.pc.getImageCarte(this.joueur.getCartePersonnage());
//iv.setImage(arg0); GridPane gp = (GridPane) iv.getParent();
System.out.println(joueur.getRevele()); iv.setImage(im);
iv.fitHeightProperty().bind(gp.heightProperty());
btn.setDisable(true); btn.setDisable(true);
}); });
@ -77,7 +81,6 @@ public class JoueurIHM {
AnchorPane.setLeftAnchor(p,0.0); AnchorPane.setLeftAnchor(p,0.0);
AnchorPane.setRightAnchor(p,0.0); AnchorPane.setRightAnchor(p,0.0);
AnchorPane.setTopAnchor(p,0.0); AnchorPane.setTopAnchor(p,0.0);
} }

View File

@ -41,6 +41,7 @@ import javafx.scene.layout.VBox;
import javafx.scene.paint.Color; import javafx.scene.paint.Color;
import main.GestionnaireJeu; import main.GestionnaireJeu;
import main.Joueur; import main.Joueur;
import personnage.CartePersonnage;
public class PlateauController implements Initializable { public class PlateauController implements Initializable {
@ -83,7 +84,7 @@ public class PlateauController implements Initializable {
for(int i : map.keySet()) { for(int i : map.keySet()) {
System.out.println(i); System.out.println(i);
joueursIHM.add(new JoueurIHM(i,map.get(i),getPaneJoueur(i),new Color(Math.random(), Math.random(), Math.random(),1),gridPaneVie, gridPaneLieux)); joueursIHM.add(new JoueurIHM(i,map.get(i),getPaneJoueur(i),new Color(Math.random(), Math.random(), Math.random(),1),gridPaneVie, gridPaneLieux,this));
} }
for(int i = 0; i<joueursIHM.size(); i++) { for(int i = 0; i<joueursIHM.size(); i++) {
@ -200,6 +201,8 @@ public class PlateauController implements Initializable {
} }
} }
private void applyImageLieu(ImageView iv, Image im) { private void applyImageLieu(ImageView iv, Image im) {
StackPane sp = (StackPane) iv.getParent(); StackPane sp = (StackPane) iv.getParent();
@ -375,4 +378,10 @@ public class PlateauController implements Initializable {
PopUp pu = new PopUp(root, "Pause"); PopUp pu = new PopUp(root, "Pause");
pu.display(); pu.display();
} }
public Image getImageCarte(Carte carte) {
BufferedImage bi = this.mapRessourcesCartes.get(carte);
return RessourceLoader.toJavaFX(bi);
}
} }

View File

@ -127,13 +127,13 @@
</Group> </Group>
<VBox alignment="CENTER" spacing="100.0"> <VBox alignment="CENTER" spacing="100.0">
<children> <children>
<GridPane hgap="50.0" rotate="180.0"> <GridPane hgap="50.0" rotate="180.0" VBox.vgrow="ALWAYS">
<columnConstraints> <columnConstraints>
<ColumnConstraints hgrow="ALWAYS" /> <ColumnConstraints hgrow="ALWAYS" />
<ColumnConstraints hgrow="ALWAYS" /> <ColumnConstraints hgrow="ALWAYS" />
</columnConstraints> </columnConstraints>
<rowConstraints> <rowConstraints>
<RowConstraints minHeight="10.0" vgrow="SOMETIMES" /> <RowConstraints vgrow="ALWAYS" />
</rowConstraints> </rowConstraints>
<children> <children>
<GridPane nodeOrientation="LEFT_TO_RIGHT"> <GridPane nodeOrientation="LEFT_TO_RIGHT">
@ -611,13 +611,13 @@
</VBox> </VBox>
</children> </children>
</HBox> </HBox>
<GridPane hgap="50.0"> <GridPane hgap="50.0" VBox.vgrow="ALWAYS">
<columnConstraints> <columnConstraints>
<ColumnConstraints hgrow="ALWAYS" /> <ColumnConstraints hgrow="ALWAYS" />
<ColumnConstraints hgrow="ALWAYS" /> <ColumnConstraints hgrow="ALWAYS" />
</columnConstraints> </columnConstraints>
<rowConstraints> <rowConstraints>
<RowConstraints minHeight="10.0" vgrow="SOMETIMES" /> <RowConstraints vgrow="ALWAYS" />
</rowConstraints> </rowConstraints>
<children> <children>
<GridPane nodeOrientation="LEFT_TO_RIGHT"> <GridPane nodeOrientation="LEFT_TO_RIGHT">

View File

@ -191,6 +191,7 @@ public class Plateau extends Thread{
public void initCartePersonnage(List<CartePersonnage> cps) throws Exception { public void initCartePersonnage(List<CartePersonnage> cps) throws Exception {
System.out.println(cps);
int nbJoueurs = this.joueurs.size(); int nbJoueurs = this.joueurs.size();
List<CartePersonnage> lcp = new ArrayList<>(nbJoueurs); List<CartePersonnage> lcp = new ArrayList<>(nbJoueurs);
@ -215,6 +216,7 @@ public class Plateau extends Thread{
throw new Exception(); throw new Exception();
} }
System.out.println(lcp);
for(int i = 0; i< nbJoueurs; i++) { for(int i = 0; i< nbJoueurs; i++) {
Joueur j = joueurs.get(i); Joueur j = joueurs.get(i);
@ -229,7 +231,6 @@ public class Plateau extends Thread{
Collections.shuffle(cps); Collections.shuffle(cps);
int nbShadow = nbEquipeShadowHunter; int nbShadow = nbEquipeShadowHunter;
int nbHunter = nbEquipeShadowHunter; int nbHunter = nbEquipeShadowHunter;
int nbNeutre = nbNeutres; int nbNeutre = nbNeutres;
@ -252,6 +253,7 @@ public class Plateau extends Thread{
lcp.add(cp); lcp.add(cp);
} }
} }
System.out.println(lcp);
return lcp; return lcp;
} }
@ -260,7 +262,6 @@ public class Plateau extends Thread{
int nbJoueurs = this.joueurs.size(); int nbJoueurs = this.joueurs.size();
int i = 0; int i = 0;
System.out.println(nbJoueurs);
while(true) { while(true) {
Joueur currentJoueur = this.joueurs.get(i % nbJoueurs); Joueur currentJoueur = this.joueurs.get(i % nbJoueurs);

View File

@ -18,7 +18,7 @@ public class Bob extends CartePersonnage{
Condition condition = new ConditionStatistiques(ConditionStatistiques.JOUEUR, Joueur.PLAYER_NB_EQUIPEMENTS, 5, ConditionStatistiques.MORE); Condition condition = new ConditionStatistiques(ConditionStatistiques.JOUEUR, Joueur.PLAYER_NB_EQUIPEMENTS, 5, ConditionStatistiques.MORE);
this.setCondition(condition); this.setCondition(condition);
this.setEquipe(CartePersonnage.Equipe.NEUTRE);
EffetTarget effet = new EffetTarget(new ActionVoler(ActionVoler.VOLER)); EffetTarget effet = new EffetTarget(new ActionVoler(ActionVoler.VOLER));
this.setEffet(effet); this.setEffet(effet);
} }
@ -28,7 +28,7 @@ public class Bob extends CartePersonnage{
Condition condition = new ConditionStatistiques(ConditionStatistiques.JOUEUR, Joueur.PLAYER_NB_EQUIPEMENTS, 5, ConditionStatistiques.MORE); Condition condition = new ConditionStatistiques(ConditionStatistiques.JOUEUR, Joueur.PLAYER_NB_EQUIPEMENTS, 5, ConditionStatistiques.MORE);
this.setCondition(condition); this.setCondition(condition);
this.setEquipe(CartePersonnage.Equipe.NEUTRE);
EffetTarget effet = new EffetTarget(new ActionVoler(ActionVoler.VOLER)); EffetTarget effet = new EffetTarget(new ActionVoler(ActionVoler.VOLER));
this.setEffet(effet); this.setEffet(effet);
} }

View File

@ -11,7 +11,7 @@ public class Charles extends CartePersonnage{
public Charles(Joueur joueur) { public Charles(Joueur joueur) {
super("Charles", "desc", 11, joueur); super("Charles", "desc", 11, joueur);
this.setEquipe(CartePersonnage.Equipe.NEUTRE);
Action action = new ActionAltererStatistiquesJoueur("HP",-2,true); Action action = new ActionAltererStatistiquesJoueur("HP",-2,true);
Effet effet = new EffetSelf(action); Effet effet = new EffetSelf(action);
this.setEffet(effet); this.setEffet(effet);
@ -20,7 +20,7 @@ public class Charles extends CartePersonnage{
public Charles() { public Charles() {
super("Charles", "desc", 11, null); super("Charles", "desc", 11, null);
this.setEquipe(CartePersonnage.Equipe.NEUTRE);
Action action = new ActionAltererStatistiquesJoueur("HP",-2,true); Action action = new ActionAltererStatistiquesJoueur("HP",-2,true);
Effet effet = new EffetSelf(action); Effet effet = new EffetSelf(action);
this.setEffet(effet); this.setEffet(effet);

View File

@ -33,7 +33,7 @@ public class Daniel extends CartePersonnage{
conditions.add(new ConditionMultiple(conditions2)); conditions.add(new ConditionMultiple(conditions2));
Condition winCondition = new ConditionMultipleOR(conditions); Condition winCondition = new ConditionMultipleOR(conditions);
this.setEquipe(CartePersonnage.Equipe.NEUTRE);
this.setCondition(winCondition); this.setCondition(winCondition);
} }
@ -50,7 +50,7 @@ public class Daniel extends CartePersonnage{
conditions.add(new ConditionMultiple(conditions2)); conditions.add(new ConditionMultiple(conditions2));
Condition winCondition = new ConditionMultipleOR(conditions); Condition winCondition = new ConditionMultipleOR(conditions);
this.setEquipe(CartePersonnage.Equipe.NEUTRE);
this.setCondition(winCondition); this.setCondition(winCondition);
} }

View File

@ -9,7 +9,7 @@ public class Emi extends CartePersonnage{
public Emi() { public Emi() {
super("EMI","desc", HP, null); super("EMI","desc", HP, null);
this.setEquipe(CartePersonnage.Equipe.HUNTER);
this.setCondition(new WinConditionHunter()); this.setCondition(new WinConditionHunter());
} }
@ -22,7 +22,7 @@ public class Emi extends CartePersonnage{
//constructeur //constructeur
public Emi(String nom, String desc ,int hp, Joueur joueur) { public Emi(String nom, String desc ,int hp, Joueur joueur) {
super(nom,desc, hp, joueur); super(nom,desc, hp, joueur);
this.setEquipe(CartePersonnage.Equipe.HUNTER);
this.setCondition(new WinConditionHunter()); this.setCondition(new WinConditionHunter());
} }

View File

@ -13,16 +13,19 @@ public class Metamorphe extends CartePersonnage{
public Metamorphe() { public Metamorphe() {
super("METAMORPHE","desc", HP, null); super("METAMORPHE","desc", HP, null);
this.setEquipe(CartePersonnage.Equipe.SHADOW);
this.setCondition(new WinConditionShadow()); this.setCondition(new WinConditionShadow());
} }
public Metamorphe(Joueur j) { public Metamorphe(Joueur j) {
super("METAMORPHE","desc", HP, j); super("METAMORPHE","desc", HP, j);
this.setEquipe(CartePersonnage.Equipe.SHADOW);
this.setCondition(new WinConditionShadow()); this.setCondition(new WinConditionShadow());
} }
public Metamorphe(String nom, String desc ,int hp, Joueur joueur) { public Metamorphe(String nom, String desc ,int hp, Joueur joueur) {
super(nom,desc, hp, joueur); super(nom,desc, hp, joueur);
this.setEquipe(CartePersonnage.Equipe.SHADOW);
this.setCondition(new WinConditionShadow()); this.setCondition(new WinConditionShadow());
} }