From d1ec47f421ea8b573aaae547c382afd74e548ed2 Mon Sep 17 00:00:00 2001 From: zkldi Date: Sun, 2 May 2021 17:55:12 +0100 Subject: [PATCH] indexitypify game-classes.ts --- common/js/game-classes.d.ts | 594 +--------------------------------- common/js/game-classes.js | 167 ++++++++-- common/js/game-classes.js.map | 2 +- common/src/game-classes.ts | 195 +++++++++-- 4 files changed, 319 insertions(+), 639 deletions(-) diff --git a/common/js/game-classes.d.ts b/common/js/game-classes.d.ts index f00f02e0e..e1c8bfe70 100644 --- a/common/js/game-classes.d.ts +++ b/common/js/game-classes.d.ts @@ -1,587 +1,16 @@ -export declare const gameClassValues: { - iidx: { - SP: { - dan: { - kaiden: { - display: string; - mouseover: string; - index: number; - }; - chuuden: { - display: string; - mouseover: string; - index: number; - }; - 10: { - display: string; - mouseover: string; - index: number; - }; - 9: { - display: string; - mouseover: string; - index: number; - }; - 8: { - display: string; - mouseover: string; - index: number; - }; - 7: { - display: string; - mouseover: string; - index: number; - }; - 6: { - display: string; - mouseover: string; - index: number; - }; - 5: { - display: string; - mouseover: string; - index: number; - }; - 4: { - display: string; - mouseover: string; - index: number; - }; - 3: { - display: string; - mouseover: string; - index: number; - }; - 2: { - display: string; - mouseover: string; - index: number; - }; - 1: { - display: string; - mouseover: string; - index: number; - }; - "1kyu": { - display: string; - mouseover: string; - index: number; - }; - "2kyu": { - display: string; - mouseover: string; - index: number; - }; - "3kyu": { - display: string; - mouseover: string; - index: number; - }; - "4kyu": { - display: string; - mouseover: string; - index: number; - }; - "5kyu": { - display: string; - mouseover: string; - index: number; - }; - "6kyu": { - display: string; - mouseover: string; - index: number; - }; - "7kyu": { - display: string; - mouseover: string; - index: number; - }; - }; - }; - DP: { - dan: { - kaiden: { - display: string; - mouseover: string; - index: number; - }; - chuuden: { - display: string; - mouseover: string; - index: number; - }; - 10: { - display: string; - mouseover: string; - index: number; - }; - 9: { - display: string; - mouseover: string; - index: number; - }; - 8: { - display: string; - mouseover: string; - index: number; - }; - 7: { - display: string; - mouseover: string; - index: number; - }; - 6: { - display: string; - mouseover: string; - index: number; - }; - 5: { - display: string; - mouseover: string; - index: number; - }; - 4: { - display: string; - mouseover: string; - index: number; - }; - 3: { - display: string; - mouseover: string; - index: number; - }; - 2: { - display: string; - mouseover: string; - index: number; - }; - 1: { - display: string; - mouseover: string; - index: number; - }; - "1kyu": { - display: string; - mouseover: string; - index: number; - }; - "2kyu": { - display: string; - mouseover: string; - index: number; - }; - "3kyu": { - display: string; - mouseover: string; - index: number; - }; - "4kyu": { - display: string; - mouseover: string; - index: number; - }; - "5kyu": { - display: string; - mouseover: string; - index: number; - }; - "6kyu": { - display: string; - mouseover: string; - index: number; - }; - "7kyu": { - display: string; - mouseover: string; - index: number; - }; - }; - }; +import { Game, integer, Playtypes } from "./types"; +declare type ClassData = Record; +interface ClassInfo { + display: string; + mouseover: string; + index: integer; +} +declare type GameClasses = { + [G in Game]: { + [P in Playtypes[G]]: Record; }; - ddr: { - SP: { - dan: {}; - }; - DP: { - dan: {}; - }; - }; - sdvx: { - Single: { - dan: { - inf: { - display: string; - mouseover: string; - index: number; - }; - 11: { - display: string; - mouseover: string; - index: number; - }; - 10: { - display: string; - mouseover: string; - index: number; - }; - 9: { - display: string; - mouseover: string; - index: number; - }; - 8: { - display: string; - mouseover: string; - index: number; - }; - 7: { - display: string; - mouseover: string; - index: number; - }; - 6: { - display: string; - mouseover: string; - index: number; - }; - 5: { - display: string; - mouseover: string; - index: number; - }; - 4: { - display: string; - mouseover: string; - index: number; - }; - 3: { - display: string; - mouseover: string; - index: number; - }; - 2: { - display: string; - mouseover: string; - index: number; - }; - 1: { - display: string; - mouseover: string; - index: number; - }; - }; - }; - }; - popn: {}; - museca: {}; - jubeat: {}; - bms: { - "7K": { - genocideDan: { - overjoy: { - display: string; - mouseover: string; - }; - kaiden: { - display: string; - mouseover: string; - }; - 10: { - display: string; - mouseover: string; - }; - 9: { - display: string; - mouseover: string; - }; - 8: { - display: string; - mouseover: string; - }; - 7: { - display: string; - mouseover: string; - }; - 6: { - display: string; - mouseover: string; - }; - 5: { - display: string; - mouseover: string; - }; - 4: { - display: string; - mouseover: string; - }; - 3: { - display: string; - mouseover: string; - }; - 2: { - display: string; - mouseover: string; - }; - 1: { - display: string; - mouseover: string; - }; - }; - stDan: { - st11: { - display: string; - mouseover: string; - }; - st10: { - display: string; - mouseover: string; - }; - st9: { - display: string; - mouseover: string; - }; - st8: { - display: string; - mouseover: string; - }; - st7: { - display: string; - mouseover: string; - }; - st6: { - display: string; - mouseover: string; - }; - st5: { - display: string; - mouseover: string; - }; - st4: { - display: string; - mouseover: string; - }; - st3: { - display: string; - mouseover: string; - }; - st2: { - display: string; - mouseover: string; - }; - st1: { - display: string; - mouseover: string; - }; - st0: { - display: string; - mouseover: string; - }; - sl12: { - display: string; - mouseover: string; - }; - sl11: { - display: string; - mouseover: string; - }; - sl10: { - display: string; - mouseover: string; - }; - sl9: { - display: string; - mouseover: string; - }; - sl8: { - display: string; - mouseover: string; - }; - sl7: { - display: string; - mouseover: string; - }; - sl6: { - display: string; - mouseover: string; - }; - sl5: { - display: string; - mouseover: string; - }; - sl4: { - display: string; - mouseover: string; - }; - sl3: { - display: string; - mouseover: string; - }; - sl2: { - display: string; - mouseover: string; - }; - sl1: { - display: string; - mouseover: string; - }; - sl0: { - display: string; - mouseover: string; - }; - }; - }; - }; - chunithm: {}; - gitadora: { - Gita: { - skillColour: { - rainbow: { - display: string; - mouseover: string; - }; - gold: { - display: string; - mouseover: string; - }; - silver: { - display: string; - mouseover: string; - }; - bronze: { - display: string; - mouseover: string; - }; - redgradient: { - display: string; - mouseover: string; - }; - red: { - display: string; - mouseover: string; - }; - purplegradient: { - display: string; - mouseover: string; - }; - purple: { - display: string; - mouseover: string; - }; - bluegradient: { - display: string; - mouseover: string; - }; - blue: { - display: string; - mouseover: string; - }; - greengradient: { - display: string; - mouseover: string; - }; - green: { - display: string; - mouseover: string; - }; - yellowgradient: { - display: string; - mouseover: string; - }; - yellow: { - display: string; - mouseover: string; - }; - orangegradient: { - display: string; - mouseover: string; - }; - orange: { - display: string; - mouseover: string; - }; - white: { - display: string; - mouseover: string; - }; - }; - }; - Dora: { - skillColour: { - rainbow: { - display: string; - mouseover: string; - }; - gold: { - display: string; - mouseover: string; - }; - silver: { - display: string; - mouseover: string; - }; - bronze: { - display: string; - mouseover: string; - }; - redgradient: { - display: string; - mouseover: string; - }; - red: { - display: string; - mouseover: string; - }; - purplegradient: { - display: string; - mouseover: string; - }; - purple: { - display: string; - mouseover: string; - }; - bluegradient: { - display: string; - mouseover: string; - }; - blue: { - display: string; - mouseover: string; - }; - greengradient: { - display: string; - mouseover: string; - }; - green: { - display: string; - mouseover: string; - }; - yellowgradient: { - display: string; - mouseover: string; - }; - yellow: { - display: string; - mouseover: string; - }; - orangegradient: { - display: string; - mouseover: string; - }; - orange: { - display: string; - mouseover: string; - }; - white: { - display: string; - mouseover: string; - }; - }; - }; - }; - maimai: {}; - usc: {}; }; +export declare const gameClassValues: GameClasses; export declare const defaultGameClasses: { iidx: { SP: string; @@ -610,3 +39,4 @@ export declare const defaultGameClasses: { maimai: {}; usc: {}; }; +export {}; diff --git a/common/js/game-classes.js b/common/js/game-classes.js index 674bde934..7e4cc5d8e 100644 --- a/common/js/game-classes.js +++ b/common/js/game-classes.js @@ -7,97 +7,97 @@ const __internalIIDXDans = { kaiden: { display: "皆伝", mouseover: "Kaiden", - index: 12, + index: 18, }, chuuden: { display: "中伝", mouseover: "Chuuden", - index: 11, + index: 17, }, 10: { display: "十段", mouseover: "10th Dan", - index: 10, + index: 16, }, 9: { display: "九段", mouseover: "9th Dan", - index: 9, + index: 15, }, 8: { display: "八段", mouseover: "8th Dan", - index: 8, + index: 14, }, 7: { display: "七段", mouseover: "7th Dan", - index: 7, + index: 13, }, 6: { display: "六段", mouseover: "6th Dan", - index: 6, + index: 12, }, 5: { display: "五段", mouseover: "5th Dan", - index: 5, + index: 11, }, 4: { display: "四段", mouseover: "4th Dan", - index: 4, + index: 10, }, 3: { display: "三段", mouseover: "3rd Dan", - index: 3, + index: 9, }, 2: { display: "二段", mouseover: "2nd Dan", - index: 2, + index: 8, }, 1: { display: "初段", mouseover: "1st Dan", - index: 1, + index: 7, }, "1kyu": { display: "一級", mouseover: "1st Kyu", - index: -1, + index: 6, }, "2kyu": { display: "二級", mouseover: "2nd Kyu", - index: -2, + index: 5, }, "3kyu": { display: "三級", mouseover: "3rd Kyu", - index: -3, + index: 4, }, "4kyu": { display: "四級", mouseover: "4th Kyu", - index: -4, + index: 3, }, "5kyu": { display: "五級", mouseover: "5th Kyu", - index: -5, + index: 2, }, "6kyu": { display: "六級", mouseover: "6th Kyu", - index: -6, + index: 1, }, "7kyu": { display: "七級", mouseover: "7th Kyu", - index: -7, + index: 0, }, }; const __internalSDVXDans = { @@ -168,222 +168,326 @@ const __internalGitadoraColours = { rainbow: { display: "虹", mouseover: "Rainbow", + index: 16, }, gold: { display: "金", mouseover: "Gold", + index: 15, }, silver: { display: "銀", mouseover: "Silver", + index: 14, }, bronze: { display: "銅", mouseover: "Bronze", + index: 13, }, redgradient: { display: "赤グラ", mouseover: "Red Gradient", + index: 12, }, red: { display: "赤", mouseover: "Red", + index: 11, }, purplegradient: { display: "紫グラ", mouseover: "Purple Gradient", + index: 10, }, purple: { display: "紫", mouseover: "Purple", + index: 9, }, bluegradient: { display: "青グラ", mouseover: "Blue Gradient", + index: 8, }, blue: { display: "青", mouseover: "Blue", + index: 7, }, greengradient: { display: "緑グラ", mouseover: "Green Gradient", + index: 6, }, green: { display: "緑", mouseover: "Green", + index: 5, }, yellowgradient: { display: "黄グラ", mouseover: "Yellow Gradient", + index: 4, }, yellow: { display: "黄", mouseover: "Yellow", + index: 3, }, orangegradient: { display: "橙グラ", mouseover: "Orange Gradient", + index: 2, }, orange: { display: "橙", mouseover: "Orange", + index: 1, }, white: { display: "白", mouseover: "White", + index: 0, }, }; const __internalGenocideDans = { overjoy: { display: "(^^)", mouseover: "Overjoy", + index: 22, }, kaiden: { display: "★★", mouseover: "Insane Kaiden", + index: 21, }, 10: { display: "★10", mouseover: "Insane 10th Dan", + index: 20, }, 9: { display: "★9", mouseover: "Insane 9th Dan", + index: 19, }, 8: { display: "★8", mouseover: "Insane 8th Dan", + index: 18, }, 7: { display: "★7", mouseover: "Insane 7th Dan", + index: 17, }, 6: { display: "★6", mouseover: "Insane 6th Dan", + index: 16, }, 5: { display: "★5", mouseover: "Insane 5th Dan", + index: 15, }, 4: { display: "★4", mouseover: "Insane 4th Dan", + index: 14, }, 3: { display: "★3", mouseover: "Insane 3rd Dan", + index: 13, }, 2: { display: "★2", mouseover: "Insane 2nd Dan", + index: 12, }, 1: { display: "★1", mouseover: "Insane 1st Dan", + index: 11, + }, + normal10: { + display: "☆10", + mouseover: "Normal 10th Dan", + index: 10, + }, + normal9: { + display: "☆9", + mouseover: "Normal 9th Dan", + index: 9, + }, + normal8: { + display: "☆8", + mouseover: "Normal 8th Dan", + index: 8, + }, + normal7: { + display: "☆7", + mouseover: "Normal 7th Dan", + index: 7, + }, + normal6: { + display: "☆6", + mouseover: "Normal 6th Dan", + index: 6, + }, + normal5: { + display: "☆5", + mouseover: "Normal 5th Dan", + index: 5, + }, + normal4: { + display: "☆4", + mouseover: "Normal 4th Dan", + index: 4, + }, + normal3: { + display: "☆3", + mouseover: "Normal 3rd Dan", + index: 3, + }, + normal2: { + display: "☆2", + mouseover: "Normal 2nd Dan", + index: 2, + }, + normal1: { + display: "☆1", + mouseover: "Normal 1st Dan", + index: 1, }, }; const __internalStellaDans = { st11: { display: "st11", mouseover: "Stella Skill Simulator st11", + index: 24, }, st10: { display: "st10", mouseover: "Stella Skill Simulator st10", + index: 23, }, st9: { display: "st9", mouseover: "Stella Skill Simulator st9", + index: 22, }, st8: { display: "st8", mouseover: "Stella Skill Simulator st8", + index: 21, }, st7: { display: "st7", mouseover: "Stella Skill Simulator st7", + index: 20, }, st6: { display: "st6", mouseover: "Stella Skill Simulator st6", + index: 19, }, st5: { display: "st5", mouseover: "Stella Skill Simulator st5", + index: 18, }, st4: { display: "st4", mouseover: "Stella Skill Simulator st4", + index: 17, }, st3: { display: "st3", mouseover: "Stella Skill Simulator st3", + index: 16, }, st2: { display: "st2", mouseover: "Stella Skill Simulator st2", + index: 15, }, st1: { display: "st1", mouseover: "Stella Skill Simulator st1", + index: 14, }, st0: { display: "st0", mouseover: "Stella Skill Simulator st0", + index: 13, }, sl12: { display: "sl12", mouseover: "Satellite Skill Simulator sl12", + index: 12, }, sl11: { display: "sl11", mouseover: "Satellite Skill Simulator sl11", + index: 11, }, sl10: { display: "sl10", mouseover: "Satellite Skill Simulator sl10", + index: 10, }, sl9: { display: "sl9", mouseover: "Satellite Skill Simulator sl9", + index: 9, }, sl8: { display: "sl8", mouseover: "Satellite Skill Simulator sl8", + index: 8, }, sl7: { display: "sl7", mouseover: "Satellite Skill Simulator sl7", + index: 7, }, sl6: { display: "sl6", mouseover: "Satellite Skill Simulator sl6", + index: 6, }, sl5: { display: "sl5", mouseover: "Satellite Skill Simulator sl5", + index: 5, }, sl4: { display: "sl4", mouseover: "Satellite Skill Simulator sl4", + index: 4, }, sl3: { display: "sl3", mouseover: "Satellite Skill Simulator sl3", + index: 3, }, sl2: { display: "sl2", mouseover: "Satellite Skill Simulator sl2", + index: 2, }, sl1: { display: "sl1", mouseover: "Satellite Skill Simulator sl1", + index: 1, }, sl0: { display: "sl0", mouseover: "Satellite Skill Simulator sl0", + index: 0, }, }; exports.gameClassValues = { @@ -408,16 +512,25 @@ exports.gameClassValues = { dan: __internalSDVXDans, }, }, - popn: {}, - museca: {}, - jubeat: {}, + popn: { + "9B": {}, + }, + museca: { + Single: {}, + }, + jubeat: { + Single: {}, + }, bms: { "7K": { genocideDan: __internalGenocideDans, stDan: __internalStellaDans, }, + "14K": {}, + }, + chunithm: { + Single: {}, }, - chunithm: {}, gitadora: { Gita: { skillColour: __internalGitadoraColours, @@ -426,8 +539,12 @@ exports.gameClassValues = { skillColour: __internalGitadoraColours, }, }, - maimai: {}, - usc: {}, + maimai: { + Single: {}, + }, + usc: { + Single: {}, + }, }; exports.defaultGameClasses = { iidx: { diff --git a/common/js/game-classes.js.map b/common/js/game-classes.js.map index d5639bade..b78902d13 100644 --- a/common/js/game-classes.js.map +++ b/common/js/game-classes.js.map @@ -1 +1 @@ -{"version":3,"file":"game-classes.js","sourceRoot":"","sources":["../src/game-classes.ts"],"names":[],"mappings":";AAAA,qCAAqC;AACrC,wBAAwB;;;AAExB,MAAM,kBAAkB,GAAG;IACvB,MAAM,EAAE;QACJ,OAAO,EAAE,IAAI;QACb,SAAS,EAAE,QAAQ;QACnB,KAAK,EAAE,EAAE;KACZ;IACD,OAAO,EAAE;QACL,OAAO,EAAE,IAAI;QACb,SAAS,EAAE,SAAS;QACpB,KAAK,EAAE,EAAE;KACZ;IACD,EAAE,EAAE;QACA,OAAO,EAAE,IAAI;QACb,SAAS,EAAE,UAAU;QACrB,KAAK,EAAE,EAAE;KACZ;IACD,CAAC,EAAE;QACC,OAAO,EAAE,IAAI;QACb,SAAS,EAAE,SAAS;QACpB,KAAK,EAAE,CAAC;KACX;IACD,CAAC,EAAE;QACC,OAAO,EAAE,IAAI;QACb,SAAS,EAAE,SAAS;QACpB,KAAK,EAAE,CAAC;KACX;IACD,CAAC,EAAE;QACC,OAAO,EAAE,IAAI;QACb,SAAS,EAAE,SAAS;QACpB,KAAK,EAAE,CAAC;KACX;IACD,CAAC,EAAE;QACC,OAAO,EAAE,IAAI;QACb,SAAS,EAAE,SAAS;QACpB,KAAK,EAAE,CAAC;KACX;IACD,CAAC,EAAE;QACC,OAAO,EAAE,IAAI;QACb,SAAS,EAAE,SAAS;QACpB,KAAK,EAAE,CAAC;KACX;IACD,CAAC,EAAE;QACC,OAAO,EAAE,IAAI;QACb,SAAS,EAAE,SAAS;QACpB,KAAK,EAAE,CAAC;KACX;IACD,CAAC,EAAE;QACC,OAAO,EAAE,IAAI;QACb,SAAS,EAAE,SAAS;QACpB,KAAK,EAAE,CAAC;KACX;IACD,CAAC,EAAE;QACC,OAAO,EAAE,IAAI;QACb,SAAS,EAAE,SAAS;QACpB,KAAK,EAAE,CAAC;KACX;IACD,CAAC,EAAE;QACC,OAAO,EAAE,IAAI;QACb,SAAS,EAAE,SAAS;QACpB,KAAK,EAAE,CAAC;KACX;IACD,MAAM,EAAE;QACJ,OAAO,EAAE,IAAI;QACb,SAAS,EAAE,SAAS;QACpB,KAAK,EAAE,CAAC,CAAC;KACZ;IACD,MAAM,EAAE;QACJ,OAAO,EAAE,IAAI;QACb,SAAS,EAAE,SAAS;QACpB,KAAK,EAAE,CAAC,CAAC;KACZ;IACD,MAAM,EAAE;QACJ,OAAO,EAAE,IAAI;QACb,SAAS,EAAE,SAAS;QACpB,KAAK,EAAE,CAAC,CAAC;KACZ;IACD,MAAM,EAAE;QACJ,OAAO,EAAE,IAAI;QACb,SAAS,EAAE,SAAS;QACpB,KAAK,EAAE,CAAC,CAAC;KACZ;IACD,MAAM,EAAE;QACJ,OAAO,EAAE,IAAI;QACb,SAAS,EAAE,SAAS;QACpB,KAAK,EAAE,CAAC,CAAC;KACZ;IACD,MAAM,EAAE;QACJ,OAAO,EAAE,IAAI;QACb,SAAS,EAAE,SAAS;QACpB,KAAK,EAAE,CAAC,CAAC;KACZ;IACD,MAAM,EAAE;QACJ,OAAO,EAAE,IAAI;QACb,SAAS,EAAE,SAAS;QACpB,KAAK,EAAE,CAAC,CAAC;KACZ;CACJ,CAAC;AAEF,MAAM,kBAAkB,GAAG;IACvB,GAAG,EAAE;QACD,OAAO,EAAE,MAAM;QACf,SAAS,EAAE,UAAU;QACrB,KAAK,EAAE,EAAE;KACZ;IACD,EAAE,EAAE;QACA,OAAO,EAAE,OAAO;QAChB,SAAS,EAAE,UAAU;QACrB,KAAK,EAAE,EAAE;KACZ;IACD,EAAE,EAAE;QACA,OAAO,EAAE,OAAO;QAChB,SAAS,EAAE,UAAU;QACrB,KAAK,EAAE,EAAE;KACZ;IACD,CAAC,EAAE;QACC,OAAO,EAAE,OAAO;QAChB,SAAS,EAAE,SAAS;QACpB,KAAK,EAAE,CAAC;KACX;IACD,CAAC,EAAE;QACC,OAAO,EAAE,OAAO;QAChB,SAAS,EAAE,SAAS;QACpB,KAAK,EAAE,CAAC;KACX;IACD,CAAC,EAAE;QACC,OAAO,EAAE,OAAO;QAChB,SAAS,EAAE,SAAS;QACpB,KAAK,EAAE,CAAC;KACX;IACD,CAAC,EAAE;QACC,OAAO,EAAE,OAAO;QAChB,SAAS,EAAE,SAAS;QACpB,KAAK,EAAE,CAAC;KACX;IACD,CAAC,EAAE;QACC,OAAO,EAAE,OAAO;QAChB,SAAS,EAAE,SAAS;QACpB,KAAK,EAAE,CAAC;KACX;IACD,CAAC,EAAE;QACC,OAAO,EAAE,OAAO;QAChB,SAAS,EAAE,SAAS;QACpB,KAAK,EAAE,CAAC;KACX;IACD,CAAC,EAAE;QACC,OAAO,EAAE,OAAO;QAChB,SAAS,EAAE,SAAS;QACpB,KAAK,EAAE,CAAC;KACX;IACD,CAAC,EAAE;QACC,OAAO,EAAE,OAAO;QAChB,SAAS,EAAE,SAAS;QACpB,KAAK,EAAE,CAAC;KACX;IACD,CAAC,EAAE;QACC,OAAO,EAAE,OAAO;QAChB,SAAS,EAAE,SAAS;QACpB,KAAK,EAAE,CAAC;KACX;CACJ,CAAC;AAEF,gBAAgB;AAChB,MAAM,iBAAiB,GAAG,EAAE,CAAC;AAE7B,MAAM,yBAAyB,GAAG;IAC9B,OAAO,EAAE;QACL,OAAO,EAAE,GAAG;QACZ,SAAS,EAAE,SAAS;KACvB;IACD,IAAI,EAAE;QACF,OAAO,EAAE,GAAG;QACZ,SAAS,EAAE,MAAM;KACpB;IACD,MAAM,EAAE;QACJ,OAAO,EAAE,GAAG;QACZ,SAAS,EAAE,QAAQ;KACtB;IACD,MAAM,EAAE;QACJ,OAAO,EAAE,GAAG;QACZ,SAAS,EAAE,QAAQ;KACtB;IACD,WAAW,EAAE;QACT,OAAO,EAAE,KAAK;QACd,SAAS,EAAE,cAAc;KAC5B;IACD,GAAG,EAAE;QACD,OAAO,EAAE,GAAG;QACZ,SAAS,EAAE,KAAK;KACnB;IACD,cAAc,EAAE;QACZ,OAAO,EAAE,KAAK;QACd,SAAS,EAAE,iBAAiB;KAC/B;IACD,MAAM,EAAE;QACJ,OAAO,EAAE,GAAG;QACZ,SAAS,EAAE,QAAQ;KACtB;IACD,YAAY,EAAE;QACV,OAAO,EAAE,KAAK;QACd,SAAS,EAAE,eAAe;KAC7B;IACD,IAAI,EAAE;QACF,OAAO,EAAE,GAAG;QACZ,SAAS,EAAE,MAAM;KACpB;IACD,aAAa,EAAE;QACX,OAAO,EAAE,KAAK;QACd,SAAS,EAAE,gBAAgB;KAC9B;IACD,KAAK,EAAE;QACH,OAAO,EAAE,GAAG;QACZ,SAAS,EAAE,OAAO;KACrB;IACD,cAAc,EAAE;QACZ,OAAO,EAAE,KAAK;QACd,SAAS,EAAE,iBAAiB;KAC/B;IACD,MAAM,EAAE;QACJ,OAAO,EAAE,GAAG;QACZ,SAAS,EAAE,QAAQ;KACtB;IACD,cAAc,EAAE;QACZ,OAAO,EAAE,KAAK;QACd,SAAS,EAAE,iBAAiB;KAC/B;IACD,MAAM,EAAE;QACJ,OAAO,EAAE,GAAG;QACZ,SAAS,EAAE,QAAQ;KACtB;IACD,KAAK,EAAE;QACH,OAAO,EAAE,GAAG;QACZ,SAAS,EAAE,OAAO;KACrB;CACJ,CAAC;AAEF,MAAM,sBAAsB,GAAG;IAC3B,OAAO,EAAE;QACL,OAAO,EAAE,MAAM;QACf,SAAS,EAAE,SAAS;KACvB;IACD,MAAM,EAAE;QACJ,OAAO,EAAE,IAAI;QACb,SAAS,EAAE,eAAe;KAC7B;IACD,EAAE,EAAE;QACA,OAAO,EAAE,KAAK;QACd,SAAS,EAAE,iBAAiB;KAC/B;IACD,CAAC,EAAE;QACC,OAAO,EAAE,IAAI;QACb,SAAS,EAAE,gBAAgB;KAC9B;IACD,CAAC,EAAE;QACC,OAAO,EAAE,IAAI;QACb,SAAS,EAAE,gBAAgB;KAC9B;IACD,CAAC,EAAE;QACC,OAAO,EAAE,IAAI;QACb,SAAS,EAAE,gBAAgB;KAC9B;IACD,CAAC,EAAE;QACC,OAAO,EAAE,IAAI;QACb,SAAS,EAAE,gBAAgB;KAC9B;IACD,CAAC,EAAE;QACC,OAAO,EAAE,IAAI;QACb,SAAS,EAAE,gBAAgB;KAC9B;IACD,CAAC,EAAE;QACC,OAAO,EAAE,IAAI;QACb,SAAS,EAAE,gBAAgB;KAC9B;IACD,CAAC,EAAE;QACC,OAAO,EAAE,IAAI;QACb,SAAS,EAAE,gBAAgB;KAC9B;IACD,CAAC,EAAE;QACC,OAAO,EAAE,IAAI;QACb,SAAS,EAAE,gBAAgB;KAC9B;IACD,CAAC,EAAE;QACC,OAAO,EAAE,IAAI;QACb,SAAS,EAAE,gBAAgB;KAC9B;CACJ,CAAC;AAEF,MAAM,oBAAoB,GAAG;IACzB,IAAI,EAAE;QACF,OAAO,EAAE,MAAM;QACf,SAAS,EAAE,6BAA6B;KAC3C;IACD,IAAI,EAAE;QACF,OAAO,EAAE,MAAM;QACf,SAAS,EAAE,6BAA6B;KAC3C;IACD,GAAG,EAAE;QACD,OAAO,EAAE,KAAK;QACd,SAAS,EAAE,4BAA4B;KAC1C;IACD,GAAG,EAAE;QACD,OAAO,EAAE,KAAK;QACd,SAAS,EAAE,4BAA4B;KAC1C;IACD,GAAG,EAAE;QACD,OAAO,EAAE,KAAK;QACd,SAAS,EAAE,4BAA4B;KAC1C;IACD,GAAG,EAAE;QACD,OAAO,EAAE,KAAK;QACd,SAAS,EAAE,4BAA4B;KAC1C;IACD,GAAG,EAAE;QACD,OAAO,EAAE,KAAK;QACd,SAAS,EAAE,4BAA4B;KAC1C;IACD,GAAG,EAAE;QACD,OAAO,EAAE,KAAK;QACd,SAAS,EAAE,4BAA4B;KAC1C;IACD,GAAG,EAAE;QACD,OAAO,EAAE,KAAK;QACd,SAAS,EAAE,4BAA4B;KAC1C;IACD,GAAG,EAAE;QACD,OAAO,EAAE,KAAK;QACd,SAAS,EAAE,4BAA4B;KAC1C;IACD,GAAG,EAAE;QACD,OAAO,EAAE,KAAK;QACd,SAAS,EAAE,4BAA4B;KAC1C;IACD,GAAG,EAAE;QACD,OAAO,EAAE,KAAK;QACd,SAAS,EAAE,4BAA4B;KAC1C;IACD,IAAI,EAAE;QACF,OAAO,EAAE,MAAM;QACf,SAAS,EAAE,gCAAgC;KAC9C;IACD,IAAI,EAAE;QACF,OAAO,EAAE,MAAM;QACf,SAAS,EAAE,gCAAgC;KAC9C;IACD,IAAI,EAAE;QACF,OAAO,EAAE,MAAM;QACf,SAAS,EAAE,gCAAgC;KAC9C;IACD,GAAG,EAAE;QACD,OAAO,EAAE,KAAK;QACd,SAAS,EAAE,+BAA+B;KAC7C;IACD,GAAG,EAAE;QACD,OAAO,EAAE,KAAK;QACd,SAAS,EAAE,+BAA+B;KAC7C;IACD,GAAG,EAAE;QACD,OAAO,EAAE,KAAK;QACd,SAAS,EAAE,+BAA+B;KAC7C;IACD,GAAG,EAAE;QACD,OAAO,EAAE,KAAK;QACd,SAAS,EAAE,+BAA+B;KAC7C;IACD,GAAG,EAAE;QACD,OAAO,EAAE,KAAK;QACd,SAAS,EAAE,+BAA+B;KAC7C;IACD,GAAG,EAAE;QACD,OAAO,EAAE,KAAK;QACd,SAAS,EAAE,+BAA+B;KAC7C;IACD,GAAG,EAAE;QACD,OAAO,EAAE,KAAK;QACd,SAAS,EAAE,+BAA+B;KAC7C;IACD,GAAG,EAAE;QACD,OAAO,EAAE,KAAK;QACd,SAAS,EAAE,+BAA+B;KAC7C;IACD,GAAG,EAAE;QACD,OAAO,EAAE,KAAK;QACd,SAAS,EAAE,+BAA+B;KAC7C;IACD,GAAG,EAAE;QACD,OAAO,EAAE,KAAK;QACd,SAAS,EAAE,+BAA+B;KAC7C;CACJ,CAAC;AAEW,QAAA,eAAe,GAAG;IAC3B,IAAI,EAAE;QACF,EAAE,EAAE;YACA,GAAG,EAAE,kBAAkB;SAC1B;QACD,EAAE,EAAE;YACA,GAAG,EAAE,kBAAkB;SAC1B;KACJ;IACD,GAAG,EAAE;QACD,EAAE,EAAE;YACA,GAAG,EAAE,iBAAiB;SACzB;QACD,EAAE,EAAE;YACA,GAAG,EAAE,iBAAiB;SACzB;KACJ;IACD,IAAI,EAAE;QACF,MAAM,EAAE;YACJ,GAAG,EAAE,kBAAkB;SAC1B;KACJ;IACD,IAAI,EAAE,EAAE;IACR,MAAM,EAAE,EAAE;IACV,MAAM,EAAE,EAAE;IACV,GAAG,EAAE;QACD,IAAI,EAAE;YACF,WAAW,EAAE,sBAAsB;YACnC,KAAK,EAAE,oBAAoB;SAC9B;KACJ;IACD,QAAQ,EAAE,EAAE;IACZ,QAAQ,EAAE;QACN,IAAI,EAAE;YACF,WAAW,EAAE,yBAAyB;SACzC;QACD,IAAI,EAAE;YACF,WAAW,EAAE,yBAAyB;SACzC;KACJ;IACD,MAAM,EAAE,EAAE;IACV,GAAG,EAAE,EAAE;CACV,CAAC;AAEW,QAAA,kBAAkB,GAAG;IAC9B,IAAI,EAAE;QACF,EAAE,EAAE,KAAK;QACT,EAAE,EAAE,KAAK;KACZ;IACD,GAAG,EAAE;QACD,EAAE,EAAE,KAAK;QACT,EAAE,EAAE,KAAK;KACZ;IACD,QAAQ,EAAE;QACN,IAAI,EAAE,aAAa;QACnB,IAAI,EAAE,aAAa;KACtB;IACD,IAAI,EAAE,EAAE;IACR,IAAI,EAAE;QACF,MAAM,EAAE,KAAK;KAChB;IACD,MAAM,EAAE,EAAE;IACV,MAAM,EAAE;QACJ,MAAM,EAAE,gBAAgB;KAC3B;IACD,GAAG,EAAE;QACD,IAAI,EAAE,aAAa;KACtB;IACD,QAAQ,EAAE,EAAE;IACZ,MAAM,EAAE,EAAE;IACV,GAAG,EAAE,EAAE;CACV,CAAC"} \ No newline at end of file +{"version":3,"file":"game-classes.js","sourceRoot":"","sources":["../src/game-classes.ts"],"names":[],"mappings":"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"} \ No newline at end of file diff --git a/common/src/game-classes.ts b/common/src/game-classes.ts index d3bdd010e..8a7004a51 100644 --- a/common/src/game-classes.ts +++ b/common/src/game-classes.ts @@ -1,105 +1,107 @@ // Classes refer to things like dans. // Not the JS construct. -const __internalIIDXDans = { +import { Game, integer, Playtypes } from "./types"; + +const __internalIIDXDans: ClassData = { kaiden: { display: "皆伝", mouseover: "Kaiden", - index: 12, + index: 18, }, chuuden: { display: "中伝", mouseover: "Chuuden", - index: 11, + index: 17, }, 10: { display: "十段", mouseover: "10th Dan", - index: 10, + index: 16, }, 9: { display: "九段", mouseover: "9th Dan", - index: 9, + index: 15, }, 8: { display: "八段", mouseover: "8th Dan", - index: 8, + index: 14, }, 7: { display: "七段", mouseover: "7th Dan", - index: 7, + index: 13, }, 6: { display: "六段", mouseover: "6th Dan", - index: 6, + index: 12, }, 5: { display: "五段", mouseover: "5th Dan", - index: 5, + index: 11, }, 4: { display: "四段", mouseover: "4th Dan", - index: 4, + index: 10, }, 3: { display: "三段", mouseover: "3rd Dan", - index: 3, + index: 9, }, 2: { display: "二段", mouseover: "2nd Dan", - index: 2, + index: 8, }, 1: { display: "初段", mouseover: "1st Dan", - index: 1, + index: 7, }, "1kyu": { display: "一級", mouseover: "1st Kyu", - index: -1, + index: 6, }, "2kyu": { display: "二級", mouseover: "2nd Kyu", - index: -2, + index: 5, }, "3kyu": { display: "三級", mouseover: "3rd Kyu", - index: -3, + index: 4, }, "4kyu": { display: "四級", mouseover: "4th Kyu", - index: -4, + index: 3, }, "5kyu": { display: "五級", mouseover: "5th Kyu", - index: -5, + index: 2, }, "6kyu": { display: "六級", mouseover: "6th Kyu", - index: -6, + index: 1, }, "7kyu": { display: "七級", mouseover: "7th Kyu", - index: -7, + index: 0, }, }; -const __internalSDVXDans = { +const __internalSDVXDans: ClassData = { inf: { display: "LV.∞", mouseover: "Inf. Dan", @@ -162,235 +164,353 @@ const __internalSDVXDans = { }, }; +type ClassData = Record; + // unimplemented const __internalDDRDans = {}; -const __internalGitadoraColours = { +const __internalGitadoraColours: ClassData = { rainbow: { display: "虹", mouseover: "Rainbow", + index: 16, }, gold: { display: "金", mouseover: "Gold", + index: 15, }, silver: { display: "銀", mouseover: "Silver", + index: 14, }, bronze: { display: "銅", mouseover: "Bronze", + index: 13, }, redgradient: { display: "赤グラ", mouseover: "Red Gradient", + index: 12, }, red: { display: "赤", mouseover: "Red", + index: 11, }, purplegradient: { display: "紫グラ", mouseover: "Purple Gradient", + index: 10, }, purple: { display: "紫", mouseover: "Purple", + index: 9, }, bluegradient: { display: "青グラ", mouseover: "Blue Gradient", + index: 8, }, blue: { display: "青", mouseover: "Blue", + index: 7, }, greengradient: { display: "緑グラ", mouseover: "Green Gradient", + index: 6, }, green: { display: "緑", mouseover: "Green", + index: 5, }, yellowgradient: { display: "黄グラ", mouseover: "Yellow Gradient", + index: 4, }, yellow: { display: "黄", mouseover: "Yellow", + index: 3, }, orangegradient: { display: "橙グラ", mouseover: "Orange Gradient", + index: 2, }, orange: { display: "橙", mouseover: "Orange", + index: 1, }, white: { display: "白", mouseover: "White", + index: 0, }, }; -const __internalGenocideDans = { +const __internalGenocideDans: ClassData = { overjoy: { display: "(^^)", mouseover: "Overjoy", + index: 22, }, kaiden: { display: "★★", mouseover: "Insane Kaiden", + index: 21, }, 10: { display: "★10", mouseover: "Insane 10th Dan", + index: 20, }, 9: { display: "★9", mouseover: "Insane 9th Dan", + index: 19, }, 8: { display: "★8", mouseover: "Insane 8th Dan", + index: 18, }, 7: { display: "★7", mouseover: "Insane 7th Dan", + index: 17, }, 6: { display: "★6", mouseover: "Insane 6th Dan", + index: 16, }, 5: { display: "★5", mouseover: "Insane 5th Dan", + index: 15, }, 4: { display: "★4", mouseover: "Insane 4th Dan", + index: 14, }, 3: { display: "★3", mouseover: "Insane 3rd Dan", + index: 13, }, 2: { display: "★2", mouseover: "Insane 2nd Dan", + index: 12, }, 1: { display: "★1", mouseover: "Insane 1st Dan", + index: 11, + }, + normal10: { + display: "☆10", + mouseover: "Normal 10th Dan", + index: 10, + }, + normal9: { + display: "☆9", + mouseover: "Normal 9th Dan", + index: 9, + }, + normal8: { + display: "☆8", + mouseover: "Normal 8th Dan", + index: 8, + }, + normal7: { + display: "☆7", + mouseover: "Normal 7th Dan", + index: 7, + }, + normal6: { + display: "☆6", + mouseover: "Normal 6th Dan", + index: 6, + }, + normal5: { + display: "☆5", + mouseover: "Normal 5th Dan", + index: 5, + }, + normal4: { + display: "☆4", + mouseover: "Normal 4th Dan", + index: 4, + }, + normal3: { + display: "☆3", + mouseover: "Normal 3rd Dan", + index: 3, + }, + normal2: { + display: "☆2", + mouseover: "Normal 2nd Dan", + index: 2, + }, + normal1: { + display: "☆1", + mouseover: "Normal 1st Dan", + index: 1, }, }; -const __internalStellaDans = { +const __internalStellaDans: ClassData = { st11: { display: "st11", mouseover: "Stella Skill Simulator st11", + index: 24, }, st10: { display: "st10", mouseover: "Stella Skill Simulator st10", + index: 23, }, st9: { display: "st9", mouseover: "Stella Skill Simulator st9", + index: 22, }, st8: { display: "st8", mouseover: "Stella Skill Simulator st8", + index: 21, }, st7: { display: "st7", mouseover: "Stella Skill Simulator st7", + index: 20, }, st6: { display: "st6", mouseover: "Stella Skill Simulator st6", + index: 19, }, st5: { display: "st5", mouseover: "Stella Skill Simulator st5", + index: 18, }, st4: { display: "st4", mouseover: "Stella Skill Simulator st4", + index: 17, }, st3: { display: "st3", mouseover: "Stella Skill Simulator st3", + index: 16, }, st2: { display: "st2", mouseover: "Stella Skill Simulator st2", + index: 15, }, st1: { display: "st1", mouseover: "Stella Skill Simulator st1", + index: 14, }, st0: { display: "st0", mouseover: "Stella Skill Simulator st0", + index: 13, }, sl12: { display: "sl12", mouseover: "Satellite Skill Simulator sl12", + index: 12, }, sl11: { display: "sl11", mouseover: "Satellite Skill Simulator sl11", + index: 11, }, sl10: { display: "sl10", mouseover: "Satellite Skill Simulator sl10", + index: 10, }, sl9: { display: "sl9", mouseover: "Satellite Skill Simulator sl9", + index: 9, }, sl8: { display: "sl8", mouseover: "Satellite Skill Simulator sl8", + index: 8, }, sl7: { display: "sl7", mouseover: "Satellite Skill Simulator sl7", + index: 7, }, sl6: { display: "sl6", mouseover: "Satellite Skill Simulator sl6", + index: 6, }, sl5: { display: "sl5", mouseover: "Satellite Skill Simulator sl5", + index: 5, }, sl4: { display: "sl4", mouseover: "Satellite Skill Simulator sl4", + index: 4, }, sl3: { display: "sl3", mouseover: "Satellite Skill Simulator sl3", + index: 3, }, sl2: { display: "sl2", mouseover: "Satellite Skill Simulator sl2", + index: 2, }, sl1: { display: "sl1", mouseover: "Satellite Skill Simulator sl1", + index: 1, }, sl0: { display: "sl0", mouseover: "Satellite Skill Simulator sl0", + index: 0, }, }; -export const gameClassValues = { +interface ClassInfo { + display: string; + mouseover: string; + index: integer; +} + +type GameClasses = { + [G in Game]: { + [P in Playtypes[G]]: Record; + }; +}; + +export const gameClassValues: GameClasses = { iidx: { SP: { dan: __internalIIDXDans, @@ -412,16 +532,25 @@ export const gameClassValues = { dan: __internalSDVXDans, }, }, - popn: {}, - museca: {}, - jubeat: {}, + popn: { + "9B": {}, + }, + museca: { + Single: {}, + }, + jubeat: { + Single: {}, + }, bms: { "7K": { genocideDan: __internalGenocideDans, stDan: __internalStellaDans, }, + "14K": {}, + }, + chunithm: { + Single: {}, }, - chunithm: {}, gitadora: { Gita: { skillColour: __internalGitadoraColours, @@ -430,8 +559,12 @@ export const gameClassValues = { skillColour: __internalGitadoraColours, }, }, - maimai: {}, - usc: {}, + maimai: { + Single: {}, + }, + usc: { + Single: {}, + }, }; export const defaultGameClasses = {