Move tools to a different file

This commit is contained in:
mez 2025-04-14 20:35:18 +01:00
parent d2157a3bb3
commit 654c162105
2 changed files with 785 additions and 743 deletions

783
tools.py Normal file
View file

@ -0,0 +1,783 @@
import datetime,random
import colors,log,variables
def dupes(mass=True,nonmass=True,characters=True,specials=True):
dupeslist = []
previouscard = ""
for card in colors.cardlist:
try:
if card["colour"] != "sig" and card ["colour"] != "limited":
if card["name"] == previouscard["name"]:
dupe = {}
dupe["name"] = card["name"]
if len(card["mass"]) > 0:
if mass:
dupe["mass"] = card["mass"]
if card["colour"] == "special":
if specials:
dupeslist.append(dupe)
else:
if characters:
dupeslist.append(dupe)
else:
if nonmass:
if card["colour"] == "special":
if specials:
dupeslist.append(dupe)
else:
if characters:
dupeslist.append(dupe)
except:
pass
previouscard = card
return dupeslist
def activitydupes():
print(dupes(False,True,True,False))
def riku():
print("Specials")
print(dupes(True,False,False,True))
print("Characters")
print(dupes(True,False,True,False))
def nextportfolio(monochrome=False):
useddecks = {}
already = 0
if monochrome:
for portfolio in colors.portfolios:
if portfolio["type"] == "monochrome":
already += 1
useddecks.update(portfolio["decks"])
else:
for portfolio in colors.portfolios:
if portfolio["type"] == "palette":
already += 1
useddecks.update(portfolio["decks"])
potentials = []
for deck in colors.decklist:
if deck["mastered"]:
if deck["colour"] != "special" and deck["colour"] != "limited":
potential = True
for key, value in useddecks.items():
if deck["name"] == key.replace(" ",""):
potential = False
if potential:
potentials.append(deck)
potentials = sorted(potentials, key=lambda d: d["mastered"])
if monochrome:
reddecks = []
orangedecks = []
yellowdecks = []
greendecks = []
bluedecks = []
purpledecks = []
browndecks = []
greydecks = []
for deck in potentials:
if deck["colour"] == "red":
reddecks.append(deck)
elif deck["colour"] == "orange":
orangedecks.append(deck)
elif deck["colour"] == "yellow":
yellowdecks.append(deck)
elif deck["colour"] == "green":
greendecks.append(deck)
elif deck["colour"] == "blue":
bluedecks.append(deck)
elif deck["colour"] == "purple":
purpledecks.append(deck)
elif deck["colour"] == "brown":
browndecks.append(deck)
elif deck["colour"] == "gray":
greydecks.append(deck)
longestvalue = len(reddecks)
nextportcolour = "red"
if len(orangedecks) > longestvalue:
nextportcolour = "orange"
if len(yellowdecks) > longestvalue:
nextportcolour = "yellow"
if len(greendecks) > longestvalue:
nextportcolour = "green"
if len(bluedecks) > longestvalue:
nextportcolour = "blue"
if len(purpledecks) > longestvalue:
nextportcolour = "purple"
if len(browndecks) > longestvalue:
nextportcolour = "brown"
if len(greydecks) > longestvalue:
nextportcolour = "grey"
firstthree = []
if nextportcolour == "red":
firstthree.append(reddecks[0]["name"])
firstthree.append(reddecks[1]["name"])
firstthree.append(reddecks[2]["name"])
elif nextportcolour == "orange":
firstthree.append(orangedecks[0]["name"])
firstthree.append(orangedecks[1]["name"])
firstthree.append(orangedecks[2]["name"])
elif nextportcolour == "yellow":
firstthree.append(yellowdecks[0]["name"])
firstthree.append(yellowdecks[1]["name"])
firstthree.append(yellowdecks[2]["name"])
elif nextportcolour == "green":
firstthree.append(greendecks[0]["name"])
firstthree.append(greendecks[1]["name"])
firstthree.append(greendecks[2]["name"])
elif nextportcolour == "blue":
firstthree.append(bluedecks[0]["name"])
firstthree.append(bluedecks[1]["name"])
firstthree.append(bluedecks[2]["name"])
elif nextportcolour == "purple":
firstthree.append(purpledecks[0]["name"])
firstthree.append(purpledecks[1]["name"])
firstthree.append(purpledecks[2]["name"])
elif nextportcolour == "brown":
firstthree.append(browndecks[0]["name"])
firstthree.append(browndecks[1]["name"])
firstthree.append(browndecks[2]["name"])
elif nextportcolour == "grey":
firstthree.append(greydecks[0]["name"])
firstthree.append(greydecks[1]["name"])
firstthree.append(greydecks[2]["name"])
secondfive = []
nearingdecks = sorted(colors.decklist, key=lambda d: d["count"],reverse=True)
slots = 5
for deck in nearingdecks:
if slots > 0:
if not deck["mastered"]:
if nextportcolour == "grey":
if deck["colour"] == "gray":
secondfive.append(deck["name"])
slots -= 1
else:
if deck["colour"] == nextportcolour:
secondfive.append(deck["name"])
slots -= 1
alleight = sorted(firstthree + secondfive)
else:
thereddeck = False
redmastered = False
theorangedeck = False
orangemastered = False
theyellowdeck = False
yellowmastered = False
thegreendeck = False
greenmastered = False
thebluedeck = False
bluemastered = False
thepurpledeck = False
purplemastered = False
thebrowndeck = False
brownmastered = False
thegreydeck = False
greymastered = False
sorteddecks = 0
for deck in potentials:
if sorteddecks < 3:
if deck["colour"] == "red" and thereddeck == False:
thereddeck = deck["name"]
redmastered = True
sorteddecks += 1
elif deck["colour"] == "orange" and theorangedeck == False:
theorangedeck = deck["name"]
orangemastered = True
sorteddecks += 1
elif deck["colour"] == "yellow" and theyellowdeck == False:
theyellowdeck = deck["name"]
yellowmastered = True
sorteddecks += 1
elif deck["colour"] == "green" and thegreendeck == False:
thegreendeck = deck["name"]
greenmastered = True
sorteddecks += 1
elif deck["colour"] == "blue" and thebluedeck == False:
thebluedeck = deck["name"]
bluemastered = True
sorteddecks += 1
elif deck["colour"] == "purple" and thepurpledeck == False:
thepurpledeck = deck["name"]
purplemastered = True
sorteddecks += 1
elif deck["colour"] == "brown" and thebrowndeck == False:
thebrowndeck = deck["name"]
brownmastered = True
sorteddecks += 1
elif deck["colour"] == "gray" and thegreydeck == False:
thegreydeck = deck["name"]
greymastered = True
sorteddecks += 1
nearingdecks = sorted(colors.decklist, key=lambda d: d["count"],reverse=True)
if thereddeck == False:
for deck in nearingdecks:
if not deck["mastered"]:
if thereddeck == False:
if deck["colour"] == "red":
used = False
for key, value in useddecks.items():
if deck["name"] == key.replace(" ",""):
used = True
if used == False:
thereddeck = deck["name"]
if theorangedeck == False:
for deck in nearingdecks:
if not deck["mastered"]:
if theorangedeck == False:
if deck["colour"] == "orange":
used = False
for key, value in useddecks.items():
if deck["name"] == key.replace(" ",""):
used = True
if used == False:
theorangedeck = deck["name"]
if theyellowdeck == False:
for deck in nearingdecks:
if not deck["mastered"]:
if theyellowdeck == False:
if deck["colour"] == "yellow":
used = False
for key, value in useddecks.items():
if deck["name"] == key.replace(" ",""):
used = True
if used == False:
theyellowdeck = deck["name"]
if thegreendeck == False:
for deck in nearingdecks:
if not deck["mastered"]:
if thegreendeck == False:
if deck["colour"] == "green":
used = False
for key, value in useddecks.items():
if deck["name"] == key.replace(" ",""):
used = True
if used == False:
thegreendeck = deck["name"]
if thebluedeck == False:
for deck in nearingdecks:
if not deck["mastered"]:
if thebluedeck == False:
if deck["colour"] == "blue":
used = False
for key, value in useddecks.items():
if deck["name"] == key.replace(" ",""):
used = True
if used == False:
thebluedeck = deck["name"]
if thepurpledeck == False:
for deck in nearingdecks:
if not deck["mastered"]:
if thepurpledeck == False:
if deck["colour"] == "purple":
used = False
for key, value in useddecks.items():
if deck["name"] == key.replace(" ",""):
used = True
if used == False:
thepurpledeck = deck["name"]
if thebrowndeck == False:
for deck in nearingdecks:
if not deck["mastered"]:
if thebrowndeck == False:
if deck["colour"] == "brown":
used = False
for key, value in useddecks.items():
if deck["name"] == key.replace(" ",""):
used = True
if used == False:
thebrowndeck = deck["name"]
if thegreydeck == False:
for deck in nearingdecks:
if not deck["mastered"]:
if thegreydeck == False:
if deck["colour"] == "gray":
used = False
for key, value in useddecks.items():
if deck["name"] == key.replace(" ",""):
used = True
if used == False:
thegreydeck = deck["name"]
alleight = []
alleight.append(thereddeck)
alleight.append(theorangedeck)
alleight.append(theyellowdeck)
alleight.append(thegreendeck)
alleight.append(thebluedeck)
alleight.append(thepurpledeck)
alleight.append(thebrowndeck)
alleight.append(thegreydeck)
portcomment = "♥ <b>Your Name:</b> " + variables.name + "\n♥ <b>Card post:</b> " + variables.url + "\n♥ <b>"
if monochrome:
portcomment += "Monochrome"
else:
portcomment += "Palette"
portcomment += " Portfolio #:</b> " + str(already + 1) + "\n"
if monochrome:
portcomment += "♥ <b>Monochrome Color:</b> "
if nextportcolour == "grey":
if variables.british:
portcomment += "grey"
else:
portcomment += "gray"
else:
portcomment += nextportcolour
portcomment += "\n♥ <b>1st deck:</b> " + alleight[0]
if alleight[0] in firstthree:
portcomment += " (mastered)"
portcomment += "\n♥ <b>2nd deck:</b> " + alleight[1]
if alleight[1] in firstthree:
portcomment += " (mastered)"
portcomment += "\n♥ <b>3rd deck:</b> " + alleight[2]
if alleight[2] in firstthree:
portcomment += " (mastered)"
portcomment += "\n♥ <b>4th deck:</b> " + alleight[3]
if alleight[3] in firstthree:
portcomment += " (mastered)"
portcomment += "\n♥ <b>5th deck:</b> " + alleight[4]
if alleight[4] in firstthree:
portcomment += " (mastered)"
portcomment += "\n♥ <b>6th deck:</b> " + alleight[5]
if alleight[5] in firstthree:
portcomment += " (mastered)"
portcomment += "\n♥ <b>7th deck:</b> " + alleight[6]
if alleight[6] in firstthree:
portcomment += " (mastered)"
portcomment += "\n♥ <b>8th deck:</b> " + alleight[7]
if alleight[7] in firstthree:
portcomment += " (mastered)"
else:
portcomment += "♥ <b>Red deck:</b> " + thereddeck
if redmastered:
portcomment += " (mastered)"
portcomment += "\n♥ <b>Orange deck:</b> " + theorangedeck
if orangemastered:
portcomment += " (mastered)"
portcomment += "\n♥ <b>Yellow deck:</b> " + theyellowdeck
if yellowmastered:
portcomment += " (mastered)"
portcomment += "\n♥ <b>Green deck:</b> " + thegreendeck
if greenmastered:
portcomment += " (mastered)"
portcomment += "\n♥ <b>Blue deck:</b> " + thebluedeck
if bluemastered:
portcomment += " (mastered)"
portcomment += "\n♥ <b>Purple deck:</b> " + thepurpledeck
if purplemastered:
portcomment += " (mastered)"
portcomment += "\n♥ <b>Brown deck:</b> " + thebrowndeck
if brownmastered:
portcomment += " (mastered)"
portcomment += "\n♥ <b>Gray deck:</b> " + thegreydeck
if greymastered:
portcomment += " (mastered)"
print(portcomment)
porturl = input("\nPaste the comment URL here: ")
print("\n{\"event\":\"portfolio\",\"date\":datetime.datetime(" + datetime.datetime.now().strftime("%Y,%-m,%-d") + "),\"url\":\"" + porturl + "\",\"decks\":[\"" + alleight[0] + "\",\"" + alleight[1] + "\",\"" + alleight[2] + "\",\"" + alleight[3] + "\",\"" + alleight[4] + "\",\"" + alleight[5] + "\",\"" + alleight[6] + "\",\"" + alleight[7] + "\"]}")
def switchit():
wantedbypriority = sorted(colors.wantedlist, key=lambda d: d["priority"])
redtrade = []
orangetrade = []
yellowtrade = []
greentrade = []
bluetrade = []
purpletrade = []
browntrade = []
greytrade = []
for card in colors.cardlist:
if card["priority"] == 4:
if card["colour"] == "red":
redtrade.append(card["name"])
elif card["colour"] == "orange":
orangetrade.append(card["name"])
elif card["colour"] == "yellow":
yellowtrade.append(card["name"])
elif card["colour"] == "green":
greentrade.append(card["name"])
elif card["colour"] == "blue":
bluetrade.append(card["name"])
elif card["colour"] == "purple":
purpletrade.append(card["name"])
elif card["colour"] == "brown":
browntrade.append(card["name"])
elif card["colour"] == "gray":
greytrade.append(card["name"])
wantednames = []
for card in wantedbypriority:
wantednames.append(card["name"])
wantall = []
tradeall = []
reds = input("Paste red pile here: ").split(", ")
wantreds = []
for card in reds:
if card in wantednames:
wantreds.append(card)
if len(wantreds) > 5:
wantreds = wantreds[:5]
if len(wantreds) > 0:
wantall.extend(wantreds)
traderedscount = len(wantreds)
tradereds = []
tradereds.extend(random.sample(redtrade,len(wantreds)))
tradeall.extend(tradereds)
oranges = input("Paste orange pile here: ").split(", ")
wantoranges = []
for card in oranges:
if card in wantednames:
wantoranges.append(card)
if len(wantoranges) > 5:
wantoranges = wantoranges[:5]
if len(wantoranges) > 0:
wantall.extend(wantoranges)
tradeorangescount = len(wantoranges)
tradeoranges = []
tradeoranges.extend(random.sample(orangetrade,len(wantoranges)))
tradeall.extend(tradeoranges)
yellows = input("Paste yellow pile here: ").split(", ")
wantyellows = []
for card in yellows:
if card in wantednames:
wantyellows.append(card)
if len(wantyellows) > 5:
wantyellows = wantyellows[:5]
if len(wantyellows) > 0:
wantall.extend(wantyellows)
tradeyellowscount = len(wantyellows)
tradeyellows = []
tradeyellows.extend(random.sample(yellowtrade,len(wantyellows)))
tradeall.extend(tradeyellows)
greens = input("Paste green pile here: ").split(", ")
wantgreens = []
for card in greens:
if card in wantednames:
wantgreens.append(card)
if len(wantgreens) > 5:
wantgreens = wantgreens[:5]
if len(wantgreens) > 0:
wantall.extend(wantgreens)
tradegreenscount = len(wantgreens)
tradegreens = []
tradegreens.extend(random.sample(greentrade,len(wantgreens)))
tradeall.extend(tradegreens)
blues = input("Paste blue pile here: ").split(", ")
wantblues = []
for card in blues:
if card in wantednames:
wantblues.append(card)
if len(wantblues) > 5:
wantblues = wantblues[:5]
if len(wantblues) > 0:
wantall.extend(wantblues)
tradebluescount = len(wantblues)
tradeblues = []
tradeblues.extend(random.sample(bluetrade,len(wantblues)))
tradeall.extend(tradeblues)
purples = input("Paste purple pile here: ").split(", ")
wantpurples = []
for card in purples:
if card in wantednames:
wantpurples.append(card)
if len(wantpurples) > 5:
wantpurples = wantpurples[:5]
if len(wantpurples) > 0:
wantall.extend(wantpurples)
tradepurplescount = len(wantpurples)
tradepurples = []
tradepurples.extend(random.sample(purpletrade,len(wantpurples)))
tradeall.extend(tradepurples)
browns = input("Paste brown pile here: ").split(", ")
wantbrowns = []
for card in browns:
if card in wantednames:
wantbrowns.append(card)
if len(wantbrowns) > 5:
wantbrowns = wantbrowns[:5]
if len(wantbrowns) > 0:
wantall.extend(wantbrowns)
tradebrownscount = len(wantbrowns)
tradebrowns = []
tradebrowns.extend(random.sample(browntrade,len(wantbrowns)))
tradeall.extend(tradebrowns)
greys = input("Paste grey pile here: ").split(", ")
wantgreys = []
for card in greys:
if card in wantednames:
wantgreys.append(card)
if len(wantgreys) > 5:
wantgreys = wantgreys[:5]
if len(wantgreys) > 0:
wantall.extend(wantgreys)
tradegreyscount = len(wantgreys)
tradegreys = []
tradegreys.extend(random.sample(greytrade,len(wantgreys)))
tradeall.extend(tradegreys)
chaos = input("Paste chaos pile here: ").split(", ")
wantchaos = []
for card in chaos:
if card in wantednames:
wantchaos.append(card)
if len(wantchaos) > 5:
wantchaos = wantchaos[:5]
if len(wantchaos) > 0:
wantall.extend(wantchaos)
tradechaos = input("Provide " + str(len(wantchaos)) + " cards for the chaos pile (for " + ", ".join(wantchaos) + "): ").split(", ")
tradeall.extend(tradechaos)
print("\n")
if len(wantreds) > 0:
print("red: " + ", ".join(tradereds) + " for " + ", ".join(wantreds))
if len(wantoranges) > 0:
print("orange: " + ", ".join(tradeoranges) + " for " + ", ".join(wantoranges))
if len(wantyellows) > 0:
print("yellow: " + ", ".join(tradeyellows) + " for " + ", ".join(wantyellows))
if len(wantgreens) > 0:
print("green: " + ", ".join(tradegreens) + " for " + ", ".join(wantgreens))
if len(wantblues) > 0:
print("blue: " + ", ".join(tradeblues) + " for " + ", ".join(wantblues))
if len(wantpurples) > 0:
print("purple: " + ", ".join(tradepurples) + " for " + ", ".join(wantpurples))
if len(wantbrowns) > 0:
print("brown: " + ", ".join(tradebrowns) + " for " + ", ".join(wantbrowns))
if len(wantgreys) > 0:
if variables.british:
print("grey: " + ", ".join(tradegreys) + " for " + ", ".join(wantgreys))
else:
print("gray: " + ", ".join(tradegreys) + " for " + ", ".join(wantgreys))
if len(wantchaos) > 0:
print("chaos: " + ", ".join(tradechaos) + " for " + ", ".join(wantchaos))
images = ""
for card in tradeall:
images += "<img src=\"https://colors-tcg.eu/cards/" + card + ".gif\">"
print("\n" + images + "\n")
switchround = input("Round number: ")
switchcomment = input("Comment URL: ")
print("\n{\"event\":\"switch it up " + switchround + "\",\"date\":datetime.datetime(" + datetime.datetime.now().strftime("%Y,%-m,%-d") + "),\"url\":\"" + switchcomment + "\",\"pend\":[\"" + "\",\"".join(wantall) + "\"],\"lost\":[\"" + "\",\"".join(tradeall) + "\"]}")
def fish():
fishdecks = input("Paste list of decks here: ").split(", ")
fishfound = []
for card in colors.cardlist:
for deck in fishdecks:
if card["name"][:-2] == deck:
fishfound.append(card)
break
fishrefined = []
previouscard = ""
for card in fishfound:
try:
if card["name"][:-2] != previouscard["name"][:-2]:
fishrefined.append(card)
except:
fishrefined.append(card)
previouscard = card
fishmastered = []
fishhp = []
fishmp = []
fishlp = []
fishmass = []
fishtrade = []
for card in fishrefined:
if card["priority"] == 1:
for deck in colors.decklist:
if deck["name"] == card["name"][:-2]:
if deck["mastered"]:
fishmastered.append(card)
else:
fishhp.append(card)
elif card["priority"] == 2:
if card["mass"]:
for deck in colors.decklist:
if deck["name"] == card["name"][:-2]:
if deck["mass"]:
fishmp.append(card)
else:
fishmass.append(card)
else:
fishmp.append(card)
elif card["priority"] == 3:
fishlp.append(card)
else:
fishtrade.append(card)
locations = []
if len(fishmastered) > 0:
locations.append("mastered")
if len(fishhp) > 0:
locations.append("collecting/high priority")
if len(fishmp) > 0:
locations.append("collecting/medium priority")
if len(fishlp) > 0:
locations.append("collecting/low priority")
if len(fishmass) > 0:
for card in fishmass:
locations.append("mass collecting/" + card["mass"][0])
if len(fishtrade) > 0:
locations.append("trading")
locations = list(dict.fromkeys(locations))
cardnames = []
for card in fishrefined:
cardnames.append(card["name"])
print("\nTrade post: " + variables.url + "\nNumber of matches: " + str(len(fishrefined)) + "\nCard name(s): " + ", ".join(cardnames) + "\nWhere cards are located: " + ", ".join(locations) + "\nCards:")
images = ""
for card in fishrefined:
images += "<img src=\"https://colors-tcg.eu/cards/" + card["name"] + ".gif\">"
print(images)
def studio():
dupeslimit = 10
newlimit = 20
sigslimit = 10
choicelimit = 16
speciallimit = 10
for event in log.log:
if event["date"].year == datetime.datetime.now().year and event["date"].month == datetime.datetime.now().month:
if event["event"] == "art studio":
try:
dupeslimit -= event["exchange"]["dupes"]
except:
pass
try:
newlimit -= event["exchange"]["new"]
except:
pass
try:
sigslimit -= event["exchange"]["sigs"]
except:
pass
try:
choicelimit -= event["exchange"]["choice"]
except:
pass
try:
speciallimit -= event["exchange"]["special"]
except:
pass
if dupeslimit > 0:
dupeswant = int(input("How many randoms for doubles? (" + str(dupeslimit) + " remaining) "))
else:
dupeswant = 0
if newlimit > 0:
newwant = int(input("How many new release cards? (" + str(newlimit) + " remaining) "))
else:
newwant = 0
if sigslimit > 0:
sigswant = int(input("How many signatures? (" + str(sigslimit) + " remaining) "))
else:
sigswant = 0
if choicelimit > 0:
choicewant = int(input("How many choice character cards? (" + str(choicelimit) + " remaining) "))
else:
choicewant = 0
if speciallimit > 0:
specialwant = int(input("How many choice special cards? (" + str(speciallimit) + " remaining) "))
else:
specialwant = 0
tradedupes = []
tradenormal = []
tradespecial = []
for card in colors.cardlist:
if card["priority"] == 4:
if card["colour"] != "sig" and card["colour"] != "limited":
if card["dupe"]:
if len(card["mass"]) == 0:
tradedupes.append(card["name"])
else:
if card["colour"] == "special":
tradespecial.append(card["name"])
else:
tradenormal.append(card["name"])
neededdupes = dupeswant
needednormal = 2 * newwant + 3 * sigswant + 3 * choicewant
neededspecial = 3 * specialwant
give = []
if neededdupes > 0:
give.extend(random.sample(tradedupes,neededdupes))
if needednormal > 0:
give.extend(random.sample(tradenormal,needednormal))
if neededspecial > 0:
give.extend(random.sample(tradespecial,neededspecial))
if choicewant > 0:
choicelist = input(str(choicewant) + " choice character cards: ").split(", ")
if specialwant > 0:
speciallist = input(str(specialwant) + " choice special cards: ").split(", ")
allwants = []
if dupeswant > 1:
allwants.append(str(dupeswant) + " random cards")
elif dupeswant == 1:
allwants.append(str(dupeswant) + " random card")
if newwant > 1:
allwants.append(str(newwant) + " new release cards")
elif newwant == 1:
allwants.append(str(newwant) + " new release card")
if sigswant > 0:
allwants.append(str(sigswant) + " x sig_" + variables.name.lower())
if choicewant > 0:
allwants.extend(choicelist)
if specialwant > 0:
allwants.extend(speciallist)
print("\n<b>What are you exchanging for?</b>: " + ", ".join(allwants) + "\n<b>Cards you are exchanging</b>:\n<img src=\"https://colors-tcg.eu/cards/" + ".gif\"><img src=\"https://colors-tcg.eu/cards/".join(give) + ".gif\">\n<b>Card names</b>: " + ", ".join(give) + "\n<b>Art Studio use for the current month</b>: random cards: " + str(10 - dupeslimit + dupeswant) + "/10; new release cards: " + str(20 - newlimit + newwant) + "/20; signatures: " + str(10 - sigslimit + sigswant) + "/10; character cards: " + str(16 - choicelimit + choicewant) + "/16; special cards: " + str(10 - speciallimit + specialwant) + "/10\n")
studiourl = input("Paste in comment URL: ")
studiostring = "{\"event\":\"art studio\",\"date\":datetime.datetime(" + datetime.datetime.now().strftime("%Y,%-m,%-d") + "),\"url\":\"" + studiourl + "\",\"lost\":[\"" + "\",\"".join(give) + "\"],"
allchoice = []
try:
allchoice.extend(choicelist)
except:
pass
try:
allchoice.extend(speciallist)
except:
pass
if len(allchoice) > 0:
studiostring += "\"pend\":[\"" + "\",\"".join(allchoice) + "\"],"
studiostring += "\"exchange\":{\"dupes\":" + str(dupeswant) + ",\"new\":" + str(newwant) + ",\"sigs\":" + str(sigswant) + ",\"choice\":" + str(choicewant) + ",\"special\":" + str(specialwant) + "}}"
print("\n" + studiostring)
def randoms(specials=False):
totalrandoms = int(input("How many? "))
pool = []
for card in colors.cardlist:
if card["priority"] == 4 and card["dupe"] == False and card["colour"] != "sig" and card["colour"] != "limited":
if specials:
pool.append(card["name"])
else:
if card["colour"] != "special":
pool.append(card["name"])
chosen = sorted(random.sample(pool,totalrandoms))
print(", ".join(chosen))
if __name__ == "__main__":
while True:
index = 0 # adapted from https://stackoverflow.com/a/64536882
indexValidList = []
print("Choose from the list:")
options = ["Get a list of potential cards to trade in for Rikus Favors","Generate next palette portfolio","Generate next monochrome portfolio","Generate Switch It Up request","Generate Go Fish comment","Generate art studio request","Get a list of random cards from tradepile (excluding specials)","Get a list of random cards from tradepile (including specials)"]
for optionName in options:
index = index + 1
indexValidList.extend([options.index(optionName)])
print(str(index) + ") " + optionName)
inputValid = False
while not inputValid:
inputRaw = input("Option: ")
inputNo = int(inputRaw) - 1
if inputNo > -1 and inputNo < len(indexValidList):
selected = indexValidList[inputNo]
inputValid = True
break
else:
print("Select a number from the list")
chosen = options[selected]
if chosen == "Get a list of potential cards to trade in for Rikus Favors":
riku()
elif chosen == "Generate next palette portfolio":
nextportfolio()
elif chosen == "Generate next monochrome portfolio":
nextportfolio(True)
elif chosen == "Generate Switch It Up request":
switchit()
elif chosen == "Generate Go Fish comment":
fish()
elif chosen == "Generate art studio request":
studio()
elif chosen == "Get a list of random cards from tradepile (excluding specials)":
randoms()
elif chosen == "Get a list of random cards from tradepile (including specials)":
randoms(True)
print("\n")
input("Press Enter to continue or Ctrl-C to exit")