From 2383a8ba0ad99937396230333f10c59050ddf5c5 Mon Sep 17 00:00:00 2001 From: Pinapelz Date: Wed, 27 Aug 2025 16:59:50 -0700 Subject: drs: track and display playstyle for each chart (1/2 players) --- frontend/src/assets/games/dancerush/1_p.webp | Bin 0 -> 424 bytes frontend/src/assets/games/dancerush/2_p.webp | Bin 0 -> 450 bytes .../src/components/displays/DancerushScoreDisplay.tsx | 17 ++++++++++++++--- .../src/components/displays/GenericScoreDisplay.tsx | 1 + scripts/dancerush/dancerush_play_history.js | 4 +++- 5 files changed, 18 insertions(+), 4 deletions(-) create mode 100644 frontend/src/assets/games/dancerush/1_p.webp create mode 100644 frontend/src/assets/games/dancerush/2_p.webp diff --git a/frontend/src/assets/games/dancerush/1_p.webp b/frontend/src/assets/games/dancerush/1_p.webp new file mode 100644 index 0000000..dfab896 Binary files /dev/null and b/frontend/src/assets/games/dancerush/1_p.webp differ diff --git a/frontend/src/assets/games/dancerush/2_p.webp b/frontend/src/assets/games/dancerush/2_p.webp new file mode 100644 index 0000000..72158b3 Binary files /dev/null and b/frontend/src/assets/games/dancerush/2_p.webp differ diff --git a/frontend/src/components/displays/DancerushScoreDisplay.tsx b/frontend/src/components/displays/DancerushScoreDisplay.tsx index e3bae96..908880c 100644 --- a/frontend/src/components/displays/DancerushScoreDisplay.tsx +++ b/frontend/src/components/displays/DancerushScoreDisplay.tsx @@ -3,6 +3,8 @@ import {Link} from "react-router"; import { globalSkipKeys } from "../../types/constants"; import dancerushEasyImg from "../../assets/games/dancerush/easy.webp"; import dancerushNormalImg from "../../assets/games/dancerush/normal.webp"; +import p1_img from "../../assets/games/dancerush/1_p.webp"; +import p2_img from "../../assets/games/dancerush/2_p.webp"; import SHA1 from "crypto-js/sha1"; interface Score { @@ -50,6 +52,7 @@ const DancerushScoreDisplay: React.FC = ({ bad: "Bad", miss: "Miss", username: "Username", + num_players: "Players" }; const primaryKeys = ["title", "artist", "song"]; @@ -142,13 +145,13 @@ const DancerushScoreDisplay: React.FC = ({ } if(key === "diff_lamp"){ - return + return {value} ; } if(key === "lamp"){ - return { + return { (() => { switch(value){ case 1: @@ -168,6 +171,13 @@ const DancerushScoreDisplay: React.FC = ({ }; } + if(key === "num_players"){ + return + {value + + } + + return {formatValue(value, key)}; }; @@ -248,6 +258,7 @@ const DancerushScoreDisplay: React.FC = ({ "judgements", "maxCombo", "combo", + "num_players", "timestamp", ].filter((key) => allKeys.includes(key)); @@ -307,7 +318,7 @@ const DancerushScoreDisplay: React.FC = ({ {/* Main Stats */} {mainStats.length > 0 && (
- {mainStats.slice(0, 4).map(([key, value]) => ( + {mainStats.slice(0, 5).map(([key, value]) => (

{getDisplayName(key)} diff --git a/frontend/src/components/displays/GenericScoreDisplay.tsx b/frontend/src/components/displays/GenericScoreDisplay.tsx index 255c804..4201d95 100644 --- a/frontend/src/components/displays/GenericScoreDisplay.tsx +++ b/frontend/src/components/displays/GenericScoreDisplay.tsx @@ -62,6 +62,7 @@ const ScoreDisplay: React.FC = ({ date: "Date", time: "Time", username: "Username", + num_players: "Players" }; const primaryKeys = ["title", "artist", "song"]; diff --git a/scripts/dancerush/dancerush_play_history.js b/scripts/dancerush/dancerush_play_history.js index d1db896..5cc338f 100644 --- a/scripts/dancerush/dancerush_play_history.js +++ b/scripts/dancerush/dancerush_play_history.js @@ -89,17 +89,19 @@ let mirage = { meta: { game: "DANCERUSH STARDOM", - playtype: "Single", + playtype: "Singl2e", service: "e-amusement PLAY HISTORY", }, }; const remappedList = play_hist.map((entry) => { const p_judgements = getCorrectPlayerJudgements(data.data.easite_get_playerdata.userid.code, entry) const diff = getDifficulty(entry.music_type, song_db[entry.music_id].difficulty) + const numPlayers = (entry.p1 && entry.p2) ? 2 : 1; return { title: song_db[entry.music_id].info.title_name, artist: song_db[entry.music_id].info.artist_name, diff_lamp: diff.lamp, + num_players: numPlayers, score: entry.score, lamp: entry.rank, difficulty: diff.difficulty, -- cgit v1.2.3