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.Label;
import javafx.scene.image.Image;
import javafx.scene.image.ImageView;
import javafx.scene.layout.AnchorPane;
import javafx.scene.layout.Border;
@ -21,14 +22,16 @@ public class JoueurIHM {
private Pane zoneJoueur;
private GestionnaireDePions gestionnaireDePions;
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.setJoueur(joueur);
this.zoneJoueur = zoneJoueur;
this.color = color;
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))));
@ -43,10 +46,11 @@ public class JoueurIHM {
this.joueur.reveal();
ImageView iv = this.getCartePersonnage();
// TODO
//this.joueur.getCartePersonnage().getId();
//iv.setImage(arg0);
System.out.println(joueur.getRevele());
System.out.println(this.joueur.getCartePersonnage());
Image im = this.pc.getImageCarte(this.joueur.getCartePersonnage());
GridPane gp = (GridPane) iv.getParent();
iv.setImage(im);
iv.fitHeightProperty().bind(gp.heightProperty());
btn.setDisable(true);
});
@ -77,7 +81,6 @@ public class JoueurIHM {
AnchorPane.setLeftAnchor(p,0.0);
AnchorPane.setRightAnchor(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 main.GestionnaireJeu;
import main.Joueur;
import personnage.CartePersonnage;
public class PlateauController implements Initializable {
@ -83,7 +84,7 @@ public class PlateauController implements Initializable {
for(int i : map.keySet()) {
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++) {
@ -200,6 +201,8 @@ public class PlateauController implements Initializable {
}
}
private void applyImageLieu(ImageView iv, Image im) {
StackPane sp = (StackPane) iv.getParent();
@ -375,4 +378,10 @@ public class PlateauController implements Initializable {
PopUp pu = new PopUp(root, "Pause");
pu.display();
}
public Image getImageCarte(Carte carte) {
BufferedImage bi = this.mapRessourcesCartes.get(carte);
return RessourceLoader.toJavaFX(bi);
}
}

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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