AI and player play correctly
This commit is contained in:
@@ -1,3 +1,4 @@
|
|||||||
|
import java.util.List;
|
||||||
import java.util.Random;
|
import java.util.Random;
|
||||||
|
|
||||||
public class GomokuAI{
|
public class GomokuAI{
|
||||||
@@ -17,20 +18,25 @@ public class GomokuAI{
|
|||||||
* @param Board The actual Gomoku board.
|
* @param Board The actual Gomoku board.
|
||||||
* @return The coordinate of the move played.
|
* @return The coordinate of the move played.
|
||||||
*/
|
*/
|
||||||
public Coordinate chooseMove(GomokuBoard board){
|
public GomokuCell chooseMove(GomokuBoard board){
|
||||||
|
|
||||||
|
|
||||||
|
List<GomokuCell> playableCell = board.getPlayableCells();
|
||||||
|
GomokuCell playCell;
|
||||||
int x=0,y=0;
|
int x=0,y=0;
|
||||||
if(difficulty == 0)
|
|
||||||
{
|
|
||||||
int rand = random.nextInt(board.getPlayableCells().size());
|
|
||||||
|
|
||||||
|
switch (difficulty) {
|
||||||
|
case 0:
|
||||||
|
playCell = playableCell.get(random.nextInt(playableCell.size()));
|
||||||
|
break;
|
||||||
|
case 1:
|
||||||
|
System.out.println("L'IA réflechit...");
|
||||||
|
default:
|
||||||
|
throw new AssertionError();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
System.out.println("L'IA à choisi : "+ x+", "+ y);
|
System.out.println("L'IA à choisi : "+ x+", "+ y);
|
||||||
|
|
||||||
|
|
||||||
return new Coordinate(x,y);
|
return playCell;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -1,5 +1,6 @@
|
|||||||
|
|
||||||
import java.io.Console;
|
import java.io.Console;
|
||||||
|
import javax.swing.plaf.basic.BasicBorders;
|
||||||
|
|
||||||
public class Human extends Player{
|
public class Human extends Player{
|
||||||
|
|
||||||
@@ -13,7 +14,7 @@ public class Human extends Player{
|
|||||||
* @param Board The actual Gomoku board.
|
* @param Board The actual Gomoku board.
|
||||||
* @return The coordinate of the move played.
|
* @return The coordinate of the move played.
|
||||||
*/
|
*/
|
||||||
public Coordinate chooseMove(GomokuBoard board){
|
public GomokuCell chooseMove(GomokuBoard board){
|
||||||
|
|
||||||
Console cons = System.console();
|
Console cons = System.console();
|
||||||
|
|
||||||
@@ -60,6 +61,6 @@ public class Human extends Player{
|
|||||||
System.out.println("Vous avez saisi : "+ x+", "+ y);
|
System.out.println("Vous avez saisi : "+ x+", "+ y);
|
||||||
|
|
||||||
|
|
||||||
return new Coordinate(x,y);
|
return board.get(x,y);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -38,5 +38,5 @@ abstract class Player{
|
|||||||
* @param Board The actual Gomoku board.
|
* @param Board The actual Gomoku board.
|
||||||
* @return The coordinate of the move played.
|
* @return The coordinate of the move played.
|
||||||
*/
|
*/
|
||||||
public abstract Coordinate chooseMove(GomokuBoard board);
|
public abstract GomokuCell chooseMove(GomokuBoard board);
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user