From ab0c692141acb5ae08556799d57d6d990d36db75 Mon Sep 17 00:00:00 2001 From: Mez Date: Mon, 4 Aug 2025 19:37:47 +0100 Subject: [PATCH] Fix natsume function --- tools.py | 77 ++++++++++++++++++++++++++++++++------------------------ 1 file changed, 44 insertions(+), 33 deletions(-) diff --git a/tools.py b/tools.py index a82ad53..cb92413 100644 --- a/tools.py +++ b/tools.py @@ -1707,9 +1707,13 @@ 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: @@ -1722,9 +1726,13 @@ 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: @@ -1737,54 +1745,57 @@ 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 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]: + 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(0) + natsugivespgrouped.pop(1) 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]: - 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]: + 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]: finalgive.append(givecard) - natsugivechgrouped.pop(0) + 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(0) + for card in group: + finalwant.append(card["name"]) finalwant = finalwant[:5] finalgive = finalgive[:5] if len(finalwant) > 0: