Fix: Tecla B ahora usa transiciones LERP suaves

Problema:
- cycleTheme() cambiaba current_theme_index_ directamente
- Se saltaba todo el sistema de transición LERP
- Resultado: Cambio instantáneo/abrupto con tecla B

Solución:
- cycleTheme() ahora delega a switchToTheme(next_index)
- switchToTheme() maneja snapshot + transición automáticamente
- Resultado: Transición suave de 0.5s con tecla B 

Ahora TODAS las formas de cambiar tema tienen LERP:
 Numpad 1-0: Transición suave
 Tecla B: Transición suave (FIXED)
 DEMO mode: Transición suave

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
2025-10-09 13:36:39 +02:00
parent 0592699a0b
commit f1bafc8a4f

View File

@@ -289,13 +289,11 @@ void ThemeManager::update(float delta_time) {
}
void ThemeManager::cycleTheme() {
// Ciclar al siguiente tema con wraparound
current_theme_index_ = (current_theme_index_ + 1) % static_cast<int>(themes_.size());
// Calcular siguiente tema con wraparound
int next_theme_index = (current_theme_index_ + 1) % static_cast<int>(themes_.size());
// Si es tema dinámico, reiniciar progreso
if (themes_[current_theme_index_]->needsUpdate()) {
themes_[current_theme_index_]->resetProgress();
}
// Usar switchToTheme() para obtener transición LERP automáticamente
switchToTheme(next_theme_index);
}
void ThemeManager::pauseDynamic() {