prise en compte ia
This commit is contained in:
@@ -28,6 +28,8 @@ public class ControleurIA {
|
||||
// precondition 2 : on n'appellera pas cette methode si jIA est seul sur le lieu
|
||||
public boolean choixSiAttaquer(JoueurVirtuel jIA, List<Joueur> joueursLieu) {
|
||||
double res = getRandomPercentage();
|
||||
System.out.println(res);
|
||||
System.out.println(joueursLieu);
|
||||
if (getEnnemisJoueurs(jIA, joueursLieu).size() > 0) {
|
||||
int diff = jIA.getDifficulte();
|
||||
switch (diff) {
|
||||
|
||||
@@ -116,11 +116,16 @@ public class GestionnaireJeu {
|
||||
if(cls == CarteEquipement.class) {
|
||||
return choisirEquipementVole(joueur, (List<CarteEquipement>) list);
|
||||
}else if(cls == Joueur.class) {
|
||||
return choisirJoueur(joueur, (List<Joueur>) list, Contexte.ACTIVER_EFFET_LIEU);
|
||||
return choisirJoueur(joueur, (List<Joueur>) list, Contexte.CHOISIR_VISION);
|
||||
}
|
||||
return list.get(0);
|
||||
}
|
||||
|
||||
@SuppressWarnings("unchecked")
|
||||
public Object choisir(Joueur joueur, List<?> list, Contexte c) {
|
||||
return choisirJoueur(joueur, (List<Joueur>) list, c);
|
||||
}
|
||||
|
||||
public CarteEquipement choisirEquipementVole(Joueur joueur, List<CarteEquipement> lce) {
|
||||
Platform.runLater(() -> {
|
||||
try {
|
||||
|
||||
@@ -272,4 +272,8 @@ public class Joueur {
|
||||
public boolean isMetamorph() {
|
||||
return this.cartePersonnage instanceof Metamorphe;
|
||||
}
|
||||
|
||||
public Joueur choisir(List<Joueur> adjacents, Contexte attaquer) {
|
||||
return this.plateau.choisir(this,adjacents, attaquer);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,6 +2,7 @@ package main;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Random;
|
||||
|
||||
import carte.CarteEquipement;
|
||||
import carte.CarteEquipementStat;
|
||||
@@ -51,6 +52,9 @@ public class JoueurVirtuel extends Joueur {
|
||||
case EFFET_POSITIF_SUR_AUTRES:
|
||||
res = choisirJoueurAmi(joueurs);
|
||||
break;
|
||||
case CHOISIR_VISION:
|
||||
res = joueurs.get((int) Math.floor(Math.random() * joueurs.size())); // a revoir inshallah
|
||||
break;
|
||||
default:
|
||||
res = null; // faire exception?
|
||||
}
|
||||
|
||||
@@ -289,7 +289,7 @@ public class Plateau extends Thread{
|
||||
if(currentJoueur.choisir(Contexte.ATTAQUER)){
|
||||
if(currentJoueur.hasOpponents()) {
|
||||
List<Joueur> adjacents = currentJoueur.getJoueursRange();
|
||||
Joueur cible = (Joueur) currentJoueur.choisir(adjacents,Joueur.class);
|
||||
Joueur cible = (Joueur) currentJoueur.choisir(adjacents,Contexte.ATTAQUER);
|
||||
attaquer(currentJoueur,cible);
|
||||
if(isPartieTerminee()) break;
|
||||
}else {
|
||||
@@ -368,7 +368,7 @@ public class Plateau extends Thread{
|
||||
public int roll6(Joueur j) {
|
||||
|
||||
int roll = this.rollRandom(6);
|
||||
gj.rollDice(j, PlateauController.DICE_QUATRE, roll);
|
||||
gj.rollDice(j, PlateauController.DICE_SIX, roll);
|
||||
return roll;
|
||||
}
|
||||
|
||||
@@ -385,7 +385,7 @@ public class Plateau extends Thread{
|
||||
int roll6 = rollRandom(6);
|
||||
int sum = Math.abs(roll4+roll6);
|
||||
gj.rollDice(j, PlateauController.DICE_BOTH, roll4,roll6);
|
||||
return 3;
|
||||
return sum;
|
||||
//return Math.abs(roll4+roll6);
|
||||
}
|
||||
|
||||
@@ -480,4 +480,8 @@ public class Plateau extends Thread{
|
||||
gj.retirerEquipement(joueur,e);
|
||||
|
||||
}
|
||||
|
||||
public Joueur choisir(Joueur joueur, List<Joueur> adjacents, Contexte attaquer) {
|
||||
return gj.choisirJoueur(joueur, adjacents, attaquer);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user