返回提交历史
Modified
static/webui/script.js
+78
-75
XFEstudio/XFESpaceNinjaServer
fix(webui): error on unrevealed riven mod (#773)
5cbececb
代码差异
1 个文件
+78
-75
@@ -327,90 +327,93 @@ function updateInventory() {
327
327
if (item.ItemType.substr(0, 32) == "/Lotus/Upgrades/Mods/Randomized/") {
328
328
const rivenType = item.ItemType.substr(32);
329
329
const fingerprint = JSON.parse(item.UpgradeFingerprint);
330
331
const tr = document.createElement("tr");
332
{
333
const td = document.createElement("td");
334
td.textContent = itemMap[fingerprint.compat]?.name ?? fingerprint.compat;
335
td.textContent += " " + RivenParser.parseRiven(rivenType, fingerprint, 1).name;
336
td.innerHTML += " <span title='Number of buffs'>▲ " + fingerprint.buffs.length + "</span>";
337
td.innerHTML += " <span title='Number of curses'>▼ " + fingerprint.curses.length + "</span>";
338
td.innerHTML +=
339
" <span title='Number of rerolls'>⟳ " + parseInt(fingerprint.rerolls) + "</span>";
340
tr.appendChild(td);
341
}
342
{
343
const td = document.createElement("td");
344
td.classList = "text-end";
330
if (fingerprint.buffs) {
331
// Riven has been revealed?
332
const tr = document.createElement("tr");
345
333
{
346
const a = document.createElement("a");
347
a.href =
348
"riven-tool/#" +
349
encodeURIComponent(
350
JSON.stringify({
351
rivenType: rivenType,
352
omegaAttenuation: 1,
353
fingerprint: fingerprint
354
})
355
);
356
a.target = "_blank";
357
a.title = "View Stats";
358
a.innerHTML = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--!Font Awesome Free 6.5.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--><path d="M160 80c0-26.5 21.5-48 48-48h32c26.5 0 48 21.5 48 48V432c0 26.5-21.5 48-48 48H208c-26.5 0-48-21.5-48-48V80zM0 272c0-26.5 21.5-48 48-48H80c26.5 0 48 21.5 48 48V432c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V272zM368 96h32c26.5 0 48 21.5 48 48V432c0 26.5-21.5 48-48 48H368c-26.5 0-48-21.5-48-48V144c0-26.5 21.5-48 48-48z"/></svg>`;
359
td.appendChild(a);
334
const td = document.createElement("td");
335
td.textContent = itemMap[fingerprint.compat]?.name ?? fingerprint.compat;
336
td.textContent += " " + RivenParser.parseRiven(rivenType, fingerprint, 1).name;
337
td.innerHTML += " <span title='Number of buffs'>▲ " + fingerprint.buffs.length + "</span>";
338
td.innerHTML +=
339
" <span title='Number of curses'>▼ " + fingerprint.curses.length + "</span>";
340
td.innerHTML +=
341
" <span title='Number of rerolls'>⟳ " + parseInt(fingerprint.rerolls) + "</span>";
342
tr.appendChild(td);
360
343
}
361
344
{
362
const a = document.createElement("a");
363
a.href = "#";
364
a.onclick = function (event) {
365
event.preventDefault();
366
disposeOfGear("Upgrades", item.ItemId.$oid);
367
};
368
a.title = "Remove";
369
a.innerHTML = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--!Font Awesome Free 6.5.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--><path d="M135.2 17.7L128 32H32C14.3 32 0 46.3 0 64S14.3 96 32 96H416c17.7 0 32-14.3 32-32s-14.3-32-32-32H320l-7.2-14.3C307.4 6.8 296.3 0 284.2 0H163.8c-12.1 0-23.2 6.8-28.6 17.7zM416 128H32L53.2 467c1.6 25.3 22.6 45 47.9 45H346.9c25.3 0 46.3-19.7 47.9-45L416 128z"/></svg>`;
370
td.appendChild(a);
345
const td = document.createElement("td");
346
td.classList = "text-end";
347
{
348
const a = document.createElement("a");
349
a.href =
350
"riven-tool/#" +
351
encodeURIComponent(
352
JSON.stringify({
353
rivenType: rivenType,
354
omegaAttenuation: 1,
355
fingerprint: fingerprint
356
})
357
);
358
a.target = "_blank";
359
a.title = "View Stats";
360
a.innerHTML = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--!Font Awesome Free 6.5.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--><path d="M160 80c0-26.5 21.5-48 48-48h32c26.5 0 48 21.5 48 48V432c0 26.5-21.5 48-48 48H208c-26.5 0-48-21.5-48-48V80zM0 272c0-26.5 21.5-48 48-48H80c26.5 0 48 21.5 48 48V432c0 26.5-21.5 48-48 48H48c-26.5 0-48-21.5-48-48V272zM368 96h32c26.5 0 48 21.5 48 48V432c0 26.5-21.5 48-48 48H368c-26.5 0-48-21.5-48-48V144c0-26.5 21.5-48 48-48z"/></svg>`;
361
td.appendChild(a);
362
}
363
{
364
const a = document.createElement("a");
365
a.href = "#";
366
a.onclick = function (event) {
367
event.preventDefault();
368
disposeOfGear("Upgrades", item.ItemId.$oid);
369
};
370
a.title = "Remove";
371
a.innerHTML = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--!Font Awesome Free 6.5.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--><path d="M135.2 17.7L128 32H32C14.3 32 0 46.3 0 64S14.3 96 32 96H416c17.7 0 32-14.3 32-32s-14.3-32-32-32H320l-7.2-14.3C307.4 6.8 296.3 0 284.2 0H163.8c-12.1 0-23.2 6.8-28.6 17.7zM416 128H32L53.2 467c1.6 25.3 22.6 45 47.9 45H346.9c25.3 0 46.3-19.7 47.9-45L416 128z"/></svg>`;
372
td.appendChild(a);
373
}
374
tr.appendChild(td);
371
375
}
372
tr.appendChild(td);
376
document.getElementById("riven-list").appendChild(tr);
377
return;
373
378
}
374
document.getElementById("riven-list").appendChild(tr);
375
} else {
376
const tr = document.createElement("tr");
377
const rank = parseInt(JSON.parse(item.UpgradeFingerprint).lvl);
378
const maxRank = itemMap[item.ItemType]?.fusionLimit ?? 5;
379
{
380
const td = document.createElement("td");
381
td.textContent = itemMap[item.ItemType]?.name ?? item.ItemType;
382
td.innerHTML += " <span title='Rank'>★ " + rank + "/" + maxRank + "</span>";
383
tr.appendChild(td);
379
}
380
const tr = document.createElement("tr");
381
const rank = parseInt(JSON.parse(item.UpgradeFingerprint).lvl);
382
const maxRank = itemMap[item.ItemType]?.fusionLimit ?? 5;
383
{
384
const td = document.createElement("td");
385
td.textContent = itemMap[item.ItemType]?.name ?? item.ItemType;
386
td.innerHTML += " <span title='Rank'>★ " + rank + "/" + maxRank + "</span>";
387
tr.appendChild(td);
388
}
389
{
390
const td = document.createElement("td");
391
td.classList = "text-end";
392
if (rank < maxRank) {
393
const a = document.createElement("a");
394
a.href = "#";
395
a.onclick = function (event) {
396
event.preventDefault();
397
setFingerprint(item.ItemType, item.ItemId, { lvl: maxRank });
398
};
399
a.title = "Max Rank";
400
a.innerHTML = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512"><!--!Font Awesome Free 6.5.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--><path d="M214.6 41.4c-12.5-12.5-32.8-12.5-45.3 0l-160 160c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L160 141.2V448c0 17.7 14.3 32 32 32s32-14.3 32-32V141.2L329.4 246.6c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3l-160-160z"/></svg>`;
401
td.appendChild(a);
384
402
}
385
403
{
386
const td = document.createElement("td");
387
td.classList = "text-end";
388
if (rank < maxRank) {
389
const a = document.createElement("a");
390
a.href = "#";
391
a.onclick = function (event) {
392
event.preventDefault();
393
setFingerprint(item.ItemType, item.ItemId, { lvl: maxRank });
394
};
395
a.title = "Max Rank";
396
a.innerHTML = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512"><!--!Font Awesome Free 6.5.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--><path d="M214.6 41.4c-12.5-12.5-32.8-12.5-45.3 0l-160 160c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0L160 141.2V448c0 17.7 14.3 32 32 32s32-14.3 32-32V141.2L329.4 246.6c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3l-160-160z"/></svg>`;
397
td.appendChild(a);
398
}
399
{
400
const a = document.createElement("a");
401
a.href = "#";
402
a.onclick = function (event) {
403
event.preventDefault();
404
disposeOfGear("Upgrades", item.ItemId.$oid);
405
};
406
a.title = "Remove";
407
a.innerHTML = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--!Font Awesome Free 6.5.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--><path d="M135.2 17.7L128 32H32C14.3 32 0 46.3 0 64S14.3 96 32 96H416c17.7 0 32-14.3 32-32s-14.3-32-32-32H320l-7.2-14.3C307.4 6.8 296.3 0 284.2 0H163.8c-12.1 0-23.2 6.8-28.6 17.7zM416 128H32L53.2 467c1.6 25.3 22.6 45 47.9 45H346.9c25.3 0 46.3-19.7 47.9-45L416 128z"/></svg>`;
408
td.appendChild(a);
409
}
410
tr.appendChild(td);
404
const a = document.createElement("a");
405
a.href = "#";
406
a.onclick = function (event) {
407
event.preventDefault();
408
disposeOfGear("Upgrades", item.ItemId.$oid);
409
};
410
a.title = "Remove";
411
a.innerHTML = `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--!Font Awesome Free 6.5.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--><path d="M135.2 17.7L128 32H32C14.3 32 0 46.3 0 64S14.3 96 32 96H416c17.7 0 32-14.3 32-32s-14.3-32-32-32H320l-7.2-14.3C307.4 6.8 296.3 0 284.2 0H163.8c-12.1 0-23.2 6.8-28.6 17.7zM416 128H32L53.2 467c1.6 25.3 22.6 45 47.9 45H346.9c25.3 0 46.3-19.7 47.9-45L416 128z"/></svg>`;
412
td.appendChild(a);
411
413
}
412
document.getElementById("mods-list").appendChild(tr);
414
tr.appendChild(td);
413
415
}
416
document.getElementById("mods-list").appendChild(tr);
414
417
});
415
418
data.RawUpgrades.forEach(item => {
416
419
if (item.ItemCount > 0) {