From e2cebafdbbca93d39ffee8c02c571d8524eba6cc Mon Sep 17 00:00:00 2001 From: freetlab Date: Sat, 9 May 2026 17:24:46 +0200 Subject: [PATCH] =?UTF-8?q?Gamificaci=C3=B3n?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- assets/medals/brasa.png | Bin 0 -> 16311 bytes assets/medals/cincuenta_victorias.png | Bin 0 -> 16100 bytes assets/medals/diez_victorias.png | Bin 0 -> 17050 bytes assets/medals/habitual.png | Bin 0 -> 18421 bytes assets/medals/impostor_habitual.png | Bin 0 -> 15435 bytes assets/medals/incandescente.png | Bin 0 -> 16186 bytes assets/medals/leyenda.png | Bin 0 -> 16482 bytes assets/medals/llama_fuerte.png | Bin 0 -> 16719 bytes assets/medals/llama_suave.png | Bin 0 -> 15950 bytes assets/medals/lobo_faroles.png | Bin 0 -> 17190 bytes assets/medals/novato.png | Bin 0 -> 15322 bytes assets/medals/primer_engano.png | Bin 0 -> 16839 bytes assets/medals/primera_victoria.png | Bin 0 -> 16534 bytes assets/medals/veinticinco_victorias.png | Bin 0 -> 17292 bytes assets/medals/veterano.png | Bin 0 -> 15253 bytes lib/modelos/gamificacion_usuario.dart | 228 ++++++++++++++++++ lib/modelos/usuario.dart | 14 ++ lib/pantallas/pantalla_crear_partida.dart | 6 +- lib/pantallas/pantalla_fin_partida.dart | 74 +++++- .../pantalla_fin_partida_online.dart | 90 ++++++- lib/pantallas/pantalla_gestor_host.dart | 73 +++++- lib/pantallas/pantalla_lobby_host.dart | 27 ++- lib/pantallas/pantalla_principal.dart | 10 +- lib/pantallas/pantalla_unirse.dart | 52 +++- lib/servicios/servicio_nearby.dart | 32 +++ lib/servicios/servicio_perfil_usuario.dart | 61 +++++ lib/tema/componentes_farolero.dart | 188 ++++++++++++--- pubspec.yaml | 1 + test/gamificacion_usuario_test.dart | 79 ++++++ 29 files changed, 877 insertions(+), 58 deletions(-) create mode 100644 assets/medals/brasa.png create mode 100644 assets/medals/cincuenta_victorias.png create mode 100644 assets/medals/diez_victorias.png create mode 100644 assets/medals/habitual.png create mode 100644 assets/medals/impostor_habitual.png create mode 100644 assets/medals/incandescente.png create mode 100644 assets/medals/leyenda.png create mode 100644 assets/medals/llama_fuerte.png create mode 100644 assets/medals/llama_suave.png create mode 100644 assets/medals/lobo_faroles.png create mode 100644 assets/medals/novato.png create mode 100644 assets/medals/primer_engano.png create mode 100644 assets/medals/primera_victoria.png create mode 100644 assets/medals/veinticinco_victorias.png create mode 100644 assets/medals/veterano.png create mode 100644 lib/modelos/gamificacion_usuario.dart create mode 100644 test/gamificacion_usuario_test.dart diff --git a/assets/medals/brasa.png b/assets/medals/brasa.png new file mode 100644 index 0000000000000000000000000000000000000000..3095d39d90efe52d7b0ad5b7ba7edb6d4b1fa8d3 GIT binary patch literal 16311 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 literal 0 HcmV?d00001 diff --git a/assets/medals/cincuenta_victorias.png b/assets/medals/cincuenta_victorias.png new file mode 100644 index 0000000000000000000000000000000000000000..d8e3775016165e07ebeaefe904b5410702ff582e GIT binary patch literal 16100 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 literal 0 HcmV?d00001 diff --git a/assets/medals/diez_victorias.png b/assets/medals/diez_victorias.png new file mode 100644 index 0000000000000000000000000000000000000000..e8b75f5e5ef98bebfe540d8f39326258f1f31c50 GIT binary patch literal 17050 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 XHDW|(bAi7n0n$|0Rr{p!(D(lUxzBf5 literal 0 HcmV?d00001 diff --git a/assets/medals/habitual.png b/assets/medals/habitual.png new file mode 100644 index 0000000000000000000000000000000000000000..5d18c66a59a19057a55cf09cda2c960691b4e4c1 GIT binary patch literal 18421 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ὑ-?Ea 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 literal 0 HcmV?d00001 diff --git a/assets/medals/impostor_habitual.png b/assets/medals/impostor_habitual.png new file mode 100644 index 0000000000000000000000000000000000000000..60c138c8c6745755726c895af1b13dc753c788aa GIT binary patch literal 15435 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 aIQJ%vHt37H2KWIma7SHVt>U(A$o~VSv|um* literal 0 HcmV?d00001 diff --git a/assets/medals/incandescente.png b/assets/medals/incandescente.png new file mode 100644 index 0000000000000000000000000000000000000000..453118386356d59d49113c75f3cf566a11f51071 GIT binary patch literal 16186 zcmbWecRbba|37~0m64s%ksY#1A{?@1Z)KM<3MHF!%!KR}vUfI#tYczIc# ze$T_}{d&JYzdyf!bjwNCb*|^*dW`$y{`3ilJf+X_QSlf1UD$0tX= zbLhr%3Eh*A3pZ{>+WtN|pEGgaGH$Utm!RX-{2*%65kmI=_=6nTe%0A@w{H%M>UCpS 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 z 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 VC2fw$1Mj15M!rgtL)1NWh>eD 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 YDo-;!5K0672m(k`O;5E<`C-`q0~0a?mjD0& literal 0 HcmV?d00001 diff --git a/assets/medals/llama_suave.png b/assets/medals/llama_suave.png new file mode 100644 index 0000000000000000000000000000000000000000..978c1898d0c727e5a00f67cac73c0cccf611c359 GIT binary patch literal 15950 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 a${c%M*nw|-4}1n3q^6>!TypnG;Qs*zyI^bp literal 0 HcmV?d00001 diff --git a/assets/medals/lobo_faroles.png b/assets/medals/lobo_faroles.png new file mode 100644 index 0000000000000000000000000000000000000000..80100fdbb46055994bd7fc0f78ff494bac188243 GIT binary patch literal 17190 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 A5C8xG literal 0 HcmV?d00001 diff --git a/assets/medals/novato.png b/assets/medals/novato.png new file mode 100644 index 0000000000000000000000000000000000000000..81a2fd80fb0df7061fc27c3f94283447c52f499a GIT binary patch literal 15322 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 g|J?)>5vSM%Zl<#kFzf{QjQGgFpnpZwWw` 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 literal 0 HcmV?d00001 diff --git a/assets/medals/veinticinco_victorias.png b/assets/medals/veinticinco_victorias.png new file mode 100644 index 0000000000000000000000000000000000000000..f4ce62a431ad5bd4bf1ebbf4f3e576b1889c2898 GIT binary patch literal 17292 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 Dz=@}> literal 0 HcmV?d00001 diff --git a/lib/modelos/gamificacion_usuario.dart b/lib/modelos/gamificacion_usuario.dart new file mode 100644 index 0000000..b9b471e --- /dev/null +++ b/lib/modelos/gamificacion_usuario.dart @@ -0,0 +1,228 @@ +class MedallaUsuario { + final String id; + final String emoji; + final String assetPath; + final String nombre; + final String descripcion; + + const MedallaUsuario({ + required this.id, + required this.emoji, + required this.assetPath, + required this.nombre, + required this.descripcion, + }); +} + +class ResumenGamificacionUsuario { + final int fuego; + final List medallas; + + const ResumenGamificacionUsuario({ + required this.fuego, + required this.medallas, + }); + + Map toJson() => { + 'fuego': fuego, + 'medallas': medallas, + }; + + factory ResumenGamificacionUsuario.fromJson(Map json) { + return ResumenGamificacionUsuario( + fuego: (json['fuego'] as num?)?.toInt() ?? 0, + medallas: (json['medallas'] as List? ?? const []) + .map((valor) => valor.toString()) + .toList(), + ); + } +} + +class ProgresoGamificacionUsuario { + final EstadisticasPerfilUsuario antes; + final EstadisticasPerfilUsuario despues; + final List nuevasMedallas; + + const ProgresoGamificacionUsuario({ + required this.antes, + required this.despues, + required this.nuevasMedallas, + }); + + int get incrementoFuego => despues.fuego - antes.fuego; +} + +class EstadisticasPerfilUsuario { + final int partidasJugadas; + final int partidasGanadas; + final int partidasPerdidas; + final int partidasComoImpostor; + final int victoriasComoImpostor; + final String? fechaUltimaPartidaIso; + final int partidasHoy; + final int subidaFuegoHoy; + final int fuego; + + const EstadisticasPerfilUsuario({ + this.partidasJugadas = 0, + this.partidasGanadas = 0, + this.partidasPerdidas = 0, + this.partidasComoImpostor = 0, + this.victoriasComoImpostor = 0, + this.fechaUltimaPartidaIso, + this.partidasHoy = 0, + this.subidaFuegoHoy = 0, + this.fuego = 0, + }); + + static const catalogoMedallas = { + 'novato': MedallaUsuario(id: 'novato', emoji: '🎲', assetPath: 'assets/medals/novato.png', nombre: 'Novato', descripcion: 'Jugó su primera partida.'), + 'habitual': MedallaUsuario(id: 'habitual', emoji: '🧭', assetPath: 'assets/medals/habitual.png', nombre: 'Habitual', descripcion: 'Jugó 10 partidas.'), + 'veterano': MedallaUsuario(id: 'veterano', emoji: '🏛️', assetPath: 'assets/medals/veterano.png', nombre: 'Veterano', descripcion: 'Jugó 50 partidas.'), + 'leyenda': MedallaUsuario(id: 'leyenda', emoji: '👑', assetPath: 'assets/medals/leyenda.png', nombre: 'Leyenda', descripcion: 'Jugó 100 partidas.'), + 'primera_victoria': MedallaUsuario(id: 'primera_victoria', emoji: '🥉', assetPath: 'assets/medals/primera_victoria.png', nombre: 'Primera victoria', descripcion: 'Ganó una partida.'), + 'diez_victorias': MedallaUsuario(id: 'diez_victorias', emoji: '🥈', assetPath: 'assets/medals/diez_victorias.png', nombre: 'Diez victorias', descripcion: 'Ganó 10 partidas.'), + 'veinticinco_victorias': MedallaUsuario(id: 'veinticinco_victorias', emoji: '🥇', assetPath: 'assets/medals/veinticinco_victorias.png', nombre: 'Veinticinco victorias', descripcion: 'Ganó 25 partidas.'), + 'cincuenta_victorias': MedallaUsuario(id: 'cincuenta_victorias', emoji: '💎', assetPath: 'assets/medals/cincuenta_victorias.png', nombre: 'Cincuenta victorias', descripcion: 'Ganó 50 partidas.'), + 'primer_engano': MedallaUsuario(id: 'primer_engano', emoji: '🎭', assetPath: 'assets/medals/primer_engano.png', nombre: 'Primer engaño', descripcion: 'Ganó como impostor.'), + 'impostor_habitual': MedallaUsuario(id: 'impostor_habitual', emoji: '🃏', assetPath: 'assets/medals/impostor_habitual.png', nombre: 'Impostor habitual', descripcion: 'Ganó 5 partidas como impostor.'), + 'lobo_faroles': MedallaUsuario(id: 'lobo_faroles', emoji: '🐺', assetPath: 'assets/medals/lobo_faroles.png', nombre: 'Lobo entre faroles', descripcion: 'Ganó 15 partidas como impostor.'), + 'brasa': MedallaUsuario(id: 'brasa', emoji: '♨️', assetPath: 'assets/medals/brasa.png', nombre: 'Brasa', descripcion: 'Mantiene algo de fuego reciente.'), + 'llama_suave': MedallaUsuario(id: 'llama_suave', emoji: '🔥', assetPath: 'assets/medals/llama_suave.png', nombre: 'Llama suave', descripcion: 'Está jugando con cierta asiduidad.'), + 'llama_fuerte': MedallaUsuario(id: 'llama_fuerte', emoji: '🔥', assetPath: 'assets/medals/llama_fuerte.png', nombre: 'Llama fuerte', descripcion: 'Tiene una asiduidad alta.'), + 'incandescente': MedallaUsuario(id: 'incandescente', emoji: '🌋', assetPath: 'assets/medals/incandescente.png', nombre: 'Incandescente', descripcion: 'Tiene el fuego al máximo.'), + }; + + EstadisticasPerfilUsuario copiar({ + int? partidasJugadas, + int? partidasGanadas, + int? partidasPerdidas, + int? partidasComoImpostor, + int? victoriasComoImpostor, + String? fechaUltimaPartidaIso, + bool limpiarFechaUltimaPartida = false, + int? partidasHoy, + int? subidaFuegoHoy, + int? fuego, + }) { + return EstadisticasPerfilUsuario( + partidasJugadas: partidasJugadas ?? this.partidasJugadas, + partidasGanadas: partidasGanadas ?? this.partidasGanadas, + partidasPerdidas: partidasPerdidas ?? this.partidasPerdidas, + partidasComoImpostor: partidasComoImpostor ?? this.partidasComoImpostor, + victoriasComoImpostor: victoriasComoImpostor ?? this.victoriasComoImpostor, + fechaUltimaPartidaIso: limpiarFechaUltimaPartida ? null : (fechaUltimaPartidaIso ?? this.fechaUltimaPartidaIso), + partidasHoy: partidasHoy ?? this.partidasHoy, + subidaFuegoHoy: subidaFuegoHoy ?? this.subidaFuegoHoy, + fuego: (fuego ?? this.fuego).clamp(0, 100).toInt(), + ); + } + + EstadisticasPerfilUsuario registrarPartida({ + required bool victoria, + bool comoImpostor = false, + bool victoriaComoImpostor = false, + DateTime? fecha, + }) { + final momento = fecha ?? DateTime.now(); + final normalizada = DateTime(momento.year, momento.month, momento.day); + final anterior = _aplicarPasoDeDias(normalizada); + final ganancia = anterior._gananciaFuegoSiguientePartida(); + return anterior.copiar( + partidasJugadas: anterior.partidasJugadas + 1, + partidasGanadas: anterior.partidasGanadas + (victoria ? 1 : 0), + partidasPerdidas: anterior.partidasPerdidas + (victoria ? 0 : 1), + partidasComoImpostor: anterior.partidasComoImpostor + (comoImpostor ? 1 : 0), + victoriasComoImpostor: anterior.victoriasComoImpostor + (victoriaComoImpostor ? 1 : 0), + fechaUltimaPartidaIso: normalizada.toIso8601String(), + partidasHoy: anterior.partidasHoy + 1, + subidaFuegoHoy: anterior.subidaFuegoHoy + ganancia, + fuego: anterior.fuego + ganancia, + ); + } + + EstadisticasPerfilUsuario _aplicarPasoDeDias(DateTime hoy) { + final ultima = fechaUltimaPartidaIso == null ? null : DateTime.tryParse(fechaUltimaPartidaIso!); + if (ultima == null) return copiar(partidasHoy: 0, subidaFuegoHoy: 0); + final ultimoDia = DateTime(ultima.year, ultima.month, ultima.day); + final diferenciaDias = hoy.difference(ultimoDia).inDays; + if (diferenciaDias <= 0) return this; + final diasSinJugar = diferenciaDias - 1; + var fuegoActual = fuego; + for (var i = 1; i <= diasSinJugar; i++) { + fuegoActual -= i == 1 ? 3 : (i == 2 ? 5 : 7); + } + return copiar(partidasHoy: 0, subidaFuegoHoy: 0, fuego: fuegoActual); + } + + int _gananciaFuegoSiguientePartida() { + final numeroPartidaDelDia = partidasHoy + 1; + final base = switch (numeroPartidaDelDia) { 1 => 6, 2 => 5, 3 => 4, 4 => 3, 5 => 2, _ => 1 }; + final restanteHoy = (25 - subidaFuegoHoy).clamp(0, 25).toInt(); + return base.clamp(0, restanteHoy).toInt(); + } + + List get medallas { + final resultado = []; + if (partidasJugadas >= 1) resultado.add('novato'); + if (partidasJugadas >= 10) resultado.add('habitual'); + if (partidasJugadas >= 50) resultado.add('veterano'); + if (partidasJugadas >= 100) resultado.add('leyenda'); + if (partidasGanadas >= 1) resultado.add('primera_victoria'); + if (partidasGanadas >= 10) resultado.add('diez_victorias'); + if (partidasGanadas >= 25) resultado.add('veinticinco_victorias'); + if (partidasGanadas >= 50) resultado.add('cincuenta_victorias'); + if (victoriasComoImpostor >= 1) resultado.add('primer_engano'); + if (victoriasComoImpostor >= 5) resultado.add('impostor_habitual'); + if (victoriasComoImpostor >= 15) resultado.add('lobo_faroles'); + if (fuego >= 100) { + resultado.add('incandescente'); + } else if (fuego >= 50) { + resultado.add('llama_fuerte'); + } else if (fuego >= 25) { + resultado.add('llama_suave'); + } else if (fuego > 0) { + resultado.add('brasa'); + } + return resultado; + } + + List get medallasPrincipales { + final ids = medallas; + const prioridad = [ + 'incandescente', 'llama_fuerte', 'llama_suave', 'brasa', + 'leyenda', 'veterano', 'habitual', 'novato', + 'cincuenta_victorias', 'veinticinco_victorias', 'diez_victorias', 'primera_victoria', + 'lobo_faroles', 'impostor_habitual', 'primer_engano', + ]; + return prioridad.where(ids.contains).take(3).toList(); + } + + ResumenGamificacionUsuario get resumen => ResumenGamificacionUsuario(fuego: fuego, medallas: medallasPrincipales); + + Map toJson() => { + 'partidasJugadas': partidasJugadas, + 'partidasGanadas': partidasGanadas, + 'partidasPerdidas': partidasPerdidas, + 'partidasComoImpostor': partidasComoImpostor, + 'victoriasComoImpostor': victoriasComoImpostor, + if (fechaUltimaPartidaIso != null) 'fechaUltimaPartidaIso': fechaUltimaPartidaIso, + 'partidasHoy': partidasHoy, + 'subidaFuegoHoy': subidaFuegoHoy, + 'fuego': fuego, + }; + + factory EstadisticasPerfilUsuario.fromJson(Map json) { + return EstadisticasPerfilUsuario( + partidasJugadas: (json['partidasJugadas'] as num?)?.toInt() ?? 0, + partidasGanadas: (json['partidasGanadas'] as num?)?.toInt() ?? 0, + partidasPerdidas: (json['partidasPerdidas'] as num?)?.toInt() ?? 0, + partidasComoImpostor: (json['partidasComoImpostor'] as num?)?.toInt() ?? 0, + victoriasComoImpostor: (json['victoriasComoImpostor'] as num?)?.toInt() ?? 0, + fechaUltimaPartidaIso: json['fechaUltimaPartidaIso'] as String?, + partidasHoy: (json['partidasHoy'] as num?)?.toInt() ?? 0, + subidaFuegoHoy: (json['subidaFuegoHoy'] as num?)?.toInt() ?? 0, + fuego: (json['fuego'] as num?)?.toInt() ?? 0, + ); + } +} diff --git a/lib/modelos/usuario.dart b/lib/modelos/usuario.dart index f658c98..90c70f7 100644 --- a/lib/modelos/usuario.dart +++ b/lib/modelos/usuario.dart @@ -7,6 +7,8 @@ class Usuario { final String? foto; final String? creadoPorClienteId; final String? clienteIdSeleccionado; + final int fuego; + final List medallas; Usuario({ required this.id, @@ -16,6 +18,8 @@ class Usuario { this.foto, this.creadoPorClienteId, this.clienteIdSeleccionado, + this.fuego = 0, + this.medallas = const [], }); bool get estaSeleccionado => clienteIdSeleccionado != null; @@ -29,6 +33,8 @@ class Usuario { String? foto, String? creadoPorClienteId, String? clienteIdSeleccionado, + int? fuego, + List? medallas, bool liberarSeleccion = false, }) { return Usuario( @@ -41,6 +47,8 @@ class Usuario { clienteIdSeleccionado: liberarSeleccion ? null : (clienteIdSeleccionado ?? this.clienteIdSeleccionado), + fuego: fuego ?? this.fuego, + medallas: medallas ?? this.medallas, ); } @@ -53,6 +61,8 @@ class Usuario { if (creadoPorClienteId != null) 'creadoPorClienteId': creadoPorClienteId, if (clienteIdSeleccionado != null) 'clienteIdSeleccionado': clienteIdSeleccionado, + if (fuego > 0) 'fuego': fuego, + if (medallas.isNotEmpty) 'medallas': medallas, }; factory Usuario.fromJson(Map json) => Usuario( @@ -63,5 +73,9 @@ class Usuario { foto: json['foto'] as String?, creadoPorClienteId: json['creadoPorClienteId'] as String?, clienteIdSeleccionado: json['clienteIdSeleccionado'] as String?, + fuego: (json['fuego'] as num?)?.toInt() ?? 0, + medallas: (json['medallas'] as List? ?? const []) + .map((valor) => valor.toString()) + .toList(), ); } diff --git a/lib/pantallas/pantalla_crear_partida.dart b/lib/pantallas/pantalla_crear_partida.dart index 4323b8e..334fb12 100644 --- a/lib/pantallas/pantalla_crear_partida.dart +++ b/lib/pantallas/pantalla_crear_partida.dart @@ -145,13 +145,17 @@ class _PantallaCrearPartidaState extends State { // 3. Iniciar host en Nearby if (!mounted) return; final nearby = context.read(); - final perfil = context.read().perfil; + final servicioPerfil = context.read(); + final perfil = servicioPerfil.perfil; + final gamificacion = servicioPerfil.resumenGamificacion; final nombreSala = '${nombre.trim()} - Farolero'; final ok = await nearby.iniciarHost( nombreSala, nombre.trim(), miNick: perfil.nick, miAvatar: perfil.avatarAsset, + miFuego: gamificacion.fuego, + miMedallas: gamificacion.medallas, ); if (!ok) { diff --git a/lib/pantallas/pantalla_fin_partida.dart b/lib/pantallas/pantalla_fin_partida.dart index 4ac1193..8b1aa8e 100644 --- a/lib/pantallas/pantalla_fin_partida.dart +++ b/lib/pantallas/pantalla_fin_partida.dart @@ -3,8 +3,11 @@ import 'package:farolero/l10n/generated/app_localizations.dart'; import 'package:provider/provider.dart'; import '../estado/estado_juego.dart'; import '../modelos/palabra.dart'; +import '../modelos/gamificacion_usuario.dart'; import '../servicios/servicio_historial_partidas.dart'; import '../servicios/servicio_nearby.dart'; +import '../servicios/servicio_perfil_usuario.dart'; +import '../tema/componentes_farolero.dart'; import '../tema/tema_app.dart'; import 'pantalla_principal.dart'; import 'pantalla_ver_palabra.dart'; @@ -18,6 +21,7 @@ class PantallaFinPartida extends StatefulWidget { class _PantallaFinPartidaState extends State { bool _guardada = false; + ProgresoGamificacionUsuario? _progreso; @override Widget build(BuildContext context) { @@ -31,9 +35,15 @@ class _PantallaFinPartidaState extends State { partida.jugadores.where((j) => j.esImpostor).toList(); if (!_guardada && partida.ganador != null) { _guardada = true; - WidgetsBinding.instance.addPostFrameCallback((_) { + WidgetsBinding.instance.addPostFrameCallback((_) async { if (mounted) { - context.read().guardarPartida(partida); + final historial = context.read(); + final perfil = context.read(); + await historial.guardarPartida(partida); + final progreso = await perfil.registrarPartidaCompletada( + victoria: ganaronJugadores, + ); + if (mounted) setState(() => _progreso = progreso); } }); } @@ -91,6 +101,10 @@ class _PantallaFinPartidaState extends State { ), ), const SizedBox(height: 24), + if (_progreso != null) ...[ + _TarjetaProgresoGamificacion(progreso: _progreso!), + const SizedBox(height: 16), + ], // Palabra secreta Card( @@ -260,3 +274,59 @@ class _PantallaFinPartidaState extends State { ); } } + +class _TarjetaProgresoGamificacion extends StatelessWidget { + final ProgresoGamificacionUsuario progreso; + + const _TarjetaProgresoGamificacion({required this.progreso}); + + @override + Widget build(BuildContext context) { + final nuevas = progreso.nuevasMedallas; + return Card( + child: Padding( + padding: const EdgeInsets.all(20), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text('Tu progreso', style: Theme.of(context).textTheme.titleMedium), + const SizedBox(height: 12), + Row( + children: [ + const Text('🔥', style: TextStyle(fontSize: 24)), + const SizedBox(width: 10), + Expanded( + child: ClipRRect( + borderRadius: BorderRadius.circular(6), + child: LinearProgressIndicator( + value: progreso.despues.fuego / 100, + minHeight: 8, + color: TemaApp.colorNaranja, + backgroundColor: Colors.black.withValues(alpha: 0.35), + ), + ), + ), + const SizedBox(width: 10), + Text('${progreso.despues.fuego}%'), + ], + ), + const SizedBox(height: 8), + Text( + progreso.incrementoFuego >= 0 + ? '+${progreso.incrementoFuego}% de fuego' + : '${progreso.incrementoFuego}% de fuego', + style: Theme.of(context).textTheme.bodySmall, + ), + if (nuevas.isNotEmpty) ...[ + const SizedBox(height: 12), + Text('Nuevas medallas', + style: Theme.of(context).textTheme.bodyMedium), + const SizedBox(height: 6), + MedallasCompactasFarolero(ids: nuevas, max: nuevas.length), + ], + ], + ), + ), + ); + } +} diff --git a/lib/pantallas/pantalla_fin_partida_online.dart b/lib/pantallas/pantalla_fin_partida_online.dart index a502f20..a12e70b 100644 --- a/lib/pantallas/pantalla_fin_partida_online.dart +++ b/lib/pantallas/pantalla_fin_partida_online.dart @@ -2,10 +2,13 @@ import 'package:flutter/material.dart'; import 'package:farolero/l10n/generated/app_localizations.dart'; import 'package:provider/provider.dart'; import '../modelos/inicio_partida_multijugador.dart'; +import '../modelos/gamificacion_usuario.dart'; import '../modelos/palabra.dart'; import '../modelos/snapshot_partida_online.dart'; import '../servicios/servicio_historial_partidas.dart'; import '../servicios/servicio_nearby.dart'; +import '../servicios/servicio_perfil_usuario.dart'; +import '../tema/componentes_farolero.dart'; import '../tema/tema_app.dart'; import 'pantalla_notas_online.dart'; import 'pantalla_principal.dart'; @@ -30,6 +33,7 @@ class PantallaFinPartidaOnline extends StatefulWidget { class _PantallaFinPartidaOnlineState extends State { bool _guardada = false; + ProgresoGamificacionUsuario? _progreso; @override Widget build(BuildContext context) { @@ -41,11 +45,18 @@ class _PantallaFinPartidaOnlineState extends State { if (!_guardada && snapshot.ganador != null) { _guardada = true; - WidgetsBinding.instance.addPostFrameCallback((_) { + WidgetsBinding.instance.addPostFrameCallback((_) async { if (mounted) { - context - .read() - .guardarSnapshotOnline(snapshot); + final historial = context.read(); + final perfil = context.read(); + await historial.guardarSnapshotOnline(snapshot); + final progreso = await perfil.registrarPartidaCompletada( + victoria: _perfilLocalGano(snapshot, jugadoresControlados), + comoImpostor: jugadoresControlados.any((j) => j.esImpostor), + victoriaComoImpostor: snapshot.ganador == 'impostores' && + jugadoresControlados.any((j) => j.esImpostor), + ); + if (mounted) setState(() => _progreso = progreso); } }); } @@ -132,6 +143,10 @@ class _PantallaFinPartidaOnlineState extends State { ), ), const SizedBox(height: 24), + if (_progreso != null) ...[ + _TarjetaProgresoGamificacion(progreso: _progreso!), + const SizedBox(height: 16), + ], Card( child: Padding( padding: const EdgeInsets.all(20), @@ -254,4 +269,71 @@ class _PantallaFinPartidaOnlineState extends State { ), ); } + + bool _perfilLocalGano( + SnapshotPartidaOnline snapshot, + List jugadoresControlados, + ) { + if (jugadoresControlados.isEmpty) return snapshot.ganador == 'jugadores'; + final ganaronImpostores = snapshot.ganador == 'impostores'; + return jugadoresControlados.any( + (jugador) => jugador.esImpostor ? ganaronImpostores : !ganaronImpostores, + ); + } +} + +class _TarjetaProgresoGamificacion extends StatelessWidget { + final ProgresoGamificacionUsuario progreso; + + const _TarjetaProgresoGamificacion({required this.progreso}); + + @override + Widget build(BuildContext context) { + final nuevas = progreso.nuevasMedallas; + return Card( + child: Padding( + padding: const EdgeInsets.all(20), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text('Tu progreso', style: Theme.of(context).textTheme.titleMedium), + const SizedBox(height: 12), + Row( + children: [ + const Text('🔥', style: TextStyle(fontSize: 24)), + const SizedBox(width: 10), + Expanded( + child: ClipRRect( + borderRadius: BorderRadius.circular(6), + child: LinearProgressIndicator( + value: progreso.despues.fuego / 100, + minHeight: 8, + color: TemaApp.colorNaranja, + backgroundColor: Colors.black.withValues(alpha: 0.35), + ), + ), + ), + const SizedBox(width: 10), + Text('${progreso.despues.fuego}%'), + ], + ), + const SizedBox(height: 8), + Text( + progreso.incrementoFuego >= 0 + ? '+${progreso.incrementoFuego}% de fuego' + : '${progreso.incrementoFuego}% de fuego', + style: Theme.of(context).textTheme.bodySmall, + ), + if (nuevas.isNotEmpty) ...[ + const SizedBox(height: 12), + Text('Nuevas medallas', + style: Theme.of(context).textTheme.bodyMedium), + const SizedBox(height: 6), + MedallasCompactasFarolero(ids: nuevas, max: nuevas.length), + ], + ], + ), + ), + ); + } } diff --git a/lib/pantallas/pantalla_gestor_host.dart b/lib/pantallas/pantalla_gestor_host.dart index 75ec5d7..a5fd006 100644 --- a/lib/pantallas/pantalla_gestor_host.dart +++ b/lib/pantallas/pantalla_gestor_host.dart @@ -4,12 +4,14 @@ import 'package:flutter/material.dart'; import 'package:farolero/l10n/generated/app_localizations.dart'; import 'package:provider/provider.dart'; import '../estado/estado_juego.dart'; +import '../modelos/gamificacion_usuario.dart'; import '../modelos/inicio_partida_multijugador.dart'; import '../modelos/jugador.dart'; import '../modelos/partida.dart'; import '../modelos/snapshot_partida_online.dart'; import '../servicios/servicio_historial_partidas.dart'; import '../servicios/servicio_nearby.dart'; +import '../servicios/servicio_perfil_usuario.dart'; import '../tema/componentes_farolero.dart'; import '../tema/tema_app.dart'; import 'pantalla_notas_online.dart'; @@ -31,6 +33,7 @@ class _PantallaGestorHostState extends State { int _segundosRestantes = 0; bool _hostListo = false; bool _partidaOnlineGuardada = false; + ProgresoGamificacionUsuario? _progresoGamificacion; String? _primerTurnoId; String? _primerTurnoNombre; final Map _clientesListos = {}; @@ -695,7 +698,7 @@ class _PantallaGestorHostState extends State { label: Text( _hostYaVoto(context) ? 'Votos del host registrados' - : 'Votar por los jugadores de este m?vil', + : 'Votar por los jugadores de este móvil', ), ), ), @@ -934,12 +937,57 @@ class _PantallaGestorHostState extends State { partida == null ? '' : l10n.theWordWas(partida.palabraSecreta), textAlign: TextAlign.center, ), + if (_progresoGamificacion != null) ...[ + const SizedBox(height: 16), + _buildProgresoGamificacion(context, _progresoGamificacion!), + ], ], ), ), ); } + Widget _buildProgresoGamificacion( + BuildContext context, + ProgresoGamificacionUsuario progreso, + ) { + final nuevas = progreso.nuevasMedallas; + return PanelFarolero( + padding: const EdgeInsets.all(14), + color: TemaApp.colorSuperficie.withValues(alpha: 0.82), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text('Tu progreso', style: Theme.of(context).textTheme.titleMedium), + const SizedBox(height: 10), + Row( + children: [ + const Text('🔥', style: TextStyle(fontSize: 22)), + const SizedBox(width: 8), + Expanded( + child: ClipRRect( + borderRadius: BorderRadius.circular(6), + child: LinearProgressIndicator( + value: progreso.despues.fuego / 100, + minHeight: 8, + color: TemaApp.colorNaranja, + backgroundColor: Colors.black.withValues(alpha: 0.35), + ), + ), + ), + const SizedBox(width: 8), + Text('${progreso.despues.fuego}%'), + ], + ), + if (nuevas.isNotEmpty) ...[ + const SizedBox(height: 10), + MedallasCompactasFarolero(ids: nuevas, max: nuevas.length), + ], + ], + ), + ); + } + bool _hostYaVoto(BuildContext context) { final estado = context.read(); final sala = context.read().estadoSala; @@ -1182,7 +1230,28 @@ class _PantallaGestorHostState extends State { final partida = context.read().partida; if (partida?.ganador == null) return; _partidaOnlineGuardada = true; - await context.read().guardarPartida(partida!); + final historial = context.read(); + final nearby = context.read(); + final perfil = context.read(); + await historial.guardarPartida(partida!); + final jugadoresHost = _jugadoresHostControlados( + partida, + nearby, + ); + final ganaronImpostores = partida.ganador == 'impostores'; + final victoria = jugadoresHost.isEmpty + ? partida.ganador == 'jugadores' + : jugadoresHost.any( + (jugador) => + jugador.esImpostor ? ganaronImpostores : !ganaronImpostores, + ); + final progreso = await perfil.registrarPartidaCompletada( + victoria: victoria, + comoImpostor: jugadoresHost.any((j) => j.esImpostor), + victoriaComoImpostor: + ganaronImpostores && jugadoresHost.any((j) => j.esImpostor), + ); + if (mounted) setState(() => _progresoGamificacion = progreso); } Future _iniciarAdivinanzaOnline(BuildContext context) async { diff --git a/lib/pantallas/pantalla_lobby_host.dart b/lib/pantallas/pantalla_lobby_host.dart index 7179c05..34f9952 100644 --- a/lib/pantallas/pantalla_lobby_host.dart +++ b/lib/pantallas/pantalla_lobby_host.dart @@ -217,15 +217,26 @@ class _PantallaLobbyHostState extends State { ? TemaApp.colorNaranja : TemaApp.colorAzul, size: 38, + fuego: usuario.fuego, + medallas: usuario.medallas, ), ), title: Text(usuario.nombre), - subtitle: Text( - seleccionadoPorMi - ? 'Seleccionado por este móvil' - : seleccionadoPorOtro - ? 'Seleccionado por otro cliente' - : 'Disponible', + subtitle: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text( + seleccionadoPorMi + ? 'Seleccionado por este móvil' + : seleccionadoPorOtro + ? 'Seleccionado por otro cliente' + : 'Disponible', + ), + if (usuario.medallas.isNotEmpty) ...[ + const SizedBox(height: 4), + MedallasCompactasFarolero(ids: usuario.medallas), + ], + ], ), trailing: Row( mainAxisSize: MainAxisSize.min, @@ -300,11 +311,15 @@ class _PantallaLobbyHostState extends State { ); if (nombre != null && nombre.trim().isNotEmpty) { + final gamificacion = + context.read().resumenGamificacion; await nearby.crearUsuarioSala( nombre.trim(), seleccionar: true, nick: perfil.nick, avatar: perfil.avatarAsset, + fuego: gamificacion.fuego, + medallas: gamificacion.medallas, ); } } diff --git a/lib/pantallas/pantalla_principal.dart b/lib/pantallas/pantalla_principal.dart index 90674ae..ade0ad1 100644 --- a/lib/pantallas/pantalla_principal.dart +++ b/lib/pantallas/pantalla_principal.dart @@ -16,7 +16,9 @@ class PantallaPrincipal extends StatelessWidget { @override Widget build(BuildContext context) { final l10n = AppLocalizations.of(context)!; - final perfil = context.watch().perfil; + final servicioPerfil = context.watch(); + final perfil = servicioPerfil.perfil; + final gamificacion = servicioPerfil.resumenGamificacion; return Scaffold( body: FondoFarolero( @@ -35,6 +37,8 @@ class PantallaPrincipal extends StatelessWidget { texto: perfil.nombre.substring(0, 1).toUpperCase(), assetPath: perfil.avatarAsset, size: 48, + fuego: gamificacion.fuego, + medallas: gamificacion.medallas, ), const SizedBox(width: 10), Expanded( @@ -53,9 +57,9 @@ class PantallaPrincipal extends StatelessWidget { ClipRRect( borderRadius: BorderRadius.circular(4), child: LinearProgressIndicator( - value: 0.68, + value: gamificacion.fuego / 100, minHeight: 4, - color: TemaApp.colorPurpura, + color: TemaApp.colorNaranja, backgroundColor: Colors.black.withValues(alpha: 0.45), ), ), diff --git a/lib/pantallas/pantalla_unirse.dart b/lib/pantallas/pantalla_unirse.dart index 8733405..a22f46f 100644 --- a/lib/pantallas/pantalla_unirse.dart +++ b/lib/pantallas/pantalla_unirse.dart @@ -314,11 +314,15 @@ class _PantallaUnirseState extends State { if (!mounted) return; final nearby = context.read(); - final perfil = context.read().perfil; + final servicioPerfil = context.read(); + final perfil = servicioPerfil.perfil; + final gamificacion = servicioPerfil.resumenGamificacion; final ok = await nearby.buscarHosts( _nombreController.text.trim(), miNick: perfil.nick, miAvatar: perfil.avatarAsset, + miFuego: gamificacion.fuego, + miMedallas: gamificacion.medallas, ); if (ok) { @@ -342,7 +346,9 @@ class _PantallaUnirseState extends State { }); final nearby = context.read(); - final perfil = context.read().perfil; + final servicioPerfil = context.read(); + final perfil = servicioPerfil.perfil; + final gamificacion = servicioPerfil.resumenGamificacion; // Parar discovery antes de conectar await nearby.pararBusqueda(); final ok = await nearby.conectarAHost( @@ -350,6 +356,8 @@ class _PantallaUnirseState extends State { _nombreController.text.trim(), miNick: perfil.nick, miAvatar: perfil.avatarAsset, + miFuego: gamificacion.fuego, + miMedallas: gamificacion.medallas, ); if (!ok && mounted) { @@ -389,11 +397,15 @@ class _PantallaUnirseState extends State { // Iniciar búsqueda para que Nearby encuentre al host final nearby = context.read(); if (!nearby.buscando) { - final perfil = context.read().perfil; + final servicioPerfil = context.read(); + final perfil = servicioPerfil.perfil; + final gamificacion = servicioPerfil.resumenGamificacion; await nearby.buscarHosts( _nombreController.text.trim(), miNick: perfil.nick, miAvatar: perfil.avatarAsset, + miFuego: gamificacion.fuego, + miMedallas: gamificacion.medallas, ); } return; @@ -835,11 +847,15 @@ class _PantallaUnirseState extends State { ); if (nombre != null && nombre.trim().isNotEmpty) { + final gamificacion = + context.read().resumenGamificacion; await nearby.crearUsuarioSala( nombre.trim(), seleccionar: true, nick: perfil.nick, avatar: perfil.avatarAsset, + fuego: gamificacion.fuego, + medallas: gamificacion.medallas, ); } } @@ -861,17 +877,29 @@ class _PantallaUnirseState extends State { usuario.estaSeleccionado && usuario.clienteIdSeleccionado != miClientId; return ListTile( - leading: Text( - usuario.avatar ?? '??', - style: const TextStyle(fontSize: 24), + leading: AvatarFarolero( + texto: usuario.nombre.isEmpty ? '?' : usuario.nombre[0], + assetPath: usuario.avatar, + size: 38, + fuego: usuario.fuego, + medallas: usuario.medallas, ), title: Text(usuario.nombre), - subtitle: Text( - seleccionadoPorMi - ? 'Seleccionado por este m?vil' - : seleccionadoPorOtro - ? 'No disponible' - : 'Disponible', + subtitle: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text( + seleccionadoPorMi + ? 'Seleccionado por este móvil' + : seleccionadoPorOtro + ? 'No disponible' + : 'Disponible', + ), + if (usuario.medallas.isNotEmpty) ...[ + const SizedBox(height: 4), + MedallasCompactasFarolero(ids: usuario.medallas), + ], + ], ), trailing: seleccionadoPorMi ? IconButton( diff --git a/lib/servicios/servicio_nearby.dart b/lib/servicios/servicio_nearby.dart index 7d4791a..bedfd21 100644 --- a/lib/servicios/servicio_nearby.dart +++ b/lib/servicios/servicio_nearby.dart @@ -85,6 +85,8 @@ class ServicioNearby extends ChangeNotifier { String? _miNombre; String? _miNick; String? _miAvatar; + int _miFuego = 0; + List _miMedallas = const []; final Map _jugadores = {}; final List _listeners = []; @@ -213,6 +215,8 @@ class ServicioNearby extends ChangeNotifier { String miNombre, { String? miNick, String? miAvatar, + int miFuego = 0, + List miMedallas = const [], }) async { if (_conectado || _anunciando || @@ -245,6 +249,8 @@ class ServicioNearby extends ChangeNotifier { foto: miAvatar, creadoPorClienteId: _hostClientId, clienteIdSeleccionado: _hostClientId, + fuego: miFuego, + medallas: miMedallas, ); _estadoSala!.crearUsuario(usuarioHost); _sincronizarPoolDesdeSala(); @@ -281,10 +287,14 @@ class ServicioNearby extends ChangeNotifier { String miNombre, { String? miNick, String? miAvatar, + int miFuego = 0, + List miMedallas = const [], }) async { _miNombre = miNombre; _miNick = miNick; _miAvatar = miAvatar; + _miFuego = miFuego; + _miMedallas = miMedallas; try { final resultado = await Nearby().startDiscovery( @@ -312,10 +322,14 @@ class ServicioNearby extends ChangeNotifier { String miNombre, { String? miNick, String? miAvatar, + int miFuego = 0, + List miMedallas = const [], }) async { _miNombre = miNombre; _miNick = miNick; _miAvatar = miAvatar; + _miFuego = miFuego; + _miMedallas = miMedallas; try { await Nearby().requestConnection( miNombre, @@ -359,6 +373,8 @@ class ServicioNearby extends ChangeNotifier { 'nombre': _miNombre ?? 'Jugador', if (_miNick != null) 'nick': _miNick, if (_miAvatar != null) 'avatar': _miAvatar, + 'fuego': _miFuego, + 'medallas': _miMedallas, }, ), ); @@ -515,6 +531,10 @@ class ServicioNearby extends ChangeNotifier { final nombre = mensaje.datos['nombre'] as String? ?? 'Jugador'; final nick = mensaje.datos['nick'] as String?; final avatar = mensaje.datos['avatar'] as String?; + final fuego = (mensaje.datos['fuego'] as num?)?.toInt() ?? 0; + final medallas = (mensaje.datos['medallas'] as List? ?? const []) + .map((valor) => valor.toString()) + .toList(); final clientId = endpointId; _jugadores[endpointId] = JugadorConectado( endpointId: endpointId, @@ -528,6 +548,8 @@ class ServicioNearby extends ChangeNotifier { nombre: nombre, nick: nick, avatar: avatar, + fuego: fuego, + medallas: medallas, ); enviarMensaje( @@ -555,6 +577,8 @@ class ServicioNearby extends ChangeNotifier { required String nombre, String? nick, String? avatar, + int fuego = 0, + List medallas = const [], }) { final sala = _estadoSala; if (sala == null || sala.fase != FaseSalaMultijugador.lobby) return; @@ -579,6 +603,8 @@ class ServicioNearby extends ChangeNotifier { avatar: avatar, foto: avatar, creadoPorClienteId: clientId, + fuego: fuego, + medallas: medallas, ); final resultadoCrear = sala.crearUsuario(usuario); if (!resultadoCrear.exitoso) return; @@ -769,6 +795,8 @@ class ServicioNearby extends ChangeNotifier { bool seleccionar = true, String? nick, String? avatar, + int fuego = 0, + List medallas = const [], }) async { final nombreLimpio = nombre.trim(); if (nombreLimpio.isEmpty) return; @@ -780,6 +808,8 @@ class ServicioNearby extends ChangeNotifier { avatar: avatar, foto: avatar, creadoPorClienteId: clientId, + fuego: fuego, + medallas: medallas, ); if (_esHost && _estadoSala != null && clientId != null) { final resultado = _estadoSala!.crearUsuario(usuario); @@ -979,6 +1009,8 @@ class ServicioNearby extends ChangeNotifier { _miNombre = null; _miNick = null; _miAvatar = null; + _miFuego = 0; + _miMedallas = const []; _palabraRecibida = null; _soyImpostor = null; _faseActual = null; diff --git a/lib/servicios/servicio_perfil_usuario.dart b/lib/servicios/servicio_perfil_usuario.dart index 3801f4e..9126e11 100644 --- a/lib/servicios/servicio_perfil_usuario.dart +++ b/lib/servicios/servicio_perfil_usuario.dart @@ -1,6 +1,10 @@ +import 'dart:convert'; + import 'package:flutter/foundation.dart'; import 'package:shared_preferences/shared_preferences.dart'; +import '../modelos/gamificacion_usuario.dart'; + class PerfilUsuario { final String nombre; final String nick; @@ -25,6 +29,7 @@ class ServicioPerfilUsuario extends ChangeNotifier { static const _claveNombre = 'perfil.nombre'; static const _claveNick = 'perfil.nick'; static const _claveAvatar = 'perfil.avatar'; + static const _claveEstadisticas = 'perfil.estadisticas'; static const avatares = [ 'assets/avatars/avatar_01.png', @@ -57,6 +62,18 @@ class ServicioPerfilUsuario extends ChangeNotifier { 'assets/avatars/avatar_28.png', 'assets/avatars/avatar_29.png', 'assets/avatars/avatar_30.png', + 'assets/avatars/capybara_01.png', + 'assets/avatars/capybara_02.png', + 'assets/avatars/capybara_03.png', + 'assets/avatars/capybara_04.png', + 'assets/avatars/capybara_05.png', + 'assets/avatars/capybara_06.png', + 'assets/avatars/capybara_07.png', + 'assets/avatars/capybara_08.png', + 'assets/avatars/capybara_09.png', + 'assets/avatars/capybara_10.png', + 'assets/avatars/capybara_11.png', + 'assets/avatars/capybara_12.png', ]; PerfilUsuario _perfil = const PerfilUsuario( @@ -64,9 +81,13 @@ class ServicioPerfilUsuario extends ChangeNotifier { nick: 'farolero', avatarAsset: 'assets/avatars/avatar_01.png', ); + EstadisticasPerfilUsuario _estadisticas = + const EstadisticasPerfilUsuario(); bool _cargado = false; PerfilUsuario get perfil => _perfil; + EstadisticasPerfilUsuario get estadisticas => _estadisticas; + ResumenGamificacionUsuario get resumenGamificacion => _estadisticas.resumen; bool get cargado => _cargado; Future cargar() async { @@ -76,6 +97,16 @@ class ServicioPerfilUsuario extends ChangeNotifier { nick: prefs.getString(_claveNick) ?? _perfil.nick, avatarAsset: prefs.getString(_claveAvatar) ?? _perfil.avatarAsset, ); + final estadisticasJson = prefs.getString(_claveEstadisticas); + if (estadisticasJson != null) { + try { + _estadisticas = EstadisticasPerfilUsuario.fromJson( + json.decode(estadisticasJson) as Map, + ); + } catch (_) { + _estadisticas = const EstadisticasPerfilUsuario(); + } + } _cargado = true; notifyListeners(); } @@ -101,4 +132,34 @@ class ServicioPerfilUsuario extends ChangeNotifier { await prefs.setString(_claveAvatar, _perfil.avatarAsset); notifyListeners(); } + + Future registrarPartidaCompletada({ + required bool victoria, + bool comoImpostor = false, + bool victoriaComoImpostor = false, + DateTime? fecha, + }) async { + final antes = _estadisticas; + final despues = antes.registrarPartida( + victoria: victoria, + comoImpostor: comoImpostor, + victoriaComoImpostor: victoriaComoImpostor, + fecha: fecha, + ); + final medallasPrevias = antes.medallas.toSet(); + final nuevasMedallas = despues.medallas + .where((id) => !medallasPrevias.contains(id)) + .toList(growable: false); + + _estadisticas = despues; + final prefs = await SharedPreferences.getInstance(); + await prefs.setString(_claveEstadisticas, json.encode(despues.toJson())); + notifyListeners(); + + return ProgresoGamificacionUsuario( + antes: antes, + despues: despues, + nuevasMedallas: nuevasMedallas, + ); + } } diff --git a/lib/tema/componentes_farolero.dart b/lib/tema/componentes_farolero.dart index f3a1103..2fbbc4a 100644 --- a/lib/tema/componentes_farolero.dart +++ b/lib/tema/componentes_farolero.dart @@ -3,6 +3,7 @@ import 'dart:math' as math; import 'package:flutter/material.dart'; import 'package:google_fonts/google_fonts.dart'; +import '../modelos/gamificacion_usuario.dart'; import 'tema_app.dart'; class FondoFarolero extends StatelessWidget { @@ -272,6 +273,8 @@ class AvatarFarolero extends StatelessWidget { final String? assetPath; final Color color; final double size; + final int fuego; + final List medallas; const AvatarFarolero({ super.key, @@ -279,43 +282,172 @@ class AvatarFarolero extends StatelessWidget { this.assetPath, this.color = TemaApp.colorNaranja, this.size = 40, + this.fuego = 0, + this.medallas = const [], }); @override Widget build(BuildContext context) { - return Container( - width: size, - height: size, - decoration: BoxDecoration( - shape: BoxShape.circle, - gradient: RadialGradient( - colors: [color.withValues(alpha: 0.9), TemaApp.colorSuperficie], - ), - border: Border.all(color: TemaApp.colorDorado, width: 2), - ), - child: Center( - child: assetPath == null - ? Text( - texto, - style: TextStyle( - color: TemaApp.colorTexto, - fontWeight: FontWeight.bold, - fontSize: size * 0.36, - ), - ) - : ClipOval( - child: Image.asset( - assetPath!, - width: size, - height: size, - fit: BoxFit.cover, - ), - ), + final lienzo = size + 10; + return SizedBox( + width: lienzo, + height: lienzo, + child: Stack( + clipBehavior: Clip.none, + alignment: Alignment.center, + children: [ + CustomPaint( + size: Size(lienzo, lienzo), + painter: _FuegoAvatarPainter(fuego: fuego), ), + Container( + width: size, + height: size, + decoration: BoxDecoration( + shape: BoxShape.circle, + gradient: RadialGradient( + colors: [color.withValues(alpha: 0.9), TemaApp.colorSuperficie], + ), + border: Border.all(color: TemaApp.colorDorado, width: 2), + ), + child: Center( + child: assetPath == null + ? Text( + texto, + style: TextStyle( + color: TemaApp.colorTexto, + fontWeight: FontWeight.bold, + fontSize: size * 0.36, + ), + ) + : ClipOval( + child: Image.asset( + assetPath!, + width: size, + height: size, + fit: BoxFit.cover, + ), + ), + ), + ), + if (medallas.isNotEmpty) + Positioned( + right: -2, + bottom: -4, + child: _MiniMedalla(id: medallas.first), + ), + ], + ), ); } } +class MedallasCompactasFarolero extends StatelessWidget { + final List ids; + final int max; + + const MedallasCompactasFarolero({ + super.key, + required this.ids, + this.max = 3, + }); + + @override + Widget build(BuildContext context) { + final visibles = ids.take(max).toList(); + if (visibles.isEmpty) return const SizedBox.shrink(); + return Wrap( + spacing: 4, + runSpacing: 4, + children: [ + for (final id in visibles) _MiniMedalla(id: id), + ], + ); + } +} + +class _MiniMedalla extends StatelessWidget { + final String id; + + const _MiniMedalla({required this.id}); + + @override + Widget build(BuildContext context) { + final medalla = EstadisticasPerfilUsuario.catalogoMedallas[id]; + if (medalla == null) return const SizedBox.shrink(); + return Tooltip( + message: '${medalla.nombre}: ${medalla.descripcion}', + child: Container( + width: 26, + height: 26, + alignment: Alignment.center, + decoration: BoxDecoration( + color: TemaApp.colorSuperficie.withValues(alpha: 0.92), + shape: BoxShape.circle, + boxShadow: [ + BoxShadow( + color: Colors.black.withValues(alpha: 0.32), + blurRadius: 6, + offset: const Offset(0, 2), + ), + ], + ), + child: Image.asset( + medalla.assetPath, + width: 26, + height: 26, + fit: BoxFit.contain, + errorBuilder: (_, __, ___) => + Text(medalla.emoji, style: const TextStyle(fontSize: 12)), + ), + ), + ); + } +} + +class _FuegoAvatarPainter extends CustomPainter { + final int fuego; + + const _FuegoAvatarPainter({required this.fuego}); + + @override + void paint(Canvas canvas, Size size) { + final porcentaje = fuego.clamp(0, 100) / 100; + final rect = Offset.zero & size; + final centro = rect.center; + final radio = math.min(size.width, size.height) / 2 - 3; + final base = Paint() + ..isAntiAlias = true + ..style = PaintingStyle.stroke + ..strokeWidth = 4 + ..strokeCap = StrokeCap.round + ..color = Colors.black.withValues(alpha: 0.28); + canvas.drawCircle(centro, radio, base); + if (porcentaje <= 0) return; + + final fuegoPaint = Paint() + ..isAntiAlias = true + ..style = PaintingStyle.stroke + ..strokeWidth = 4 + ..strokeCap = StrokeCap.round + ..shader = const SweepGradient( + colors: [Color(0xFFFFC247), Color(0xFFFF7A1A), Color(0xFFE53935)], + ).createShader(Rect.fromCircle(center: centro, radius: radio)); + canvas.drawArc( + Rect.fromCircle(center: centro, radius: radio), + -math.pi / 2, + math.pi * 2 * porcentaje, + false, + fuegoPaint, + ); + } + + @override + bool shouldRepaint(covariant _FuegoAvatarPainter oldDelegate) { + return oldDelegate.fuego != fuego; + } +} + class _FondoFaroleroPainter extends CustomPainter { final bool intenso; diff --git a/pubspec.yaml b/pubspec.yaml index aa4423b..4af11c1 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -34,3 +34,4 @@ flutter: - assets/palabras_fr.json - assets/words/ - assets/avatars/ + - assets/medals/ diff --git a/test/gamificacion_usuario_test.dart b/test/gamificacion_usuario_test.dart new file mode 100644 index 0000000..3189ee4 --- /dev/null +++ b/test/gamificacion_usuario_test.dart @@ -0,0 +1,79 @@ +import 'package:flutter_test/flutter_test.dart'; +import 'package:farolero/modelos/gamificacion_usuario.dart'; +import 'package:farolero/modelos/usuario.dart'; +import 'package:farolero/servicios/servicio_perfil_usuario.dart'; + +void main() { + group('EstadisticasPerfilUsuario', () { + test('sube fuego con rendimientos decrecientes y tope diario', () { + var stats = const EstadisticasPerfilUsuario(); + final fecha = DateTime(2026, 5, 9); + + for (var i = 0; i < 20; i++) { + stats = stats.registrarPartida(victoria: false, fecha: fecha); + } + + expect(stats.fuego, 25); + expect(stats.subidaFuegoHoy, 25); + expect(stats.partidasHoy, 20); + }); + + test('permite descansar un dia sin penalizar y penaliza dias extra', () { + final inicial = EstadisticasPerfilUsuario( + fuego: 50, + fechaUltimaPartidaIso: DateTime(2026, 5, 1).toIso8601String(), + ); + + final unDiaDespues = inicial.registrarPartida( + victoria: false, + fecha: DateTime(2026, 5, 2), + ); + final tresDiasDespues = inicial.registrarPartida( + victoria: false, + fecha: DateTime(2026, 5, 4), + ); + + expect(unDiaDespues.fuego, 56); + expect(tresDiasDespues.fuego, 48); + }); + + test('calcula medallas principales sin usar llama para partidas jugadas', () { + final stats = const EstadisticasPerfilUsuario( + partidasJugadas: 10, + partidasGanadas: 1, + fuego: 20, + ); + + expect(stats.medallas, contains('habitual')); + expect(stats.medallas, contains('brasa')); + expect(stats.medallas, isNot(contains('llama_suave'))); + expect(stats.medallasPrincipales, contains('habitual')); + }); + }); + + test('Usuario serializa fuego y medallas', () { + final usuario = Usuario( + id: 'u1', + nombre: 'León', + fuego: 42, + medallas: const ['brasa', 'habitual'], + ); + + final restaurado = Usuario.fromJson(usuario.toJson()); + + expect(restaurado.nombre, 'León'); + expect(restaurado.fuego, 42); + expect(restaurado.medallas, ['brasa', 'habitual']); + }); + + test('los avatares de capibara están disponibles en el perfil', () { + expect( + ServicioPerfilUsuario.avatares, + contains('assets/avatars/capybara_01.png'), + ); + expect( + ServicioPerfilUsuario.avatares, + contains('assets/avatars/capybara_12.png'), + ); + }); +}