Exemple #1
0
 public override void PlayAsAction(ITurnScope turnScope)
 {
     turnScope.ChangeState(1.TurnActions());
     turnScope.Player.DrawIntoHand(1, turnScope);
     turnScope.Publish(new ChooseToDiscardOrReturnTopCardFromSpy(turnScope, turnScope));
     turnScope.Publish(new SpyAttackEffect(turnScope));
 }
        public override void PlayAsAction(ITurnScope turnScope)
        {
            var id = Guid.NewGuid();

            turnScope.Publish(new RemodelPlayedMessage(turnScope)
            {
                Id = id, OriginalEventId = id, CorrelationId = id
            });
        }
Exemple #3
0
        public override void PlayAsAction(ITurnScope turnScope)
        {
            while (turnScope.Player.Hand.Count() < 7)
            {
                var state = new LibraryState();
                turnScope.DrawCardIntoCardset(state.DrawnCards);
                var card = state.DrawnCards.First();
                if (card.IsAction)
                {
                    turnScope.Publish(new ActionDrawnForLibrary(card, state, turnScope));
                }
                else
                {
                    state.DrawnCards.Add(card, turnScope);
                }

                turnScope.PutCardsIntoHand(state.DrawnCards);
                turnScope.Discard(state.SetAsideCards);
            }
        }
Exemple #4
0
 public override void PlayAsAction(ITurnScope turnScope)
 {
     turnScope.ChangeState(2.TurnCoins());
     turnScope.Publish(new AttackCardPlayed(this, turnScope));
     turnScope.Publish(new MilitiaAttackEffect(turnScope));
 }
Exemple #5
0
 public override void PlayAsAction(ITurnScope turnScope)
 {
     base.PlayAsAction(turnScope);
     turnScope.Publish(new SelectActionCardToThroneRoom(turnScope));
 }
Exemple #6
0
 public override void PlayAsAction(ITurnScope turnScope)
 {
     turnScope.Publish(new WitchEffect(turnScope));
 }
Exemple #7
0
 public override void PlayAsAction(ITurnScope turnScope)
 {
     turnScope.GainCardFromSupplyOntoTopOfDeck(Treasure.Silver);
     turnScope.Publish(new BureaucratAttackEffect(turnScope));
 }
 public override void PlayAsAction(ITurnScope turnScope)
 {
     turnScope.Publish(new SaboteurEffect(turnScope));
 }
Exemple #9
0
 public override void PlayAsAction(ITurnScope turnScope)
 {
     turnScope.Publish(new ThiefAttackEffect(turnScope));
 }
Exemple #10
0
 public override void PlayAsAction(ITurnScope turnScope)
 {
     turnScope.ChangeState(2.TurnCoins());
     turnScope.Publish(new ChooseWhetherToPutDeckInDiscardPileFromChancellor(turnScope));
 }
Exemple #11
0
 public override void PlayAsAction(ITurnScope turnScope)
 {
     turnScope.Publish(new GainCardCostingUpToMessage(4.Coins(), turnScope));
 }
Exemple #12
0
 public override void PlayAsAction(ITurnScope turnScope)
 {
     base.PlayAsAction(turnScope);
     turnScope.Publish(new SelectCardsToChapel(turnScope));
 }
Exemple #13
0
 public override void PlayAsAction(ITurnScope turnScope)
 {
     turnScope.Publish(new SelectCardToFeast(turnScope));
 }