MoveRevealedCardToTopOfDeck() private method

private MoveRevealedCardToTopOfDeck ( ) : void
return void
コード例 #1
0
        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);
            }
        }
コード例 #2
0
ファイル: BaseSet.cs プロジェクト: peterhal/Dominulator
 private static void ApplySpyEffect(PlayerState playerAffected, PlayerState decidingPlayer, GameState gameState)
 {
     Card revealedCard = playerAffected.DrawAndRevealOneCardFromDeck();
     if (revealedCard != null)
     {
         if (decidingPlayer.actions.ShouldPlayerDiscardCardFromDeck(gameState, playerAffected, revealedCard))
         {
             playerAffected.MoveRevealedCardsToDiscard(gameState);
         }
         else
         {
             playerAffected.MoveRevealedCardToTopOfDeck(revealedCard);
         }
     }
 }
コード例 #3
0
ファイル: Seaside.cs プロジェクト: peterhal/Dominulator
 public override void DoSpecializedAction(PlayerState currentPlayer, GameState gameState)
 {
     currentPlayer.RevealCardsFromDeck(3);
     gameState.gameLog.PushScope();
     currentPlayer.RequestPlayerTrashRevealedCard(gameState);
     currentPlayer.RequestPlayerDiscardRevealedCard(gameState);
     currentPlayer.MoveRevealedCardToTopOfDeck();
     gameState.gameLog.PopScope();
 }
コード例 #4
0
ファイル: Cornucopia.cs プロジェクト: peterhal/Dominulator
        public override void DoSpecializedAttack(PlayerState currentPlayer, PlayerState otherPlayer, GameState gameState)
        {
            // Each other player reveals cards from the top of his deck
            Card revealedCard = otherPlayer.DrawAndRevealOneCardFromDeck();
            while (revealedCard != null)
            {
                // until he reveals a victory or curse card
                if (revealedCard.isVictory || revealedCard.isCurse)
                {
                    otherPlayer.MoveRevealedCardToTopOfDeck(revealedCard);
                    break;
                }
                revealedCard = otherPlayer.DrawAndRevealOneCardFromDeck();
            }

            otherPlayer.MoveRevealedCardsToDiscard(gameState);
        }
コード例 #5
0
ファイル: Guilds.cs プロジェクト: NathanTeeuwen/Dominulator
        public override void DoSpecializedAction(PlayerState currentPlayer, GameState gameState)
        {
            Card revealedCard = currentPlayer.DrawAndRevealOneCardFromDeck(gameState);
            if (revealedCard == null)
                return;

            if (revealedCard.isAction)
            {
                currentPlayer.cardsBeingRevealed.RemoveCard(revealedCard);
                currentPlayer.DoPlayAction(revealedCard, gameState);
            }
            else
            {
                currentPlayer.MoveRevealedCardToTopOfDeck();
            }
        }
コード例 #6
0
ファイル: DarkAges.cs プロジェクト: peterhal/Dominulator
 public override void DoSpecializedAction(PlayerState currentPlayer, GameState gameState)
 {
     //currentPlayer.gameLog.LogDeck(gameState.players.CurrentPlayer);
     Card cardType = currentPlayer.GuessCardTopOfDeck(gameState);
     currentPlayer.RevealCardsFromDeck(1);
     if (currentPlayer.cardsBeingRevealed.HasCard(cardType))
     {
         currentPlayer.MoveRevealedCardToHand(cardType);
     }
     else
     {
         currentPlayer.MoveRevealedCardToTopOfDeck();
     }
 }
コード例 #7
0
ファイル: DarkAges.cs プロジェクト: peterhal/Dominulator
        public override void DoSpecializedAction(PlayerState currentPlayer, GameState gameState)
        {
            currentPlayer.RevealCardsFromDeck(1);
            Card revealedCard  = currentPlayer.CardsBeingRevealed.First();

            currentPlayer.RequestPlayerDiscardRevealedCard(gameState);
            currentPlayer.MoveRevealedCardToTopOfDeck();

            if (revealedCard.isAction)
            {
                currentPlayer.AddActions(1);
            }

            if (revealedCard.isTreasure)
            {
                currentPlayer.AddCoins(1);
            }

            if (revealedCard.isVictory)
            {
                currentPlayer.DrawOneCardIntoHand();
            }
        }
コード例 #8
0
ファイル: DarkAges.cs プロジェクト: peterhal/Dominulator
        public override void DoSpecializedAction(PlayerState currentPlayer, GameState gameState)
        {
            currentPlayer.RevealCardsFromDeck(1);
            Card revealedCard = currentPlayer.cardsBeingRevealed.FirstOrDefault();
            if (revealedCard == null)
            {
                return;
            }

            if (revealedCard.isCurse || revealedCard.isRuins || revealedCard.isShelter || revealedCard.isVictory)
            {
                currentPlayer.MoveRevealedCardToHand(revealedCard);
            }
            else
            {
                currentPlayer.MoveRevealedCardToTopOfDeck();
            }
        }
コード例 #9
0
ファイル: Intrigue.cs プロジェクト: NathanTeeuwen/Dominulator
        public override void DoSpecializedAction(PlayerState currentPlayer, GameState gameState)
        {
            Card cardType = currentPlayer.GuessCardTopOfDeck(gameState);

            Card revealedCard = currentPlayer.DrawAndRevealOneCardFromDeck(gameState);
            if (revealedCard == cardType)
            {
                currentPlayer.MoveAllRevealedCardsToHand();
            }
            else
            {
                currentPlayer.MoveRevealedCardToTopOfDeck();
            }
        }
コード例 #10
0
ファイル: Seaside.cs プロジェクト: NathanTeeuwen/Dominulator
 public override void DoSpecializedAction(PlayerState currentPlayer, GameState gameState)
 {
     currentPlayer.RevealCardsFromDeck(3, gameState);
     currentPlayer.RequestPlayerTrashRevealedCard(gameState, acceptableCard => true);
     currentPlayer.RequestPlayerDiscardRevealedCard(gameState);
     currentPlayer.MoveRevealedCardToTopOfDeck();
 }