aboutsummaryrefslogtreecommitdiff
path: root/data/build-card-info.py
blob: f3612654ea702634f9efcfe1987369a320b89dbc (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
#!/usr/bin/env python3

import json

j = None
with open('cards.json') as fp:
    j = json.load(fp)

outData = dict()

def convert(card):
    newCard = dict()
    newCard['names'] = []
    cnidx = -1
    jpidx = -1
    enidx = -1
    i = 0
    for namek in ['cn_name', 'sc_name', 'md_name', 'nwbbs_n', \
                  'cnocg_n', 'jp_ruby', 'jp_name', 'en_name', 'set_ext']:
        if namek in card and len(card[namek]) > 0:
            newCard['names'].append(card[namek])
            if namek == 'cn_name':
                cnidx = i
            if namek == 'en_name':
                enidx = i
            if namek == 'jp_name':
                jpidx = i
            i += 1
    newCard['en'] = 0
    newCard['cn'] = 0
    newCard['jp'] = 0

    if cnidx >= 0:
        newCard['cn'] = cnidx

    if enidx >= 0:
        newCard['en'] = enidx
    elif jpidx >= 0:
        newCard['en'] = card['jp_name']
    
    if jpidx >= 0:
        newCard['jp'] = jpidx
    elif enidx >= 0:
        newCard['jp'] = enidx

    newCard['isExtra'] = False
    for t in ['超量', '连接', '同调', '融合']:
        if t in card['text']['types']:
            newCard['isExtra'] = True
    newCard['cid'] = card['cid']
    return newCard

for k in j:
    outData[j[k]['id']] = convert(j[k])

with open('./card_db.json', 'w') as fp:
    fp.write(json.dumps(outData))