private MoveSet GetValidSpiderMovements(Piece targetPiece) { MoveSet validMoves = new MoveSet(); // Get all slides up to 2 spots away MoveSet upToTwo = GetValidSlides(targetPiece, 2); if (upToTwo.Count > 0) { // Get all slides up to 3 spots away MoveSet upToThree = GetValidSlides(targetPiece, 3); if (upToThree.Count > 0) { // Get all slides ONLY 3 spots away upToThree.Remove(upToTwo); if (upToThree.Count > 0) { validMoves.Add(upToThree); } } } return(validMoves); }
private MoveSet GetValidSpiderMovements(Piece targetPiece) { // Get all slides up to 2 spots away MoveSet upToTwo = GetValidSlides(targetPiece, 2); if (upToTwo.Count > 0) { // Get all slides up to 3 spots away MoveSet upToThree = GetValidSlides(targetPiece, 3); if (upToThree.Count > 0) { // Get all slides ONLY 3 spots away upToThree.Remove(upToTwo); return(upToThree); } } return(MoveSet.EmptySet); }