méthode de clonage

This commit is contained in:
Antonin Boyon 2021-02-10 10:21:26 +01:00
parent 2263d0614b
commit 17db265925
2 changed files with 7 additions and 10 deletions

View File

@ -10,14 +10,14 @@ public class Main {
int p1 = 1, p2 = 2; int p1 = 1, p2 = 2;
int[][] board = initialize(p1, p2); int[][] board = initialize(p1, p2);
State game = new State(board, p1, p2,0,0); State game = new State(board, p1, p2,0,0);
while(!game.isOver()) { //while(!game.isOver()) {
int player = game.getCurrentPlayer(); int player = game.getCurrentPlayer();
} //}
ArrayList<Point> a = new ArrayList<Point>(); ArrayList<Point> a = new ArrayList<Point>();
a.add(new Point(3,3)); a.add(new Point(3,3));
System.out.println(game.getMove(p1).toString()); System.out.println(game.getMove(p1).toString());
System.out.println(a.get(0).toString()); //System.out.println(a.get(0).toString());
} }
public static int[][] initialize(int p1, int p2){ public static int[][] initialize(int p1, int p2){

View File

@ -26,7 +26,7 @@ public class State {
} }
public ArrayList<Point> getMove(int player) { public ArrayList<Point> getMove(int player) {
ArrayList<Point> moves = null; ArrayList<Point> moves = new ArrayList<Point>();
// Clonage // Clonage
// Parcours du plateau de jeu // Parcours du plateau de jeu
@ -34,15 +34,12 @@ public class State {
for (int j=0; j<this.board.length; j++) { for (int j=0; j<this.board.length; j++) {
if (this.board[i][j] == this.currentPlayer) { if (this.board[i][j] == this.currentPlayer) {
// Recherche autour du pion du joueur courant // Recherche autour du pion du joueur courant
System.out.println("recherche");
for (int k=-1; k<2;k++) { for (int k=-1; k<2;k++) {
for (int l=-1; l<2; l++) { for (int l=-1; l<2; l++) {
// La position du pion trouv<EFBFBD> est exclue // La position du pion trouvé est exclue
if (k!=0 || l!=0) { if (k!=0 || l!=0) {
// Si une place libre est trouv<EFBFBD>e elle est ajout<EFBFBD> <EFBFBD> la liste de coups // Si une place libre est trouvée elle est ajoutée à la liste de coups
System.out.println("close"); if ( ((i+k >= 0) && (i+k < 7 )) && ((j+l >= 0) && (j+l < 7 )) && (this.board[i+k][j+l]==0)) {
if ( (this.board[i+k][j+l]==0) && (i+k >= 0) && (i+k < 7 ) && (j+l >= 0) && (j+l < 7 ) ) {
System.out.println("jadd");
moves.add(new Point(i+k, j+l)); moves.add(new Point(i+k, j+l));
} }
} }