Expansion Randomizer Count Fix (#196)

* Program changes for Randomizer correction
* Card DB changes for Randomizer fix
* Better expansion divider card listing
* Base cards now sorted in preferred order.
* Added randomizer field
This commit is contained in:
Wendel Voigt 2018-04-28 12:29:27 -05:00 committed by Peter
parent 152c705cbf
commit a33ec8f6d7
3 changed files with 174 additions and 10 deletions

View File

@ -5,6 +5,7 @@
],
"cost": "0",
"group_tag": "adventures events",
"randomizer": false,
"types": [
"Event"
]
@ -34,6 +35,7 @@
],
"cost": "5",
"group_tag": "adventures events",
"randomizer": false,
"types": [
"Event"
]
@ -44,6 +46,7 @@
],
"cost": "3",
"group_tag": "adventures events",
"randomizer": false,
"types": [
"Event"
]
@ -54,6 +57,7 @@
],
"cost": "0",
"group_tag": "adventures events",
"randomizer": false,
"types": [
"Event"
]
@ -87,6 +91,7 @@
"cost": "6*",
"count": "5",
"group_tag": "Page -> Champion",
"randomizer": false,
"types": [
"Action",
"Duration"
@ -108,6 +113,7 @@
],
"cost": "5*",
"group_tag": "Peasant -> Teacher",
"randomizer": false,
"types": [
"Action",
"Traveller"
@ -150,6 +156,7 @@
],
"cost": "3",
"group_tag": "adventures events",
"randomizer": false,
"types": [
"Event"
]
@ -160,6 +167,7 @@
],
"cost": "3",
"group_tag": "adventures events",
"randomizer": false,
"types": [
"Event"
]
@ -170,6 +178,7 @@
],
"cost": "4*",
"group_tag": "Peasant -> Teacher",
"randomizer": false,
"types": [
"Action",
"Traveller"
@ -222,6 +231,7 @@
],
"cost": "5*",
"group_tag": "Page -> Champion",
"randomizer": false,
"types": [
"Action",
"Traveller"
@ -243,6 +253,7 @@
],
"cost": "7",
"group_tag": "adventures events",
"randomizer": false,
"types": [
"Event"
]
@ -253,6 +264,7 @@
],
"cost": "6",
"group_tag": "adventures events",
"randomizer": false,
"types": [
"Event"
]
@ -299,6 +311,7 @@
],
"cost": "4",
"group_tag": "adventures events",
"randomizer": false,
"types": [
"Event"
]
@ -322,6 +335,7 @@
],
"cost": "8",
"group_tag": "adventures events",
"randomizer": false,
"types": [
"Event"
]
@ -345,6 +359,7 @@
],
"cost": "4",
"group_tag": "adventures events",
"randomizer": false,
"types": [
"Event"
]
@ -355,6 +370,7 @@
],
"cost": "3",
"group_tag": "adventures events",
"randomizer": false,
"types": [
"Event"
]
@ -375,6 +391,7 @@
],
"cost": "0",
"group_tag": "adventures events",
"randomizer": false,
"types": [
"Event"
]
@ -385,6 +402,7 @@
],
"cost": "5",
"group_tag": "adventures events",
"randomizer": false,
"types": [
"Event"
]
@ -443,6 +461,7 @@
],
"cost": "1",
"group_tag": "adventures events",
"randomizer": false,
"types": [
"Event"
]
@ -453,6 +472,7 @@
],
"cost": "2",
"group_tag": "adventures events",
"randomizer": false,
"types": [
"Event"
]
@ -463,6 +483,7 @@
],
"cost": "5",
"group_tag": "adventures events",
"randomizer": false,
"types": [
"Event"
]
@ -473,6 +494,7 @@
],
"cost": "3*",
"group_tag": "Peasant -> Teacher",
"randomizer": false,
"types": [
"Action",
"Attack",
@ -506,6 +528,7 @@
"cost": "6*",
"count": "5",
"group_tag": "Peasant -> Teacher",
"randomizer": false,
"types": [
"Action",
"Reserve"
@ -517,6 +540,7 @@
],
"cost": "5",
"group_tag": "adventures events",
"randomizer": false,
"types": [
"Event"
]
@ -527,6 +551,7 @@
],
"cost": "6",
"group_tag": "adventures events",
"randomizer": false,
"types": [
"Event"
]
@ -547,6 +572,7 @@
],
"cost": "2",
"group_tag": "adventures events",
"randomizer": false,
"types": [
"Event"
]
@ -557,6 +583,7 @@
],
"cost": "3*",
"group_tag": "Page -> Champion",
"randomizer": false,
"types": [
"Action",
"Traveller"
@ -577,6 +604,7 @@
],
"cost": "4*",
"group_tag": "Page -> Champion",
"randomizer": false,
"types": [
"Action",
"Attack",
@ -750,6 +778,7 @@
],
"cost": "4",
"count": "16",
"randomizer": false,
"types": [
"Treasure"
]
@ -763,6 +792,7 @@
],
"cost": "0",
"count": "60",
"randomizer": false,
"types": [
"Treasure"
]
@ -776,6 +806,7 @@
],
"cost": "0",
"count": "30",
"randomizer": false,
"types": [
"Curse"
]
@ -788,6 +819,7 @@
"intrigue1stEdition"
],
"cost": "5",
"randomizer": false,
"types": [
"Victory"
]
@ -801,6 +833,7 @@
],
"cost": "2",
"count": "24",
"randomizer": false,
"types": [
"Victory"
]
@ -814,6 +847,7 @@
],
"cost": "6",
"count": "30",
"randomizer": false,
"types": [
"Treasure"
]
@ -826,6 +860,7 @@
"intrigue1stEdition"
],
"cost": "8",
"randomizer": false,
"types": [
"Victory"
]
@ -839,6 +874,7 @@
],
"cost": "3",
"count": "40",
"randomizer": false,
"types": [
"Treasure"
]
@ -851,6 +887,7 @@
],
"cost": "",
"count": "1",
"randomizer": false,
"types": [
"Trash"
]
@ -861,6 +898,7 @@
"prosperity"
],
"cost": "11",
"randomizer": false,
"types": [
"Victory"
]
@ -872,6 +910,7 @@
],
"cost": "9",
"count": "12",
"randomizer": false,
"types": [
"Treasure"
]
@ -882,6 +921,7 @@
],
"cost": "0*",
"group_tag": "Tournament and Prizes",
"randomizer": false,
"types": [
"Action",
"Prize"
@ -893,6 +933,7 @@
],
"cost": "0*",
"group_tag": "Tournament and Prizes",
"randomizer": false,
"types": [
"Treasure",
"Prize"
@ -922,6 +963,7 @@
],
"cost": "0*",
"group_tag": "Tournament and Prizes",
"randomizer": false,
"types": [
"Action",
"Attack",
@ -1009,6 +1051,7 @@
],
"cost": "0*",
"group_tag": "Tournament and Prizes",
"randomizer": false,
"types": [
"Action",
"Prize"
@ -1040,6 +1083,7 @@
],
"cost": "0*",
"group_tag": "Tournament and Prizes",
"randomizer": false,
"types": [
"Action",
"Prize"
@ -1203,6 +1247,7 @@
"cost": "1",
"group_tag": "Shelters",
"group_top": true,
"randomizer": false,
"types": [
"Reaction",
"Shelter"
@ -1250,6 +1295,7 @@
],
"cost": "0*",
"group_tag": "Hermit - Madman",
"randomizer": false,
"types": [
"Action"
]
@ -1279,6 +1325,7 @@
],
"cost": "0*",
"group_tag": "Urchin - Mercenary",
"randomizer": false,
"types": [
"Action",
"Attack"
@ -1299,6 +1346,7 @@
],
"cost": "1",
"group_tag": "Shelters",
"randomizer": false,
"types": [
"Action",
"Shelter"
@ -1310,6 +1358,7 @@
],
"cost": "1",
"group_tag": "Shelters",
"randomizer": false,
"types": [
"Victory",
"Shelter"
@ -1378,6 +1427,7 @@
],
"cost": "0",
"count": "50",
"randomizer": false,
"types": [
"Action",
"Ruins"
@ -1407,6 +1457,7 @@
],
"cost": "0*",
"count": "15",
"randomizer": false,
"types": [
"Treasure"
]
@ -1787,6 +1838,7 @@
],
"cost": "0",
"group_tag": "empires events",
"randomizer": false,
"types": [
"Event"
]
@ -1798,6 +1850,7 @@
"cost": "0",
"debtcost": "8",
"group_tag": "empires events",
"randomizer": false,
"types": [
"Event"
]
@ -1808,6 +1861,7 @@
],
"cost": "",
"group_tag": "empires landmarks",
"randomizer": false,
"types": [
"Landmark"
]
@ -1828,6 +1882,7 @@
],
"cost": "",
"group_tag": "empires landmarks",
"randomizer": false,
"types": [
"Landmark"
]
@ -1838,6 +1893,7 @@
],
"cost": "",
"group_tag": "empires landmarks",
"randomizer": false,
"types": [
"Landmark"
]
@ -1848,6 +1904,7 @@
],
"cost": "3",
"group_tag": "empires events",
"randomizer": false,
"types": [
"Event"
]
@ -1858,6 +1915,7 @@
],
"cost": "",
"group_tag": "empires landmarks",
"randomizer": false,
"types": [
"Landmark"
]
@ -1868,6 +1926,7 @@
],
"cost": "",
"group_tag": "empires landmarks",
"randomizer": false,
"types": [
"Landmark"
]
@ -1878,6 +1937,7 @@
],
"cost": "",
"group_tag": "empires landmarks",
"randomizer": false,
"types": [
"Landmark"
]
@ -1889,6 +1949,7 @@
"cost": "5",
"count": "5",
"group_tag": "Settlers - Bustling Village",
"randomizer": false,
"types": [
"Action"
]
@ -1960,6 +2021,7 @@
],
"cost": "",
"group_tag": "empires landmarks",
"randomizer": false,
"types": [
"Landmark"
]
@ -1970,6 +2032,7 @@
],
"cost": "6",
"group_tag": "empires events",
"randomizer": false,
"types": [
"Event"
]
@ -1990,6 +2053,7 @@
],
"cost": "",
"group_tag": "empires landmarks",
"randomizer": false,
"types": [
"Landmark"
]
@ -2000,6 +2064,7 @@
],
"cost": "2",
"group_tag": "empires events",
"randomizer": false,
"types": [
"Event"
]
@ -2010,6 +2075,7 @@
],
"cost": "14",
"group_tag": "empires events",
"randomizer": false,
"types": [
"Event"
]
@ -2021,6 +2087,7 @@
"cost": "0",
"debtcost": "8",
"group_tag": "empires events",
"randomizer": false,
"types": [
"Event"
]
@ -2032,6 +2099,7 @@
"cost": "5",
"count": "5",
"group_tag": "Patrician - Emporium",
"randomizer": false,
"types": [
"Action"
]
@ -2087,6 +2155,7 @@
"count": "5",
"debtcost": "8",
"group_tag": "Gladiator - Fortune",
"randomizer": false,
"types": [
"Treasure"
]
@ -2106,6 +2175,7 @@
],
"cost": "",
"group_tag": "empires landmarks",
"randomizer": false,
"types": [
"Landmark"
]
@ -2137,6 +2207,7 @@
],
"cost": "",
"group_tag": "empires landmarks",
"randomizer": false,
"types": [
"Landmark"
]
@ -2147,6 +2218,7 @@
],
"cost": "",
"group_tag": "empires landmarks",
"randomizer": false,
"types": [
"Landmark"
]
@ -2167,6 +2239,7 @@
],
"cost": "",
"group_tag": "empires landmarks",
"randomizer": false,
"types": [
"Landmark"
]
@ -2177,6 +2250,7 @@
],
"cost": "",
"group_tag": "empires landmarks",
"randomizer": false,
"types": [
"Landmark"
]
@ -2187,6 +2261,7 @@
],
"cost": "",
"group_tag": "empires landmarks",
"randomizer": false,
"types": [
"Landmark"
]
@ -2197,6 +2272,7 @@
],
"cost": "",
"group_tag": "empires landmarks",
"randomizer": false,
"types": [
"Landmark"
]
@ -2217,6 +2293,7 @@
],
"cost": "",
"group_tag": "empires landmarks",
"randomizer": false,
"types": [
"Landmark"
]
@ -2240,6 +2317,7 @@
"cost": "5",
"count": "5",
"group_tag": "Encampment - Plunder",
"randomizer": false,
"types": [
"Treasure"
]
@ -2250,6 +2328,7 @@
],
"cost": "4",
"group_tag": "empires events",
"randomizer": false,
"types": [
"Event"
]
@ -2261,6 +2340,7 @@
"cost": "4",
"count": "5",
"group_tag": "Catapult - Rocks",
"randomizer": false,
"types": [
"Treasure"
]
@ -2290,6 +2370,7 @@
],
"cost": "4",
"group_tag": "empires events",
"randomizer": false,
"types": [
"Event"
]
@ -2312,6 +2393,7 @@
],
"cost": "2",
"group_tag": "empires events",
"randomizer": false,
"types": [
"Event"
]
@ -2332,6 +2414,7 @@
],
"cost": "",
"group_tag": "empires landmarks",
"randomizer": false,
"types": [
"Landmark"
]
@ -2342,6 +2425,7 @@
],
"cost": "",
"group_tag": "empires landmarks",
"randomizer": false,
"types": [
"Landmark"
]
@ -2353,6 +2437,7 @@
"cost": "0",
"debtcost": "5",
"group_tag": "empires events",
"randomizer": false,
"types": [
"Event"
]
@ -2363,6 +2448,7 @@
],
"cost": "",
"group_tag": "empires landmarks",
"randomizer": false,
"types": [
"Landmark"
]
@ -2382,6 +2468,7 @@
],
"cost": "",
"group_tag": "empires landmarks",
"randomizer": false,
"types": [
"Landmark"
]
@ -2393,6 +2480,7 @@
"cost": "4",
"debtcost": "3",
"group_tag": "empires events",
"randomizer": false,
"types": [
"Event"
]
@ -2413,6 +2501,7 @@
],
"cost": "5",
"group_tag": "empires events",
"randomizer": false,
"types": [
"Event"
]
@ -2423,6 +2512,7 @@
],
"cost": "",
"group_tag": "empires landmarks",
"randomizer": false,
"types": [
"Landmark"
]
@ -3117,6 +3207,7 @@
],
"cost": "",
"group_tag": "nocturne hexes",
"randomizer": false,
"types": [
"Hex"
]
@ -3137,6 +3228,7 @@
],
"cost": "2*",
"group_tag": "Vampire - Bat",
"randomizer": false,
"types": [
"Night"
]
@ -3206,6 +3298,7 @@
],
"cost": "4",
"group_tag": "Pooka - Cursed Gold",
"randomizer": false,
"types": [
"Treasure",
"Heirloom"
@ -3227,6 +3320,7 @@
],
"cost": "",
"group_tag": "nocturne hexes",
"randomizer": false,
"types": [
"Hex"
]
@ -3268,6 +3362,7 @@
"cost": "",
"count": "6",
"group_tag": "nocturne states",
"randomizer": false,
"types": [
"State"
]
@ -3278,6 +3373,7 @@
],
"cost": "",
"group_tag": "nocturne hexes",
"randomizer": false,
"types": [
"Hex"
]
@ -3307,6 +3403,7 @@
],
"cost": "",
"group_tag": "nocturne hexes",
"randomizer": false,
"types": [
"Hex"
]
@ -3317,6 +3414,7 @@
],
"cost": "",
"group_tag": "nocturne hexes",
"randomizer": false,
"types": [
"Hex"
]
@ -3339,6 +3437,7 @@
],
"cost": "4*",
"count": "6",
"randomizer": false,
"types": [
"Night",
"Duration",
@ -3361,6 +3460,7 @@
],
"cost": "2",
"group_tag": "Pixie - Goat",
"randomizer": false,
"types": [
"Treasure",
"Heirloom"
@ -3372,6 +3472,7 @@
],
"cost": "",
"group_tag": "nocturne hexes",
"randomizer": false,
"types": [
"Hex"
]
@ -3392,6 +3493,7 @@
],
"cost": "0",
"group_tag": "Cemetery - Haunted Mirror",
"randomizer": false,
"types": [
"Treasure",
"Heirloom"
@ -3403,6 +3505,7 @@
],
"cost": "",
"group_tag": "nocturne hexes",
"randomizer": false,
"types": [
"Hex"
]
@ -3424,6 +3527,7 @@
],
"cost": "2*",
"count": "13",
"randomizer": false,
"types": [
"Action",
"Spirit"
@ -3445,6 +3549,7 @@
],
"cost": "",
"group_tag": "nocturne hexes",
"randomizer": false,
"types": [
"Hex"
]
@ -3456,6 +3561,7 @@
"cost": "",
"count": "1",
"group_tag": "nocturne states",
"randomizer": false,
"types": [
"State"
]
@ -3466,6 +3572,7 @@
],
"cost": "4",
"group_tag": "Fool - Lucky Coin",
"randomizer": false,
"types": [
"Treasure",
"Heirloom"
@ -3477,6 +3584,7 @@
],
"cost": "0",
"group_tag": "Secret Cave - Magic Lamp",
"randomizer": false,
"types": [
"Treasure",
"Heirloom"
@ -3489,6 +3597,7 @@
"cost": "",
"count": "6",
"group_tag": "nocturne states",
"randomizer": false,
"types": [
"State"
]
@ -3499,6 +3608,7 @@
],
"cost": "",
"group_tag": "nocturne hexes",
"randomizer": false,
"types": [
"Hex"
]
@ -3538,6 +3648,7 @@
],
"cost": "2",
"group_tag": "Shepherd - Pasture",
"randomizer": false,
"types": [
"Treasure",
"Victory",
@ -3562,6 +3673,7 @@
],
"cost": "",
"group_tag": "nocturne hexes",
"randomizer": false,
"types": [
"Hex"
]
@ -3583,6 +3695,7 @@
],
"cost": "2",
"group_tag": "Tracker - Pouch",
"randomizer": false,
"types": [
"Treasure",
"Heirloom"
@ -3594,6 +3707,7 @@
],
"cost": "",
"group_tag": "nocturne hexes",
"randomizer": false,
"types": [
"Hex"
]
@ -3659,6 +3773,7 @@
],
"cost": "",
"group_tag": "nocturne boons",
"randomizer": false,
"types": [
"Boon"
]
@ -3669,6 +3784,7 @@
],
"cost": "",
"group_tag": "nocturne boons",
"randomizer": false,
"types": [
"Boon"
]
@ -3679,6 +3795,7 @@
],
"cost": "",
"group_tag": "nocturne boons",
"randomizer": false,
"types": [
"Boon"
]
@ -3689,6 +3806,7 @@
],
"cost": "",
"group_tag": "nocturne boons",
"randomizer": false,
"types": [
"Boon"
]
@ -3699,6 +3817,7 @@
],
"cost": "",
"group_tag": "nocturne boons",
"randomizer": false,
"types": [
"Boon"
]
@ -3709,6 +3828,7 @@
],
"cost": "",
"group_tag": "nocturne boons",
"randomizer": false,
"types": [
"Boon"
]
@ -3719,6 +3839,7 @@
],
"cost": "",
"group_tag": "nocturne boons",
"randomizer": false,
"types": [
"Boon"
]
@ -3729,6 +3850,7 @@
],
"cost": "",
"group_tag": "nocturne boons",
"randomizer": false,
"types": [
"Boon"
]
@ -3739,6 +3861,7 @@
],
"cost": "",
"group_tag": "nocturne boons",
"randomizer": false,
"types": [
"Boon"
]
@ -3749,6 +3872,7 @@
],
"cost": "",
"group_tag": "nocturne boons",
"randomizer": false,
"types": [
"Boon"
]
@ -3759,6 +3883,7 @@
],
"cost": "",
"group_tag": "nocturne boons",
"randomizer": false,
"types": [
"Boon"
]
@ -3769,6 +3894,7 @@
],
"cost": "",
"group_tag": "nocturne boons",
"randomizer": false,
"types": [
"Boon"
]
@ -3824,6 +3950,7 @@
],
"cost": "",
"group_tag": "nocturne hexes",
"randomizer": false,
"types": [
"Hex"
]
@ -3846,6 +3973,7 @@
],
"cost": "0*",
"count": "12",
"randomizer": false,
"types": [
"Action",
"Spirit"
@ -3857,6 +3985,7 @@
],
"cost": "0*",
"count": "12",
"randomizer": false,
"types": [
"Action"
]
@ -3868,6 +3997,7 @@
"cost": "3",
"count": "1",
"group_tag": "Necromancer - Zombies",
"randomizer": false,
"types": [
"Action",
"Zombie"
@ -3880,6 +4010,7 @@
"cost": "3",
"count": "1",
"group_tag": "Necromancer - Zombies",
"randomizer": false,
"types": [
"Action",
"Zombie"
@ -3892,6 +4023,7 @@
"cost": "3",
"count": "1",
"group_tag": "Necromancer - Zombies",
"randomizer": false,
"types": [
"Action",
"Zombie"
@ -3904,6 +4036,7 @@
"cost": "5",
"count": "5",
"group_tag": "Sauna - Avanto",
"randomizer": false,
"types": [
"Action"
]
@ -3986,6 +4119,7 @@
],
"cost": "5",
"group_tag": "promo events",
"randomizer": false,
"types": [
"Event"
]

View File

@ -25,7 +25,7 @@ class Card(object):
def __init__(self, name=None, cardset='', types=None, cost='', description='',
potcost=0, debtcost=0, extra='', count=-1, card_tag='missing card_tag',
cardset_tags=None, group_tag='', group_top=False, image=None,
text_icon=None, cardset_tag=''):
text_icon=None, randomizer=True, cardset_tag=''):
if types is None:
types = [] # make sure types is a list
@ -56,6 +56,7 @@ class Card(object):
self.count = []
else:
self.count = [int(count)]
self.randomizer = randomizer
def getCardCount(self):
return sum(i for i in self.count)

View File

@ -7,6 +7,7 @@ import copy
import fnmatch
import pkg_resources
import unicodedata
from collections import Counter, defaultdict
import reportlab.lib.pagesizes as pagesizes
from reportlab.lib.units import cm
@ -143,7 +144,8 @@ def parse_opts(cmdline_args=None):
"--count",
action="store_true",
dest="count",
help="Display card count on body of the divider.")
help="Display the card count on the body of card dividers "
"and the randomizer count on the body of expansion dividers.")
group_body.add_argument(
"--types",
action="store_true",
@ -609,11 +611,11 @@ class CardSorter(object):
else:
self.sort_key = self.by_expansion_sort_key
baseOrder = ['Copper', 'Silver', 'Gold', 'Platinum', 'Potion',
'Curse', 'Estate', 'Duchy', 'Province', 'Colony',
'Trash']
self.baseOrder = ['Copper', 'Silver', 'Gold', 'Platinum', 'Potion',
'Curse', 'Estate', 'Duchy', 'Province', 'Colony',
'Trash']
self.baseCards = []
for tag in baseOrder:
for tag in self.baseOrder:
if tag in baseCards:
self.baseCards.append(baseCards[tag])
del baseCards[tag]
@ -843,6 +845,7 @@ def filter_sort_cards(cards, options):
group_cards[card.group_tag].potcost = card.potcost
group_cards[card.group_tag].debtcost = card.debtcost
group_cards[card.group_tag].types = card.types
group_cards[card.group_tag].randomizer = card.randomizer
group_cards[card.group_tag].image = card.image
group_cards[card.group_tag].addCardCount(card.count) # increase the count
@ -984,18 +987,34 @@ def filter_sort_cards(cards, options):
# Add expansion divider
if options.expansion_dividers:
cardnamesByExpansion = {}
cardnamesByExpansion = defaultdict(dict)
randomizerCountByExpansion = Counter()
for c in cards:
if cardSorter.isBaseExpansionCard(c):
continue
cardnamesByExpansion.setdefault(c.cardset, []).append(c.name.strip().replace(' ', ' '))
if c.randomizer:
randomizerCountByExpansion[c.cardset] += 1
if c.card_tag in cardnamesByExpansion[c.cardset]:
# Already have one, so just update the count (for extra Curses, Start Decks, etc)
cardnamesByExpansion[c.cardset][c.card_tag]['count'] += 1
else:
# New, so save off information about the card to be used on the expansion divider
order = 0
if c.card_tag in cardSorter.baseOrder:
# Use the base card ordering
order = 100 + cardSorter.baseOrder.index(c.card_tag)
cardnamesByExpansion[c.cardset][c.card_tag] = {'name': c.name.strip().replace(' ', ' '),
'randomizer': c.randomizer,
'count': 1,
'sort': "%03d%s" % (order, c.name.strip(),)}
for set_tag, set_values in Card.sets.iteritems():
exp = set_values["set_name"]
if exp in cardnamesByExpansion:
exp_name = exp
count = len(cardnamesByExpansion[exp])
count = randomizerCountByExpansion[exp]
if 'no_randomizer' in set_values:
if set_values['no_randomizer']:
count = 0
@ -1004,12 +1023,22 @@ def filter_sort_cards(cards, options):
if 'short_name' in set_values:
exp_name = set_values['short_name']
card_names = []
for key, n in sorted(cardnamesByExpansion[exp].items(), key=lambda (k, x): x['sort']):
if not n['randomizer']:
# Highlight cards without Randomizers
n['name'] = '<i>' + n['name'] + '</i>'
if n['count'] > 1:
# Add number of copies
n['name'] = u"{}&nbsp;\u00d7&nbsp;".format(n['count']) + n['name']
card_names.append(n['name'])
c = Card(name=exp_name,
cardset=exp,
cardset_tag=set_tag,
types=("Expansion", ),
cost=None,
description=' | '.join(sorted(cardnamesByExpansion[exp])),
description=' | '.join(card_names),
extra=set_values.get("set_text", ""),
count=count,
card_tag=set_tag)