예제 #1
0
 void PickObject(Vector2 from)   // Взятие любой фигуры
 {
     if (game.isPromotionMove)   // Если у нас процесс превращение фигуры
     {
         game.NextPromotionMove( // Сделали след. ход превращение с уже известной фигурой
             promots.GetPromotionFigures(Coords.GetX(from), Coords.GetY(from)));
         // Pd7d8Q  -  Фигура в которую должна превратиться пешка:
         ShowFigures();
         return;
     }
     squares.MarkSquaresTo(game.GetMoves(), Coords.GetSquare(from)); // e2
 }
예제 #2
0
    void PickObject(Vector2 from)
    {
        if (onPromotionMove != "") // здесь ещё только фигура с её ходом
        {
            int x = Coords.GetX(from);
            int y = Coords.GetY(from);

            onPromotionMove += promots.GetPromotionFigure(x, y);

            //  здесь уже фигура с ходом и promotion
            MakeMove(onPromotionMove);
            onPromotionMove = "";
            ShowFigures();
            squares.MarkSquaresFrom(chess.YieldValidMoves());
            promots.HidePromotionFigures();
            return;
        }
        squares.MarkSquaresTo(chess.YieldValidMoves(), Coords.GetSquare(from));
    }