Add page for masteries, get deck types from a file, some refactoring
This commit is contained in:
parent
448b2187c6
commit
113461ce19
9 changed files with 15064 additions and 93 deletions
|
@ -28,32 +28,15 @@ def collectinggen(colour=False):
|
|||
medpriority = []
|
||||
lowpriority = []
|
||||
for deck in decksofinterest:
|
||||
if deck in variables.highpriority:
|
||||
highpriority.append(deck)
|
||||
elif deck in variables.medpriority:
|
||||
medpriority.append(deck)
|
||||
else:
|
||||
if tcgcore.collecting(deck):
|
||||
lowpriority.append(deck)
|
||||
content.write("<p>")
|
||||
if colour:
|
||||
content.write("Filtered to <b>")
|
||||
if colour == "gray":
|
||||
if variables.british:
|
||||
content.write("grey")
|
||||
if tcgcore.collecting(deck):
|
||||
if deck in variables.highpriority:
|
||||
highpriority.append(deck)
|
||||
elif deck in variables.medpriority:
|
||||
medpriority.append(deck)
|
||||
else:
|
||||
content.write("gray")
|
||||
else:
|
||||
content.write(colour)
|
||||
content.write("</b>. <a href=\"/collecting\">Show all</a>")
|
||||
else:
|
||||
content.write("Filter: <a href=\"/collecting/red\" title=\"red\">🔴</a> <a href=\"/collecting/orange\" title=\"orange\">🟠</a> <a href=\"/collecting/yellow\" title=\"yellow\">🟡</a> <a href=\"/collecting/green\" title=\"green\">🟢</a> <a href=\"/collecting/blue\" title=\"blue\">🔵</a> <a href=\"/collecting/purple\" title=\"purple\">🟣</a> <a href=\"/collecting/brown\" title=\"brown\">🟤</a> <a href=\"/collecting/gray\" title=\"")
|
||||
if variables.british:
|
||||
content.write("grey")
|
||||
else:
|
||||
content.write("gray")
|
||||
content.write("\">⚪</a> <a href=\"/collecting/special\" title=\"special\">✨</a>")
|
||||
content.write("</p>\n")
|
||||
if tcgcore.collecting(deck):
|
||||
lowpriority.append(deck)
|
||||
content.write(tcgcore.filterwrite("collecting",colour))
|
||||
if len(highpriority) > 0:
|
||||
content.write("<div>\n<h2 class=\"collectingheader\">High priority</h2>\n")
|
||||
for deck in highpriority:
|
||||
|
|
43
download.py
43
download.py
|
@ -1,5 +1,5 @@
|
|||
import os,requests
|
||||
import tcgcore
|
||||
import tcgcore,thetypes
|
||||
|
||||
def getimg():
|
||||
for card in tcgcore.ownedcards():
|
||||
|
@ -11,25 +11,28 @@ def getimg():
|
|||
thepath = "build/decks/" + card[:-2]
|
||||
if not os.path.isdir(thepath):
|
||||
os.mkdir(thepath)
|
||||
index = 0 # adapted from https://stackoverflow.com/a/64536882
|
||||
indexValidList = []
|
||||
print("Deck type for " + card[:-2] + ":")
|
||||
options = tcgcore.typelist
|
||||
for optionName in options:
|
||||
index = index + 1
|
||||
indexValidList.extend([options.index(optionName)])
|
||||
print(str(index) + ") " + optionName)
|
||||
inputValid = False
|
||||
while not inputValid:
|
||||
inputRaw = input("Type: ")
|
||||
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")
|
||||
decktype = options[selected]
|
||||
if card[:-2] in thetypes.typedict:
|
||||
decktype = thetypes.typedict[card[:-2]]
|
||||
else:
|
||||
index = 0 # adapted from https://stackoverflow.com/a/64536882
|
||||
indexValidList = []
|
||||
print("Deck type for " + card[:-2] + ":")
|
||||
options = tcgcore.typelist
|
||||
for optionName in options:
|
||||
index = index + 1
|
||||
indexValidList.extend([options.index(optionName)])
|
||||
print(str(index) + ") " + optionName)
|
||||
inputValid = False
|
||||
while not inputValid:
|
||||
inputRaw = input("Type: ")
|
||||
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")
|
||||
decktype = options[selected]
|
||||
typefile = open(thepath + "/type","w")
|
||||
typefile.write(decktype)
|
||||
typefile.close()
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
import download,indexgen,collectinggen,ownedgen,wantedgen,loggen,levelsgen,tradegen
|
||||
import download,indexgen,collectinggen,ownedgen,wantedgen,loggen,levelsgen,tradegen,masteredgen
|
||||
|
||||
download.getimg()
|
||||
indexgen.indexgen()
|
||||
|
@ -8,3 +8,4 @@ wantedgen.wantedgen()
|
|||
loggen.loggen()
|
||||
levelsgen.levelsgen()
|
||||
tradegen.tradeall()
|
||||
masteredgen.masteredall()
|
||||
|
|
43
masteredgen.py
Normal file
43
masteredgen.py
Normal file
|
@ -0,0 +1,43 @@
|
|||
import datetime,os
|
||||
import log,variables,skel,tcgcore
|
||||
|
||||
def masteredgen(colour=False):
|
||||
if not os.path.isdir("build/mastered"):
|
||||
os.mkdir("build/mastered")
|
||||
if colour:
|
||||
if not os.path.isdir("build/mastered/" + colour):
|
||||
os.mkdir("build/mastered/" + colour)
|
||||
thefile = "build/mastered/" + colour + "/index.html"
|
||||
else:
|
||||
thefile = "build/mastered/index.html"
|
||||
if os.path.exists(thefile):
|
||||
os.remove(thefile)
|
||||
skel.headerwrite(thefile,"mastered")
|
||||
content = open(thefile,"a")
|
||||
content.write("<h1>mastered decks</h1>\n")
|
||||
decksofinterest = []
|
||||
for card in tcgcore.ownedcards():
|
||||
if card[0:4] != "sig_":
|
||||
if colour:
|
||||
if tcgcore.cardtype(card) == colour:
|
||||
decksofinterest.append(card[:-2])
|
||||
else:
|
||||
decksofinterest.append(card[:-2])
|
||||
decksofinterest = sorted(list(dict.fromkeys(decksofinterest)))
|
||||
mastereddecks = []
|
||||
for deck in decksofinterest:
|
||||
if tcgcore.deckmastered(deck):
|
||||
mastereddecks.append(deck)
|
||||
content.write(tcgcore.filterwrite("mastered",colour))
|
||||
for deck in mastereddecks:
|
||||
content.write(tcgcore.printdeck(deck))
|
||||
content.close()
|
||||
skel.footerwrite(thefile)
|
||||
|
||||
def masteredall():
|
||||
masteredgen()
|
||||
for type in tcgcore.typelist:
|
||||
masteredgen(type)
|
||||
|
||||
if __name__ == "__main__":
|
||||
masteredall()
|
22
ownedgen.py
22
ownedgen.py
|
@ -14,25 +14,9 @@ def ownedgen(colour=False):
|
|||
os.remove(thefile)
|
||||
skel.headerwrite(thefile,"owned")
|
||||
content = open(thefile,"a")
|
||||
content.write("<h1>owned cards</h1>\n<p>")
|
||||
if colour:
|
||||
content.write("Filtered to <b>")
|
||||
if colour == "gray":
|
||||
if variables.british:
|
||||
content.write("grey")
|
||||
else:
|
||||
content.write("gray")
|
||||
else:
|
||||
content.write(colour)
|
||||
content.write("</b>. <a href=\"/owned\">Show all</a>")
|
||||
else:
|
||||
content.write("Filter: <a href=\"/owned/red\" title=\"red\">🔴</a> <a href=\"/owned/orange\" title=\"orange\">🟠</a> <a href=\"/owned/yellow\" title=\"yellow\">🟡</a> <a href=\"/owned/green\" title=\"green\">🟢</a> <a href=\"/owned/blue\" title=\"blue\">🔵</a> <a href=\"/owned/purple\" title=\"purple\">🟣</a> <a href=\"/owned/brown\" title=\"brown\">🟤</a> <a href=\"/owned/gray\" title=\"")
|
||||
if variables.british:
|
||||
content.write("grey")
|
||||
else:
|
||||
content.write("gray")
|
||||
content.write("\">⚪</a> <a href=\"/owned/special\" title=\"special\">✨</a>")
|
||||
content.write("</p>\n<p>")
|
||||
content.write("<h1>owned cards</h1>\n")
|
||||
content.write(tcgcore.filterwrite("owned",colour))
|
||||
content.write("<p>")
|
||||
for card in tcgcore.ownedcards():
|
||||
if card[0:4] != "sig_":
|
||||
if colour:
|
||||
|
|
5
skel.py
5
skel.py
|
@ -13,6 +13,11 @@ def headerwrite(thefile,pagename):
|
|||
else:
|
||||
header.write("<a href=\"/collecting\">collecting</a>")
|
||||
header.write("</li>\n <li>")
|
||||
if pagename == "mastered":
|
||||
header.write("mastered")
|
||||
else:
|
||||
header.write("<a href=\"/mastered\">mastered</a>")
|
||||
header.write("</li>\n <li>")
|
||||
if pagename == "owned":
|
||||
header.write("owned")
|
||||
else:
|
||||
|
|
47
tcgcore.py
47
tcgcore.py
|
@ -25,17 +25,26 @@ def deckcards(deck):
|
|||
deckcards = sorted(list(dict.fromkeys(deckcards)))
|
||||
return deckcards
|
||||
|
||||
def collecting(deck):
|
||||
if deck in variables.highpriority:
|
||||
def deckmastered(deck):
|
||||
if len(deckcards(deck)) == 20:
|
||||
return True
|
||||
else:
|
||||
if deck in variables.medpriority:
|
||||
return False
|
||||
|
||||
def collecting(deck):
|
||||
if len (deckcards(deck)) < 20:
|
||||
if deck in variables.highpriority:
|
||||
return True
|
||||
else:
|
||||
if len(deckcards(deck)) < variables.collectthreshold:
|
||||
return False
|
||||
else:
|
||||
if deck in variables.medpriority:
|
||||
return True
|
||||
else:
|
||||
if len(deckcards(deck)) < variables.collectthreshold:
|
||||
return False
|
||||
else:
|
||||
return True
|
||||
else:
|
||||
return False
|
||||
|
||||
def cardtype(card):
|
||||
with open("build/decks/" + card[:-2] + "/type") as thetype:
|
||||
|
@ -103,5 +112,31 @@ def printdeck(deck):
|
|||
if test % 5 == 0:
|
||||
deckstring += " </tr>\n"
|
||||
test += 1
|
||||
if deckmastered(deck):
|
||||
deckstring += " <tr>\n <td colspan=\"5\" align=\"center\"><img src=\"/decks/" + deck + "/master.gif\" title=\"mastered " + deck + "\"><td>\n</tr>\n"
|
||||
deckstring += "</tbody>\n</table>\n"
|
||||
return deckstring
|
||||
|
||||
def filterwrite(page,colour=False,sigs=False):
|
||||
filterstring = "<p class=\"typefilter\">"
|
||||
if colour:
|
||||
filterstring += "Filtered to <b>"
|
||||
if colour == "gray":
|
||||
if variables.british:
|
||||
filterstring += "grey"
|
||||
else:
|
||||
filterstring += "gray"
|
||||
else:
|
||||
filterstring += colour
|
||||
filterstring += "</b>. <a href=\"/" + page + "\">Show all</a>"
|
||||
else:
|
||||
filterstring += "Filter: <a href=\"/" + page + "/red\" title=\"red\">🔴</a> <a href=\"/" + page + "/orange\" title=\"orange\">🟠</a> <a href=\"/" + page + "/yellow\" title=\"yellow\">🟡</a> <a href=\"/" + page + "/green\" title=\"green\">🟢</a> <a href=\"/" + page + "/blue\" title=\"blue\">🔵</a> <a href=\"/" + page + "/purple\" title=\"purple\">🟣</a> <a href=\"/" + page + "/brown\" title=\"brown\">🟤</a> <a href=\"/" + page + "/gray\" title=\""
|
||||
if variables.british:
|
||||
filterstring += "grey"
|
||||
else:
|
||||
filterstring += "gray"
|
||||
filterstring += "\">⚪</a> <a href=\"/" + page + "/special\" title=\"special\">✨</a>"
|
||||
if sigs:
|
||||
filterstring += " <a href=\"/" + page + "/sig\" title=\"sig\">✍</a>"
|
||||
filterstring += "</p>\n"
|
||||
return filterstring
|
||||
|
|
14925
thetypes.py
Normal file
14925
thetypes.py
Normal file
File diff suppressed because it is too large
Load diff
36
tradegen.py
36
tradegen.py
|
@ -14,37 +14,29 @@ def tradegen(colour=False):
|
|||
os.remove(thefile)
|
||||
skel.headerwrite(thefile,"trade")
|
||||
content = open(thefile,"a")
|
||||
content.write("<h1>available for trade</h1>\n<p>")
|
||||
if colour:
|
||||
content.write("Filtered to <b>")
|
||||
if colour == "gray":
|
||||
if variables.british:
|
||||
content.write("grey")
|
||||
else:
|
||||
content.write("gray")
|
||||
else:
|
||||
content.write(colour)
|
||||
content.write("</b>. <a href=\"/trade\">Show all</a>")
|
||||
else:
|
||||
content.write("Filter: <a href=\"/trade/red\" title=\"red\">🔴</a> <a href=\"/trade/orange\" title=\"orange\">🟠</a> <a href=\"/trade/yellow\" title=\"yellow\">🟡</a> <a href=\"/trade/green\" title=\"green\">🟢</a> <a href=\"/trade/blue\" title=\"blue\">🔵</a> <a href=\"/trade/purple\" title=\"purple\">🟣</a> <a href=\"/trade/brown\" title=\"brown\">🟤</a> <a href=\"/trade/gray\" title=\"")
|
||||
if variables.british:
|
||||
content.write("grey")
|
||||
else:
|
||||
content.write("gray")
|
||||
content.write("\">⚪</a> <a href=\"/trade/special\" title=\"special\">✨</a> <a href=\"/trade/sig\" title=\"sig\">✍</a>")
|
||||
content.write("</p>\n<p>")
|
||||
content.write("<h1>available for trade</h1>\n")
|
||||
content.write(tcgcore.filterwrite("trade",colour,True))
|
||||
content.write("<p>")
|
||||
if len(variables.tradestatement) > 0:
|
||||
content.write(variables.tradestatement + " ")
|
||||
content.write("Trade cards <a href=\"" + variables.tradepost + "\">here</a></p>\n<p>")
|
||||
previouscard = ""
|
||||
for card in tcgcore.ownedcards():
|
||||
if card[0:4] != "sig_":
|
||||
if colour:
|
||||
if not tcgcore.collecting(card[:-2]):
|
||||
if card == previouscard:
|
||||
if colour:
|
||||
if tcgcore.cardtype(card) == colour:
|
||||
content.write(tcgcore.printcard(card))
|
||||
else:
|
||||
content.write(tcgcore.printcard(card))
|
||||
else:
|
||||
if not tcgcore.collecting(card[:-2]):
|
||||
content.write(tcgcore.printcard(card))
|
||||
if colour:
|
||||
if tcgcore.cardtype(card) == colour:
|
||||
content.write(tcgcore.printcard(card))
|
||||
else:
|
||||
content.write(tcgcore.printcard(card))
|
||||
previouscard = card
|
||||
siglist = []
|
||||
for card in tcgcore.ownedcards():
|
||||
if card == "sig_" + variables.name.lower():
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue