diff --git a/schemas/scoreboard.json b/schemas/scoreboard.json index 4ef6ecd..03e66ce 100644 --- a/schemas/scoreboard.json +++ b/schemas/scoreboard.json @@ -48,6 +48,10 @@ "round": { "type": "string", "default": "" + }, + "game": { + "type": "string", + "default": "" } }, "required": [ @@ -61,7 +65,8 @@ "rightCountryOverride", "leftScore", "rightScore", - "round" + "round", + "game" ], "default": { "leftPlayerId": "", @@ -74,6 +79,7 @@ "rightCountryOverride": "", "leftScore": 0, "rightScore": 0, - "round": "" + "round": "", + "game": "" } } diff --git a/src/dashboard/example/components/ScoreboardPanel.vue b/src/dashboard/example/components/ScoreboardPanel.vue index d8b61c9..705bf7c 100644 --- a/src/dashboard/example/components/ScoreboardPanel.vue +++ b/src/dashboard/example/components/ScoreboardPanel.vue @@ -23,6 +23,19 @@ const rightCountryInput = ref(''); const leftCountryOptions = ref(countryOptions); const rightCountryOptions = ref(countryOptions); +const fightingGameOptions = [ + 'Street Fighter 6', + 'TEKKEN 8', + 'Guilty Gear -Strive-', + 'Mortal Kombat 1', + 'The King of Fighters XV', + 'Granblue Fantasy Versus: Rising', + 'Under Night In-Birth II Sys:Celes', +].map((game) => ({ + label: game, + value: game, +})); + const normalizeName = (value: string) => value.trim().toLowerCase(); const filterOptions = ( @@ -561,26 +574,10 @@ watchEffect(() => {
Scoreboard
- - - -
-
+
+
{
-
+
+ + +
+
+ + +
+ +
+
+
+
+ +
{ @@ -35,6 +36,7 @@ const normalizeScoreboard = (input: unknown): Scoreboard => { leftScore: typeof candidate.leftScore === 'number' ? Math.max(0, Math.floor(candidate.leftScore)) : 0, rightScore: typeof candidate.rightScore === 'number' ? Math.max(0, Math.floor(candidate.rightScore)) : 0, round: typeof candidate.round === 'string' ? candidate.round : '', + game: typeof candidate.game === 'string' ? candidate.game : '', }; }; diff --git a/src/graphics/scoreboard/main.vue b/src/graphics/scoreboard/main.vue index 8deb6f4..ac7c1f3 100644 --- a/src/graphics/scoreboard/main.vue +++ b/src/graphics/scoreboard/main.vue @@ -19,6 +19,7 @@ const defaultScoreboard: Schemas.Scoreboard = { leftScore: 0, rightScore: 0, round: '', + game: '', }; const players = computed(() => playersReplicant?.data ?? {}); diff --git a/src/types/schemas/scoreboard.d.ts b/src/types/schemas/scoreboard.d.ts index 3e6e5b8..db38b47 100644 --- a/src/types/schemas/scoreboard.d.ts +++ b/src/types/schemas/scoreboard.d.ts @@ -18,4 +18,5 @@ export interface Scoreboard { leftScore: number; rightScore: number; round: string; + game: string; }