Jeux d'echec
Programmation d'un jeux d'echec
 All Classes Files Functions Enumerations Enumerator
ia.h
Go to the documentation of this file.
1 #ifndef IA_H
2 #define IA_H
3 #include <QObject>
4 #include "Definement.h"
5 #include "terrain.h"
6 class IA : public QObject
7 {
8 public:
9  IA(piece m_terrain[][8],int groupe[][8],int deplacement[][8],QVector<QPoint> *coup_precedent,QObject * parent = 0);
10  QVector<QPoint> calc_echec_et_mat(int joueur,QPoint pos_rois_joueur);
11  QVector<QPoint> jouer(int joueur);
12  void setDifficulter(int diff);
13  unsigned int getDifficulter();
14 
15 private:
16 
17  int evalIA(piece terrain[8][8],int groupe[8][8]);
18  int gagnantJeux(int joueur);
19  int max(int joueur,piece terrain[8][8],int groupe[8][8],int profondeur, int alpha, int beta);
20  int min(int joueur,piece terrain[8][8],int groupe[8][8],int profondeur, int alpha, int beta);
21 
22 
23  int m_profondeur;
24  int m_max;
25 
26  //pointeur en reference vers des element de terrain, on ne les delete pas avec un destructeur ici :)
27  QVector<QPoint> *m_coupPrecedent;
28  piece (*m_terrain)[8];
29  QPoint m_Posi_Rois1;
30  QPoint m_Posi_Rois2;
31  int (*m_groupe)[8];
32  int (*m_deplacement)[8];
33 
34 };
35 
36 #endif // IA_H