// ============================================================================= // CHAMPIONS SCREEN — detailed list with deck previews // ============================================================================= const { useState } = React; function ChampionsScreen({ state, actions }) { const { CHAMPIONS:ZC, getCard, MYTHIC_CARDS:ZM } = window.GAME_DATA; const [expanded, setExpanded] = useState(null); return (
DESAFÍOS / 5 CAMPEONES · 5 MAZOS LEGENDARIOS
Maestros de proveedor
Cada maestro defiende un mazo de 5 cartas top-trumps. Best of 5 rondas: elige un stat por ronda. El ganador se queda con esa ronda. Al derrotar a un maestro: 1× carta MÍTICA + créditos.
{ZC.map((champ, i) => { const defeated = state.defeatedChamps.includes(champ.id); const locked = i > 0 && !state.defeatedChamps.includes(ZC[i-1].id); const isOpen = expanded === champ.id; return (
[{champ.sigil}]
BOSS {String(champ.difficulty).padStart(2,'0')}/05 · {defeated?'DERROTADO':locked?'BLOQUEADO':'DISPONIBLE'}
{champ.name}
{champ.title}
"{champ.quote}"
RECOMPENSA
+{champ.reward.credits.toLocaleString()} CRD
MÍTICA
{ZM[champ.reward.card].name}
DIFICULTAD
{[...Array(5)].map((_, j) => ( ))}
{!defeated && !locked && ( )} {defeated && ( )} {locked && ( )}
{isOpen && (
◈ MAZO DEL CAMPEÓN · 5 CARTAS
{champ.deck.map(cid => ( ))}
)}
); })}
); } window.ChampionsScreen = ChampionsScreen;