1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43
|
public int Compter(int x,int y,int joueur,int dx,int dy){
// dx=0,dy=-1 vers le bas
// dx=-1,dy=0 vers la gauche
// dx=+1,dy=0 vers la droite
// dx=-1,dy=+1 vers la gauche en bas
// dx=+1,dy=+1 vers la droite en bas
// dx=-1,dy=-1 vers la gauche en haut
// dx=+1,dy=-1 vers la droite en haut
if((x>=0)&&(x<7)&&(y>=0)&&(y<6)){
if(grille[y][x]==joueur)
return 1+Compter(x+dx,y+dy,joueur,dx,dy);
else
return 0;
} else
return 0;
}
public boolean gagner(int x, int y) {
int bas=Compter(x,y,joueur,0,1) ;
int droite=Compter(x,y,joueur,1,0) ;
int gauche=Compter(x,y,joueur,-1,0) ;
int basGauche=Compter(x,y,joueur,-1,1) ;
int basDroite=Compter(x,y,joueur,1,1) ;
int hautGauche=Compter(x,y,joueur,-1,-1) ;
int hautDroite=Compter(x,y,joueur,1,-1) ;
if ( bas>=4)
return true ;
else
if ( droite + gauche-1 >=4)
return true ;
else
if ( basGauche+hautDroite-1>=4)
return true ;
else
if(basDroite+hautGauche>=4)
return true ;
else
return false ;
} |
Partager