def draft(args): create_tts_mtg_decks( decks=get_limited_pool(set_code=args.code, number_of_packs=3), path=args.out, card_size_text=args.size, name=f'Draft Pool {args.code.upper()} ({date.today()})' )
def main(out, name, size): deck_dict = { cardname: 1 for cardname in cardname_identifier_overrides.keys() } decklist = get_collection(deck_dict) create_tts_mtg_decks({name: decklist}, out, card_size_text=size)
def sealed(args): create_tts_mtg_decks( decks=get_limited_pool(set_code=args.code, number_of_players=args.players, packs_per_player=args.packs), path=args.out, card_size_text=args.size, name=f'Sealed Pool {args.code.upper()} ({date.today()})', packs_per_player=args.packs, log_card_names=False)
def decklist(args): decks = parse_decklist(args.file) collected_decks = {} for deckname, decklist in decks.items(): collected_decks[deckname] = get_collection(decklist) create_tts_mtg_decks( decks=collected_decks, path=args.out, card_size_text=args.size, )
def random_commander(args): deck_list, deck_name = create_random_commander_deck(verbose=args.verbose, query=' '.join( args.query), deck_name=args.name) if not deck_list: return create_tts_mtg_decks( decks={deck_name: deck_list}, path=args.out, card_size_text=args.size, )
def decklist(args): # Handle sideboards, sets deck_name = os.path.splitext(os.path.basename(args.file.name))[0] decklist_array = args.file.readlines() # Flip decklist_array ['[amount] [cardname]'] # to {[cardname]: [amount]} deck_dict = { ' '.join(entry.split(' ')[1:]).strip() : int(entry.split(' ')[0]) for entry in decklist_array if entry.strip() and not entry.startswith('//') } create_tts_mtg_decks( decks={deck_name: get_collection(deck_dict)}, path=args.out, card_size_text=args.size, )
def main(out, name, size, etched, lands, sld, sta): deck_array = [({ 'name': cardname }, 1) for cardname in cardname_identifier_overrides.keys()] if etched: name += ' - Etched' control_array = [({ 'name': card['name'] }, 1) for card in search_for_cards('frame:etched')] elif lands: name += ' - Lands' control_array = [({ 'name': card['name'] }, 1) for card in search_for_cards('t:basic order:color')] control_array += [({ 'name': card['name'] }, 1) for card in search_for_cards('Pathway t:land')] control_array += [({ 'name': card['name'] }, 1) for card in search_for_cards('Triome t:land')] control_array += [({ 'name': card['name'] }, 1) for card in search_for_cards('s:zne order:set')] # TODO: Add tests for these land types # when overrides for them get added. # control_array += [ # ({'name': card['name']}, 1) # for card in search_for_cards('is:checkland') # ] # control_array += [ # ({'name': card['name']}, 1) # for card in search_for_cards('is:dual') # ] # control_array += [ # ({'name': card['name']}, 1) # for card in search_for_cards('is:shockland') # ] elif sld: name += ' - SLD' control_array = [({ 'name': card['name'] }, 1) for card in search_for_cards('set:sld')] elif sta: name += ' - STA' control_array = [({ 'name': card['name'] }, 1) for card in search_for_cards('set:sta')] else: control_array = [] for control in control_array: if control not in deck_array: print(control[0]) decklist = get_collection(control_array) create_tts_mtg_decks({name: decklist}, out, card_size_text=size)