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."); } }
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; } }
internal void UpdatePiecePromoted(MoveRecord promoteMove, IGameState gameStateBefore) { PiecePromoted = gameStateBefore.GetPieceAt(promoteMove.From); OldCapabilities = PiecePromoted.Capabilities; }
internal PromotionSelectedEventArgs(IPieceCapabilities newCapabilities) { NewCapabilities = newCapabilities; }
// 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); }