protected override async Task ActAsync(IActionHost host) { host.DrawCards(4); host.AddBuys(1); await host.OtherPlayers(target => target.DrawCards(1)); }
protected override void Act(IActionHost host) { host.DrawCards(1); host.AddActions(1); host.AddBuys(1); host.AddCoins(1); }
protected override async Task ActAsync(IActionHost host) { await host.ChooseMultiple("Pawn", 2, new NamedOption("<bold>+1 Card</bold>", () => host.DrawCards(1)), new NamedOption("<bold>+1 Action</bold>", () => host.AddActions(1)), new NamedOption("<bold>+1 Buy</bold>", () => host.AddBuys(1)), new NamedOption("<bold><sym>+coin1</sym></bold>", () => host.AddCoins(1)) ); }
protected override async Task ActAsync(IActionHost host) { host.AddBuys(1); var trashed = await host.SelectCard("Choose a card to trash."); if (trashed != null) { host.Trash(trashed); host.AddCoins(trashed.GetCost(host).Coins); } }
protected override async Task ActAsync(IActionHost host) { host.AddBuys(1); var hand = host.Examine(Zone.Hand); if (hand.Any(card => card.Name == "Estate")) { if (await host.YesNo("Baron", @"<run>Discard an</run> <card>Estate</card> <run>for</run> <sym>+coin4?</sym>")) { host.Discard("Estate"); host.AddCoins(4); return; } } await host.Gain("Estate"); }
protected override void OnBeginTurn(IActionHost host) { host.DrawCards(5); host.AddActions(1); host.AddBuys(1); }
protected override async Task ActAsync(IActionHost host) { var revealed = await host.SelectCard("Choose a card to reveal."); if (revealed != null) { host.Reveal(revealed); await host.ChooseMultiple("Courtier", revealed.Types.Length, new NamedOption("<bold>+1 Action</bold>", () => host.AddActions(1)), new NamedOption("<bold>+1 Buy</bold>", () => host.AddBuys(1)), new NamedOption("<bold><sym>+coin3</sym></bold>", () => host.AddCoins(3)), new NamedOption("<run>Gain a</run><card>Gold</card>", () => host.Gain("Gold")) ); } }
protected override void Act(IActionHost host) { host.AddBuys(1); host.AddCoins(1); host.AddEffect(nameof(BridgeEffect)); }