diff --git a/DEVLOG.md b/DEVLOG.md index c6279fa..86b1c76 100644 --- a/DEVLOG.md +++ b/DEVLOG.md @@ -1,5 +1,46 @@ # Devlog - Warhammer Quest (Versión Web 3D) +## Sesión 9: Pulido de Combate, UI de Hechizos y Buffs +**Fecha:** 8 de Enero de 2026 + +### Objetivos +- Resolver la duplicación de animaciones en el ataque de los monstruos. +- Mejorar la interfaz de usuario para el manejo de hechizos (Libro de Hechizos Visual). +- Implementar validaciones de línea de visión (LOS) en el lanzamiento de hechizos. +- Añadir nuevos hechizos ("Piel de Hierro") y sistema de duración de efectos (Buffs). + +### Cambios Realizados + +#### 1. Corrección de Animaciones y Audio +- **Doble Animación**: Se eliminó la llamada redundante a `onEntityHit` dentro de `MonsterAI.js`. Ahora el feedback visual (destello rojo/temblor) se delega exclusivamente a `game.onCombatResult`, unificando el flujo entre héroes y monstruos y evitando que la animación se dispare dos veces. +- **Audio**: Se investigó el retraso en el audio del golpe. Se decidió mantener el sonido actual (`sword1.mp3`) por el momento. + +#### 2. Interfaz de Usuario (UI) +- **Botón de Inventario**: Añadido un botón placeholder "🎒 INVENTARIO" a las fichas de todos los aventureros. +- **Libro de Hechizos (Mago)**: + - Se reemplazó la lista de botones de texto por un sistema visual de cartas. + - Al hacer clic en "HECHIZOS", se despliega una mano de cartas generadas dinámicamente con plantillas (`attack_template`, `defense_template`, `healing_template`). + - Las cartas muestran el coste de poder en la esquina y se oscurecen si no hay maná suficiente. + - Implementado cierre automático al seleccionar o hacer clic fuera. + +#### 3. Sistema de Magia y Buffs +- **Validación LOS**: Corregido bug donde "Bola de Fuego" podía lanzarse a través de muros aunque la previsualización mostrara rojo. Ahora `onCellClick` valida estrictamente la línea de visión antes de ejecutar. +- **Nuevo Hechizo: Piel de Hierro**: + - Coste: 5. Tipo: Defensa. + - Efecto: Otorga +2 a Resistencia durante 1 turno. + - Requiere selección de objetivo (héroe). +- **Sistema de Buffs Temporales**: + - Implementado evento `turn_ended` en `TurnManager`. + - Añadido método `handleEndTurn` en `GameEngine` para gestionar la duración de los efectos. + - Los buffs ahora se limpian automáticamente cuando su duración llega a 0, revirtiendo los cambios en las estadísticas. + +### Estado Actual +El combate se siente mucho más sólido sin las animaciones dobles. La interfaz del mago es ahora visualmente atractiva y funcional. El sistema de magia soporta hechizos de defensa y buffs con duración limitada, abriendo la puerta a mecánicas más complejas. + +### Próximos Pasos +- Implementar la funcionalidad real del Inventario. +- Añadir más cartas/hechizos y refinar el diseño visual de los textos en las cartas. +- Ajustar el timing del sonido de ataque para sincronizarlo perfectamente con la animación de impacto. ## Sesión 8: Sistema de Magia, Audio y Pulido UI (7 Enero 2026) @@ -380,44 +421,4 @@ Establecimiento de la base completa del motor de juego con generación procedime - ✅ Sistema de cámara isométrica - ✅ Carga de texturas y assets -## Sesión 9: Pulido de Combate, UI de Hechizos y Buffs -**Fecha:** 8 de Enero de 2026 -### Objetivos -- Resolver la duplicación de animaciones en el ataque de los monstruos. -- Mejorar la interfaz de usuario para el manejo de hechizos (Libro de Hechizos Visual). -- Implementar validaciones de línea de visión (LOS) en el lanzamiento de hechizos. -- Añadir nuevos hechizos ("Piel de Hierro") y sistema de duración de efectos (Buffs). - -### Cambios Realizados - -#### 1. Corrección de Animaciones y Audio -- **Doble Animación**: Se eliminó la llamada redundante a `onEntityHit` dentro de `MonsterAI.js`. Ahora el feedback visual (destello rojo/temblor) se delega exclusivamente a `game.onCombatResult`, unificando el flujo entre héroes y monstruos y evitando que la animación se dispare dos veces. -- **Audio**: Se investigó el retraso en el audio del golpe. Se decidió mantener el sonido actual (`sword1.mp3`) por el momento. - -#### 2. Interfaz de Usuario (UI) -- **Botón de Inventario**: Añadido un botón placeholder "🎒 INVENTARIO" a las fichas de todos los aventureros. -- **Libro de Hechizos (Mago)**: - - Se reemplazó la lista de botones de texto por un sistema visual de cartas. - - Al hacer clic en "HECHIZOS", se despliega una mano de cartas generadas dinámicamente con plantillas (`attack_template`, `defense_template`, `healing_template`). - - Las cartas muestran el coste de poder en la esquina y se oscurecen si no hay maná suficiente. - - Implementado cierre automático al seleccionar o hacer clic fuera. - -#### 3. Sistema de Magia y Buffs -- **Validación LOS**: Corregido bug donde "Bola de Fuego" podía lanzarse a través de muros aunque la previsualización mostrara rojo. Ahora `onCellClick` valida estrictamente la línea de visión antes de ejecutar. -- **Nuevo Hechizo: Piel de Hierro**: - - Coste: 5. Tipo: Defensa. - - Efecto: Otorga +2 a Resistencia durante 1 turno. - - Requiere selección de objetivo (héroe). -- **Sistema de Buffs Temporales**: - - Implementado evento `turn_ended` en `TurnManager`. - - Añadido método `handleEndTurn` en `GameEngine` para gestionar la duración de los efectos. - - Los buffs ahora se limpian automáticamente cuando su duración llega a 0, revirtiendo los cambios en las estadísticas. - -### Estado Actual -El combate se siente mucho más sólido sin las animaciones dobles. La interfaz del mago es ahora visualmente atractiva y funcional. El sistema de magia soporta hechizos de defensa y buffs con duración limitada, abriendo la puerta a mecánicas más complejas. - -### Próximos Pasos -- Implementar la funcionalidad real del Inventario. -- Añadir más cartas/hechizos y refinar el diseño visual de los textos en las cartas. -- Ajustar el timing del sonido de ataque para sincronizarlo perfectamente con la animación de impacto.