#ifndef MOVE_H #define MOVE_H #include #include "Piece.h" #include "Board.h" using namespace std; class Move{ public: Move(vector AllPieces, int column, int row); ~Move(){}; /* Attempt() tries the next possibility. Could be new configuration of the present Piece, or could be new Piece which hasn't yet been tried Returns 0 if the Move is successful and player (main) should go for the next Move. Returns nonzero if this Move has failed; then it is time to delete this Move, and tell the *previous* move to Attempt() a new possibility */ int Attempt(Board*); list UntriedPieces(){return PiecesYetToBeTried;} private: list PiecesYetToBeTried; int iColumn; int iRow; }; #endif