Ajout des cartes visions + mensonge métamorphe
This commit is contained in:
parent
3d059d5747
commit
b69955273d
@ -5,6 +5,7 @@ import java.io.Serializable;
|
|||||||
import condition.Condition;
|
import condition.Condition;
|
||||||
import effet.EffetChoisirCible;
|
import effet.EffetChoisirCible;
|
||||||
import effet.action.Action;
|
import effet.action.Action;
|
||||||
|
import main.Contexte;
|
||||||
import main.GestionnaireJeu;
|
import main.GestionnaireJeu;
|
||||||
import main.Joueur;
|
import main.Joueur;
|
||||||
|
|
||||||
@ -31,10 +32,13 @@ public class CarteVision extends CartePiochable implements Serializable{
|
|||||||
gj.piocher(j1,this);
|
gj.piocher(j1,this);
|
||||||
|
|
||||||
Joueur j2 = j1.choisiParmisTous();
|
Joueur j2 = j1.choisiParmisTous();
|
||||||
|
boolean M = j2.isMetamorph();
|
||||||
|
boolean Co = this.getCondition().isTrue(j2);
|
||||||
|
gj.recevoirCarteVision(j2,this);
|
||||||
|
boolean C = j2.choisir(Contexte.CHOISIR_VISION);
|
||||||
|
|
||||||
if(this.getCondition().isTrue(j2)) {
|
if((!(M) && Co) || (M && C)) {
|
||||||
this.getEffet().getAction().affecte(j1, j2);
|
this.getEffet().getAction().affecte(j1, j2);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -8,7 +8,6 @@ import java.util.ResourceBundle;
|
|||||||
import carte.CarteEquipement;
|
import carte.CarteEquipement;
|
||||||
import javafx.fxml.FXML;
|
import javafx.fxml.FXML;
|
||||||
import javafx.fxml.Initializable;
|
import javafx.fxml.Initializable;
|
||||||
import javafx.scene.control.ScrollPane;
|
|
||||||
import javafx.scene.image.ImageView;
|
import javafx.scene.image.ImageView;
|
||||||
import javafx.scene.layout.GridPane;
|
import javafx.scene.layout.GridPane;
|
||||||
import javafx.scene.layout.HBox;
|
import javafx.scene.layout.HBox;
|
||||||
|
@ -407,12 +407,27 @@ public class PlateauController implements Initializable {
|
|||||||
final ResourceBundle bundle = ResourceBundle.getBundle("domaine.properties.langue", Locale.FRANCE);
|
final ResourceBundle bundle = ResourceBundle.getBundle("domaine.properties.langue", Locale.FRANCE);
|
||||||
final FXMLLoader fxmlLoader = new FXMLLoader(fxmlURL, bundle);
|
final FXMLLoader fxmlLoader = new FXMLLoader(fxmlURL, bundle);
|
||||||
Pane root = (Pane)fxmlLoader.load();
|
Pane root = (Pane)fxmlLoader.load();
|
||||||
|
|
||||||
|
List<JoueurIHM> joueursIHM = toJoueursIHM(joueurs);
|
||||||
|
|
||||||
this.cj = fxmlLoader.getController();
|
this.cj = fxmlLoader.getController();
|
||||||
this.cj.setListJoueursIHM(this.joueursIHM);
|
this.cj.setListJoueursIHM(joueursIHM);
|
||||||
this.cj.initButtons();
|
this.cj.initButtons();
|
||||||
JoueurIHM jihm = getJoueurIHM(j);
|
JoueurIHM jihm = getJoueurIHM(j);
|
||||||
jihm.setZoneJoueur(root);
|
jihm.setZoneJoueur(root);
|
||||||
}
|
}
|
||||||
|
private List<JoueurIHM> toJoueursIHM(List<Joueur> joueurs) {
|
||||||
|
|
||||||
|
List<JoueurIHM> list = new ArrayList<JoueurIHM>();
|
||||||
|
|
||||||
|
for(Joueur j : joueurs) {
|
||||||
|
list.add(getJoueurIHM(j));
|
||||||
|
}
|
||||||
|
|
||||||
|
return list;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
public void afficherPiocher(Joueur j) throws IOException {
|
public void afficherPiocher(Joueur j) throws IOException {
|
||||||
|
|
||||||
final URL fxmlURL = getClass().getResource("/ihm/ressources/Jouer_tour(2b)piocher_carte.fxml");
|
final URL fxmlURL = getClass().getResource("/ihm/ressources/Jouer_tour(2b)piocher_carte.fxml");
|
||||||
|
@ -9,6 +9,6 @@ public enum Contexte {
|
|||||||
ACTIVER_EFFET_LIEU,
|
ACTIVER_EFFET_LIEU,
|
||||||
EFFET_BOB,
|
EFFET_BOB,
|
||||||
LANCER_DES_4,
|
LANCER_DES_4,
|
||||||
LANCER_DES_6
|
LANCER_DES_6, CHOISIR_VISION
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -13,6 +13,7 @@ import carte.CarteEquipement;
|
|||||||
import carte.CarteLieu;
|
import carte.CarteLieu;
|
||||||
import carte.CartePiochable;
|
import carte.CartePiochable;
|
||||||
import carte.CartePiochable.Type;
|
import carte.CartePiochable.Type;
|
||||||
|
import carte.CarteVision;
|
||||||
import database.RessourceLoader;
|
import database.RessourceLoader;
|
||||||
import effet.Effet;
|
import effet.Effet;
|
||||||
import ihm.controller.PlateauController;
|
import ihm.controller.PlateauController;
|
||||||
@ -328,5 +329,20 @@ public class GestionnaireJeu {
|
|||||||
waitPlateau();
|
waitPlateau();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void recevoirCarteVision(Joueur j2, CarteVision carteVision) {
|
||||||
|
|
||||||
|
Platform.runLater(() -> {
|
||||||
|
try {
|
||||||
|
pc.afficherVision(j2, carteVision);
|
||||||
|
} catch (IOException e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
waitPlateau();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -8,6 +8,7 @@ import carte.CarteEquipement;
|
|||||||
import carte.CarteLieu;
|
import carte.CarteLieu;
|
||||||
import effet.Effet;
|
import effet.Effet;
|
||||||
import personnage.CartePersonnage;
|
import personnage.CartePersonnage;
|
||||||
|
import personnage.Metamorphe;
|
||||||
import personnage.CartePersonnage.Equipe;
|
import personnage.CartePersonnage.Equipe;
|
||||||
|
|
||||||
|
|
||||||
@ -267,4 +268,8 @@ public class Joueur {
|
|||||||
this.cartePersonnage.utiliser();
|
this.cartePersonnage.utiliser();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public boolean isMetamorph() {
|
||||||
|
return this.cartePersonnage instanceof Metamorphe;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -385,7 +385,7 @@ public class Plateau extends Thread{
|
|||||||
int roll6 = rollRandom(6);
|
int roll6 = rollRandom(6);
|
||||||
int sum = Math.abs(roll4+roll6);
|
int sum = Math.abs(roll4+roll6);
|
||||||
gj.rollDice(j, PlateauController.DICE_BOTH, roll4,roll6);
|
gj.rollDice(j, PlateauController.DICE_BOTH, roll4,roll6);
|
||||||
return 8;
|
return 3;
|
||||||
//return Math.abs(roll4+roll6);
|
//return Math.abs(roll4+roll6);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user