mtgencode/lib/config.py

65 lines
1.5 KiB
Python

import re
# Utilities for handling unicode, unary numbers, mana costs, and special symbols.
# For convenience we redefine everything from utils so that it can all be accessed
# from the utils module.
# separators
cardsep = '\n\n'
fieldsep = '|'
bsidesep = '\n'
newline = '\\'
# special indicators
dash_marker = '~'
bullet_marker = '='
this_marker = '@'
counter_marker = '%'
reserved_marker = '\v'
reserved_mana_marker = '$'
choice_open_delimiter = '['
choice_close_delimiter = ']'
x_marker = 'X'
tap_marker = 'T'
untap_marker = 'Q'
# second letter of the word
rarity_common_marker = 'O'
rarity_uncommon_marker = 'N'
rarity_rare_marker = 'A'
rarity_mythic_marker = 'Y'
# with some crazy exceptions
rarity_special_marker = 'E'
rarity_basic_land_marker = 'L'
# unambiguous synonyms
counter_rename = 'uncast'
# unary numbers
unary_marker = '&'
unary_counter = '^'
unary_max = 20
unary_exceptions = {
25 : 'twenty' + dash_marker + 'five',
30 : 'thirty',
40 : 'forty',
50 : 'fifly',
100: 'one hundred',
200: 'two hundred',
}
# field labels, to allow potential reordering of card format
field_label_name = '1'
field_label_rarity = '0' # 2 is part of some mana symbols {2/B} ...
field_label_cost = '3'
field_label_supertypes = '4'
field_label_types = '5'
field_label_subtypes = '6'
field_label_loyalty = '7'
field_label_pt = '8'
field_label_text = '9'
# additional fields we add to the json cards
json_field_bside = 'bside'
json_field_set_name = 'setName'
json_field_info_code = 'magicCardsInfoCode'