Refactor: UIManager modularization and Devlog update
This commit is contained in:
48
DEVLOG.md
48
DEVLOG.md
@@ -1,5 +1,51 @@
|
||||
# Devlog - Warhammer Quest (Versión Web 3D)
|
||||
|
||||
## Sesión 10: Refactorización Arquitectónica de UI
|
||||
**Fecha:** 8 de Enero de 2026
|
||||
|
||||
### Objetivos
|
||||
- Reducir la complejidad del `UIManager.js` (que superaba las 1500 líneas).
|
||||
- Modularizar la interfaz para facilitar el mantenimiento y la escalabilidad.
|
||||
- Separar responsabilidades claras entre HUD, Cartas de Unidad, Feedback, etc.
|
||||
|
||||
### Cambios Realizados
|
||||
|
||||
#### 1. Modularización de UIManager
|
||||
Se ha dividido el monolito `UIManager.js` en 6 componentes especializados ubicados en `src/view/ui/`:
|
||||
|
||||
* **`HUDManager.js`**:
|
||||
* Gestiona elementos estáticos de pantalla (Minimapa, Controles de Cámara, Zoom).
|
||||
* Mantiene el bucle de renderizado del minimapa 2D.
|
||||
* **`UnitCardManager.js`**:
|
||||
* Controla el panel lateral izquierdo con las fichas de Héroes y Monstruos.
|
||||
* Maneja los botones de acción contextual (Atacar, Disparar, Inventario).
|
||||
* **`TurnStatusUI.js`**:
|
||||
* Panel superior central. Muestra Fase actual, Turno y botón de "Fin de Fase".
|
||||
* Visualiza los resultados de la Fase de Poder.
|
||||
* **`PlacementUI.js`**:
|
||||
* Interfaz específica para la colocación de losetas (flechas de control, rotar, confirmar/cancelar).
|
||||
* **`FeedbackUI.js`**:
|
||||
* Sistema centralizado de comunicación con el usuario.
|
||||
* Gestiona Modales, Ventanas de Confirmación y Mensajes Flotantes.
|
||||
* Implementa el **Log de Combate** (anteriormente notificación simple).
|
||||
* **`SpellbookUI.js`**:
|
||||
* Módulo independiente para el libro de hechizos visual del Mago.
|
||||
|
||||
#### 2. UIManager como Orquestador
|
||||
El archivo principal `UIManager.js` se ha reducido drásticamente (~140 líneas). Ahora actúa únicamente como "pegamento":
|
||||
- Inicializa los subsistemas.
|
||||
- Escucha eventos del `GameEngine` (selección de entidades, cambio de fase).
|
||||
- Delega la actualización de la interfaz a los módulos correspondientes.
|
||||
|
||||
### Estado Actual
|
||||
La refactorización es totalmente transparente para el usuario final (la funcionalidad visual se mantiene idéntica), pero el código es ahora robusto, mantenible y listo para crecer sin convertirse en código espagueti.
|
||||
|
||||
### Próximos Pasos
|
||||
- Implementar la Gestión de Inventario real.
|
||||
- Pulir efectos visuales de hechizos y combate.
|
||||
|
||||
---
|
||||
|
||||
## Sesión 9: Pulido de Combate, UI de Hechizos y Buffs
|
||||
**Fecha:** 8 de Enero de 2026
|
||||
|
||||
@@ -420,5 +466,3 @@ Establecimiento de la base completa del motor de juego con generación procedime
|
||||
- ✅ Visualización 3D con Three.js
|
||||
- ✅ Sistema de cámara isométrica
|
||||
- ✅ Carga de texturas y assets
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user