package rules;
import java.util.List;
import models.Piece;
import models.Square;
import com.google.common.collect.Lists;
public enum GetPromotionSquares
{
CLASSIC, NO_PROMOTIONS;
public List<Square> getPromotionSquares(Piece piece)
{
switch (this)
{
case CLASSIC:
return classicPromoSquares(piece);
case NO_PROMOTIONS:
default:
return null;
}
}
private List<Square> classicPromoSquares(Piece piece)
{
List<Square> toReturn = Lists.newArrayList();
int maxRow = piece.getBoard().getMaxRow();
int maxCol = piece.getBoard().getMaxCol();
for (int i = 1; i <= maxCol; i++)
{
if (piece.isBlack())
toReturn.add(piece.getBoard().getSquare(1, i));
else
toReturn.add(piece.getBoard().getSquare(maxRow, i));
}
return toReturn;
}
}