<%* const championName = tp.file.title.replace(“_Stats”, "");

try { // Step 1: fetch latest DDragon version dynamically const versionRes = await fetch(“https://ddragon.leagueoflegends.com/api/versions.json”); const versions = await versionRes.json(); const latestVersion = versions[0];

// Step 2: fetch champion data
const url = `https://ddragon.leagueoflegends.com/cdn/${latestVersion}/data/en_US/champion/${championName}.json`;
const response = await fetch(url);
if (!response.ok) throw new Error(`HTTP ${response.status}`);
const data = await response.json();
const stats = data.data[championName];

tR += `*Versión DDragon: ${latestVersion}*\n\n`;
tR += `### Habilidades\n\n`;

// Passive
const passive = stats.passive;
const passiveDesc = passive.description.replace(/<[^>]*>/g, "");
tR += `**${passive.name} (Pasiva)**: ${passiveDesc}\n\n`;

// Q W E R
const keys = ["Q", "W", "E", "R"];
stats.spells.forEach((spell, i) => {
    const desc = spell.description.replace(/<[^>]*>/g, "");
    tR += `**${spell.name} (${keys[i]})**: ${desc}\n`;
    tR += `*CD:* ${spell.cooldownBurn}s | *Coste:* ${spell.costBurn}\n\n`;
});

} catch (e) { tR += ❌ Error: ${e.message}\n; tR += Revisa que el nombre del archivo sea exactamente el ID interno del campeón (ej: \Syndra_Stats`, `MissFortune_Stats`).`; } %>