Hints now format properly, with correct coloring, and clean spacing. All possible hint images accounted for.
3
.gitignore
vendored
@ -6,4 +6,5 @@ settings.json
|
|||||||
**/db.sqlite3
|
**/db.sqlite3
|
||||||
**/node_modules/**
|
**/node_modules/**
|
||||||
**/dist/**
|
**/dist/**
|
||||||
spoiler.json
|
spoiler.json
|
||||||
|
**/dotnet-tools.json
|
@ -1,4 +1,5 @@
|
|||||||
asgiref==3.7.2
|
asgiref==3.7.2
|
||||||
|
autopep8==2.0.4
|
||||||
certifi==2024.2.2
|
certifi==2024.2.2
|
||||||
charset-normalizer==3.3.2
|
charset-normalizer==3.3.2
|
||||||
click==8.1.7
|
click==8.1.7
|
||||||
@ -6,6 +7,9 @@ colorama==0.4.6
|
|||||||
cssbeautifier==1.15.1
|
cssbeautifier==1.15.1
|
||||||
Django==5.0.3
|
Django==5.0.3
|
||||||
django-browser-reload==1.12.1
|
django-browser-reload==1.12.1
|
||||||
|
django-tailwind==3.8.0
|
||||||
|
djangorestframework==3.15.1
|
||||||
|
djlint==1.34.1
|
||||||
EditorConfig==0.12.4
|
EditorConfig==0.12.4
|
||||||
gunicorn==21.2.0
|
gunicorn==21.2.0
|
||||||
html-tag-names==0.1.2
|
html-tag-names==0.1.2
|
||||||
@ -16,7 +20,10 @@ json5==0.9.22
|
|||||||
numpy==1.26.4
|
numpy==1.26.4
|
||||||
packaging==23.2
|
packaging==23.2
|
||||||
pathspec==0.12.1
|
pathspec==0.12.1
|
||||||
|
pillow==10.3.0
|
||||||
|
pyarrow==15.0.1
|
||||||
pycodestyle==2.11.1
|
pycodestyle==2.11.1
|
||||||
|
pylance==0.10.2
|
||||||
PyYAML==6.0.1
|
PyYAML==6.0.1
|
||||||
regex==2023.12.25
|
regex==2023.12.25
|
||||||
requests==2.31.0
|
requests==2.31.0
|
||||||
|
@ -1,31 +0,0 @@
|
|||||||
asgiref==3.7.2
|
|
||||||
autopep8==2.0.4
|
|
||||||
certifi==2024.2.2
|
|
||||||
charset-normalizer==3.3.2
|
|
||||||
click==8.1.7
|
|
||||||
colorama==0.4.6
|
|
||||||
cssbeautifier==1.15.1
|
|
||||||
Django==5.0.3
|
|
||||||
django-browser-reload==1.12.1
|
|
||||||
django-tailwind==3.8.0
|
|
||||||
djlint==1.34.1
|
|
||||||
EditorConfig==0.12.4
|
|
||||||
gunicorn==21.2.0
|
|
||||||
html-tag-names==0.1.2
|
|
||||||
html-void-elements==0.1.0
|
|
||||||
idna==3.6
|
|
||||||
jsbeautifier==1.15.1
|
|
||||||
json5==0.9.22
|
|
||||||
numpy==1.26.4
|
|
||||||
packaging==23.2
|
|
||||||
pathspec==0.12.1
|
|
||||||
pyarrow==15.0.1
|
|
||||||
pycodestyle==2.11.1
|
|
||||||
pylance==0.10.2
|
|
||||||
PyYAML==6.0.1
|
|
||||||
regex==2023.12.25
|
|
||||||
requests==2.31.0
|
|
||||||
six==1.16.0
|
|
||||||
sqlparse==0.4.4
|
|
||||||
tqdm==4.66.2
|
|
||||||
urllib3==2.2.1
|
|
@ -18,12 +18,10 @@ var cross_codes = {};
|
|||||||
var total_checks = 0;
|
var total_checks = 0;
|
||||||
var total_entrances = 0;
|
var total_entrances = 0;
|
||||||
var all_scenes = [];
|
var all_scenes = [];
|
||||||
var image_translations = {};
|
|
||||||
|
|
||||||
window.onload = async () => {
|
window.onload = async () => {
|
||||||
await get_updated_server_address();
|
await get_updated_server_address();
|
||||||
await parse_cross_codes();
|
await parse_cross_codes();
|
||||||
await parse_image_translations();
|
|
||||||
await initialize_elements();
|
await initialize_elements();
|
||||||
await refresh_elements();
|
await refresh_elements();
|
||||||
};
|
};
|
||||||
@ -41,19 +39,6 @@ async function parse_cross_codes() {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
async function parse_image_translations() {
|
|
||||||
fetch(`${document.URL}static/tracker/data/image_translations.json`)
|
|
||||||
.then((response) => response.json())
|
|
||||||
.then(
|
|
||||||
(data) => {
|
|
||||||
image_translations = JSON.parse(JSON.stringify(data));
|
|
||||||
},
|
|
||||||
(error) => {
|
|
||||||
console.error(error);
|
|
||||||
}
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
async function get_updated_server_address() {
|
async function get_updated_server_address() {
|
||||||
fetch(`${document.URL}get/address`)
|
fetch(`${document.URL}get/address`)
|
||||||
.then(
|
.then(
|
||||||
@ -762,7 +747,7 @@ async function update_summary(scene, checks, entrances) {
|
|||||||
|
|
||||||
async function update_summary_list(data, changed) {
|
async function update_summary_list(data, changed) {
|
||||||
// Check whether entrances or checks changed
|
// Check whether entrances or checks changed
|
||||||
if (changed.checks) {
|
if (changed.checks && current_checks > 0) {
|
||||||
Object.keys(data.scenes).forEach((scene) =>
|
Object.keys(data.scenes).forEach((scene) =>
|
||||||
update_summary(scene, data.scenes[scene], {
|
update_summary(scene, data.scenes[scene], {
|
||||||
found: document.querySelector(
|
found: document.querySelector(
|
||||||
@ -776,7 +761,7 @@ async function update_summary_list(data, changed) {
|
|||||||
).dataset.entrancesTotal,
|
).dataset.entrancesTotal,
|
||||||
})
|
})
|
||||||
);
|
);
|
||||||
} else if (changed.entrances) {
|
} else if (changed.entrances && current_entrances > 0) {
|
||||||
Object.keys(data.scenes).forEach((scene) =>
|
Object.keys(data.scenes).forEach((scene) =>
|
||||||
update_summary(
|
update_summary(
|
||||||
scene,
|
scene,
|
||||||
@ -909,57 +894,11 @@ async function update_hints(hints) {
|
|||||||
hints_list.innerHTML = "";
|
hints_list.innerHTML = "";
|
||||||
hints_list.appendChild(hints_list_item.cloneNode(true));
|
hints_list.appendChild(hints_list_item.cloneNode(true));
|
||||||
hints_list_item.classList.remove("hidden");
|
hints_list_item.classList.remove("hidden");
|
||||||
// Object.keys(hints).forEach((hint_index) => {
|
|
||||||
for (const hint_index of Object.keys(hints)) {
|
for (const hint_index of Object.keys(hints)) {
|
||||||
// let hint = hints[hint_index].split(
|
hints[hint_index] = await translate.parse_hints(hints[hint_index]);
|
||||||
// /(\[[\w\s]+?\]|\"[\w \d\>\<#.\-\']+\"|\<[\w\d#]+\>)/gm
|
|
||||||
// );
|
|
||||||
// hint = await Promise.all(
|
|
||||||
// hint.map(async (segment) => {
|
|
||||||
// segment = segment.trim();
|
|
||||||
// if (segment) {
|
|
||||||
// // if (
|
|
||||||
// // !(
|
|
||||||
// // segment.startsWith("[") ||
|
|
||||||
// // segment.startsWith("<") ||
|
|
||||||
// // segment.startsWith('"')
|
|
||||||
// // )
|
|
||||||
// // ) {
|
|
||||||
// // segment = translate(segment.trim());
|
|
||||||
// // } else if (segment.startsWith("[")) {
|
|
||||||
// // segment = segment.trim();
|
|
||||||
// // let translated_image_name = image_translations[segment];
|
|
||||||
// // segment = `<img class="flex object-contain w-8 h-8 my-auto align-middle" src="${translated_image_name}.png"></img>`;
|
|
||||||
// // } else {
|
|
||||||
// // segment = ` ${segment.trim()} `;
|
|
||||||
// // }
|
|
||||||
// // console.log(segment)
|
|
||||||
// // return segment;
|
|
||||||
// return await translate.test_parse_hints(segment, image_translations);
|
|
||||||
// }
|
|
||||||
// })
|
|
||||||
// );
|
|
||||||
hints[hint_index] = await translate.test_parse_hints(
|
|
||||||
hints[hint_index],
|
|
||||||
image_translations
|
|
||||||
);
|
|
||||||
}
|
|
||||||
Object.keys(hints).forEach((hint_index) => {
|
|
||||||
// let hint = hints[hint_index];
|
|
||||||
// let matches = Array.from(
|
|
||||||
// hint.matchAll(/\<([\w\d#]+)\>(.*)(\<[\w\d#]+\>)/gm)
|
|
||||||
// );
|
|
||||||
// if (matches.length >= 1) {
|
|
||||||
// hint = hint.replace(
|
|
||||||
// /(\<[\w\d#]+\>.*\<[\w\d#]+\>)/gm,
|
|
||||||
// `<span style="color: ${matches[0][1]};">${matches[0][2]}</span>`
|
|
||||||
// );
|
|
||||||
// }
|
|
||||||
// hint = hint.replace(/ "|" /gm, " ");
|
|
||||||
hints_list_item.firstElementChild.innerHTML = hints[hint_index];
|
hints_list_item.firstElementChild.innerHTML = hints[hint_index];
|
||||||
hints_list.appendChild(hints_list_item.cloneNode(true));
|
hints_list.appendChild(hints_list_item.cloneNode(true));
|
||||||
});
|
}
|
||||||
document.getElementById("hints-list").innerHTML = "";
|
|
||||||
document.getElementById("hints-list").replaceWith(hints_list);
|
document.getElementById("hints-list").replaceWith(hints_list);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -46,14 +46,18 @@ const skip = [" ", ",", "."];
|
|||||||
const re =
|
const re =
|
||||||
/(\\"[\w\s\.\-']*\\")|\<(#[a-fA-F0-9]*)\>(.*)\<#[a-fA-F0-9]*\>|(\[[\w]*\])/gm;
|
/(\\"[\w\s\.\-']*\\")|\<(#[a-fA-F0-9]*)\>(.*)\<#[a-fA-F0-9]*\>|(\[[\w]*\])/gm;
|
||||||
|
|
||||||
async function test_parse_hints(hint, translations) {
|
async function parse_hints(hint) {
|
||||||
let new_hint = hint;
|
let new_hint = hint;
|
||||||
const color_tags = [
|
const color_tags = [
|
||||||
...hint.matchAll(/\<[^\>]+\>(.*)\<[^\>]+\>/gm),
|
...hint.matchAll(/\<[^\>]+\>(.*)\<[^\>]+\>/gm),
|
||||||
...hint.matchAll(/\<([^\>]+)\>/gm),
|
...hint.matchAll(/\<([^\>]+)\>/gm),
|
||||||
];
|
];
|
||||||
|
let color_tag_value = "";
|
||||||
if (color_tags) {
|
if (color_tags) {
|
||||||
if (color_tags[1]) {
|
if (color_tags[1]) {
|
||||||
|
if (color_tag_value == "") {
|
||||||
|
color_tag_value = color_tags[1][1];
|
||||||
|
}
|
||||||
const color_tags_text = `<span style="color: ${color_tags[1][1]}">${color_tags[0][1]}</span>`;
|
const color_tags_text = `<span style="color: ${color_tags[1][1]}">${color_tags[0][1]}</span>`;
|
||||||
new_hint = new_hint.replace(
|
new_hint = new_hint.replace(
|
||||||
/\<[^\>]+\>[^\<]+\<[^\>]+\>/gm,
|
/\<[^\>]+\>[^\<]+\<[^\>]+\>/gm,
|
||||||
@ -64,48 +68,66 @@ async function test_parse_hints(hint, translations) {
|
|||||||
|
|
||||||
const image_text = [...new_hint.matchAll(/\[[^\]]+\]/gm)];
|
const image_text = [...new_hint.matchAll(/\[[^\]]+\]/gm)];
|
||||||
if (image_text && image_text[0]) {
|
if (image_text && image_text[0]) {
|
||||||
console.log(image_text[0][0]);
|
let translated_image = image_text[0][0].replace(/\[|\]/g, "");
|
||||||
const translated_image = translations[image_text[0][0]];
|
if (translated_image == "hexagram") {
|
||||||
console.log(translated_image);
|
translated_image = `${color_tag_value
|
||||||
|
.substring(1)
|
||||||
|
.toUpperCase()}_${translated_image}`;
|
||||||
|
}
|
||||||
new_hint = new_hint.replace(
|
new_hint = new_hint.replace(
|
||||||
/\[[^\]]+\]/gm,
|
/\[[^\]]+\]/gm,
|
||||||
`<img class="inline-block object-contain w-8 h-8 my-auto align-middle" src="/static/tracker/images/sprites/${translated_image}.png">`
|
`<img class="inline-block w-8 h-8 my-auto align-middle drop-shadow-[2px_2px_0px_rgba(36,36,36,0.8)]" src="/static/tracker/images/sprites/${translated_image}.png">`
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
const trunic_hint = new_hint
|
let trunic_hint = new_hint;
|
||||||
.split(/\<[^\>]+\>/gm)
|
const tag_matches = [...new_hint.matchAll(/\<[^\>]*\>/gm)].map((x) => x[0]);
|
||||||
.join(' "" ')
|
for (const matched in tag_matches) {
|
||||||
.split(/\"[^\"]*\"/gm);
|
trunic_hint = trunic_hint.replace(
|
||||||
|
tag_matches[matched],
|
||||||
for (const trunic in trunic_hint) {
|
"*".repeat(tag_matches[matched].length)
|
||||||
new_hint = new_hint.replace(
|
|
||||||
trunic_hint[trunic].trim(),
|
|
||||||
translate(trunic_hint[trunic].trim())
|
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
return new_hint;
|
const quote_matches = [...trunic_hint.matchAll(/\"[^\"]*\"/gm)].map(
|
||||||
}
|
(x) => x[0]
|
||||||
|
|
||||||
async function test_fetch() {
|
|
||||||
const response = await fetch(`http://localhost:51111/hints`);
|
|
||||||
const data = await response.json();
|
|
||||||
return data;
|
|
||||||
}
|
|
||||||
|
|
||||||
async function translation_fetch() {
|
|
||||||
const response = await fetch(
|
|
||||||
`http://localhost:8080/static/tracker/data/image_translations.json`
|
|
||||||
);
|
);
|
||||||
const data = await response.json();
|
for (const matched in quote_matches) {
|
||||||
return data;
|
trunic_hint = trunic_hint.replace(
|
||||||
|
quote_matches[matched],
|
||||||
|
"*".repeat(quote_matches[matched].length)
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
let current_index = 0;
|
||||||
|
new_hint = [...trunic_hint.matchAll(/\*+/gm)]
|
||||||
|
.map((x, index) => {
|
||||||
|
let points = [];
|
||||||
|
if (index != 0) {
|
||||||
|
points = [current_index, x.index];
|
||||||
|
} else {
|
||||||
|
points = [0, x.index];
|
||||||
|
}
|
||||||
|
current_index = x.index + x[0].length;
|
||||||
|
const to_translate = trunic_hint.substring(points[0], points[1]).trim();
|
||||||
|
if (to_translate.length > 0) {
|
||||||
|
return (
|
||||||
|
translate(to_translate) +
|
||||||
|
" " +
|
||||||
|
new_hint.substring(x.index, current_index).trim()
|
||||||
|
);
|
||||||
|
} else {
|
||||||
|
return new_hint.substring(x.index, current_index).trim();
|
||||||
|
}
|
||||||
|
})
|
||||||
|
.join(" ");
|
||||||
|
return new_hint;
|
||||||
}
|
}
|
||||||
|
|
||||||
const translate = (input) => {
|
const translate = (input) => {
|
||||||
let payload = "";
|
let payload = "";
|
||||||
let inQuote = false;
|
let inQuote = false;
|
||||||
let cursor = 0;
|
let cursor = 0;
|
||||||
|
|
||||||
// // remove [text in square brackets]
|
// // remove [text in square brackets]
|
||||||
// // remove extra whitespace (eg., "I saw A [hourglass] "HOURGLASS"" becomes "I saw A "HOURGLASS"")
|
// // remove extra whitespace (eg., "I saw A [hourglass] "HOURGLASS"" becomes "I saw A "HOURGLASS"")
|
||||||
// input = input.replace(/\s+\[.+?\]\s+/gm, " ");
|
// input = input.replace(/\s+\[.+?\]\s+/gm, " ");
|
||||||
@ -150,7 +172,7 @@ const translate = (input) => {
|
|||||||
cursor++;
|
cursor++;
|
||||||
}
|
}
|
||||||
|
|
||||||
return `<span class="inline-block pt-0.5 font-trunic text-md sm:text-xl h-full align-bottom">${payload} </span>`;
|
return `<span class="inline-block pt-0.5 font-trunic text-md sm:text-xl h-full align-bottom">${payload}</span>`;
|
||||||
};
|
};
|
||||||
|
|
||||||
export default { test_parse_hints, translation_fetch };
|
export default { parse_hints };
|
||||||
|
@ -1,86 +0,0 @@
|
|||||||
{
|
|
||||||
"[stick]": "",
|
|
||||||
"[realsword]": "ThirdSword",
|
|
||||||
"[librariansword]": "SecondSword",
|
|
||||||
"[heirsword]": "ThirdSword",
|
|
||||||
"[wand]": "",
|
|
||||||
"[dagger]": "",
|
|
||||||
"[orb]": "",
|
|
||||||
"[shield]": "",
|
|
||||||
"[gun]": "",
|
|
||||||
"[hourglass]": "",
|
|
||||||
"[lantern]": "",
|
|
||||||
"[laurels]": "",
|
|
||||||
"[coin]": "",
|
|
||||||
"[trinket]": "",
|
|
||||||
"[square]": "",
|
|
||||||
"[fairy]": "",
|
|
||||||
"[mayor]": "SecretMayor",
|
|
||||||
"[book]": "",
|
|
||||||
"[att]": "",
|
|
||||||
"[def]": "",
|
|
||||||
"[potion]": "",
|
|
||||||
"[hp]": "",
|
|
||||||
"[sp]": "",
|
|
||||||
"[mp]": "",
|
|
||||||
"[attrelic]": "HeroRelicATT",
|
|
||||||
"[defrelic]": "HeroRelicDef",
|
|
||||||
"[potionrelic]": "HeroRelicPotion",
|
|
||||||
"[hprelic]": "HeroRelicHP",
|
|
||||||
"[sprelic]": "HeroRelicSP",
|
|
||||||
"[mprelic]": "HeroRelicMP",
|
|
||||||
"[yellowkey]": "",
|
|
||||||
"[housekey]": "",
|
|
||||||
"[vaultkey]": "",
|
|
||||||
"[firecracker]": "",
|
|
||||||
"[firebomb]": "",
|
|
||||||
"[icebomb]": "",
|
|
||||||
"[hpberry]": "",
|
|
||||||
"[mpberry]": "",
|
|
||||||
"[pepper]": "",
|
|
||||||
"[ivy]": "",
|
|
||||||
"[lure]": "",
|
|
||||||
"[effigy]": "",
|
|
||||||
"[flask]": "",
|
|
||||||
"[shard]": "",
|
|
||||||
"[dath]": "DathSteneTexture",
|
|
||||||
"[torch]": "",
|
|
||||||
"[triangle]": "",
|
|
||||||
"[realmoney]": "",
|
|
||||||
"[anklet]": "",
|
|
||||||
"[perfume]": "",
|
|
||||||
"[mufflingbell]": "",
|
|
||||||
"[rtsr]": "",
|
|
||||||
"[aurasgem]": "",
|
|
||||||
"[invertedash]": "",
|
|
||||||
"[bonecard]": "",
|
|
||||||
"[luckycup]": "",
|
|
||||||
"[glasscannon]": "",
|
|
||||||
"[daggerstrap]": "",
|
|
||||||
"[louderecho]": "",
|
|
||||||
"[magicecho]": "",
|
|
||||||
"[bracer]": "",
|
|
||||||
"[tincture]": "",
|
|
||||||
"[btsr]": "",
|
|
||||||
"[scavengermask]": "",
|
|
||||||
"[redhex]": "RedQuestagon",
|
|
||||||
"[greenhex]": "GreenQuestagon",
|
|
||||||
"[bluehex]": "BlueQuestagon",
|
|
||||||
"[goldhex]": "GoldHex",
|
|
||||||
"[mrmayor]": "MrMayor",
|
|
||||||
"[secretlegend]": "SecretLegend",
|
|
||||||
"[sacredgeometry]": "SacredGeometry",
|
|
||||||
"[vintage]": "Vintage",
|
|
||||||
"[justsomepals]": "JustSomePals",
|
|
||||||
"[regalweasel]": "RegalWeasel",
|
|
||||||
"[springfalls]": "SpringFalls",
|
|
||||||
"[powerup]": "PowerUp",
|
|
||||||
"[backtowork]": "BackToWork",
|
|
||||||
"[phonomath]": "Phonomath",
|
|
||||||
"[dusty]": "Dusty",
|
|
||||||
"[foreverfriend]": "ForeverFriend",
|
|
||||||
"[fooltrap]": "TinyFox",
|
|
||||||
"[archipelago]": "ArchipelagoItem",
|
|
||||||
"[ladder]": "Ladder",
|
|
||||||
"[hexagram]": "GoldHex"
|
|
||||||
}
|
|
After Width: | Height: | Size: 23 KiB |
After Width: | Height: | Size: 23 KiB |
After Width: | Height: | Size: 23 KiB |
BIN
tunictracker/tracker/static/tracker/images/sprites/anklet.png
Normal file
After Width: | Height: | Size: 32 KiB |
After Width: | Height: | Size: 7.9 KiB |
BIN
tunictracker/tracker/static/tracker/images/sprites/att.png
Normal file
After Width: | Height: | Size: 22 KiB |
BIN
tunictracker/tracker/static/tracker/images/sprites/attrelic.png
Normal file
After Width: | Height: | Size: 16 KiB |
BIN
tunictracker/tracker/static/tracker/images/sprites/aurasgem.png
Normal file
After Width: | Height: | Size: 32 KiB |
After Width: | Height: | Size: 16 KiB |
BIN
tunictracker/tracker/static/tracker/images/sprites/bluehex.png
Normal file
After Width: | Height: | Size: 20 KiB |
BIN
tunictracker/tracker/static/tracker/images/sprites/bonecard.png
Normal file
After Width: | Height: | Size: 26 KiB |
BIN
tunictracker/tracker/static/tracker/images/sprites/book.png
Normal file
After Width: | Height: | Size: 27 KiB |
BIN
tunictracker/tracker/static/tracker/images/sprites/bracer.png
Normal file
After Width: | Height: | Size: 31 KiB |
BIN
tunictracker/tracker/static/tracker/images/sprites/btsr.png
Normal file
After Width: | Height: | Size: 31 KiB |
BIN
tunictracker/tracker/static/tracker/images/sprites/coin.png
Normal file
After Width: | Height: | Size: 27 KiB |
BIN
tunictracker/tracker/static/tracker/images/sprites/dagger.png
Normal file
After Width: | Height: | Size: 35 KiB |
After Width: | Height: | Size: 29 KiB |
BIN
tunictracker/tracker/static/tracker/images/sprites/dath.png
Normal file
After Width: | Height: | Size: 18 KiB |
BIN
tunictracker/tracker/static/tracker/images/sprites/def.png
Normal file
After Width: | Height: | Size: 27 KiB |
BIN
tunictracker/tracker/static/tracker/images/sprites/defrelic.png
Normal file
After Width: | Height: | Size: 19 KiB |
BIN
tunictracker/tracker/static/tracker/images/sprites/dusty.png
Normal file
After Width: | Height: | Size: 14 KiB |
BIN
tunictracker/tracker/static/tracker/images/sprites/effigy.png
Normal file
After Width: | Height: | Size: 18 KiB |
BIN
tunictracker/tracker/static/tracker/images/sprites/fairy.png
Normal file
After Width: | Height: | Size: 25 KiB |
BIN
tunictracker/tracker/static/tracker/images/sprites/firebomb.png
Normal file
After Width: | Height: | Size: 23 KiB |
After Width: | Height: | Size: 9.7 KiB |
BIN
tunictracker/tracker/static/tracker/images/sprites/flask.png
Normal file
After Width: | Height: | Size: 30 KiB |
BIN
tunictracker/tracker/static/tracker/images/sprites/fooltrap.png
Normal file
After Width: | Height: | Size: 27 KiB |
After Width: | Height: | Size: 21 KiB |
After Width: | Height: | Size: 32 KiB |
BIN
tunictracker/tracker/static/tracker/images/sprites/goldhex.png
Normal file
After Width: | Height: | Size: 18 KiB |
BIN
tunictracker/tracker/static/tracker/images/sprites/greenhex.png
Normal file
After Width: | Height: | Size: 20 KiB |
BIN
tunictracker/tracker/static/tracker/images/sprites/gun.png
Normal file
After Width: | Height: | Size: 22 KiB |
BIN
tunictracker/tracker/static/tracker/images/sprites/heirsword.png
Normal file
After Width: | Height: | Size: 17 KiB |
BIN
tunictracker/tracker/static/tracker/images/sprites/hexagram.png
Normal file
After Width: | Height: | Size: 23 KiB |
BIN
tunictracker/tracker/static/tracker/images/sprites/hourglass.png
Normal file
After Width: | Height: | Size: 23 KiB |
BIN
tunictracker/tracker/static/tracker/images/sprites/housekey.png
Normal file
After Width: | Height: | Size: 12 KiB |
BIN
tunictracker/tracker/static/tracker/images/sprites/hp.png
Normal file
After Width: | Height: | Size: 23 KiB |
BIN
tunictracker/tracker/static/tracker/images/sprites/hpberry.png
Normal file
After Width: | Height: | Size: 17 KiB |
BIN
tunictracker/tracker/static/tracker/images/sprites/hprelic.png
Normal file
After Width: | Height: | Size: 23 KiB |
BIN
tunictracker/tracker/static/tracker/images/sprites/icebomb.png
Normal file
After Width: | Height: | Size: 23 KiB |
After Width: | Height: | Size: 31 KiB |
BIN
tunictracker/tracker/static/tracker/images/sprites/ivy.png
Normal file
After Width: | Height: | Size: 17 KiB |
After Width: | Height: | Size: 18 KiB |
BIN
tunictracker/tracker/static/tracker/images/sprites/ladder.png
Normal file
After Width: | Height: | Size: 21 KiB |
BIN
tunictracker/tracker/static/tracker/images/sprites/lantern.png
Normal file
After Width: | Height: | Size: 25 KiB |
BIN
tunictracker/tracker/static/tracker/images/sprites/laurels.png
Normal file
After Width: | Height: | Size: 21 KiB |
After Width: | Height: | Size: 12 KiB |
After Width: | Height: | Size: 33 KiB |
BIN
tunictracker/tracker/static/tracker/images/sprites/luckycup.png
Normal file
After Width: | Height: | Size: 33 KiB |
BIN
tunictracker/tracker/static/tracker/images/sprites/lure.png
Normal file
After Width: | Height: | Size: 20 KiB |
BIN
tunictracker/tracker/static/tracker/images/sprites/magicecho.png
Normal file
After Width: | Height: | Size: 32 KiB |
BIN
tunictracker/tracker/static/tracker/images/sprites/mayor.png
Normal file
After Width: | Height: | Size: 20 KiB |
BIN
tunictracker/tracker/static/tracker/images/sprites/mp.png
Normal file
After Width: | Height: | Size: 20 KiB |
BIN
tunictracker/tracker/static/tracker/images/sprites/mpberry.png
Normal file
After Width: | Height: | Size: 17 KiB |
BIN
tunictracker/tracker/static/tracker/images/sprites/mprelic.png
Normal file
After Width: | Height: | Size: 20 KiB |
BIN
tunictracker/tracker/static/tracker/images/sprites/mrmayor.png
Normal file
After Width: | Height: | Size: 20 KiB |
After Width: | Height: | Size: 30 KiB |
BIN
tunictracker/tracker/static/tracker/images/sprites/orb.png
Normal file
After Width: | Height: | Size: 31 KiB |
BIN
tunictracker/tracker/static/tracker/images/sprites/pepper.png
Normal file
After Width: | Height: | Size: 12 KiB |
BIN
tunictracker/tracker/static/tracker/images/sprites/perfume.png
Normal file
After Width: | Height: | Size: 27 KiB |
BIN
tunictracker/tracker/static/tracker/images/sprites/phonomath.png
Normal file
After Width: | Height: | Size: 30 KiB |
BIN
tunictracker/tracker/static/tracker/images/sprites/potion.png
Normal file
After Width: | Height: | Size: 26 KiB |
After Width: | Height: | Size: 18 KiB |
BIN
tunictracker/tracker/static/tracker/images/sprites/powerup.png
Normal file
After Width: | Height: | Size: 13 KiB |
BIN
tunictracker/tracker/static/tracker/images/sprites/realmoney.png
Normal file
After Width: | Height: | Size: 6.4 KiB |
BIN
tunictracker/tracker/static/tracker/images/sprites/realsword.png
Normal file
After Width: | Height: | Size: 18 KiB |
BIN
tunictracker/tracker/static/tracker/images/sprites/redhex.png
Normal file
After Width: | Height: | Size: 19 KiB |
After Width: | Height: | Size: 16 KiB |
BIN
tunictracker/tracker/static/tracker/images/sprites/rtsr.png
Normal file
After Width: | Height: | Size: 30 KiB |
After Width: | Height: | Size: 12 KiB |
After Width: | Height: | Size: 31 KiB |
After Width: | Height: | Size: 16 KiB |
BIN
tunictracker/tracker/static/tracker/images/sprites/shard.png
Normal file
After Width: | Height: | Size: 16 KiB |
BIN
tunictracker/tracker/static/tracker/images/sprites/shield.png
Normal file
After Width: | Height: | Size: 28 KiB |
BIN
tunictracker/tracker/static/tracker/images/sprites/sp.png
Normal file
After Width: | Height: | Size: 19 KiB |
BIN
tunictracker/tracker/static/tracker/images/sprites/sprelic.png
Normal file
After Width: | Height: | Size: 13 KiB |
After Width: | Height: | Size: 12 KiB |
BIN
tunictracker/tracker/static/tracker/images/sprites/square.png
Normal file
After Width: | Height: | Size: 8.0 KiB |
BIN
tunictracker/tracker/static/tracker/images/sprites/stick.png
Normal file
After Width: | Height: | Size: 11 KiB |
BIN
tunictracker/tracker/static/tracker/images/sprites/tincture.png
Normal file
After Width: | Height: | Size: 26 KiB |
BIN
tunictracker/tracker/static/tracker/images/sprites/torch.png
Normal file
After Width: | Height: | Size: 12 KiB |
BIN
tunictracker/tracker/static/tracker/images/sprites/triangle.png
Normal file
After Width: | Height: | Size: 31 KiB |
BIN
tunictracker/tracker/static/tracker/images/sprites/trinket.png
Normal file
After Width: | Height: | Size: 25 KiB |
BIN
tunictracker/tracker/static/tracker/images/sprites/vaultkey.png
Normal file
After Width: | Height: | Size: 19 KiB |
BIN
tunictracker/tracker/static/tracker/images/sprites/vintage.png
Normal file
After Width: | Height: | Size: 12 KiB |
BIN
tunictracker/tracker/static/tracker/images/sprites/wand.png
Normal file
After Width: | Height: | Size: 20 KiB |
BIN
tunictracker/tracker/static/tracker/images/sprites/yellowkey.png
Normal file
After Width: | Height: | Size: 13 KiB |
@ -1,131 +0,0 @@
|
|||||||
<svg xmlns="http://www.w3.org/2000/svg">
|
|
||||||
<style>line, circle{stroke-linecap: round;stroke-width: 20;}path{stroke-linecap:
|
|
||||||
round;stroke-width: 10;}line, circle, path{stroke: black;fill: black;}</style>
|
|
||||||
<svg id="rune1" viewBox="1000 0 200 400" xmlns="http://www.w3.org/2000/svg"
|
|
||||||
x="0" y="0">
|
|
||||||
<style></style>
|
|
||||||
<line x1="0" y1="166" x2="200" y2="166" stroke="black" stroke-linecap="butt"></line>
|
|
||||||
<line x1="10" y1="70" x2="100" y2="130"></line>
|
|
||||||
<line x1="190" y1="70" x2="100" y2="130"></line>
|
|
||||||
<line x1="100" y1="130" x2="100" y2="166"></line>
|
|
||||||
<line x1="100" y1="233" x2="100" y2="353"></line>
|
|
||||||
<line x1="100" y1="10" x2="190" y2="70"></line>
|
|
||||||
<line x1="100" y1="10" x2="10" y2="70"></line>
|
|
||||||
<line x1="10" y1="70" x2="10" y2="166"></line>
|
|
||||||
<line x1="10" y1="233" x2="10" y2="293"></line>
|
|
||||||
<line x1="10" y1="293" x2="100" y2="353"></line>
|
|
||||||
</svg>
|
|
||||||
<svg id="rune2" viewBox="820 0 200 400" xmlns="http://www.w3.org/2000/svg"
|
|
||||||
x="0" y="0">
|
|
||||||
<style></style>
|
|
||||||
<line x1="0" y1="166" x2="200" y2="166" stroke="black" stroke-linecap="butt"></line>
|
|
||||||
<line x1="10" y1="70" x2="100" y2="130"></line>
|
|
||||||
<line x1="100" y1="233" x2="10" y2="293"></line>
|
|
||||||
<line x1="100" y1="233" x2="190" y2="293"></line>
|
|
||||||
<line x1="10" y1="293" x2="100" y2="353"></line>
|
|
||||||
<line x1="190" y1="293" x2="100" y2="353"></line>
|
|
||||||
</svg>
|
|
||||||
<svg id="rune3" viewBox="640 0 200 400" xmlns="http://www.w3.org/2000/svg"
|
|
||||||
x="0" y="0">
|
|
||||||
<style></style>
|
|
||||||
<line x1="0" y1="166" x2="200" y2="166" stroke="black" stroke-linecap="butt"></line>
|
|
||||||
<line x1="100" y1="10" x2="100" y2="130"></line>
|
|
||||||
<line x1="190" y1="70" x2="100" y2="130"></line>
|
|
||||||
<line x1="100" y1="130" x2="100" y2="166"></line>
|
|
||||||
<line x1="100" y1="233" x2="190" y2="293"></line>
|
|
||||||
</svg>
|
|
||||||
<svg id="rune5" viewBox="360 0 200 400" xmlns="http://www.w3.org/2000/svg"
|
|
||||||
x="0" y="0">
|
|
||||||
<style></style>
|
|
||||||
<line x1="0" y1="166" x2="200" y2="166" stroke="black" stroke-linecap="butt"></line>
|
|
||||||
<line x1="10" y1="70" x2="100" y2="130"></line>
|
|
||||||
<line x1="190" y1="70" x2="100" y2="130"></line>
|
|
||||||
<line x1="100" y1="130" x2="100" y2="166"></line>
|
|
||||||
<line x1="100" y1="233" x2="100" y2="353"></line>
|
|
||||||
<line x1="10" y1="70" x2="10" y2="166"></line>
|
|
||||||
<line x1="10" y1="233" x2="10" y2="293"></line>
|
|
||||||
<line x1="190" y1="293" x2="100" y2="353"></line>
|
|
||||||
</svg>
|
|
||||||
<svg id="rune6" viewBox="180 0 200 400" xmlns="http://www.w3.org/2000/svg"
|
|
||||||
x="0" y="0">
|
|
||||||
<style></style>
|
|
||||||
<line x1="0" y1="166" x2="200" y2="166" stroke="black" stroke-linecap="butt"></line>
|
|
||||||
<line x1="10" y1="70" x2="100" y2="130"></line>
|
|
||||||
<line x1="100" y1="233" x2="10" y2="293"></line>
|
|
||||||
<line x1="100" y1="233" x2="190" y2="293"></line>
|
|
||||||
<line x1="100" y1="10" x2="190" y2="70"></line>
|
|
||||||
<line x1="100" y1="10" x2="10" y2="70"></line>
|
|
||||||
<line x1="10" y1="70" x2="10" y2="166"></line>
|
|
||||||
<line x1="10" y1="233" x2="10" y2="293"></line>
|
|
||||||
<circle cx="100" cy="350" r="18" fill="none"></circle>
|
|
||||||
</svg>
|
|
||||||
<svg id="rune7" viewBox="0 0 200 400" xmlns="http://www.w3.org/2000/svg"
|
|
||||||
x="0" y="0">
|
|
||||||
<style></style>
|
|
||||||
<line x1="0" y1="166" x2="200" y2="166" stroke="black" stroke-linecap="butt"></line>
|
|
||||||
<line x1="10" y1="70" x2="100" y2="130"></line>
|
|
||||||
<line x1="100" y1="10" x2="100" y2="130"></line>
|
|
||||||
<line x1="100" y1="130" x2="100" y2="166"></line>
|
|
||||||
<line x1="100" y1="233" x2="100" y2="353"></line>
|
|
||||||
<line x1="100" y1="233" x2="190" y2="293"></line>
|
|
||||||
<line x1="10" y1="293" x2="100" y2="353"></line>
|
|
||||||
<line x1="190" y1="293" x2="100" y2="353"></line>
|
|
||||||
</svg>
|
|
||||||
<svg id="rune8" viewBox="-180 0 200 400" xmlns="http://www.w3.org/2000/svg"
|
|
||||||
x="0" y="0">
|
|
||||||
<style></style>
|
|
||||||
<line x1="0" y1="166" x2="200" y2="166" stroke="black" stroke-linecap="butt"></line>
|
|
||||||
<line x1="10" y1="70" x2="100" y2="130"></line>
|
|
||||||
<line x1="190" y1="70" x2="100" y2="130"></line>
|
|
||||||
<line x1="100" y1="130" x2="100" y2="166"></line>
|
|
||||||
<line x1="100" y1="233" x2="10" y2="293"></line>
|
|
||||||
<line x1="100" y1="233" x2="100" y2="353"></line>
|
|
||||||
<line x1="100" y1="233" x2="190" y2="293"></line>
|
|
||||||
<line x1="100" y1="10" x2="190" y2="70"></line>
|
|
||||||
<line x1="100" y1="10" x2="10" y2="70"></line>
|
|
||||||
</svg>
|
|
||||||
<svg id="rune9" viewBox="-360 0 200 400" xmlns="http://www.w3.org/2000/svg"
|
|
||||||
x="0" y="0">
|
|
||||||
<style></style>
|
|
||||||
<line x1="0" y1="166" x2="200" y2="166" stroke="black" stroke-linecap="butt"></line>
|
|
||||||
<line x1="10" y1="70" x2="100" y2="130"></line>
|
|
||||||
<line x1="100" y1="233" x2="10" y2="293"></line>
|
|
||||||
<line x1="100" y1="233" x2="190" y2="293"></line>
|
|
||||||
</svg>
|
|
||||||
<svg id="rune11" viewBox="-640 0 200 400"
|
|
||||||
xmlns="http://www.w3.org/2000/svg" x="0" y="0">
|
|
||||||
<style></style>
|
|
||||||
<line x1="0" y1="166" x2="200" y2="166" stroke="black" stroke-linecap="butt"></line>
|
|
||||||
<line x1="10" y1="70" x2="100" y2="130"></line>
|
|
||||||
<line x1="190" y1="70" x2="100" y2="130"></line>
|
|
||||||
<line x1="100" y1="130" x2="100" y2="166"></line>
|
|
||||||
<line x1="100" y1="233" x2="100" y2="353"></line>
|
|
||||||
<line x1="100" y1="10" x2="190" y2="70"></line>
|
|
||||||
<line x1="10" y1="70" x2="10" y2="166"></line>
|
|
||||||
<line x1="10" y1="233" x2="10" y2="293"></line>
|
|
||||||
<line x1="10" y1="293" x2="100" y2="353"></line>
|
|
||||||
<line x1="190" y1="293" x2="100" y2="353"></line>
|
|
||||||
</svg>
|
|
||||||
<svg id="rune12" viewBox="-820 0 200 400"
|
|
||||||
xmlns="http://www.w3.org/2000/svg" x="0" y="0">
|
|
||||||
<style></style>
|
|
||||||
<line x1="0" y1="166" x2="200" y2="166" stroke="black" stroke-linecap="butt"></line>
|
|
||||||
<line x1="100" y1="10" x2="100" y2="130"></line>
|
|
||||||
<line x1="190" y1="70" x2="100" y2="130"></line>
|
|
||||||
<line x1="100" y1="130" x2="100" y2="166"></line>
|
|
||||||
<line x1="100" y1="233" x2="190" y2="293"></line>
|
|
||||||
<line x1="100" y1="10" x2="190" y2="70"></line>
|
|
||||||
<line x1="100" y1="10" x2="10" y2="70"></line>
|
|
||||||
<line x1="10" y1="70" x2="10" y2="166"></line>
|
|
||||||
<line x1="10" y1="233" x2="10" y2="293"></line>
|
|
||||||
<circle cx="100" cy="350" r="18" fill="none"></circle>
|
|
||||||
</svg>
|
|
||||||
<svg id="rune13" viewBox="-1000 0 200 400"
|
|
||||||
xmlns="http://www.w3.org/2000/svg" x="0" y="0">
|
|
||||||
<style></style>
|
|
||||||
<line x1="0" y1="166" x2="200" y2="166" stroke="black" stroke-linecap="butt"></line>
|
|
||||||
<line x1="10" y1="70" x2="10" y2="166"></line>
|
|
||||||
<line x1="10" y1="233" x2="10" y2="293"></line>
|
|
||||||
<line x1="190" y1="293" x2="100" y2="353"></line>
|
|
||||||
</svg>
|
|
||||||
</svg>
|
|
Before Width: | Height: | Size: 6.7 KiB |
Before Width: | Height: | Size: 3.9 KiB |
@ -1,3 +1,3 @@
|
|||||||
<div class="h-full min-w-full p-2 rounded-md bg-[rgb(36,36,36)] bg-opacity-35 {{ extra_classes }}">
|
<div class="h-full min-w-full p-2 rounded-md bg-[rgb(36,36,36)] bg-opacity-35 {{ extra_classes }}">
|
||||||
<div class="inline align-top text-md {% comment "" %}inline-block{% endcomment %}">{{ value }}</div>
|
<div class="inline align-top text-md drop-shadow">{{ value }}</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -114,7 +114,6 @@
|
|||||||
</div>
|
</div>
|
||||||
{% else %}
|
{% else %}
|
||||||
<div id="no_data" />{% endif %}</div>
|
<div id="no_data" />{% endif %}</div>
|
||||||
{% comment %} <div class="order-1 order-2 order-3 order-4 order-5 order-6 order-7 order-8 order-9 order-10 order-11 order-12 order-13 order-14 order-15 order-16 order-17 order-18 order-19 order-20 bg-[#ffe28558]"></div> {% endcomment %}
|
|
||||||
{% include "tracker/src/index.html" with tracker_fe_link="https://gitea.werefox.cafe/ada/tunic-tracker-redux" tracker_be_link="https://github.com/spaceglace/TunicTransitionTracker" %}
|
{% include "tracker/src/index.html" with tracker_fe_link="https://gitea.werefox.cafe/ada/tunic-tracker-redux" tracker_be_link="https://github.com/spaceglace/TunicTransitionTracker" %}
|
||||||
</div>
|
</div>
|
||||||
{% endblock content %}
|
{% endblock content %}
|
||||||
|
@ -33,7 +33,7 @@ module.exports = {
|
|||||||
/* JS 1: Ignore any JavaScript in node_modules folder. */
|
/* JS 1: Ignore any JavaScript in node_modules folder. */
|
||||||
// '!../../**/node_modules',
|
// '!../../**/node_modules',
|
||||||
/* JS 2: Process all JavaScript files in the project. */
|
/* JS 2: Process all JavaScript files in the project. */
|
||||||
// '../../**/*.js',
|
'../../**/*.js',
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Python: If you use Tailwind CSS classes in Python, uncomment the following line
|
* Python: If you use Tailwind CSS classes in Python, uncomment the following line
|
||||||
|