Example #1
0
def moneylender(p: Player, scr: Screen) -> bool:

    if "copper coin" in p.current_hand:
        p.trash_hand_card("copper coin", scr)
        p.add_money(3, scr)
        return True

    else:
        scr.log("No copper coin to remove from your hand!", 2)
        return False
Example #2
0
def chapel(p: Player, scr: Screen) -> bool:

    cards = [i for i in p.current_hand]

    scr.show_main_content([
        "Which cards do you want to remove from your deck?",
        "Separate your choices with a comma."
    ] + format_cards(cards, r_main_content.width))

    chosen_cards = input_cards_selection(cards, scr, min=1, max=4)

    if chosen_cards == []: return False

    for card in chosen_cards:
        p.trash_hand_card(card.name, scr)

    return True
Example #3
0
def mine(p: Player, scr: Screen) -> bool:
    money_cards = {}
    for card in p.current_hand:
        if "money" in load_card(card).cardtype:
            money_cards.update({card: card})

    if len(money_cards.keys()) == 0:
        scr.log("No money cards to upgrade!", 2)
        return False

    scr.show_main_content(
        ["Which card do you want to upgrade?"] +
        format_cards(money_cards.keys(), r_main_content.width))

    chosen_card = input_card_selection(list(money_cards.keys()), scr)

    if chosen_card is None: return

    card_name = chosen_card.name

    upgrade_card = ""
    if card_name == "platinum coin":
        scr.log("Sorry, the fun stops here.", 2)
        return False
    elif card_name == "gold coin":
        upgrade_card = "platinum coin"

    elif card_name == "silver coin":
        upgrade_card = "gold coin"

    elif card_name == "copper coin":
        upgrade_card = "silver coin"
    else:
        return False

    if store.gift_card(p, upgrade_card, scr, pile="hand"):
        p.trash_hand_card(money_cards[card_name], scr)
        return True
    else:
        return False