/** * Cosmic Garden - Prestige UI Manager * Handles all prestige-related UI rendering and interactions */ const PrestigeUI = { /** * Initialize the prestige UI */ init() { this.renderPrestigeUpgrades(); this.setupEventListeners(); this.update(); }, /** * Setup event listeners */ setupEventListeners() { // Prestige button document.getElementById('prestige-btn')?.addEventListener('click', () => { const essenceGain = PRESTIGE.calculateEssence(); if (essenceGain > 0) { if (confirm( `Prestige now to earn ${essenceGain} Stellar Essence?\n\n` + `You will keep your prestige upgrades and essence.\n` + `All buildings, upgrades, and stardust will be reset.` )) { PRESTIGE.prestige(); } } else { UI.showNotification('Need more stardust to prestige!', 'warning'); } }); // Tab switching for prestige tab document.querySelectorAll('.tab-btn').forEach(btn => { btn.addEventListener('click', (e) => { const tab = e.target.dataset.tab; if (tab === 'prestige') { this.renderPrestigeUpgrades(); } }); }); }, /** * Render prestige upgrade cards */ renderPrestigeUpgrades() { const container = document.getElementById('prestige-upgrades-list'); if (!container) return; container.innerHTML = ''; for (const [id, upgrade] of Object.entries(PRESTIGE_UPGRADES)) { const card = document.createElement('div'); card.className = 'prestige-upgrade-card'; card.id = `prestige-upgrade-${id}`; const purchased = Game.state.prestigeUpgrades?.includes(id); const canAfford = (Game.state.stellarEssence || 0) >= upgrade.cost; card.classList.toggle('purchased', purchased); card.classList.toggle('locked', !purchased && !canAfford); card.innerHTML = `