added set symbol to basics
added set symbol to the basics game mode. Changed name to "How Basic"
This commit is contained in:
parent
0333de143d
commit
d09a46482c
|
@ -18,7 +18,13 @@ online = false
|
||||||
firstPrint = false
|
firstPrint = false
|
||||||
flag = true
|
flag = true
|
||||||
page = 1
|
page = 1
|
||||||
|
sets = {}
|
||||||
|
|
||||||
|
fetch('jsons/set.json')
|
||||||
|
.then((response) => response.json())
|
||||||
|
.then((data) => (sets = data))
|
||||||
|
|
||||||
|
window.console.log(sets)
|
||||||
document.location.search.split('&').forEach((pair) => {
|
document.location.search.split('&').forEach((pair) => {
|
||||||
let v = pair.split('=')
|
let v = pair.split('=')
|
||||||
if (v[0] === '?whichguesser') {
|
if (v[0] === '?whichguesser') {
|
||||||
|
@ -55,7 +61,7 @@ function putIntoMapAndFetch(data) {
|
||||||
} else if (whichGuesser === 'beast') {
|
} else if (whichGuesser === 'beast') {
|
||||||
document.getElementById('guess-type').innerText = 'Finding Fantastic Beasts'
|
document.getElementById('guess-type').innerText = 'Finding Fantastic Beasts'
|
||||||
} else if (whichGuesser === 'basic') {
|
} else if (whichGuesser === 'basic') {
|
||||||
document.getElementById('guess-type').innerText = 'Basic B****'
|
document.getElementById('guess-type').innerText = 'How Basic'
|
||||||
}
|
}
|
||||||
setUpNewGame()
|
setUpNewGame()
|
||||||
}
|
}
|
||||||
|
@ -128,7 +134,7 @@ function determineIfSkip(card) {
|
||||||
}
|
}
|
||||||
if (firstPrint) {
|
if (firstPrint) {
|
||||||
if (whichGuesser == 'basic') {
|
if (whichGuesser == 'basic') {
|
||||||
if (card.set_type !== 'expansion') {
|
if (card.set_type !== 'expansion' && card.set_type !== 'funny') {
|
||||||
return true
|
return true
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
@ -159,6 +165,13 @@ function putIntoMap(data) {
|
||||||
if (card.card_faces) {
|
if (card.card_faces) {
|
||||||
name = card.card_faces[0].name
|
name = card.card_faces[0].name
|
||||||
}
|
}
|
||||||
|
if (whichGuesser === 'basic') {
|
||||||
|
name =
|
||||||
|
'<img class="symbol" style="width: 15px; height: 15px" src="' +
|
||||||
|
sets[name][1] +
|
||||||
|
'" /> ' +
|
||||||
|
sets[name][0]
|
||||||
|
}
|
||||||
let normalImg = ''
|
let normalImg = ''
|
||||||
if (card.image_uris.normal) {
|
if (card.image_uris.normal) {
|
||||||
normalImg = card.image_uris.normal
|
normalImg = card.image_uris.normal
|
||||||
|
@ -219,7 +232,7 @@ function setUpNewGame() {
|
||||||
for (nameIndex = 1; nameIndex <= k + extra; nameIndex++) {
|
for (nameIndex = 1; nameIndex <= k + extra; nameIndex++) {
|
||||||
currName = document.getElementById('name-' + nameIndex)
|
currName = document.getElementById('name-' + nameIndex)
|
||||||
// window.console.log(currName)
|
// window.console.log(currName)
|
||||||
currName.innerText = namesList[nameIndex - 1]
|
currName.innerHTML = namesList[nameIndex - 1]
|
||||||
nameBank.appendChild(currName)
|
nameBank.appendChild(currName)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -347,6 +360,10 @@ function dropOnCard(id, data) {
|
||||||
}
|
}
|
||||||
|
|
||||||
function setWordsLeft() {
|
function setWordsLeft() {
|
||||||
|
cardName = 'Unused Card Names: '
|
||||||
|
if (whichGuesser === 'basic') {
|
||||||
|
cardName = 'Unused Set Names: '
|
||||||
|
}
|
||||||
document.getElementById('words-left').innerText =
|
document.getElementById('words-left').innerText =
|
||||||
'Unused Card Names: ' + wordsLeft + '/Images: ' + imagesLeft
|
cardName + wordsLeft + '/Images: ' + imagesLeft
|
||||||
}
|
}
|
||||||
|
|
|
@ -3,7 +3,8 @@ import requests
|
||||||
import json
|
import json
|
||||||
|
|
||||||
# add category name here
|
# add category name here
|
||||||
allCategories = ['counterspell', 'beast', 'basic', 'burn'] #, 'terror', 'wrath']
|
allCategories = ['counterspell', 'beast', 'burn'] #, 'terror', 'wrath']
|
||||||
|
specialCategories = ['set', 'basic']
|
||||||
|
|
||||||
|
|
||||||
def generate_initial_query(category):
|
def generate_initial_query(category):
|
||||||
|
@ -22,14 +23,21 @@ def generate_initial_query(category):
|
||||||
'%2Fcontroller%28%5C.%7C+%29%2F%29+or+o%3A%2F~+deals+%28.%7C..%29+damage+to+%28any+target%7C' \
|
'%2Fcontroller%28%5C.%7C+%29%2F%29+or+o%3A%2F~+deals+%28.%7C..%29+damage+to+%28any+target%7C' \
|
||||||
'.*player%28%5C.%7C+or+planeswalker%29%7C.*opponent%28%5C.%7C+or+planeswalker%29%29%2F%29' \
|
'.*player%28%5C.%7C+or+planeswalker%29%7C.*opponent%28%5C.%7C+or+planeswalker%29%29%2F%29' \
|
||||||
'+%28type%3Ainstant+or+type%3Asorcery%29+not%3Aadventure'
|
'+%28type%3Ainstant+or+type%3Asorcery%29+not%3Aadventure'
|
||||||
|
# add category string query here
|
||||||
|
string_query += '+-%28set%3Asld+%28%28cn>%3D231+cn<%3D233%29+or+%28cn>%3D321+cn<%3D324%29+or+%28cn>%3D185+cn' \
|
||||||
|
'<%3D189%29+or+%28cn>%3D138+cn<%3D142%29+or+%28cn>%3D364+cn<%3D368%29+or+cn%3A669+or+cn%3A670%29' \
|
||||||
|
'%29+-name%3A%2F%5EA-%2F+not%3Adfc+not%3Asplit+-set%3Acmb2+-set%3Acmb1+-set%3Aplist+-set%3Adbl' \
|
||||||
|
'+language%3Aenglish&order=released&dir=asc&unique=prints&page='
|
||||||
|
print(string_query)
|
||||||
|
return string_query
|
||||||
|
|
||||||
|
def generate_initial_special_query(category):
|
||||||
|
string_query = 'https://api.scryfall.com/cards/search?q='
|
||||||
|
if category == 'set':
|
||||||
|
return 'https://api.scryfall.com/sets'
|
||||||
elif category == 'basic':
|
elif category == 'basic':
|
||||||
string_query += 't%3Abasic&order=released&dir=asc&unique=prints&page='
|
string_query += 't%3Abasic&order=released&dir=asc&unique=prints&page='
|
||||||
# add category string query here
|
# add category string query here
|
||||||
if category != 'basic':
|
|
||||||
string_query += '+-%28set%3Asld+%28%28cn>%3D231+cn<%3D233%29+or+%28cn>%3D321+cn<%3D324%29+or+%28cn>%3D185+cn' \
|
|
||||||
'<%3D189%29+or+%28cn>%3D138+cn<%3D142%29+or+%28cn>%3D364+cn<%3D368%29+or+cn%3A669+or+cn%3A670%29' \
|
|
||||||
'%29+-name%3A%2F%5EA-%2F+not%3Adfc+not%3Asplit+-set%3Acmb2+-set%3Acmb1+-set%3Aplist+-set%3Adbl' \
|
|
||||||
'+-frame%3Aextendedart+language%3Aenglish&order=released&dir=asc&unique=prints&page='
|
|
||||||
print(string_query)
|
print(string_query)
|
||||||
return string_query
|
return string_query
|
||||||
|
|
||||||
|
@ -47,6 +55,24 @@ def fetch_and_write_all(category, query):
|
||||||
|
|
||||||
with open('jsons/' + category + '.json', 'w') as f:
|
with open('jsons/' + category + '.json', 'w') as f:
|
||||||
json.dump(all_cards, f)
|
json.dump(all_cards, f)
|
||||||
|
|
||||||
|
|
||||||
|
def fetch_and_write_all_special(category, query):
|
||||||
|
count = 1
|
||||||
|
will_repeat = True
|
||||||
|
all_cards = {'data' : []}
|
||||||
|
art_names = set()
|
||||||
|
while will_repeat:
|
||||||
|
if category == 'set':
|
||||||
|
response = fetch_special(query)
|
||||||
|
else:
|
||||||
|
response = fetch(query, count)
|
||||||
|
will_repeat = response['has_more']
|
||||||
|
count+=1
|
||||||
|
to_compact_write_form_special(all_cards, art_names, response, category)
|
||||||
|
|
||||||
|
with open('jsons/' + category + '.json', 'w') as f:
|
||||||
|
json.dump(all_cards, f)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -56,11 +82,15 @@ def fetch(query, count):
|
||||||
time.sleep(0.1)
|
time.sleep(0.1)
|
||||||
return response
|
return response
|
||||||
|
|
||||||
|
def fetch_special(query):
|
||||||
|
response = requests.get(f"{query}").json()
|
||||||
|
time.sleep(0.1)
|
||||||
|
return response
|
||||||
|
|
||||||
|
|
||||||
def to_compact_write_form(smallJson, art_names, response, category):
|
def to_compact_write_form(smallJson, art_names, response, category):
|
||||||
fieldsInCard = ['name', 'image_uris', 'content_warning', 'flavor_name', 'reprint', 'frame_effects', 'digital',
|
fieldsInCard = ['name', 'image_uris', 'content_warning', 'flavor_name', 'reprint', 'frame_effects', 'digital',
|
||||||
'set_type']
|
'set_type']
|
||||||
fieldsInBasic = ['image_uris', 'set_name', 'set_type', 'digital']
|
|
||||||
data = []
|
data = []
|
||||||
# write all fields needed in card
|
# write all fields needed in card
|
||||||
for card in response['data']:
|
for card in response['data']:
|
||||||
|
@ -69,25 +99,41 @@ def to_compact_write_form(smallJson, art_names, response, category):
|
||||||
continue
|
continue
|
||||||
else:
|
else:
|
||||||
art_names.add(card['illustration_id'])
|
art_names.add(card['illustration_id'])
|
||||||
|
|
||||||
write_card = dict()
|
write_card = dict()
|
||||||
|
for field in fieldsInCard:
|
||||||
|
if field == 'name' and 'card_faces' in card:
|
||||||
|
write_card['name'] = card['card_faces'][0]['name']
|
||||||
|
elif field == 'image_uris':
|
||||||
|
write_card['image_uris'] = write_image_uris(card['image_uris'])
|
||||||
|
elif field in card:
|
||||||
|
write_card[field] = card[field]
|
||||||
|
data.append(write_card)
|
||||||
|
smallJson['data'] += data
|
||||||
|
|
||||||
|
def to_compact_write_form_special(smallJson, art_names, response, category):
|
||||||
|
fieldsInBasic = ['image_uris', 'set', 'set_type', 'digital']
|
||||||
|
data = []
|
||||||
|
# write all fields needed in card
|
||||||
|
for card in response['data']:
|
||||||
if category == 'basic':
|
if category == 'basic':
|
||||||
|
write_card = dict()
|
||||||
|
# do not repeat art
|
||||||
|
if 'illustration_id' not in card or card['illustration_id'] in art_names:
|
||||||
|
continue
|
||||||
|
else:
|
||||||
|
art_names.add(card['illustration_id'])
|
||||||
for field in fieldsInBasic:
|
for field in fieldsInBasic:
|
||||||
if field == 'image_uris':
|
if field == 'image_uris':
|
||||||
write_card['image_uris'] = write_image_uris(card['image_uris'])
|
write_card['image_uris'] = write_image_uris(card['image_uris'])
|
||||||
elif field == 'set_name':
|
elif field == 'set':
|
||||||
write_card['name'] = card['set_name']
|
write_card['name'] = card['set']
|
||||||
elif field in card:
|
elif field in card:
|
||||||
write_card[field] = card[field]
|
write_card[field] = card[field]
|
||||||
|
data.append(write_card)
|
||||||
else:
|
else:
|
||||||
for field in fieldsInCard:
|
if card['set_type'] != 'token':
|
||||||
if field == 'name' and 'card_faces' in card:
|
smallJson[card['code']] = [card['name'],card['icon_svg_uri']]
|
||||||
write_card['name'] = card['card_faces'][0]['name']
|
|
||||||
elif field == 'image_uris':
|
|
||||||
write_card['image_uris'] = write_image_uris(card['image_uris'])
|
|
||||||
elif field in card:
|
|
||||||
write_card[field] = card[field]
|
|
||||||
data.append(write_card)
|
|
||||||
smallJson['data'] += data
|
smallJson['data'] += data
|
||||||
|
|
||||||
|
|
||||||
|
@ -106,6 +152,9 @@ def write_image_uris(card_image_uris):
|
||||||
|
|
||||||
|
|
||||||
if __name__ == "__main__":
|
if __name__ == "__main__":
|
||||||
for category in allCategories:
|
# for category in allCategories:
|
||||||
|
# print(category)
|
||||||
|
# fetch_and_write_all(category, generate_initial_query(category))
|
||||||
|
for category in specialCategories:
|
||||||
print(category)
|
print(category)
|
||||||
fetch_and_write_all(category, generate_initial_query(category))
|
fetch_and_write_all_special(category, generate_initial_special_query(category))
|
||||||
|
|
|
@ -165,7 +165,7 @@
|
||||||
class="thumbnail"
|
class="thumbnail"
|
||||||
src="https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/3/03683fbb-9843-4c14-bb95-387150e97c90.jpg?1642161346"
|
src="https://c1.scryfall.com/file/scryfall-cards/art_crop/front/0/3/03683fbb-9843-4c14-bb95-387150e97c90.jpg?1642161346"
|
||||||
/>
|
/>
|
||||||
<h3>Basic B****round</h3></label
|
<h3>How Basic</h3></label
|
||||||
>
|
>
|
||||||
<br />
|
<br />
|
||||||
|
|
||||||
|
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
1
web/public/mtg/jsons/set.json
Normal file
1
web/public/mtg/jsons/set.json
Normal file
File diff suppressed because one or more lines are too long
Loading…
Reference in New Issue
Block a user