// Funcionalidades para integración con la página de personajes document.addEventListener('DOMContentLoaded', function() { // Sincronizar contador de Lumio con localStorage syncLumioCounter(); // Añadir efecto de destaque al enlace de personajes en el menú highlightPersonajesLink(); // Integrar funcionalidad del botón de mapa setupMapButton(); }); // Función para sincronizar el contador de Lumio con localStorage function syncLumioCounter() { // Verificar si hay un contador guardado en localStorage const lumioCount = localStorage.getItem('lumioCount') || 0; // Actualizar el contador en la página const counterElement = document.querySelector('.contador-lumio span'); if (counterElement) { counterElement.textContent = `Lumio encontrado: ${lumioCount}/5`; } // Escuchar cambios en localStorage (para sincronizar entre páginas) window.addEventListener('storage', function(e) { if (e.key === 'lumioCount') { const newCount = e.newValue || 0; if (counterElement) { counterElement.textContent = `Lumio encontrado: ${newCount}/5`; } } }); } // Función para destacar el enlace de personajes en el menú function highlightPersonajesLink() { const personajesLink = document.querySelector('nav .menu li a[href*="personajes"]'); if (personajesLink) { // Añadir un pequeño efecto de brillo personajesLink.addEventListener('mouseenter', function() { this.style.textShadow = '0 0 5px rgba(255, 255, 255, 0.8)'; }); personajesLink.addEventListener('mouseleave', function() { this.style.textShadow = ''; }); } } // Función para configurar el botón de mapa function setupMapButton() { const mapButtons = document.querySelectorAll('.mapa-button'); mapButtons.forEach(button => { button.addEventListener('click', function(e) { e.preventDefault(); // Guardar estado actual en localStorage para mantener continuidad localStorage.setItem('lastPage', 'home'); // Redirigir a la página de personajes con un parámetro para mostrar el mapa window.location.href = 'https://hjtzczwo.manus.space/personajes?showMap=true'; }); }); } // Función para manejar la transición desde la página de personajes function handleReturnFromPersonajes() { // Verificar si venimos de la página de personajes const referrer = document.referrer; if (referrer.includes('personajes')) { // Mostrar un mensaje de bienvenida de regreso const welcomeBack = document.createElement('div'); welcomeBack.classList.add('welcome-back'); welcomeBack.innerHTML = `

¡Bienvenido de vuelta al Bosque Brillante!

¿Descubriste algo interesante sobre nuestros amigos?

`; document.body.appendChild(welcomeBack); // Cerrar mensaje al hacer clic en el botón welcomeBack.querySelector('.close-welcome').addEventListener('click', function() { welcomeBack.remove(); }); // También cerrar al hacer clic fuera del contenido welcomeBack.addEventListener('click', function(e) { if (e.target === welcomeBack) { welcomeBack.remove(); } }); } } // Llamar a la función de manejo de retorno cuando la página esté completamente cargada window.addEventListener('load', handleReturnFromPersonajes); // Estilos adicionales para la integración document.head.insertAdjacentHTML('beforeend', ` `);