예제 #1
0
        protected override async Task ActAsync(IActionHost host)
        {
            host.DrawCards(4);
            host.AddBuys(1);

            await host.OtherPlayers(target => target.DrawCards(1));
        }
예제 #2
0
 protected override void Act(IActionHost host)
 {
     host.DrawCards(1);
     host.AddActions(1);
     host.AddBuys(1);
     host.AddCoins(1);
 }
예제 #3
0
 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))
                               );
 }
예제 #4
0
        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);
            }
        }
예제 #5
0
파일: Baron.cs 프로젝트: gulbanana/cardgame
        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");
        }
예제 #6
0
 protected override void OnBeginTurn(IActionHost host)
 {
     host.DrawCards(5);
     host.AddActions(1);
     host.AddBuys(1);
 }
예제 #7
0
        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"))
                                          );
            }
        }
예제 #8
0
 protected override void Act(IActionHost host)
 {
     host.AddBuys(1);
     host.AddCoins(1);
     host.AddEffect(nameof(BridgeEffect));
 }