- Reorganized the constructors in Move.java.
- Made the getBoardState method in Referee.java static. - Created NeuralNetworkPlayer.java, though I don't know how to make the computer use it. - Updated the Player interface to include passing the PlayerModel. Most of the current com agents ignore the data, but it is now available. - Updated the train function in PlayerModel.java.
This commit is contained in:
@@ -4,29 +4,30 @@ import model.Board;
|
||||
import model.Move;
|
||||
import model.comPlayer.generator.MinimaxMoveGenerator;
|
||||
import model.comPlayer.generator.MoveGenerator;
|
||||
import model.playerModel.PlayerModel;
|
||||
|
||||
public class MinimaxComPlayer implements Player{
|
||||
private MoveGenerator moveGenerator = new MinimaxMoveGenerator();
|
||||
public class MinimaxComPlayer implements Player {
|
||||
private final MoveGenerator moveGenerator = new MinimaxMoveGenerator();
|
||||
|
||||
public MinimaxComPlayer() {
|
||||
super();
|
||||
}
|
||||
|
||||
@Override
|
||||
public Move getMove(Board board) {
|
||||
return moveGenerator.genMove(board, false);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void denyMove() {
|
||||
throw new UnsupportedOperationException("Not implemented");
|
||||
}
|
||||
|
||||
@Override
|
||||
public Move getMove(Board board, PlayerModel player) {
|
||||
return moveGenerator.genMove(board, false);
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isReady() {
|
||||
return true; // always ready to play a random valid move
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return "Minimax ComPlayer";
|
||||
|
||||
Reference in New Issue
Block a user