// Mapas de datos estáticos de WoW (WotLK 3.4.3): razas, clases, slots de equipo. // Nombres en ES/EN; el color de clase para la interfaz de la armería. export const RACES: Record = { 1: { es: 'Humano', en: 'Human', faction: 'alliance' }, 2: { es: 'Orco', en: 'Orc', faction: 'horde' }, 3: { es: 'Enano', en: 'Dwarf', faction: 'alliance' }, 4: { es: 'Elfo de la noche', en: 'Night Elf', faction: 'alliance' }, 5: { es: 'No-muerto', en: 'Undead', faction: 'horde' }, 6: { es: 'Tauren', en: 'Tauren', faction: 'horde' }, 7: { es: 'Gnomo', en: 'Gnome', faction: 'alliance' }, 8: { es: 'Trol', en: 'Troll', faction: 'horde' }, 10: { es: 'Elfo de sangre', en: 'Blood Elf', faction: 'horde' }, 11: { es: 'Draenei', en: 'Draenei', faction: 'alliance' }, } export const CLASSES: Record = { 1: { es: 'Guerrero', en: 'Warrior', color: '#C79C6E' }, 2: { es: 'Paladín', en: 'Paladin', color: '#F58CBA' }, 3: { es: 'Cazador', en: 'Hunter', color: '#ABD473' }, 4: { es: 'Pícaro', en: 'Rogue', color: '#FFF569' }, 5: { es: 'Sacerdote', en: 'Priest', color: '#FFFFFF' }, 6: { es: 'Caballero de la Muerte', en: 'Death Knight', color: '#C41F3B' }, 7: { es: 'Chamán', en: 'Shaman', color: '#0070DE' }, 8: { es: 'Mago', en: 'Mage', color: '#69CCF0' }, 9: { es: 'Brujo', en: 'Warlock', color: '#9482C9' }, 11: { es: 'Druida', en: 'Druid', color: '#FF7D0A' }, } // Slots de equipo 0-18 (EQUIPMENT_SLOT_*). Los que no se muestran (camisa 3, tabardo 18) // se dejan igual por completitud del modelo 3D. export const EQUIP_SLOTS: { slot: number; es: string; en: string }[] = [ { slot: 0, es: 'Cabeza', en: 'Head' }, { slot: 1, es: 'Cuello', en: 'Neck' }, { slot: 2, es: 'Hombros', en: 'Shoulders' }, { slot: 14, es: 'Espalda', en: 'Back' }, { slot: 4, es: 'Pecho', en: 'Chest' }, { slot: 3, es: 'Camisa', en: 'Shirt' }, { slot: 18, es: 'Tabardo', en: 'Tabard' }, { slot: 8, es: 'Muñecas', en: 'Wrists' }, { slot: 9, es: 'Manos', en: 'Hands' }, { slot: 5, es: 'Cintura', en: 'Waist' }, { slot: 6, es: 'Piernas', en: 'Legs' }, { slot: 7, es: 'Pies', en: 'Feet' }, { slot: 10, es: 'Anillo', en: 'Ring' }, { slot: 11, es: 'Anillo', en: 'Ring' }, { slot: 12, es: 'Abalorio', en: 'Trinket' }, { slot: 13, es: 'Abalorio', en: 'Trinket' }, { slot: 15, es: 'Mano derecha', en: 'Main Hand' }, { slot: 16, es: 'Mano izquierda', en: 'Off Hand' }, { slot: 17, es: 'A distancia', en: 'Ranged' }, ] export function raceName(id: number, locale: string): string { const r = RACES[id] return r ? (locale === 'en' ? r.en : r.es) : `#${id}` } export function className(id: number, locale: string): string { const c = CLASSES[id] return c ? (locale === 'en' ? c.en : c.es) : `#${id}` } export function classColor(id: number): string { return CLASSES[id]?.color ?? '#ffffff' } export function factionOf(race: number): 'alliance' | 'horde' | null { return RACES[race]?.faction ?? null }