public override void DoSpecializedAction(PlayerState currentPlayer, GameState gameState)
{
currentPlayer.LookAtCardsFromDeck(5);
PlayerActionChoice choice = currentPlayer.RequestPlayerChooseBetween(gameState,
acceptableChoice => acceptableChoice == PlayerActionChoice.Discard ||
acceptableChoice == PlayerActionChoice.TopDeck);
if (choice == PlayerActionChoice.TopDeck)
{
currentPlayer.RequestPlayerTopDeckRevealedCardsInAnyOrder(gameState);
}
else if (choice == PlayerActionChoice.Discard)
{
currentPlayer.MoveRevealedCardsToDiscard(gameState);
}
}