modele.joueur
Class IA

java.lang.Object
  extended by modele.joueur.Joueur
      extended by modele.joueur.IA

public class IA
extends Joueur

La classe IA représente l'intelligence artificielle du jeu. Elle détermine les coups possibles avant de jouer en leur attribuant un score, puis choisit un des coups au hasard parmi ceux ayant le score le plus élevé.


Field Summary
private  Case caseArrivee
           
private  Case caseOrigine
           
private  Coup[] listeCoupPossible
           
private  java.util.Random rdmGenerateur
           
 
Fields inherited from class modele.joueur.Joueur
couleur, listePionsAPlacer, stratego
 
Constructor Summary
IA()
          Constructeur sans paramètre.
IA(Stratego stratego, java.lang.String couleur)
          Constructeur
 
Method Summary
private  void choisirCoupAJouer()
          L'IA choisit un coup à jouer parmi tous les coups possibles
private  void evaluerCaseAutour(Case caseOrigine, int compteur)
          Evalue le score de chaque coup se trouvant autour de la case sélectionnée.
 void jouerCoup()
          Joue un coup.
private  void listerCasesOrigineValides()
          Liste les différents coups que peut jouer l'IA.
private  int scoreCoup(Case caseOrigine, Case caseArrivee)
          Retourne le score d'un coup.
 
Methods inherited from class modele.joueur.Joueur
getCouleur, getIndexProchainPionAPlacer, getNom, getProchainPionAPlacer, listePionsPris, placerPion, placerPionsAleatoirement, prendrePion, read, setCouleur, setIndexProchainPionAPlacer, setNom, write
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

listeCoupPossible

private Coup[] listeCoupPossible

caseOrigine

private Case caseOrigine

caseArrivee

private Case caseArrivee

rdmGenerateur

private java.util.Random rdmGenerateur
Constructor Detail

IA

public IA(Stratego stratego,
          java.lang.String couleur)
Constructeur

Parameters:
stratego - instance du Stratego
couleur - couleur du joueur IA

IA

public IA()
Constructeur sans paramètre.

Method Detail

jouerCoup

public void jouerCoup()
Joue un coup.

Overrides:
jouerCoup in class Joueur

choisirCoupAJouer

private void choisirCoupAJouer()
L'IA choisit un coup à jouer parmi tous les coups possibles


listerCasesOrigineValides

private void listerCasesOrigineValides()
Liste les différents coups que peut jouer l'IA.


evaluerCaseAutour

private void evaluerCaseAutour(Case caseOrigine,
                               int compteur)
Evalue le score de chaque coup se trouvant autour de la case sélectionnée.


scoreCoup

private int scoreCoup(Case caseOrigine,
                      Case caseArrivee)
Retourne le score d'un coup.