Package antichess

Interface Summary
BoardObserver  
GameControllerObserver GameControllerObservers are notified by a GameController of the current state of the GameController.
GamePlayer<M extends Move> The GamePlayer interface allows for communication between the contoller and objects that generate moves such as the view or the AI.
GameTimerListener An interface for objects listening to the GameTimerListener
HumanPlayer<M extends Move> This interface handles interactions between the Controller and the View The HumanPlayer facilitates the communication between the GameController and the BoardView class.
MoveGenerator<M extends Move> A MoveGenerator is an abstract representation of the types of moves allowed by a piece.
PieceType PieceType represents an abstract piece type -- a pawn, rook, etc.
TextGamePlayer The TextGamePlayer interface supports methods that the TextUI will call in order to fit the specifications for the TextUI.
 

Class Summary
AIPlayer<M extends Move,B extends Board<M>> A AIPlayer is a GamePlayer that uses a GameAI to make moves.
AntichessBoard Extension of a ChessBoard with board-level moves modified for Antichess.
Board<M extends Move> A Board represents an arbitrary 2-dimensional game board that is somehow populated by pieces that are allowed to move in specific waves.
ChessBoard A ChessBoard represents the state of a Chess Game at some time.
ChessMove A ChessMove represents a move in a Chess game.
ChessPlayer This class handles the interactions between the Controller and the View ChessPlayer is an implementation of the HumanPlayer interface.
ControllerMaster The ControllerMaster is the highest level of the controller.
ControllerState The ControllerState class handles communication between the ControllerMaster and the GameController class.
GameClock GameClock is a represents a set of timers for use in a game.
GameController<M extends Move> GameController handles automatically getting moves from GamePlayers and then making these moves on the board.
GameDescriptor A GameDescriptor is an immutable ADT that stores the information required for generating a new game.
GameReader The GameReader class reads XML game files for antichess games.
GameTimer The GameTimer stores a time that ticks down when GameTimer is running.
GameWriter The GameWriter writes ChessBoard objects out to XML files.
MachinePlayer A MachinePlayer is a player of Antichess that uses artificial intelligence to decide on its moves.
Move A Move represents a a single move by one player in a game on a Board.
MoveHistory<M extends Move> A linked-list implementation of the history of moves.
Piece A Piece represents a piece on a board.
PieceTypeFactory PieceTypeFactory contains static methods for generating singleton instances of PieceTypes for every type of Chess piece.
RandomAI  
TestAI  
TextAIPlayer TextAIPlayer is an AIPlayer for use with the TextUI.
TextPlayer TextPlayer implements the GamePlayer interface.
TextUI TextUI is a text based user interface for a game of Antichess.
 

Enum Summary
Player Player is a simple enumeration representing the two sides in a game of Chess or Antichess.
 

Exception Summary
IllegalMoveException An Exception thrown when a client asks a Board to make an illegal move.
InvalidGameFileException A InvalidGameFileException is throw by BoardReader if it attempts to load an invalid game file.