本文整理汇总了C#中Dominion.PlayerState.MoveAllRevealedCardsToHand方法的典型用法代码示例。如果您正苦于以下问题:C# PlayerState.MoveAllRevealedCardsToHand方法的具体用法?C# PlayerState.MoveAllRevealedCardsToHand怎么用?C# PlayerState.MoveAllRevealedCardsToHand使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Dominion.PlayerState
的用法示例。
在下文中一共展示了PlayerState.MoveAllRevealedCardsToHand方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: DoSpecializedAction
public override void DoSpecializedAction(PlayerState currentPlayer, GameState gameState)
{
currentPlayer.RevealCardsFromDeck(5, gameState);
Card cardType = gameState.players.PlayerLeft.actions.BanCardToDrawnIntoHandFromRevealedCards(gameState);
if (!currentPlayer.cardsBeingRevealed.HasCard(cardType))
{
throw new Exception("Must ban a card currently being revealed");
}
currentPlayer.MoveRevealedCardToDiscard(cardType, gameState);
currentPlayer.MoveAllRevealedCardsToHand();
}
示例2: DoSpecializedAction
public override void DoSpecializedAction(PlayerState currentPlayer, GameState gameState)
{
Card revealedCard = currentPlayer.DrawAndRevealOneCardFromDeck(gameState);
if (revealedCard.isTreasure)
{
currentPlayer.MoveAllRevealedCardsToHand();
}
else
{
currentPlayer.MoveRevealedCardToTopOfDeck();
}
if (revealedCard.isAction || revealedCard.isVictory)
{
currentPlayer.GainCardFromSupply(Cards.Magpie, gameState);
}
}
示例3: DoSpecializedAction
public override void DoSpecializedAction(PlayerState currentPlayer, GameState gameState)
{
currentPlayer.RequestPlayerInspectTopOfDeckForDiscard(currentPlayer, gameState);
while (true)
{
Card card = currentPlayer.DrawAndRevealOneCardFromDeck(gameState);
if (card == null || !card.isAction)
break;
}
currentPlayer.MoveAllRevealedCardsToHand();
}
示例4: DoSpecializedAction
public override void DoSpecializedAction(PlayerState currentPlayer, GameState gameState)
{
Card cardType = currentPlayer.GuessCardTopOfDeck(gameState);
Card revealedCard = currentPlayer.DrawAndRevealOneCardFromDeck();
if (revealedCard != cardType)
{
currentPlayer.MoveAllRevealedCardsToHand();
}
else
{
currentPlayer.MoveRevealedCardsToDiscard(gameState);
}
}
示例5: DoSpecializedAction
public override void DoSpecializedAction(PlayerState currentPlayer, GameState gameState)
{
int maxCoppers = currentPlayer.discard.CountWhere(card => card == Cards.Copper);
int cardsToPutInHand = currentPlayer.actions.GetNumberOfCoppersToPutInHandForCountingHouse(gameState, maxCoppers);
if (cardsToPutInHand < 0 || cardsToPutInHand > maxCoppers)
{
throw new Exception("Requested number of cards to reveal is out of range");
}
if (cardsToPutInHand > 0)
{
currentPlayer.RevealCardsFromDiscard(cardsToPutInHand, card => card == Cards.Copper);
currentPlayer.MoveAllRevealedCardsToHand();
}
}
示例6: DoSpecializedAction
public override void DoSpecializedAction(PlayerState currentPlayer, GameState gameState)
{
currentPlayer.RevealCardsFromDeck(3);
PlayerActionChoice choice = currentPlayer.RequestPlayerChooseBetween(gameState, actionChoice => actionChoice == PlayerActionChoice.Discard || actionChoice == PlayerActionChoice.PutInHand);
switch (choice)
{
case PlayerActionChoice.Discard:
{
currentPlayer.MoveRevealedCardsToDiscard(gameState);
currentPlayer.DrawAdditionalCardsIntoHand(3);
break;
}
case PlayerActionChoice.PutInHand:
{
currentPlayer.MoveAllRevealedCardsToHand();
break;
}
default:
throw new Exception();
}
}