Base art shop function on real wantlist

This commit is contained in:
mez 2025-08-01 20:08:28 +01:00
parent ae082c586e
commit 18e0ad1dfb

849
tools.py
View file

@ -416,7 +416,7 @@ def switchit():
browntrade = []
greytrade = []
for card in colors.cardlist:
if card["priority"] == 4:
if card["priority"] == 4 and card["dupe"] == False:
if card["colour"] == "red":
redtrade.append(card["name"])
elif card["colour"] == "orange":
@ -698,7 +698,7 @@ def studio():
tradenormal = []
tradespecial = []
for card in colors.cardlist:
if card["priority"] == 4:
if card["priority"] == 4 and card["dupe"] == False:
if card["colour"] != "sig" and card["colour"] != "limited":
if card["dupe"]:
if len(card["mass"]) == 0:
@ -841,673 +841,104 @@ def randoms(specials=False):
print("Too many cards requested")
def artshop():
hpred = []
mpred = []
lpred = []
hporange = []
mporange = []
lporange = []
hpyellow = []
mpyellow = []
lpyellow = []
hpgreen = []
mpgreen = []
lpgreen = []
hpblue = []
mpblue = []
lpblue = []
hppurple = []
mppurple = []
lppurple = []
hpbrown = []
mpbrown = []
lpbrown = []
hpgrey = []
mpgrey = []
lpgrey = []
for deck in colors.decklist:
if not deck["mastered"]:
if deck["colour"] == "red":
if deck["priority"] == 1:
hpred.append(deck)
elif deck["priority"] == 2:
mpred.append(deck)
elif deck["priority"] == 3:
lpred.append(deck)
elif deck["colour"] == "orange":
if deck["priority"] == 1:
hporange.append(deck)
elif deck["priority"] == 2:
mporange.append(deck)
elif deck["priority"] == 3:
lporange.append(deck)
elif deck["colour"] == "yellow":
if deck["priority"] == 1:
hpyellow.append(deck)
elif deck["priority"] == 2:
mpyellow.append(deck)
elif deck["priority"] == 3:
lpyellow.append(deck)
elif deck["colour"] == "green":
if deck["priority"] == 1:
hpgreen.append(deck)
elif deck["priority"] == 2:
mpgreen.append(deck)
elif deck["priority"] == 3:
lpgreen.append(deck)
elif deck["colour"] == "blue":
if deck["priority"] == 1:
hpblue.append(deck)
elif deck["priority"] == 2:
mpblue.append(deck)
elif deck["priority"] == 3:
lpblue.append(deck)
elif deck["colour"] == "purple":
if deck["priority"] == 1:
hppurple.append(deck)
elif deck["priority"] == 2:
mppurple.append(deck)
elif deck["priority"] == 3:
lppurple.append(deck)
elif deck["colour"] == "brown":
if deck["priority"] == 1:
hpbrown.append(deck)
elif deck["priority"] == 2:
mpbrown.append(deck)
elif deck["priority"] == 3:
lpbrown.append(deck)
elif deck["colour"] == "gray":
if deck["priority"] == 1:
hpgrey.append(deck)
elif deck["priority"] == 2:
mpgrey.append(deck)
elif deck["priority"] == 3:
lpgrey.append(deck)
wantred = []
wantred.extend(sorted(hpred, key=lambda d: d["count"],reverse=True))
wantred.extend(sorted(mpred, key=lambda d: d["count"],reverse=True))
wantred.extend(sorted(lpred, key=lambda d: d["count"],reverse=True))
wantorange = []
wantorange.extend(sorted(hporange, key=lambda d: d["count"],reverse=True))
wantorange.extend(sorted(mporange, key=lambda d: d["count"],reverse=True))
wantorange.extend(sorted(lporange, key=lambda d: d["count"],reverse=True))
wantyellow = []
wantyellow.extend(sorted(hpyellow, key=lambda d: d["count"],reverse=True))
wantyellow.extend(sorted(mpyellow, key=lambda d: d["count"],reverse=True))
wantyellow.extend(sorted(lpyellow, key=lambda d: d["count"],reverse=True))
wantgreen = []
wantgreen.extend(sorted(hpgreen, key=lambda d: d["count"],reverse=True))
wantgreen.extend(sorted(mpgreen, key=lambda d: d["count"],reverse=True))
wantgreen.extend(sorted(lpgreen, key=lambda d: d["count"],reverse=True))
wantblue = []
wantblue.extend(sorted(hpblue, key=lambda d: d["count"],reverse=True))
wantblue.extend(sorted(mpblue, key=lambda d: d["count"],reverse=True))
wantblue.extend(sorted(lpblue, key=lambda d: d["count"],reverse=True))
wantpurple = []
wantpurple.extend(sorted(hppurple, key=lambda d: d["count"],reverse=True))
wantpurple.extend(sorted(mppurple, key=lambda d: d["count"],reverse=True))
wantpurple.extend(sorted(lppurple, key=lambda d: d["count"],reverse=True))
wantbrown = []
wantbrown.extend(sorted(hpbrown, key=lambda d: d["count"],reverse=True))
wantbrown.extend(sorted(mpbrown, key=lambda d: d["count"],reverse=True))
wantbrown.extend(sorted(lpbrown, key=lambda d: d["count"],reverse=True))
wantgrey = []
wantgrey.extend(sorted(hpgrey, key=lambda d: d["count"],reverse=True))
wantgrey.extend(sorted(mpgrey, key=lambda d: d["count"],reverse=True))
wantgrey.extend(sorted(lpgrey, key=lambda d: d["count"],reverse=True))
for card in colors.wantedlist:
if card["colour"] == "red":
wantred.append(card)
elif card["colour"] == "orange":
wantorange.append(card)
elif card["colour"] == "yellow":
wantyellow.append(card)
elif card["colour"] == "green":
wantgreen.append(card)
elif card["colour"] == "blue":
wantblue.append(card)
elif card["colour"] == "purple":
wantpurple.append(card)
elif card["colour"] == "brown":
wantbrown.append(card)
elif card["colour"] == "gray":
wantgrey.append(card)
requestcards = []
redleft = colors.crayred
redspend = 0
requestred = True
for deck in wantred:
if requestred == True:
if redleft >= 20 - deck["count"]:
if not deck["01"]:
redspend += 1
requestcards.append(deck["name"] + "01")
if not deck["02"]:
redspend += 1
requestcards.append(deck["name"] + "02")
if not deck["03"]:
redspend += 1
requestcards.append(deck["name"] + "03")
if not deck["04"]:
redspend += 1
requestcards.append(deck["name"] + "04")
if not deck["05"]:
redspend += 1
requestcards.append(deck["name"] + "05")
if not deck["06"]:
redspend += 1
requestcards.append(deck["name"] + "06")
if not deck["07"]:
redspend += 1
requestcards.append(deck["name"] + "07")
if not deck["08"]:
redspend += 1
requestcards.append(deck["name"] + "08")
if not deck["09"]:
redspend += 1
requestcards.append(deck["name"] + "09")
if not deck["10"]:
redspend += 1
requestcards.append(deck["name"] + "10")
if not deck["11"]:
redspend += 1
requestcards.append(deck["name"] + "11")
if not deck["12"]:
redspend += 1
requestcards.append(deck["name"] + "12")
if not deck["13"]:
redspend += 1
requestcards.append(deck["name"] + "13")
if not deck["14"]:
redspend += 1
requestcards.append(deck["name"] + "14")
if not deck["15"]:
redspend += 1
requestcards.append(deck["name"] + "15")
if not deck["16"]:
redspend += 1
requestcards.append(deck["name"] + "16")
if not deck["17"]:
redspend += 1
requestcards.append(deck["name"] + "17")
if not deck["18"]:
redspend += 1
requestcards.append(deck["name"] + "18")
if not deck["19"]:
redspend += 1
requestcards.append(deck["name"] + "19")
if not deck["20"]:
redspend += 1
requestcards.append(deck["name"] + "20")
redleft -= redspend
else:
requestred = False
orangeleft = colors.crayorange
orangespend = 0
requestorange = True
for deck in wantorange:
if requestorange == True:
if orangeleft >= 20 - deck["count"]:
if not deck["01"]:
orangespend += 1
requestcards.append(deck["name"] + "01")
if not deck["02"]:
orangespend += 1
requestcards.append(deck["name"] + "02")
if not deck["03"]:
orangespend += 1
requestcards.append(deck["name"] + "03")
if not deck["04"]:
orangespend += 1
requestcards.append(deck["name"] + "04")
if not deck["05"]:
orangespend += 1
requestcards.append(deck["name"] + "05")
if not deck["06"]:
orangespend += 1
requestcards.append(deck["name"] + "06")
if not deck["07"]:
orangespend += 1
requestcards.append(deck["name"] + "07")
if not deck["08"]:
orangespend += 1
requestcards.append(deck["name"] + "08")
if not deck["09"]:
orangespend += 1
requestcards.append(deck["name"] + "09")
if not deck["10"]:
orangespend += 1
requestcards.append(deck["name"] + "10")
if not deck["11"]:
orangespend += 1
requestcards.append(deck["name"] + "11")
if not deck["12"]:
orangespend += 1
requestcards.append(deck["name"] + "12")
if not deck["13"]:
orangespend += 1
requestcards.append(deck["name"] + "13")
if not deck["14"]:
orangespend += 1
requestcards.append(deck["name"] + "14")
if not deck["15"]:
orangespend += 1
requestcards.append(deck["name"] + "15")
if not deck["16"]:
orangespend += 1
requestcards.append(deck["name"] + "16")
if not deck["17"]:
orangespend += 1
requestcards.append(deck["name"] + "17")
if not deck["18"]:
orangespend += 1
requestcards.append(deck["name"] + "18")
if not deck["19"]:
orangespend += 1
requestcards.append(deck["name"] + "19")
if not deck["20"]:
orangespend += 1
requestcards.append(deck["name"] + "20")
orangeleft -= orangespend
else:
requestorange = False
yellowleft = colors.crayyellow
yellowspend = 0
requestyellow = True
for deck in wantyellow:
if requestyellow == True:
if yellowleft >= 20 - deck["count"]:
if not deck["01"]:
yellowspend += 1
requestcards.append(deck["name"] + "01")
if not deck["02"]:
yellowspend += 1
requestcards.append(deck["name"] + "02")
if not deck["03"]:
yellowspend += 1
requestcards.append(deck["name"] + "03")
if not deck["04"]:
yellowspend += 1
requestcards.append(deck["name"] + "04")
if not deck["05"]:
yellowspend += 1
requestcards.append(deck["name"] + "05")
if not deck["06"]:
yellowspend += 1
requestcards.append(deck["name"] + "06")
if not deck["07"]:
yellowspend += 1
requestcards.append(deck["name"] + "07")
if not deck["08"]:
yellowspend += 1
requestcards.append(deck["name"] + "08")
if not deck["09"]:
yellowspend += 1
requestcards.append(deck["name"] + "09")
if not deck["10"]:
yellowspend += 1
requestcards.append(deck["name"] + "10")
if not deck["11"]:
yellowspend += 1
requestcards.append(deck["name"] + "11")
if not deck["12"]:
yellowspend += 1
requestcards.append(deck["name"] + "12")
if not deck["13"]:
yellowspend += 1
requestcards.append(deck["name"] + "13")
if not deck["14"]:
yellowspend += 1
requestcards.append(deck["name"] + "14")
if not deck["15"]:
yellowspend += 1
requestcards.append(deck["name"] + "15")
if not deck["16"]:
yellowspend += 1
requestcards.append(deck["name"] + "16")
if not deck["17"]:
yellowspend += 1
requestcards.append(deck["name"] + "17")
if not deck["18"]:
yellowspend += 1
requestcards.append(deck["name"] + "18")
if not deck["19"]:
yellowspend += 1
requestcards.append(deck["name"] + "19")
if not deck["20"]:
yellowspend += 1
requestcards.append(deck["name"] + "20")
yellowleft -= yellowspend
else:
requestyellow = False
greenleft = colors.craygreen
greenspend = 0
requestgreen = True
for deck in wantgreen:
if requestgreen == True:
if greenleft >= 20 - deck["count"]:
if not deck["01"]:
greenspend += 1
requestcards.append(deck["name"] + "01")
if not deck["02"]:
greenspend += 1
requestcards.append(deck["name"] + "02")
if not deck["03"]:
greenspend += 1
requestcards.append(deck["name"] + "03")
if not deck["04"]:
greenspend += 1
requestcards.append(deck["name"] + "04")
if not deck["05"]:
greenspend += 1
requestcards.append(deck["name"] + "05")
if not deck["06"]:
greenspend += 1
requestcards.append(deck["name"] + "06")
if not deck["07"]:
greenspend += 1
requestcards.append(deck["name"] + "07")
if not deck["08"]:
greenspend += 1
requestcards.append(deck["name"] + "08")
if not deck["09"]:
greenspend += 1
requestcards.append(deck["name"] + "09")
if not deck["10"]:
greenspend += 1
requestcards.append(deck["name"] + "10")
if not deck["11"]:
greenspend += 1
requestcards.append(deck["name"] + "11")
if not deck["12"]:
greenspend += 1
requestcards.append(deck["name"] + "12")
if not deck["13"]:
greenspend += 1
requestcards.append(deck["name"] + "13")
if not deck["14"]:
greenspend += 1
requestcards.append(deck["name"] + "14")
if not deck["15"]:
greenspend += 1
requestcards.append(deck["name"] + "15")
if not deck["16"]:
greenspend += 1
requestcards.append(deck["name"] + "16")
if not deck["17"]:
greenspend += 1
requestcards.append(deck["name"] + "17")
if not deck["18"]:
greenspend += 1
requestcards.append(deck["name"] + "18")
if not deck["19"]:
greenspend += 1
requestcards.append(deck["name"] + "19")
if not deck["20"]:
greenspend += 1
requestcards.append(deck["name"] + "20")
greenleft -= greenspend
else:
requestgreen = False
blueleft = colors.crayblue
bluespend = 0
requestblue = True
for deck in wantblue:
if requestblue == True:
if blueleft >= 20 - deck["count"]:
if not deck["01"]:
bluespend += 1
requestcards.append(deck["name"] + "01")
if not deck["02"]:
bluespend += 1
requestcards.append(deck["name"] + "02")
if not deck["03"]:
bluespend += 1
requestcards.append(deck["name"] + "03")
if not deck["04"]:
bluespend += 1
requestcards.append(deck["name"] + "04")
if not deck["05"]:
bluespend += 1
requestcards.append(deck["name"] + "05")
if not deck["06"]:
bluespend += 1
requestcards.append(deck["name"] + "06")
if not deck["07"]:
bluespend += 1
requestcards.append(deck["name"] + "07")
if not deck["08"]:
bluespend += 1
requestcards.append(deck["name"] + "08")
if not deck["09"]:
bluespend += 1
requestcards.append(deck["name"] + "09")
if not deck["10"]:
bluespend += 1
requestcards.append(deck["name"] + "10")
if not deck["11"]:
bluespend += 1
requestcards.append(deck["name"] + "11")
if not deck["12"]:
bluespend += 1
requestcards.append(deck["name"] + "12")
if not deck["13"]:
bluespend += 1
requestcards.append(deck["name"] + "13")
if not deck["14"]:
bluespend += 1
requestcards.append(deck["name"] + "14")
if not deck["15"]:
bluespend += 1
requestcards.append(deck["name"] + "15")
if not deck["16"]:
bluespend += 1
requestcards.append(deck["name"] + "16")
if not deck["17"]:
bluespend += 1
requestcards.append(deck["name"] + "17")
if not deck["18"]:
bluespend += 1
requestcards.append(deck["name"] + "18")
if not deck["19"]:
bluespend += 1
requestcards.append(deck["name"] + "19")
if not deck["20"]:
bluespend += 1
requestcards.append(deck["name"] + "20")
blueleft -= bluespend
else:
requestblue = False
purpleleft = colors.craypurple
purplespend = 0
requestpurple = True
for deck in wantpurple:
if requestpurple == True:
if purpleleft >= 20 - deck["count"]:
if not deck["01"]:
purplespend += 1
requestcards.append(deck["name"] + "01")
if not deck["02"]:
purplespend += 1
requestcards.append(deck["name"] + "02")
if not deck["03"]:
purplespend += 1
requestcards.append(deck["name"] + "03")
if not deck["04"]:
purplespend += 1
requestcards.append(deck["name"] + "04")
if not deck["05"]:
purplespend += 1
requestcards.append(deck["name"] + "05")
if not deck["06"]:
purplespend += 1
requestcards.append(deck["name"] + "06")
if not deck["07"]:
purplespend += 1
requestcards.append(deck["name"] + "07")
if not deck["08"]:
purplespend += 1
requestcards.append(deck["name"] + "08")
if not deck["09"]:
purplespend += 1
requestcards.append(deck["name"] + "09")
if not deck["10"]:
purplespend += 1
requestcards.append(deck["name"] + "10")
if not deck["11"]:
purplespend += 1
requestcards.append(deck["name"] + "11")
if not deck["12"]:
purplespend += 1
requestcards.append(deck["name"] + "12")
if not deck["13"]:
purplespend += 1
requestcards.append(deck["name"] + "13")
if not deck["14"]:
purplespend += 1
requestcards.append(deck["name"] + "14")
if not deck["15"]:
purplespend += 1
requestcards.append(deck["name"] + "15")
if not deck["16"]:
purplespend += 1
requestcards.append(deck["name"] + "16")
if not deck["17"]:
purplespend += 1
requestcards.append(deck["name"] + "17")
if not deck["18"]:
purplespend += 1
requestcards.append(deck["name"] + "18")
if not deck["19"]:
purplespend += 1
requestcards.append(deck["name"] + "19")
if not deck["20"]:
purplespend += 1
requestcards.append(deck["name"] + "20")
purpleleft -= purplespend
else:
requestpurple = False
brownleft = colors.craybrown
brownspend = 0
requestbrown = True
for deck in wantbrown:
if requestbrown == True:
if brownleft >= 20 - deck["count"]:
if not deck["01"]:
brownspend += 1
requestcards.append(deck["name"] + "01")
if not deck["02"]:
brownspend += 1
requestcards.append(deck["name"] + "02")
if not deck["03"]:
brownspend += 1
requestcards.append(deck["name"] + "03")
if not deck["04"]:
brownspend += 1
requestcards.append(deck["name"] + "04")
if not deck["05"]:
brownspend += 1
requestcards.append(deck["name"] + "05")
if not deck["06"]:
brownspend += 1
requestcards.append(deck["name"] + "06")
if not deck["07"]:
brownspend += 1
requestcards.append(deck["name"] + "07")
if not deck["08"]:
brownspend += 1
requestcards.append(deck["name"] + "08")
if not deck["09"]:
brownspend += 1
requestcards.append(deck["name"] + "09")
if not deck["10"]:
brownspend += 1
requestcards.append(deck["name"] + "10")
if not deck["11"]:
brownspend += 1
requestcards.append(deck["name"] + "11")
if not deck["12"]:
brownspend += 1
requestcards.append(deck["name"] + "12")
if not deck["13"]:
brownspend += 1
requestcards.append(deck["name"] + "13")
if not deck["14"]:
brownspend += 1
requestcards.append(deck["name"] + "14")
if not deck["15"]:
brownspend += 1
requestcards.append(deck["name"] + "15")
if not deck["16"]:
brownspend += 1
requestcards.append(deck["name"] + "16")
if not deck["17"]:
brownspend += 1
requestcards.append(deck["name"] + "17")
if not deck["18"]:
brownspend += 1
requestcards.append(deck["name"] + "18")
if not deck["19"]:
brownspend += 1
requestcards.append(deck["name"] + "19")
if not deck["20"]:
brownspend += 1
requestcards.append(deck["name"] + "20")
brownleft -= brownspend
else:
requestbrown = False
greyleft = colors.craygrey
greyspend = 0
requestgrey = True
for deck in wantgrey:
if requestgrey == True:
if greyleft >= 20 - deck["count"]:
if not deck["01"]:
greyspend += 1
requestcards.append(deck["name"] + "01")
if not deck["02"]:
greyspend += 1
requestcards.append(deck["name"] + "02")
if not deck["03"]:
greyspend += 1
requestcards.append(deck["name"] + "03")
if not deck["04"]:
greyspend += 1
requestcards.append(deck["name"] + "04")
if not deck["05"]:
greyspend += 1
requestcards.append(deck["name"] + "05")
if not deck["06"]:
greyspend += 1
requestcards.append(deck["name"] + "06")
if not deck["07"]:
greyspend += 1
requestcards.append(deck["name"] + "07")
if not deck["08"]:
greyspend += 1
requestcards.append(deck["name"] + "08")
if not deck["09"]:
greyspend += 1
requestcards.append(deck["name"] + "09")
if not deck["10"]:
greyspend += 1
requestcards.append(deck["name"] + "10")
if not deck["11"]:
greyspend += 1
requestcards.append(deck["name"] + "11")
if not deck["12"]:
greyspend += 1
requestcards.append(deck["name"] + "12")
if not deck["13"]:
greyspend += 1
requestcards.append(deck["name"] + "13")
if not deck["14"]:
greyspend += 1
requestcards.append(deck["name"] + "14")
if not deck["15"]:
greyspend += 1
requestcards.append(deck["name"] + "15")
if not deck["16"]:
greyspend += 1
requestcards.append(deck["name"] + "16")
if not deck["17"]:
greyspend += 1
requestcards.append(deck["name"] + "17")
if not deck["18"]:
greyspend += 1
requestcards.append(deck["name"] + "18")
if not deck["19"]:
greyspend += 1
requestcards.append(deck["name"] + "19")
if not deck["20"]:
greyspend += 1
requestcards.append(deck["name"] + "20")
greyleft -= greyspend
else:
requestgrey = False
potentialred = []
requestred = []
potentialred.extend(wantred[:colors.crayred])
for card in potentialred:
if card["name"][:-2] != wantred[colors.crayred]["name"][:-2]:
requestred.append(card)
if len(requestred) > 0:
for card in requestred:
requestcards.append(card["name"])
potentialorange = []
requestorange = []
potentialorange.extend(wantorange[:colors.crayorange])
for card in potentialorange:
if card["name"][:-2] != wantorange[colors.crayorange]["name"][:-2]:
requestorange.append(card)
if len(requestorange) > 0:
for card in requestorange:
requestcards.append(card["name"])
potentialyellow = []
requestyellow = []
potentialyellow.extend(wantyellow[:colors.crayyellow])
for card in potentialyellow:
if card["name"][:-2] != wantyellow[colors.crayyellow]["name"][:-2]:
requestyellow.append(card)
if len(requestyellow) > 0:
for card in requestyellow:
requestcards.append(card["name"])
potentialgreen = []
requestgreen = []
potentialgreen.extend(wantgreen[:colors.craygreen])
for card in potentialgreen:
if card["name"][:-2] != wantgreen[colors.craygreen]["name"][:-2]:
requestgreen.append(card)
if len(requestgreen) > 0:
for card in requestgreen:
requestcards.append(card["name"])
potentialblue = []
requestblue = []
potentialblue.extend(wantblue[:colors.crayblue])
for card in potentialblue:
if card["name"][:-2] != wantblue[colors.crayblue]["name"][:-2]:
requestblue.append(card)
if len(requestblue) > 0:
for card in requestblue:
requestcards.append(card["name"])
potentialpurple = []
requestpurple = []
potentialpurple.extend(wantpurple[:colors.craypurple])
for card in potentialpurple:
if card["name"][:-2] != wantpurple[colors.craypurple]["name"][:-2]:
requestpurple.append(card)
if len(requestpurple) > 0:
for card in requestpurple:
requestcards.append(card["name"])
potentialbrown = []
requestbrown = []
potentialbrown.extend(wantbrown[:colors.craybrown])
for card in potentialbrown:
if card["name"][:-2] != wantbrown[colors.craybrown]["name"][:-2]:
requestbrown.append(card)
if len(requestbrown) > 0:
for card in requestbrown:
requestcards.append(card["name"])
potentialgrey = []
requestgrey = []
potentialgrey.extend(wantgrey[:colors.craygrey])
for card in potentialgrey:
if card["name"][:-2] != wantgrey[colors.craygrey]["name"][:-2]:
requestgrey.append(card)
if len(requestgrey) > 0:
for card in requestgrey:
requestcards.append(card["name"])
tradecommon = list((Counter(colors.tradeout) & Counter(colors.tradein)).elements())
sketch = len(tradecommon)
if sketch > 0:
@ -1524,36 +955,36 @@ def artshop():
shopstring += "<b>Number of Sketchpads:</b> " + str(sketchdifference) + "\n<b>Sketchpad Prize:</b> prize " + str(variables.sketchprize) + "\n"
if len(requestcards) > 0:
shopstring += "<b>Crayons:</b> "
if redspend > 0:
shopstring += "<img src=\"" + variables.url + "/assets/crayons/crayon1.gif\"> x " + str(redspend)
if orangespend + yellowspend + greenspend + bluespend + purplespend + brownspend + greyspend > 0:
if len(requestred) > 0:
shopstring += "<img src=\"" + variables.url + "/assets/crayons/crayon1.gif\"> x " + str(len(requestred))
if len(requestorange) + len(requestyellow) + len(requestgreen) + len(requestblue) + len(requestpurple) + len(requestbrown) + len(requestgrey) > 0:
shopstring += ", "
if orangespend > 0:
shopstring += "<img src=\"" + variables.url + "/assets/crayons/crayon2.gif\"> x " + str(orangespend)
if yellowspend + greenspend + bluespend + purplespend + brownspend + greyspend > 0:
if len(requestorange) > 0:
shopstring += "<img src=\"" + variables.url + "/assets/crayons/crayon2.gif\"> x " + str(len(requestorange))
if len(requestyellow) + len(requestgreen) + len(requestblue) + len(requestpurple) + len(requestbrown) + len(requestgrey) > 0:
shopstring += ", "
if yellowspend > 0:
shopstring += "<img src=\"" + variables.url + "/assets/crayons/crayon3.gif\"> x " + str(yellowspend)
if greenspend + bluespend + purplespend + brownspend + greyspend > 0:
if len(requestyellow) > 0:
shopstring += "<img src=\"" + variables.url + "/assets/crayons/crayon3.gif\"> x " + str(len(requestyellow))
if len(requestgreen) + len(requestblue) + len(requestpurple) + len(requestbrown) + len(requestgrey) > 0:
shopstring += ", "
if greenspend > 0:
shopstring += "<img src=\"" + variables.url + "/assets/crayons/crayon4.gif\"> x " + str(greenspend)
if bluespend + purplespend + brownspend + greyspend > 0:
if len(requestgreen) > 0:
shopstring += "<img src=\"" + variables.url + "/assets/crayons/crayon4.gif\"> x " + str(len(requestgreen))
if len(requestblue) + len(requestpurple) + len(requestbrown) + len(requestgrey) > 0:
shopstring += ", "
if bluespend > 0:
shopstring += "<img src=\"" + variables.url + "/assets/crayons/crayon5.gif\"> x " + str(bluespend)
if purplespend + brownspend + greyspend > 0:
if len(requestblue) > 0:
shopstring += "<img src=\"" + variables.url + "/assets/crayons/crayon5.gif\"> x " + str(len(requestblue))
if len(requestpurple) + len(requestbrown) + len(requestgrey) > 0:
shopstring += ", "
if purplespend > 0:
shopstring += "<img src=\"" + variables.url + "/assets/crayons/crayon6.gif\"> x " + str(purplespend)
if brownspend + greyspend > 0:
if len(requestpurple) > 0:
shopstring += "<img src=\"" + variables.url + "/assets/crayons/crayon6.gif\"> x " + str(len(requestpurple))
if len(requestbrown) + len(requestgrey) > 0:
shopstring += ", "
if brownspend > 0:
shopstring += "<img src=\"" + variables.url + "/assets/crayons/crayon7.gif\"> x " + str(brownspend)
if greyspend > 0:
if len(requestbrown) > 0:
shopstring += "<img src=\"" + variables.url + "/assets/crayons/crayon7.gif\"> x " + str(len(requestbrown))
if len(requestgrey) > 0:
shopstring += ", "
if greyspend > 0:
shopstring += "<img src=\"" + variables.url + "/assets/crayons/crayon8.gif\"> x " + str(greyspend)
if len(requestgrey) > 0:
shopstring += "<img src=\"" + variables.url + "/assets/crayons/crayon8.gif\"> x " + str(len(requestgrey))
shopstring += "\n"
if sketchdifference > 0:
shopstring += "<b>Sketchpads:</b>\n<img src=\"" + variables.url + "/assets/sketch/20.gif\"> x " + str(sketchdifference)
@ -1562,36 +993,36 @@ def artshop():
shoplog = "\n{\"event\":\"art shop\",\"date\":datetime.datetime(" + datetime.datetime.now().strftime("%Y,%-m,%-d") + "),\"url\":\"" + shopurl + "\""
if len(requestcards) > 0:
shoplog += ",\"pend\":[\"" + "\",\"".join(requestcards) + "\"],\"crayons\":{"
if redspend > 0:
shoplog += "\"red\":-" + str(redspend)
if orangespend + yellowspend + greenspend + bluespend + purplespend + brownspend + greyspend > 0:
if len(requestred) > 0:
shoplog += "\"red\":-" + str(len(requestred))
if len(requestorange) + len(requestyellow) + len(requestgreen) + len(requestblue) + len(requestpurple) + len(requestbrown) + len(requestgrey) > 0:
shoplog += ","
if orangespend > 0:
shoplog += "\"orange\":-" + str(orangespend)
if yellowspend + greenspend + bluespend + purplespend + brownspend + greyspend > 0:
if len(requestorange) > 0:
shoplog += "\"orange\":-" + str(len(requestorange))
if len(requestyellow) + len(requestgreen) + len(requestblue) + len(requestpurple) + len(requestbrown) + len(requestgrey) > 0:
shoplog += ","
if yellowspend > 0:
shoplog += "\"yellow\":-" + str(yellowspend)
if greenspend + bluespend + purplespend + brownspend + greyspend > 0:
if len(requestyellow) > 0:
shoplog += "\"yellow\":-" + str(len(requestyellow))
if len(requestgreen) + len(requestblue) + len(requestpurple) + len(requestbrown) + len(requestgrey) > 0:
shoplog += ","
if greenspend > 0:
shoplog += "\"green\":-" + str(greenspend)
if bluespend + purplespend + brownspend + greyspend > 0:
if len(requestgreen) > 0:
shoplog += "\"green\":-" + str(len(requestgreen))
if len(requestblue) + len(requestpurple) + len(requestbrown) + len(requestgrey) > 0:
shoplog += ","
if bluespend > 0:
shoplog += "\"blue\":-" + str(bluespend)
if purplespend + brownspend + greyspend > 0:
if len(requestblue) > 0:
shoplog += "\"blue\":-" + str(len(requestblue))
if len(requestpurple) + len(requestbrown) + len(requestgrey) > 0:
shoplog += ","
if purplespend > 0:
shoplog += "\"purple\":-" + str(purplespend)
if brownspend + greyspend > 0:
if len(requestpurple) > 0:
shoplog += "\"purple\":-" + str(len(requestpurple))
if len(requestbrown) + len(requestgrey) > 0:
shoplog += ","
if brownspend > 0:
shoplog += "\"brown\":-" + str(brownspend)
if greyspend > 0:
if len(requestbrown) > 0:
shoplog += "\"brown\":-" + str(len(requestbrown))
if len(requestgrey) > 0:
shoplog += ","
if greyspend > 0:
shoplog += "\"gray\":-" + str(greyspend)
if len(requestgrey) > 0:
shoplog += "\"gray\":-" + str(len(requestgrey))
shoplog += "}"
if sketchdifference > 0:
shoplog += ",\"sketch\":-" + str(sketchdifference)
@ -1863,7 +1294,7 @@ def maketrade():
found = True
if randoms:
for card in colors.cardlist:
if card["priority"] == 4:
if card["priority"] == 4 and card["dupe"] == False:
if card not in theirwantlist:
if card["colour"] == "special":
randomsp.append(card["name"])
@ -2153,7 +1584,7 @@ if __name__ == "__main__":
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 Riku’s Favors","Generate next palette portfolio","Generate next monochrome portfolio","Generate Switch It Up request","Generate Swap Station request","Generate Go Fish comment","Generate Release Roulette comment","Generate art shop request","Generate art studio request","Check a trade offer","Propose a trade","Get a list of random cards from tradepile (excluding specials)","Get a list of random cards from tradepile (including specials)","Check a card in the collection","Check details of a deck","See decks mastered today","See some statistics about the collection"]
options = ["Generate next palette portfolio","Generate next monochrome portfolio","Generate Switch It Up request","Generate Swap Station request","Generate Go Fish comment","Generate Release Roulette comment","Generate Riku’s Favors comment","Generate art shop request","Generate art studio request","Check a trade offer","Propose a trade","Get a list of random cards from tradepile (excluding specials)","Get a list of random cards from tradepile (including specials)","Check a card in the collection","Check details of a deck","See decks mastered today","See some statistics about the collection"]
for optionName in options:
index = index + 1
indexValidList.extend([options.index(optionName)])
@ -2169,7 +1600,7 @@ if __name__ == "__main__":
else:
print("Select a number from the list")
chosen = options[selected]
if chosen == "Get a list of potential cards to trade in for Riku’s Favors":
if chosen == "Generate Riku’s Favors comment":
newriku()
elif chosen == "Generate next palette portfolio":
nextportfolio()