Un juego singleplayer de adivinanza de palabras desarrollado en Kotlin con Jetpack Compose para Android.
Hot and Cold es un juego donde el jugador debe adivinar una palabra secreta. El juego proporciona feedback visual mediante una barra de temperatura que indica qué tan cerca está la palabra ingresada de la palabra objetivo.
- 🎨 UI Moderna con Jetpack Compose y Material Design 3
- 🌡️ Barra de Temperatura animada (Congelado → Frío → Tibio → Caliente → Muy Caliente)
- 🧠 Algoritmo de Similitud usando Distancia de Levenshtein
- 💡 Sistema de Pistas progresivas
- 📊 Historial de Intentos con porcentaje de similitud
- 🏆 Pantalla de Victoria con estadísticas
- 🎯 Arquitectura MVVM con StateFlow
- 🔄 Animaciones Fluidas con Compose Animation
- Kotlin 2.1.0
- Jetpack Compose (BOM 2025.08.00)
- Material Design 3
- Android Gradle Plugin 8.7.3
- ViewModel & Lifecycle
- Kotlin Coroutines & Flow
- Android Studio Ladybug o superior
- Android SDK 24+ (Android 7.0)
- Gradle 8.0+
- JDK 17
- Clona el repositorio:
git clone https://github.com/tuusuario/hot-and-cold-kotlin.git
cd hot-and-cold-kotlin-
Abre el proyecto en Android Studio
-
Sincroniza las dependencias de Gradle
-
Ejecuta la aplicación en un emulador o dispositivo físico
- La aplicación selecciona una palabra aleatoria
- Escribe tu intento en el campo de texto
- Presiona el botón de envío
- Observa la barra de temperatura:
- ❄️ Congelado: 0-20% similar
- 🧊 Frío: 21-40% similar
- 🌡️ Tibio: 41-60% similar
- 🔥 Caliente: 61-80% similar
- 🌋 Muy Caliente: 81-100% similar
- Usa el botón de pista 💡 si necesitas ayuda
- ¡Encuentra la palabra exacta para ganar!
app/
├── data/
│ ├── GameState.kt # Estados del juego
│ └── WordRepository.kt # Lógica de palabras y similitud
├── viewmodel/
│ └── GameViewModel.kt # ViewModel con StateFlow
├── ui/
│ ├── components/
│ │ ├── TemperatureBar.kt # Barra animada
│ │ └── AttemptsList.kt # Lista de intentos
│ ├── screens/
│ │ └── GameScreen.kt # Pantalla principal
│ └── theme/
│ ├── Color.kt # Paleta de colores
│ └── Theme.kt # Tema Material 3
└── MainActivity.kt # Activity principal
- Frozen:
#89CFF0- Azul claro - Cold:
#4A90E2- Azul - Cool:
#9B59B6- Púrpura - Warm:
#E67E22- Naranja - Hot:
#E74C3C- Rojo
- Diferentes niveles de dificultad
- Categorías de palabras temáticas
- Sistema de puntuación y rankings
- Modo multijugador
- Sonidos y efectos de vibración
- Persistencia de estadísticas
- Modo oscuro/claro
- Idiomas adicionales (Español, Inglés, Portugués)
Este proyecto es de código abierto y está disponible bajo la licencia MIT.
Desarrollado con ❤️ por Daniel Khadour 17 de Noviembre del 2025
¡Diviértete jugando y aprendiendo Kotlin + Jetpack Compose! 🚀