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) { if (turnScope.Hand.Contains <Card>(Treasure.Copper)) { turnScope.TrashCardFromHand(Treasure.Copper); turnScope.ChangeState(3.TurnCoins()); } }
public override void PlayAsAction(ITurnScope turnScope) { turnScope.ChangeState(2.TurnCoins()); turnScope.Publish(new AttackCardPlayed(this, turnScope)); turnScope.Publish(new MilitiaAttackEffect(turnScope)); }
public override void PlayAsAction(ITurnScope turnScope) { turnScope.Player.DrawIntoHand(2, turnScope); turnScope.ChangeState(1.TurnActions()); }
public override void PlayAsAction(ITurnScope turnScope) { turnScope.ChangeState(1.TurnBuys(), 2.TurnCoins()); }
public override void PlayAsAction(ITurnScope turnScope) { turnScope.ChangeState(1.TurnActions()); turnScope.Player.Handle(new OptionallyDiscard(turnScope), turnScope); }
public override void PlayAsAction(ITurnScope turnScope) { turnScope.ChangeState(new TurnState(actions: 2, buys: 1, coins: 2)); }
public override void PlayAsAction(ITurnScope turnScope) { turnScope.ChangeState(2.TurnCoins()); turnScope.Publish(new ChooseWhetherToPutDeckInDiscardPileFromChancellor(turnScope)); }
public override void PlayAsAction(ITurnScope turnScope) { turnScope.ChangeState(2.TurnActions()); turnScope.DrawCardsIntoHand(2); }
public override void PlayAsAction(ITurnScope turnScope) { turnScope.ChangeState(new TurnState(1, 1, 1)); turnScope.Player.DrawIntoHand(1, turnScope); }