Mudanças entre as edições de "Widget:TesteBossYawnv3"
Ir para navegação
Ir para pesquisar
${r} `);
}
html += `
| Linha 3: | Linha 3: | ||
<button class="boss-diff-btn" data-diff="elite">ELITE</button> | <button class="boss-diff-btn" data-diff="elite">ELITE</button> | ||
<button class="boss-diff-btn" data-diff="hard">HARD</button> | <button class="boss-diff-btn" data-diff="hard">HARD</button> | ||
</div> | </div> | ||
| Linha 9: | Linha 8: | ||
<script> | <script> | ||
console.log("🔵 Widget carregado - versão simples"); | |||
function bossRender(root, diff) { | |||
console.log("bossRender chamado para:", diff); | |||
let data; | |||
try { | |||
data = JSON.parse(root.dataset.json); | |||
console.log("JSON parseado:", data); | |||
console.log("Keys do objeto:", Object.keys(data)); | |||
} catch(e) { | |||
console.error("Erro no JSON:", e); | |||
console.log("JSON bruto:", root.dataset.json); | |||
return; | |||
} | } | ||
const d = data[diff]; | |||
console.log("Dificuldade selecionada:", diff); | |||
console.log("Conteúdo da dificuldade:", d); | |||
const content = root.querySelector(".boss-content"); | |||
if (!content) return; | |||
if (!d) { | |||
content.innerHTML = `<div style="color:red; padding:20px;"> | |||
<h3>Erro: Dificuldade "${diff}" não encontrada</h3> | |||
<p>Keys disponíveis: ${Object.keys(data).join(', ')}</p> | |||
<p>JSON completo: <pre>${JSON.stringify(data, null, 2)}</pre></p> | |||
</div>`; | |||
return; | |||
} | } | ||
let html = `<h2>${data.nome || 'Sem nome'}</h2>`; | |||
html += `<h3>Requisitos</h3><ul>`; | |||
if (d.requisitos) { | |||
d.requisitos.forEach(r => html += `<li>${r}</li>`); | |||
} | } | ||
html += `</ul>`; | |||
content.innerHTML = html; | |||
} | |||
if ( | function init() { | ||
console.log("init chamado, procurando .boss-component..."); | |||
const components = document.querySelectorAll('.boss-component'); | |||
console.log("Encontrados:", components.length); | |||
} | |||
components.forEach(root => { | |||
console.log("Inicializando componente:", root); | |||
if (root.dataset.initialized === 'true') return; | |||
root.dataset.initialized = 'true'; | |||
const buttons = root.querySelectorAll('.boss-diff-btn'); | |||
buttons.forEach(btn => { | |||
btn.onclick = function() { | |||
bossRender(root, this.dataset.diff); | |||
}; | |||
}); | |||
bossRender(root, 'normal'); | |||
}); | |||
} | |||
if (document.readyState === 'loading') { | |||
document.addEventListener('DOMContentLoaded', init); | |||
} else { | |||
init(); | |||
} | |||
</script> | </script> | ||
Edição das 17h20min de 9 de abril de 2026
<script> console.log("🔵 Widget carregado - versão simples");
function bossRender(root, diff) {
console.log("bossRender chamado para:", diff);
let data;
try {
data = JSON.parse(root.dataset.json);
console.log("JSON parseado:", data);
console.log("Keys do objeto:", Object.keys(data));
} catch(e) {
console.error("Erro no JSON:", e);
console.log("JSON bruto:", root.dataset.json);
return;
}
const d = data[diff];
console.log("Dificuldade selecionada:", diff);
console.log("Conteúdo da dificuldade:", d);
const content = root.querySelector(".boss-content");
if (!content) return;
if (!d) {
content.innerHTML = `
Erro: Dificuldade "${diff}" não encontrada
Keys disponíveis: ${Object.keys(data).join(', ')}
JSON completo:
${JSON.stringify(data, null, 2)}
`;
return; }
let html = `
${data.nome || 'Sem nome'}
`; html += `
Requisitos
- `;
if (d.requisitos) {
d.requisitos.forEach(r => html += ``;
content.innerHTML = html;
}
function init() {
console.log("init chamado, procurando .boss-component...");
const components = document.querySelectorAll('.boss-component');
console.log("Encontrados:", components.length);
components.forEach(root => {
console.log("Inicializando componente:", root);
if (root.dataset.initialized === 'true') return;
root.dataset.initialized = 'true';
const buttons = root.querySelectorAll('.boss-diff-btn');
buttons.forEach(btn => {
btn.onclick = function() {
bossRender(root, this.dataset.diff);
};
});
bossRender(root, 'normal');
});
}
if (document.readyState === 'loading') {
document.addEventListener('DOMContentLoaded', init);
} else {
init();
} </script>