diff options
| author | Pinapelz <yukais@pinapelz.com> | 2025-05-08 21:41:42 -0700 |
|---|---|---|
| committer | Pinapelz <yukais@pinapelz.com> | 2025-05-08 21:41:42 -0700 |
| commit | e3af47e2d9dc91365b90fb413485f64015c00f34 (patch) | |
| tree | d6e7333a40c9774b249b43a45150b9ced1c9d380 | |
| parent | 7928d528d6d5d908f314c3c2e66b2cdf570dd4f3 (diff) | |
chuni_tachi_to_batch: seperate clear and note lamps
| -rw-r--r-- | chuni/tachi/tachi_to_tachi_pb.js | 30 | ||||
| -rw-r--r-- | chuni/tachi/tachi_to_tachi_session.js | 30 |
2 files changed, 58 insertions, 2 deletions
diff --git a/chuni/tachi/tachi_to_tachi_pb.js b/chuni/tachi/tachi_to_tachi_pb.js index b0dccb1..50734f0 100644 --- a/chuni/tachi/tachi_to_tachi_pb.js +++ b/chuni/tachi/tachi_to_tachi_pb.js @@ -46,6 +46,33 @@ javascript:void(function () { const slow = fastSlowMatch ? parseInt(fastSlowMatch[2]) : undefined; const lamp = cells[7].innerText.trim(); + let clearLamp = "FAILED"; + let noteLamp = "NONE"; + + if (lamp.includes("FULL COMBO")) { + noteLamp = "FULL COMBO"; + clearLamp = "CLEAR"; + } + if (lamp.includes("ALL JUSTICE")) { + noteLamp = "ALL JUSTICE"; + clearLamp = "CLEAR"; + } + if (lamp.includes("ALL JUSTICE CRITICAL")) { + noteLamp = "ALL JUSTICE CRITICAL"; + clearLamp = "CLEAR"; + } + if (lamp.includes("HARD")) { + clearLamp = "HARD"; + } + if (lamp.includes("BRAVE")) { + clearLamp = "BRAVE"; + } + if (lamp.includes("ABSOLUTE")) { + clearLamp = "ABSOLUTE"; + } + if (lamp.includes("CATASTROPHY")) { + clearLamp = "CATASTROPHY"; + } const rating = parseFloat(cells[8].innerText.trim()); const timestampText = cells[10].innerText.trim().split("\n"); @@ -54,7 +81,8 @@ javascript:void(function () { const score = { score: scoreValue, - lamp, + clearLamp, + noteLamp, matchType: "songTitle", difficulty, identifier: title, diff --git a/chuni/tachi/tachi_to_tachi_session.js b/chuni/tachi/tachi_to_tachi_session.js index 660002f..4791efb 100644 --- a/chuni/tachi/tachi_to_tachi_session.js +++ b/chuni/tachi/tachi_to_tachi_session.js @@ -47,13 +47,41 @@ javascript: void (function () { const parts = judgementText.split("-").map((x) => parseInt(x.trim())); const [jcrit, justice, attack, miss] = parts; const lamp = cells[5].innerText.trim(); + let clearLamp = "FAILED"; + let noteLamp = "NONE"; + + if (lamp.includes("FULL COMBO")) { + noteLamp = "FULL COMBO"; + clearLamp = "CLEAR"; + } + if (lamp.includes("ALL JUSTICE")) { + noteLamp = "ALL JUSTICE"; + clearLamp = "CLEAR"; + } + if (lamp.includes("ALL JUSTICE CRITICAL")) { + noteLamp = "ALL JUSTICE CRITICAL"; + clearLamp = "CLEAR"; + } + if (lamp.includes("HARD")) { + clearLamp = "HARD"; + } + if (lamp.includes("BRAVE")) { + clearLamp = "BRAVE"; + } + if (lamp.includes("ABSOLUTE")) { + clearLamp = "ABSOLUTE"; + } + if (lamp.includes("CATASTROPHY")) { + clearLamp = "CATASTROPHY"; + } const timestampCellLines = cells[7].innerText.trim().split("\n"); const dateString = timestampCellLines.find((line) => /\w+ \d+, \d+/.test(line)) || ""; const timeAchieved = dateString ? new Date(dateString).getTime() : 0; results.scores.push({ score: scoreValue, - lamp, + clearLamp, + noteLamp, matchType: "songTitle", difficulty, identifier: title, |
