Gestión de usuarios y avatares en la aplicación. Gestión de traducciones de las palabras.
This commit is contained in:
@@ -8,6 +8,7 @@ import '../modelos/partida.dart';
|
||||
import '../modelos/usuario.dart';
|
||||
import '../servicios/servicio_nearby.dart';
|
||||
import '../servicios/servicio_permisos.dart';
|
||||
import '../servicios/servicio_perfil_usuario.dart';
|
||||
import '../tema/componentes_farolero.dart';
|
||||
import '../tema/tema_app.dart';
|
||||
import 'pantalla_gestor_host.dart';
|
||||
@@ -131,8 +132,14 @@ class _PantallaCrearPartidaState extends State<PantallaCrearPartida> {
|
||||
// 3. Iniciar host en Nearby
|
||||
if (!mounted) return;
|
||||
final nearby = context.read<ServicioNearby>();
|
||||
final perfil = context.read<ServicioPerfilUsuario>().perfil;
|
||||
final nombreSala = '${nombre.trim()} - Farolero';
|
||||
final ok = await nearby.iniciarHost(nombreSala, nombre.trim());
|
||||
final ok = await nearby.iniciarHost(
|
||||
nombreSala,
|
||||
nombre.trim(),
|
||||
miNick: perfil.nick,
|
||||
miAvatar: perfil.avatarAsset,
|
||||
);
|
||||
|
||||
if (!ok) {
|
||||
if (mounted) {
|
||||
@@ -279,7 +286,11 @@ class _PantallaCrearPartidaState extends State<PantallaCrearPartida> {
|
||||
value: usuario.nombre,
|
||||
child: Row(
|
||||
children: [
|
||||
Text(usuario.avatar ?? '👤'),
|
||||
AvatarFarolero(
|
||||
texto: usuario.nombre.substring(0, 1),
|
||||
assetPath: usuario.avatar,
|
||||
size: 28,
|
||||
),
|
||||
const SizedBox(width: 8),
|
||||
Text(usuario.nombre),
|
||||
],
|
||||
@@ -324,6 +335,7 @@ class _PantallaCrearPartidaState extends State<PantallaCrearPartida> {
|
||||
final controller = TextEditingController();
|
||||
final l10n = AppLocalizations.of(context)!;
|
||||
final nearby = context.read<ServicioNearby>();
|
||||
controller.text = context.read<ServicioPerfilUsuario>().perfil.nombre;
|
||||
|
||||
final nombre = await showDialog<String>(
|
||||
context: context,
|
||||
@@ -356,6 +368,9 @@ class _PantallaCrearPartidaState extends State<PantallaCrearPartida> {
|
||||
final nuevoUsuario = Usuario(
|
||||
id: DateTime.now().millisecondsSinceEpoch.toString(),
|
||||
nombre: nombre.trim(),
|
||||
nick: context.read<ServicioPerfilUsuario>().perfil.nick,
|
||||
avatar: context.read<ServicioPerfilUsuario>().perfil.avatarAsset,
|
||||
foto: context.read<ServicioPerfilUsuario>().perfil.avatarAsset,
|
||||
);
|
||||
nearby.agregarUsuario(nuevoUsuario);
|
||||
return nombre.trim();
|
||||
@@ -366,6 +381,7 @@ class _PantallaCrearPartidaState extends State<PantallaCrearPartida> {
|
||||
/// Método original para pedir nombre (usado cuando pool vacío)
|
||||
Future<String?> _pedirNombreHost() async {
|
||||
final controller = TextEditingController();
|
||||
controller.text = context.read<ServicioPerfilUsuario>().perfil.nombre;
|
||||
final l10n = AppLocalizations.of(context)!;
|
||||
return showDialog<String>(
|
||||
context: context,
|
||||
|
||||
Reference in New Issue
Block a user