private MoveRevealedCardsToHand ( CardPredicate acceptableCard ) : void | ||
acceptableCard | CardPredicate | |
리턴 | void |
public override void DoSpecializedAction(PlayerState currentPlayer, GameState gameState) { Card namedCard = currentPlayer.RequestPlayerNameACard(gameState); int cardFoundCount = 0; while(true) { Card revealedCard = currentPlayer.DrawAndRevealOneCardFromDeck(gameState); if (revealedCard == null) break; if (revealedCard == namedCard) continue; cardFoundCount++; if (cardFoundCount >= 3) break; } currentPlayer.MoveRevealedCardsToHand(card => card != namedCard); currentPlayer.MoveRevealedCardsToDiscard(gameState); }
public override void DoSpecializedAction(PlayerState currentPlayer, GameState gameState) { currentPlayer.RevealCardsFromDeck(4, gameState); currentPlayer.MoveRevealedCardsToHand(card => card == Copper.card || card == Potion.card); currentPlayer.RequestPlayerTopDeckRevealedCardsInAnyOrder(gameState); }
public override void DoSpecializedAction(PlayerState currentPlayer, GameState gameState) { currentPlayer.RevealCardsFromDeck(4); currentPlayer.MoveRevealedCardsToHand(card => card.isVictory); currentPlayer.RequestPlayerTopDeckRevealedCardsInAnyOrder(gameState); }