diff --git a/tools.py b/tools.py index cb92413..d9639d6 100644 --- a/tools.py +++ b/tools.py @@ -406,6 +406,7 @@ def nextportfolio(monochrome=False): print("Master some more decks first") def switchit(): + wantedbypriority = sorted(colors.wantedlist, key=lambda d: d["priority"]) redtrade = [] orangetrade = [] yellowtrade = [] @@ -433,7 +434,7 @@ def switchit(): elif card["colour"] == "gray": greytrade.append(card["name"]) wantednames = [] - for card in colors.wantedlist: + for card in wantedbypriority: wantednames.append(card["name"]) wantall = [] tradeall = [] @@ -1707,13 +1708,9 @@ def natsume(): natsuwantgrouped.append(listone) listone = [] listone.append(card) - if index + 1 == len(natsuwant): - natsuwantgrouped.append(listone) else: listone = [] listone.append(card) - if len(natsuwant) == 1: - natsuwantgrouped.append(listone) index += 1 index = 0 for card in natsugivech: @@ -1726,13 +1723,9 @@ def natsume(): natsugivechgrouped.append(listtwo) listtwo = [] listtwo.append(card["name"]) - if index + 1 == len(natsugivech): - natsugivechgrouped.append(listtwo) else: listtwo = [] listtwo.append(card["name"]) - if len(natsugivech) == 1: - natsugivechgrouped.append(listtwo) index += 1 index = 0 for card in natsugivesp: @@ -1745,57 +1738,54 @@ def natsume(): natsugivespgrouped.append(listthree) listthree = [] listthree.append(card["name"]) - if index + 1 == len(natsugivesp): - natsugivespgrouped.append(listthree) else: listthree = [] listthree.append(card["name"]) - if len(natsugivesp) == 1: - natsugivespgrouped.append(listthree) index += 1 natsugivechgrouped = natsugivechgrouped[:5] natsugivespgrouped = natsugivespgrouped[:5] finalwant = [] finalgive = [] for group in natsuwantgrouped: - if group[0]["colour"] == "special": - if len(natsugivespgrouped) > 0: - if natsugivespgrouped[0][0][:-2] == group[0]["name"][:-2]: - if len(natsugivespgrouped) > 1: - group = group[:len(natsugivespgrouped[1])] - natsugivespgrouped[1] = natsugivespgrouped[1][:len(group)] - for givecard in natsugivespgrouped[1]: + if len(finalwant) < 5: + if group[0]["colour"] == "special": + if len(natsugivespgrouped) > 0: + if natsugivespgrouped[0][0][:-2] == group[0]["name"][:-2]: + if len(natsugivespgrouped) > 1: + group = group[:len(natsugivespgrouped[1])] + natsugivespgrouped[1] = natsugivespgrouped[1][:len(group)] + for givecard in natsugivespgrouped[1]: + finalgive.append(givecard) + natsugivespgrouped.pop(1) + for card in group: + finalwant.append(card["name"]) + else: + group = group[:len(natsugivespgrouped[0])] + natsugivespgrouped[0] = natsugivespgrouped[0][:len(group)] + for givecard in natsugivespgrouped[0]: finalgive.append(givecard) - natsugivespgrouped.pop(1) + natsugivespgrouped.pop(0) for card in group: finalwant.append(card["name"]) - else: - group = group[:len(natsugivespgrouped[0])] - natsugivespgrouped[0] = natsugivespgrouped[0][:len(group)] - for givecard in natsugivespgrouped[0]: - finalgive.append(givecard) - natsugivespgrouped.pop(0) - for card in group: - finalwant.append(card["name"]) - else: - if len(natsugivechgrouped) > 0: - if natsugivechgrouped[0][0][:-2] == group[0]["name"][:-2]: - if len(natsugivechgrouped) > 1: - group = group[:len(natsugivechgrouped[1])] - natsugivechgrouped[1] = natsugivechgrouped[1][:len(group)] - for givecard in natsugivechgrouped[1]: + else: + if len(natsugivechgrouped) > 0: + if natsugivechgrouped[0][0][:-2] == group[0]["name"][:-2]: + if len(natsugivechgrouped) > 1: + group = group[:len(natsugivechgrouped[1])] + natsugivechgrouped[1] = natsugivechgrouped[1][:len(group)] + for givecard in natsugivechgrouped[1]: + finalgive.append(givecard) + natsugivechgrouped.pop(1) + for card in group: + finalwant.append(card["name"]) + else: + group = group[:len(natsugivechgrouped[0])] + natsugivechgrouped[0] = natsugivechgrouped[0][:len(group)] + for givecard in natsugivechgrouped[0]: finalgive.append(givecard) - natsugivechgrouped.pop(1) + natsugivechgrouped.pop(0) for card in group: finalwant.append(card["name"]) - else: - group = group[:len(natsugivechgrouped[0])] - natsugivechgrouped[0] = natsugivechgrouped[0][:len(group)] - for givecard in natsugivechgrouped[0]: - finalgive.append(givecard) - natsugivechgrouped.pop(0) - for card in group: - finalwant.append(card["name"]) finalwant = finalwant[:5] finalgive = finalgive[:5] if len(finalwant) > 0: