dex/src/data/game-colors.js
chris e61bf7ac6c Stylised game-cover tiles in the game picker
- Each game renders as a two-tone tile split in its version colours
  (Scarlet/Violet, Sword/Shield, Ruby/Sapphire…), keyed by version group
  with a per-generation fallback (src/data/game-colors.js)
- Clean flat split with a bottom scrim for legibility — no gloss/bubble

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-27 13:40:18 -04:00

52 lines
1.8 KiB
JavaScript

/**
* Signature colours for each game, used to render a stylised "cover" tile in
* the game picker (real box art is Nintendo's and not in the API). Two
* colours = the paired versions; games without a listed entry fall back to
* a per-generation hue.
*/
const GAME = {
'red-blue': ['#e0362f', '#2f6cd8'],
'red-green-japan': ['#e0362f', '#39ab57'],
'blue-japan': ['#2f6cd8', '#3f8ad0'],
yellow: ['#f4c21a', '#f0a81f'],
'gold-silver': ['#d7a521', '#b9bcc6'],
crystal: ['#41a3c4', '#6fd0d8'],
'ruby-sapphire': ['#b4302e', '#2e5cb4'],
emerald: ['#12904a', '#26b56b'],
'firered-leafgreen': ['#e4552b', '#57b04b'],
'diamond-pearl': ['#7fb0e2', '#e0a3c8'],
platinum: ['#9aa0ab', '#c9ccd4'],
'heartgold-soulsilver': ['#d7a521', '#b9bcc6'],
'black-white': ['#26262b', '#b9b9c2'],
'black-2-white-2': ['#2b2b31', '#aeaeb8'],
'x-y': ['#4c7bc4', '#c43b3b'],
'omega-ruby-alpha-sapphire': ['#b4302e', '#2e5cb4'],
'sun-moon': ['#f0952b', '#4062b4'],
'ultra-sun-ultra-moon': ['#e3781e', '#34489e'],
'lets-go-pikachu-lets-go-eevee': ['#f4c21a', '#c08a52'],
'sword-shield': ['#00a0c6', '#c33b84'],
'brilliant-diamond-and-shining-pearl': ['#6f5ac4', '#d06fa6'],
'legends-arceus': ['#3e7c6a', '#b08d4a'],
'scarlet-violet': ['#c9352e', '#7c4da0'],
'the-teal-mask': ['#2e8b7a', '#39a892'],
'the-indigo-disk': ['#3b3ba0', '#5a5ac4'],
colosseum: ['#3a3a44', '#6e5aa0'],
xd: ['#4a2e6e', '#6a45a0'],
};
const GEN = {
1: ['#e0362f', '#e8564f'],
2: ['#d7a521', '#e0b94a'],
3: ['#12904a', '#2eb56b'],
4: ['#6e86c4', '#9ab0dc'],
5: ['#44444c', '#666670'],
6: ['#5b7bc4', '#7c9adc'],
7: ['#f0952b', '#f5b45a'],
8: ['#3aa6c6', '#5ec6dc'],
9: ['#c9352e', '#e0564f'],
};
export function gameColors(versionGroupKey, generation = 9) {
return GAME[versionGroupKey] || GEN[generation] || GEN[9];
}