fix(dashboard): синхрон XP питомца 1-в-1 с модулем /pet
Полный XP и абсолютный порог уровня (d.xp / d.xpForNextLevel), уровень пользователя d.level — как в pet.html, а не относительный расчёт по petLevel. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -3276,16 +3276,14 @@
|
|||||||
art.innerHTML = PetSprite.render(d.petLevel || 1, d.mood || 'neutral', d.accessories || [], d.petColor || 'purple', d.streakCurrent || 0);
|
art.innerHTML = PetSprite.render(d.petLevel || 1, d.mood || 'neutral', d.accessories || [], d.petColor || 'purple', d.streakCurrent || 0);
|
||||||
}
|
}
|
||||||
document.getElementById('hc-pet-name').textContent = d.petName || 'Квантик';
|
document.getElementById('hc-pet-name').textContent = d.petName || 'Квантик';
|
||||||
document.getElementById('hc-pet-lvl').textContent = d.petLevel || 1;
|
document.getElementById('hc-pet-lvl').textContent = d.level || 1;
|
||||||
|
|
||||||
// XP до следующего уровня питомца
|
// XP — как в модуле /pet: полный XP / абсолютный порог следующего уровня
|
||||||
const cur = d.xpForCurrLevel || 0;
|
const cur = d.xpForCurrLevel || 0;
|
||||||
const next = d.xpForNextLevel; // null = макс
|
const next = d.xpForNextLevel; // null = макс
|
||||||
const have = Math.max(0, (d.xp || 0) - cur);
|
const pct = next ? Math.min(100, ((d.xp - cur) / (next - cur)) * 100) : 100;
|
||||||
const need = next != null ? Math.max(1, next - cur) : have;
|
document.getElementById('hc-pet-xp').textContent = (d.xp || 0).toLocaleString();
|
||||||
const pct = next != null ? Math.min(100, Math.round(have / need * 100)) : 100;
|
document.getElementById('hc-pet-xpmax').textContent = next ? next.toLocaleString() : 'MAX';
|
||||||
document.getElementById('hc-pet-xp').textContent = have;
|
|
||||||
document.getElementById('hc-pet-xpmax').textContent = next != null ? need : '—';
|
|
||||||
document.getElementById('hc-pet-prog').style.width = pct + '%';
|
document.getElementById('hc-pet-prog').style.width = pct + '%';
|
||||||
|
|
||||||
// Стрик / цель дня / настроение
|
// Стрик / цель дня / настроение
|
||||||
|
|||||||
Reference in New Issue
Block a user