fix: multidispositivo - Random seguro + gestor host + reacción clientes
Some checks failed
Build & Deploy Farolero / Análisis de código (push) Has been cancelled
Build & Deploy Farolero / Build APK + AAB release (push) Has been cancelled

- Random.secure() para selección de impostores (no predecible)
- Random.secure() también en desempate de votación
- Nueva PantallaGestorHost para coordinación multi-device
- Navegación: host va a gestor tras iniciar, no a pantalla de palabra
- PantallaPalabraCliente: cada jugador ve su palabra en su móvil
- PantallaDebateCliente: debate con timer y botón solicitar votación
- PantallaVotacionCliente: voto desde el móvil del cliente
- PantallaUnirse: listener que reacciona a partidaInicio y cambia de fase
- Protocolo: listo/voto/solicitoVotacion via Nearby hacia el host
- Nuevas cadenas l10n ES
This commit is contained in:
ShanaiaBot
2026-04-15 02:09:05 +02:00
parent 302cdf6f1a
commit eb2662f561
27 changed files with 2282 additions and 60 deletions

View File

@@ -109,6 +109,9 @@ class AppLocalizationsKo extends AppLocalizations {
@override
String get impostorClueDescription => '임포스터가 카테고리를 알 수 있습니다';
@override
String get debate => '🗣️ Debate';
@override
String get debateTime => '⏱️ 토론 시간';
@@ -477,6 +480,21 @@ class AppLocalizationsKo extends AppLocalizations {
@override
String get connectedPlayers => 'Jugadores conectados';
@override
String get hostGame => 'Gestor de partida';
@override
String get waitingPlayersSeeWord => 'Esperando que todos vean su palabra...';
@override
String get activePlayers => 'Jugadores activos';
@override
String get playersVoted => 'Han votado';
@override
String get waitingVoting => 'Esperando que voten...';
@override
String get waitingForPlayers => 'Esperando jugadores...';
@@ -531,4 +549,34 @@ class AppLocalizationsKo extends AppLocalizations {
@override
String get orScanQR => '¿No aparece? Escanea el QR del host';
@override
String get iveSeenIt => 'Ya la he visto';
@override
String clueIs(String category) {
return 'La pista es: $category';
}
@override
String get debatePhaseActive => 'Fase de debate activa';
@override
String get debateInstructions =>
'Hablad entre vosotros y decid quién creéis que es el impostor. Cuando estéis listos, solicitad la votación.';
@override
String get solicitarVotacion => 'Solicitar votación';
@override
String get votacionSolicitada => 'Votación solicitada';
@override
String get whoDoYouThinkIsTheImpostor => '¿Quién es el impostor?';
@override
String get selectOnePlayer => 'Selecciona a un jugador para votar';
@override
String get votar => 'Votar';
}