mirror of
https://dev.s-ul.net/Galexion/MaiMaiDXNet.git
synced 2024-11-27 21:50:48 +01:00
Judgement Details now done
This commit is contained in:
parent
282a54a6b4
commit
816ac41e7c
@ -201,8 +201,6 @@ async function userPlayLogFormatter(div, loadMoreButton) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Get the user's play log data and music IDs.
|
// Get the user's play log data and music IDs.
|
||||||
console.log(UserPlayLogData)
|
|
||||||
const musicIds = UserPlayLogData.map(score => score.music_id);
|
|
||||||
const musicData = await musicMetadata();
|
const musicData = await musicMetadata();
|
||||||
|
|
||||||
let errorIncrement = 0;
|
let errorIncrement = 0;
|
||||||
@ -224,7 +222,6 @@ async function userPlayLogFormatter(div, loadMoreButton) {
|
|||||||
errorIncrement++
|
errorIncrement++
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
console.log(song)
|
|
||||||
// Song Title
|
// Song Title
|
||||||
tasGrid.innerHTML = `
|
tasGrid.innerHTML = `
|
||||||
<div class="score-title">
|
<div class="score-title">
|
||||||
@ -329,8 +326,16 @@ async function userPlayLogFormatter(div, loadMoreButton) {
|
|||||||
let summary = document.createElement('summary');
|
let summary = document.createElement('summary');
|
||||||
summary.textContent = "Details";
|
summary.textContent = "Details";
|
||||||
const detailsGridDiv = document.createElement('div');
|
const detailsGridDiv = document.createElement('div');
|
||||||
|
|
||||||
|
/* title to table */
|
||||||
|
let detailsTable = document.createElement('table');
|
||||||
|
await createtTable(detailsTable, score)
|
||||||
|
|
||||||
|
|
||||||
|
detailsGridDiv.append(detailsTable);
|
||||||
detailsBlock.append(detailsGridDiv);
|
detailsBlock.append(detailsGridDiv);
|
||||||
scoreDiv.append(detailsBlock);
|
scoreDiv.append(detailsBlock);
|
||||||
|
|
||||||
/* setting stuff up */
|
/* setting stuff up */
|
||||||
|
|
||||||
|
|
||||||
@ -357,6 +362,118 @@ async function userPlayLogFormatter(div, loadMoreButton) {
|
|||||||
// If there are no more scores to load, hide the "Load More" button.
|
// If there are no more scores to load, hide the "Load More" button.
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function createtTable(detailsTable, score) { //thing needs to be seperated or else it will keep creating the 2nd recent score. beats me. \-(*-*)-/
|
||||||
|
return new Promise((resolve, reject) => {
|
||||||
|
let hrow = detailsTable.insertRow(0);
|
||||||
|
let judgementType = ["Critical Perfect", "Perfect", "Great", "Good", "Miss"];
|
||||||
|
let noteType = ["Tap", "Hold", "Slide", "Break", "Touch"];
|
||||||
|
let noteJudgement = [
|
||||||
|
[
|
||||||
|
score.tapCriticalPerfect,
|
||||||
|
score.tapPerfect,
|
||||||
|
score.tapGreat,
|
||||||
|
score.tapGood,
|
||||||
|
score.tapMiss,
|
||||||
|
],
|
||||||
|
[
|
||||||
|
score.holdCriticalPerfect,
|
||||||
|
score.holdPerfect,
|
||||||
|
score.holdGreat,
|
||||||
|
score.holdGood,
|
||||||
|
score.holdMiss,
|
||||||
|
],
|
||||||
|
[
|
||||||
|
score.slideCriticalPerfect,
|
||||||
|
score.slidePerfect,
|
||||||
|
score.slideGreat,
|
||||||
|
score.slideGood,
|
||||||
|
score.slideMiss,
|
||||||
|
],
|
||||||
|
[
|
||||||
|
score.breakCriticalPerfect,
|
||||||
|
score.breakPerfect,
|
||||||
|
score.breakGreat,
|
||||||
|
score.breakGood,
|
||||||
|
score.breakMiss,
|
||||||
|
],
|
||||||
|
[
|
||||||
|
score.touchCriticalPerfect,
|
||||||
|
score.touchPerfect,
|
||||||
|
score.touchGreat,
|
||||||
|
score.touchGood,
|
||||||
|
score.touchMiss,
|
||||||
|
]
|
||||||
|
]
|
||||||
|
if (score.isCriticalDisp == 1) { // Perform a check to see if critPerfects are required
|
||||||
|
let blankCell = hrow.insertCell(0);
|
||||||
|
blankCell.innerText = ""
|
||||||
|
for (i = 0; i < judgementType.length; i++) {
|
||||||
|
let cell = hrow.insertCell(i + 1);
|
||||||
|
cell.innerText = judgementType[i];
|
||||||
|
}
|
||||||
|
|
||||||
|
if (score.isTouch == 1) { // Check if Touch Notes are Needed.
|
||||||
|
let judgementCount = (judgementType.length - 1) + score.isCriticalDisp;
|
||||||
|
for (i = 0; i < noteType.length; i++) {
|
||||||
|
let row = detailsTable.insertRow(i);
|
||||||
|
let blankCell = row.insertCell(0);
|
||||||
|
blankCell.innerText = noteType[i]
|
||||||
|
for (ii = 0; ii < judgementCount; ii++) {
|
||||||
|
let cell = row.insertCell(ii + 1);
|
||||||
|
cell.innerText = noteJudgement[i][ii]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
let judgementCount = (judgementType.length - 1) + score.isCriticalDisp;
|
||||||
|
for (i = 0; i < noteType.length - 1; i++) {
|
||||||
|
let row = detailsTable.insertRow(i);
|
||||||
|
let blankCell = row.insertCell(0);
|
||||||
|
blankCell.innerText = noteType[i]
|
||||||
|
for (ii = 0; ii < judgementCount; ii++) {
|
||||||
|
let cell = row.insertCell(ii + 1);
|
||||||
|
cell.innerText = noteJudgement[i][ii]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else if (score.isCriticalDisp == 0) {
|
||||||
|
let blankCell = hrow.insertCell(0);
|
||||||
|
blankCell.innerText = ""
|
||||||
|
for (i = 0; i < judgementType.length-1; i++) {
|
||||||
|
let cell = hrow.insertCell(i+1);
|
||||||
|
cell.innerText = judgementType[i+1];
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
if (score.isTouch == 1) { // Check if Touch Notes are Needed.
|
||||||
|
let judgementCount = (judgementType.length - 1) + score.isCriticalDisp;
|
||||||
|
for (i = 0; i < noteType.length; i++) {
|
||||||
|
let row = detailsTable.insertRow(i);
|
||||||
|
let blankCell = row.insertCell(0);
|
||||||
|
blankCell.innerText = noteType[i]
|
||||||
|
for (ii = 0; ii < judgementCount; ii++) {
|
||||||
|
let cell = row.insertCell(ii+1);
|
||||||
|
cell.innerText = noteJudgement[i][ii+1]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
let judgementCount = (judgementType.length - 1) + score.isCriticalDisp;
|
||||||
|
for (i = 0; i < noteType.length; i++) {
|
||||||
|
let row = detailsTable.insertRow(i);
|
||||||
|
let blankCell = row.insertCell(0);
|
||||||
|
blankCell.innerText = noteType[i]
|
||||||
|
for (ii = 0; ii < judgementCount-1; ii++) {
|
||||||
|
let cell = row.insertCell(ii+1);
|
||||||
|
cell.innerText = noteJudgement[i][ii+1]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
resolve()
|
||||||
|
});
|
||||||
|
} // this was 100 lines of mehness, this shouldnt have taken this long and i probably could have had it at 50 to 75 lines of code instead but i honestly am tired.
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/* User Area Status Renderer */
|
/* User Area Status Renderer */
|
||||||
|
|
||||||
async function userAreaStatusFormatter(div) {
|
async function userAreaStatusFormatter(div) {
|
||||||
@ -367,7 +484,6 @@ async function userAreaStatusFormatter(div) {
|
|||||||
for (let i = UserAreaData.length - 1; i >= 0; i--) {
|
for (let i = UserAreaData.length - 1; i >= 0; i--) {
|
||||||
const area = UserAreaData[i]; // get the area
|
const area = UserAreaData[i]; // get the area
|
||||||
const mapInfo = await getReleventInformationMap(mapMetadata, area.map_id || area.mapId); // get the relevent Map Information
|
const mapInfo = await getReleventInformationMap(mapMetadata, area.map_id || area.mapId); // get the relevent Map Information
|
||||||
console.log(mapInfo)
|
|
||||||
if (!mapInfo) continue // continue if mapInfo cant be found for a map
|
if (!mapInfo) continue // continue if mapInfo cant be found for a map
|
||||||
const areaGrid = document.createElement('div'); // create the Grid for the area inforrmation to go
|
const areaGrid = document.createElement('div'); // create the Grid for the area inforrmation to go
|
||||||
areaGrid.classList.add('areaGrid'); // add the appropriate class
|
areaGrid.classList.add('areaGrid'); // add the appropriate class
|
||||||
@ -390,7 +506,6 @@ async function userAreaStatusFormatter(div) {
|
|||||||
} else if (area.distance !== 0) {
|
} else if (area.distance !== 0) {
|
||||||
let diffrence = unlock.Distance - area.distance
|
let diffrence = unlock.Distance - area.distance
|
||||||
if (diffrence === 0) {
|
if (diffrence === 0) {
|
||||||
console.log(unlock)
|
|
||||||
areaKilometers.innerHTML = areaKilometers.innerHTML + ` Task Track!<br>Clear ${unlock.TreasureId.str} to continue!`;
|
areaKilometers.innerHTML = areaKilometers.innerHTML + ` Task Track!<br>Clear ${unlock.TreasureId.str} to continue!`;
|
||||||
} else {
|
} else {
|
||||||
areaKilometers.innerHTML = areaKilometers.innerHTML + ` ${diffrence} KM until Next Reward.`;
|
areaKilometers.innerHTML = areaKilometers.innerHTML + ` ${diffrence} KM until Next Reward.`;
|
||||||
@ -420,10 +535,8 @@ async function userImageFormatter(div) {
|
|||||||
let memorialImageList = await imageList(); // get image list
|
let memorialImageList = await imageList(); // get image list
|
||||||
let imageInfoDiv = document.getElementById("image-info-header-div");
|
let imageInfoDiv = document.getElementById("image-info-header-div");
|
||||||
imageInfoDiv.innerHTML = "";
|
imageInfoDiv.innerHTML = "";
|
||||||
console.log("Attempting to search list with EXT_ID " + ext_id.toString())
|
|
||||||
for (var i = 0; i < memorialImageList.length; i++) { // for each name in the array
|
for (var i = 0; i < memorialImageList.length; i++) { // for each name in the array
|
||||||
let imageName = memorialImageList[i]
|
let imageName = memorialImageList[i]
|
||||||
console.log(imageName)
|
|
||||||
if (imageName.startsWith(ext_id.toString())) { // Check if the External ID matches the ID within the photo at the beginning
|
if (imageName.startsWith(ext_id.toString())) { // Check if the External ID matches the ID within the photo at the beginning
|
||||||
let memorialImage = document.createElement('img');
|
let memorialImage = document.createElement('img');
|
||||||
memorialImage.classList.add('memorialImage');
|
memorialImage.classList.add('memorialImage');
|
||||||
|
@ -381,4 +381,25 @@ img.fullSync-image {
|
|||||||
grid-template-areas:
|
grid-template-areas:
|
||||||
"timingTable timingTable"
|
"timingTable timingTable"
|
||||||
"maxCombo maxSync";
|
"maxCombo maxSync";
|
||||||
|
}
|
||||||
|
|
||||||
|
/* I really could'nt be asked to make css code, so i asked clyde instead. ty clyde. */
|
||||||
|
|
||||||
|
table {
|
||||||
|
border-collapse: collapse;
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
th, td {
|
||||||
|
border: 1px solid black;
|
||||||
|
padding: 8px;
|
||||||
|
text-align: left;
|
||||||
|
}
|
||||||
|
|
||||||
|
th {
|
||||||
|
background-color: #f2f2f2;
|
||||||
|
}
|
||||||
|
|
||||||
|
tr:nth-child(even) {
|
||||||
|
background-color: #dddddd;
|
||||||
}
|
}
|
Loading…
Reference in New Issue
Block a user