Ejemplo n.º 1
0
Archivo: Chess.cs Proyecto: Dloz/Chess
 public IEnumerable <string> YieldValidMoves()
 {
     foreach (FigureOnSquare fs in _board.YieldFigures())
     {
         foreach (Square to in Square.YieldSquares())
         {
             FigureMoving fm = new FigureMoving(fs, to);
             if (moves.CanMove(fm))
             {
                 yield return(fm.ToString());
             }
         }
     }
 }
Ejemplo n.º 2
0
        private bool CanEatKing()
        {
            var badKing = FindBadKing();
            var moves   = new Moves(this);

            return(YieldFigures().Select(fs => new FigureMoving(fs, badKing)).Any(fm => moves.CanMove(fm)));
        }