// BoardStats.java /** * * @author Sean Bridges * @version 1.0 * * A BoardStats is meant to be interrogated to discover the score of the * game and a heuristic for determining how each player is doing. * * The getScore(playerNumber) method is intended to return the concrete score * which is how well the player is doing. * The getHeuristic(playerNumber) method detemines how well a player is doing. * * getScore is meant for methods that display the score of the game, while * getStrength is meant for algorithims to determine the next best move. * */ public interface BoardStats { /** * Get the score for the given player. * A score is an indisputable thing, such as the number of hits in battleship. */ public int getScore(Player aPlayer); /** * Get an evaluation of how well a player is doing. * The number returned could be debabtable, such as a measure * of how strong a chess players position is. */ public int getStrength(Player aPlayer); /** * Returns the maximum possible hueristic. */ public int getMaxStrength(); /** * Returns the minimum possible hueristic. */ public int getMinStrength(); }//end interface BoardStats