private RequestPlayerMoveRevealedCardToHand ( |
||
gameState | ||
acceptableCard | CardPredicate | |
리턴 | Dominion.Card |
public override void DoSpecializedAction(PlayerState currentPlayer, GameState gameState) { Card trashedCard = null; if (currentPlayer.actions.ShouldTrashCard(gameState, Cards.Raze)) { if (currentPlayer.MoveCardFromPlayToTrash(gameState)) trashedCard = Cards.Raze; } else { trashedCard = currentPlayer.RequestPlayerTrashCardFromHand(gameState, c => true, isOptional: false); } if (trashedCard == null) return; int cardsToLookAt = trashedCard.CurrentCoinCost(currentPlayer); if (cardsToLookAt == 0) return; currentPlayer.LookAtCardsFromDeck(cardsToLookAt, gameState); currentPlayer.RequestPlayerMoveRevealedCardToHand(gameState, c => true); currentPlayer.MoveLookedAtCardsToDiscard(gameState); }