-
Notifications
You must be signed in to change notification settings - Fork 0
/
reward.py
43 lines (39 loc) · 2.19 KB
/
reward.py
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
#! /usr/bin/env python3
import util
from globals import ITEM_KIND, AA_ITEM, COLOR, BLESSING_ELEMENT, SUPPORT_RANK, MOVE_TYPE
def parseReward(rewards: list):
s = []
for reward in rewards:
kind = ITEM_KIND[reward['kind']] if reward['kind'] in ITEM_KIND else f"<!--{reward['_type']}-->"
if kind == "Hero":
s += ["{hero=" + util.getName(reward['id_tag']) + ";rarity=" + str(reward['rarity']) + "}"]
elif kind == "FB Conversation":
s += ["{hero=" + util.getName(reward['id_tag']) + ";fbrank=" + (SUPPORT_RANK[reward['support_rank']] or reward['support_rank']) + "}"]
elif kind == "Accessory":
s += ["{accessory=" + util.getName(reward['id_tag']) + "}"]
elif kind == "Sacred Seal":
s += ["{seal=" + util.getName(reward['id_tag']) + "}"]
else:
if kind == "Shard":
kind = COLOR[reward['shard_color']] + (reward['great'] and ' Crystal' or ' Shard')
elif kind == "Badge":
kind = (reward['great'] and 'Great ' or '') + COLOR[reward['badge_color']+1] + ' Badge'
elif kind == 'AA Item':
kind = AA_ITEM[reward['aa_kind']]
elif kind == 'Aether Stone':
if reward['id_tag'] != 'STONE': kind = f"<!--{reward['id_tag']} Aether Stone-->"
elif kind == 'Summoning Ticket':
kind = f"<!--Summoning Ticket: {[reward['id_tag']]}-->"
elif kind == 'Dragonflower':
kind = 'Dragonflower (' + MOVE_TYPE[reward['move_type']][0] + ')'
elif kind == 'Blessing':
kind = BLESSING_ELEMENT[reward['element']] + ' Blessing'
elif kind == 'Divine Code':
if len(reward['id_tag']) == 6:
kind += f": Ephemera {int(reward['id_tag'][-2:])}"
elif len(reward['id_tag']) == 4:
kind += f": Part {int(reward['id_tag'])-2019}"
else:
kind = f"<!--Divine Code: {reward['id_tag']}-->"
s += ["{kind=" + kind + (reward['count'] != 1 and (";count=" + str(reward['count'])) or "") + "}"]
return ('[' + ';'.join(s) + ']') if len(s) > 1 else s[0] if s != [] else ""