Пример #1
0
 internal static string SerializePieceCapabilities(IPieceCapabilities capabilities)
 {
     if (capabilities == PawnCapabilities.Singleton)
     {
         return("P");
     }
     else if (capabilities == KnightCapabilities.Singleton)
     {
         return("Kn");
     }
     else if (capabilities == BishopCapabilities.Singleton)
     {
         return("B");
     }
     else if (capabilities == RookCapabilities.Singleton)
     {
         return("R");
     }
     else if (capabilities == QueenCapabilities.Singleton)
     {
         return("Q");
     }
     else if (capabilities == KingCapabilities.Singleton)
     {
         return("K");
     }
     else
     {
         throw new InvalidOperationException("Unknown capabilities type.");
     }
 }
Пример #2
0
 internal PromotionRecord(Piece piecePromoted, IPieceCapabilities newCapabilities)
 {
     PiecePromoted = piecePromoted;
     if (piecePromoted != null)
     {
         OldCapabilities = piecePromoted.Capabilities;
     }
     NewCapabilities = newCapabilities;
 }
        private void RadioButton_Checked_1(object sender, RoutedEventArgs e)
        {
            PromoteBtn.IsEnabled = true;

            if (KnightRadioBtn.IsChecked.Value)
            {
                newCapabilities = KnightCapabilities.Singleton;
            }
            else if (BishopRadioBtn.IsChecked.Value)
            {
                newCapabilities = BishopCapabilities.Singleton;
            }
            else if (RookRadioBtn.IsChecked.Value)
            {
                newCapabilities = RookCapabilities.Singleton;
            }
            else if (QueenRadioBtn.IsChecked.Value)
            {
                newCapabilities = QueenCapabilities.Singleton;
            }
        }
Пример #4
0
 internal void UpdatePiecePromoted(MoveRecord promoteMove, IGameState gameStateBefore)
 {
     PiecePromoted   = gameStateBefore.GetPieceAt(promoteMove.From);
     OldCapabilities = PiecePromoted.Capabilities;
 }
 internal PromotionSelectedEventArgs(IPieceCapabilities newCapabilities)
 {
     NewCapabilities = newCapabilities;
 }
Пример #6
0
        // TODO nor should this.
        private Image CapabilitiesToVisual(IPieceCapabilities capabilities, Side side)
        {
            Image visual = new Image();

            if (side == Side.White)
            {
                if (capabilities is PawnCapabilities)
                {
                    visual.Source = Board.whitePawnImageSource;
                }
                else if (capabilities is KnightCapabilities)
                {
                    visual.Source = Board.whiteKnightImageSource;
                }
                else if (capabilities is BishopCapabilities)
                {
                    visual.Source = Board.whiteBishopImageSource;
                }
                else if (capabilities is RookCapabilities)
                {
                    visual.Source = Board.whiteRookImageSource;
                }
                else if (capabilities is QueenCapabilities)
                {
                    visual.Source = Board.whiteQueenImageSource;
                }
                else if (capabilities is KingCapabilities)
                {
                    visual.Source = Board.whiteKingImageSource;
                }
            }
            else
            {
                if (capabilities is PawnCapabilities)
                {
                    visual.Source = Board.blackPawnImageSource;
                }
                else if (capabilities is KnightCapabilities)
                {
                    visual.Source = Board.blackKnightImageSource;
                }
                else if (capabilities is BishopCapabilities)
                {
                    visual.Source = Board.blackBishopImageSource;
                }
                else if (capabilities is RookCapabilities)
                {
                    visual.Source = Board.blackRookImageSource;
                }
                else if (capabilities is QueenCapabilities)
                {
                    visual.Source = Board.blackQueenImageSource;
                }
                else if (capabilities is KingCapabilities)
                {
                    visual.Source = Board.blackKingImageSource;
                }
            }

            return(visual);
        }