@Override
	public MoveResult makeMove(HantoPieceType pieceType, HantoCoordinate from,
		HantoCoordinate to) throws HantoException {
		
		MoveResult result = null;
		if (from == null && to == null){
			System.out.println("Checking for moves left.");
			if(gameManager.getCellManager().isLegalMovePresent(gameManager.getPlayerTurn())){
				throw new HantoPrematureResignationException("Forfeited when legal moves were present.");
			}
			if(gameManager.getPlayerTurn() == HantoPlayerColor.RED){
				result = MoveResult.BLUE_WINS;
			}
			if(gameManager.getPlayerTurn() == HantoPlayerColor.BLUE){
				result = MoveResult.RED_WINS;
			}
			System.out.println("RESIGNING");
		}
		else{
			preCheck(from, to);
			movePiece(from, to, pieceType);
			result = postCheck(pieceType);
		}
		
		return result;
	}