}
private List<Move> getHomeMoves(Teams team, BoardDef board, int horizPos, int vertPos, boolean check) {
List<Move> ret = new ArrayList<Move>();
BoardPiece bPiece = board.get(vertPos, horizPos);
for(Position pos : board.getSet().getHomes(bPiece)) {
long hash = 0;
// Clone the current board set for this move.
BoardSet set = board.getSet().clone();
// Figure out which board the move is going to.
BoardDef boardDest = set.getBoard(pos.getBoard());
// Check what is at the destination.
BoardPiece destPiece = boardDest.get(pos.getVert(), pos.getHoriz());
// If the home position is not empty, skip.
if(destPiece != null) {
continue;
}