Files
farolero/lib/l10n/generated/app_localizations_pl.dart
T
FreeTLab 56f07364c2
Build & Deploy Farolero / Análisis de código (push) Successful in 13s
Build & Deploy Farolero / Build APK + AAB release (push) Successful in 1m22s
feat: confirm before leaving a game, and fix untranslated strings
Exit confirmation
- A dialog in the app's own style now guards every in-game screen. The safe
  action is the prominent one, so a stray tap keeps you in the game.
- Eleven screens covered, against both the system back gesture and the close
  buttons. The message adapts: a single-device game is lost, a host ends it
  for everyone, a client can rejoin.
- The two screens the host also opens from the manager take a flag so that
  back there just closes them instead of offering to quit.

Translations
- 21 keys were still holding the English text in Arabic, Basque, Hindi,
  Japanese, Korean, Dutch, Polish, Russian, Turkish and both Chinese
  variants: 231 strings, covering the whole multi-device flow, permissions
  and the mode picker. Nothing failed, the app just showed English.
- The permissions dialog was hardcoded in Spanish; it is localized now.
- Portuguese used Spanish gerunds where pt-PT takes "a + infinitive".

Checked what looked untranslated but is not: Animals and Notes are correct
Catalan, Configuration and Vibration correct French, Version correct German.
Those are whitelisted in the new test rather than silently rewritten.

l10n_cobertura_test guards all of it: no missing or orphan keys, no empty
values, no English left outside the whitelist, and placeholders preserved.
2026-07-25 23:59:57 +02:00

891 lines
21 KiB
Dart
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
// ignore: unused_import
import 'package:intl/intl.dart' as intl;
import 'app_localizations.dart';
// ignore_for_file: type=lint
/// The translations for Polish (`pl`).
class AppLocalizationsPl extends AppLocalizations {
AppLocalizationsPl([String locale = 'pl']) : super(locale);
@override
String get appTitle => 'Oszust';
@override
String get subtitle => 'Gra dedukcji społecznej';
@override
String get loadingWords => 'Ładowanie słów...';
@override
String get matchRewards => 'Nagrody za grę';
@override
String get newMedals => 'Nowe medale';
@override
String get noNewMedalsKeepFire =>
'Tym razem bez nowych medali. Podtrzymuj swój ogień.';
@override
String get calculatingRewards => 'Obliczanie nagród...';
@override
String get fireLabel => 'Ogień';
@override
String get playersRange => '3-20 graczy • Bez internetu';
@override
String get createGame => 'Utwórz grę';
@override
String get joinGame => 'Dołącz do gry';
@override
String get howToPlay => 'Jak grać';
@override
String get settings => 'Ustawienia';
@override
String get gameMode => 'Tryb gry';
@override
String get singleDevice => 'Jedno urządzenie';
@override
String get multiDevice => 'Wiele urządzeń';
@override
String get category => 'Kategoria';
@override
String get categoryAll => 'Wszystkie';
@override
String get categoryAnimals => 'Zwierzęta';
@override
String get categoryFood => 'Jedzenie';
@override
String get categoryCountries => 'Kraje';
@override
String get categorySports => 'Sport';
@override
String get categoryProfessions => 'Zawody';
@override
String get categoryObjects => 'Przedmioty';
@override
String get categoryPlaces => 'Miejsca';
@override
String get categoryMovies => 'Filmy';
@override
String get categoryMusic => 'Muzyka';
@override
String get categoryTechnology => 'Technologia';
@override
String playersCount(int count) {
return 'Gracze ($count)';
}
@override
String get playersRangeHint => '3-20';
@override
String get playerNameHint => 'Imię gracza';
@override
String get playerAlreadyExists => 'Gracz o takim imieniu już istnieje';
@override
String get maxPlayersReached => 'Maksymalnie 20 graczy';
@override
String get minPlayersRequired => 'Potrzeba co najmniej 3 graczy';
@override
String get configuration => 'Konfiguracja';
@override
String get impostors => '🎭 Oszuści';
@override
String get impostorClue => '🔍 Wskazówka dla oszusta';
@override
String get impostorClueDescription => 'Oszust zna kategorię';
@override
String get debate => '🗣️ Dyskusja';
@override
String get debateTime => '⏱️ Czas debaty';
@override
String get noLimit => 'Bez limitu';
@override
String get oneMin => '1 min';
@override
String get twoMin => '2 min';
@override
String get threeMin => '3 min';
@override
String get fiveMin => '5 min';
@override
String get startGame => 'Rozpocznij grę';
@override
String get seeYourWord => 'Zobacz swoje słowo';
@override
String get eachPlayerMustSee =>
'Każdy gracz musi zobaczyć swoje słowo w tajemnicy';
@override
String roundNumber(int round) {
return 'Runda $round';
}
@override
String get alreadySeen => 'Już widział swoje słowo';
@override
String get tapToSee => 'Dotknij, aby zobaczyć';
@override
String get allSeenStartDebate => 'Wszyscy widzieli → Rozpocznij debatę';
@override
String playersRemaining(int count) {
return 'Pozostało $count graczy';
}
@override
String get youAreImpostor => 'Jesteś oszustem!';
@override
String get yourWordIs => 'Twoje słowo to:';
@override
String clueCategory(String category) {
return 'Wskazówka: $category';
}
@override
String get holdToSeeWord => 'Przytrzymaj, aby zobaczyć swoje słowo';
@override
String get makeSureNoOneLooks => 'Upewnij się, że nikt inny nie patrzy';
@override
String get showingWord => '👁️ Pokazuję...';
@override
String get holdToSee => '👆 Przytrzymaj, aby zobaczyć';
@override
String get seenMyWord => 'Widziałem swoje słowo';
@override
String debateRound(int round) {
return 'Debata - Runda $round';
}
@override
String get timeUp => '⏰ Czas minął!';
@override
String get timeRemaining => '⏱️ Pozostały czas';
@override
String get playersInDebate => 'Gracze w debacie';
@override
String activePlayersInfo(int active, int impostors) {
return '$active aktywnych • $impostors ukrytych oszustów';
}
@override
String get eliminated => 'Wyeliminowany';
@override
String get notes => 'Notatki';
@override
String get goToVoting => 'Przejdź do głosowania';
@override
String get voting => '🗳️ Głosowanie';
@override
String get turnToVote => 'Kolej na głosowanie:';
@override
String votesProgress(int current, int total) {
return 'Głosy: $current/$total';
}
@override
String get whoIsImpostor => 'Kto twoim zdaniem jest oszustem?';
@override
String get confirmVote => 'Potwierdź głos';
@override
String get votingComplete => '🗳️ Głosowanie zakończone';
@override
String get allVoted => 'Wszyscy zagłosowali!';
@override
String get tapToReveal => 'Dotknij, aby odkryć wynik';
@override
String get revealResult => 'Odkryj wynik';
@override
String get result => 'Wynik';
@override
String get revealing => 'Odkrywam...';
@override
String get wasImpostor => 'To był OSZUST! 🎉';
@override
String get wasInnocent => 'Był NIEWINNY 😱';
@override
String get votesThisRound => 'Głosy w tej rundzie';
@override
String get seeEndResult => 'Zobacz wynik końcowy';
@override
String get impostorGuessWord => 'Czy oszust odgadnie słowo?';
@override
String get nextRound => 'Następna runda';
@override
String get impostorGuessTitle => '🎯 Zgadywanie oszusta';
@override
String get impostorCanGuess =>
'Wyeliminowany oszust może\nspróbować odgadnąć słowo';
@override
String get ifCorrectImpostorsWin => 'Jeśli trafi, oszuści wygrywają!';
@override
String get guessWordHint => 'Jakie twoim zdaniem jest to słowo?';
@override
String get dontGuess => 'Nie próbuj';
@override
String get guess => 'Zgaduj';
@override
String get correctGuess => 'Trafił!';
@override
String theWordWas(String word) {
return 'Słowo brzmiało: $word';
}
@override
String get impostorsWin => 'Oszuści wygrywają!';
@override
String get wrongGuess => 'Nie trafił!';
@override
String get gameContinues => 'Gra toczy się dalej...';
@override
String get gameOver => 'Koniec gry';
@override
String get playersWin => 'Gracze wygrywają!';
@override
String get theSecretWordWas => '🔍 Słowo brzmiało:';
@override
String categoryLabel(String category) {
return 'Kategoria: $category';
}
@override
String get theImpostorWas => '🎭 Oszustem był:';
@override
String get theImpostorsWere => '🎭 Oszustami byli:';
@override
String get votingHistory => '📊 Historia głosowań';
@override
String roundElimination(int round, String name) {
return 'Runda $round: $name';
}
@override
String get rematch => 'Rewanż';
@override
String get mainMenu => 'Menu główne';
@override
String get notesTitle => '📝 Notatki';
@override
String get notesSaved => 'Notatki zapisane';
@override
String get whoAreYou => 'Kim jesteś?';
@override
String get selectYourName =>
'Wybierz swoje imię, aby zobaczyć prywatne notatki';
@override
String notesOf(String name) {
return 'Notatki gracza $name';
}
@override
String get notesAboutPlayers => 'Zapiski o każdym graczu';
@override
String get playerNoteHint => 'Co powiedział? Podejrzany?';
@override
String get freeNote => 'Wolna notatka';
@override
String get freeNoteHint => 'Osobiste zapiski...';
@override
String get rulesTitle => '📖 Jak grać';
@override
String get rulesWhatIsTitle => '🎭 Czym jest Oszust?';
@override
String get rulesWhatIsBody =>
'Gra dedukcji społecznej dla 3-20 graczy. Wszyscy otrzymują tajne słowo... oprócz oszusta! Twoja misja: odkryj, kto udaje.';
@override
String get rulesHowToPlayTitle => '🔍 Jak się gra?';
@override
String get rulesHowToPlayBody =>
'1. Rozdanie ról: wszyscy otrzymują to samo słowo, oprócz oszusta/oszustów.\n\n2. Debata: po kolei każdy gracz opisuje słowo BEZ wypowiadania go wprost. Oszust musi udawać, że je zna.\n\n3. Głosowanie: po zakończeniu debaty wszyscy głosują na osobę, którą uważają za oszusta.\n\n4. Eliminacja: gracz z największą liczbą głosów zostaje wyeliminowany i ujawnia się, czy był oszustem.\n\n5. Jeśli to był oszust, może spróbować odgadnąć słowo. Jeśli trafi, oszuści wygrywają!';
@override
String get rulesWhoWinsTitle => '🏆 Kto wygrywa?';
@override
String get rulesWhoWinsBody =>
'• Gracze: wygrywają, jeśli wyeliminują WSZYSTKICH oszustów.\n• Oszuści: wygrywają, jeśli nie zostaną odkryci, dopóki zwykłych graczy nie będzie tyle samo lub mniej niż oszustów, albo jeśli odgadną słowo po eliminacji.';
@override
String get rulesTipsPlayersTitle => '💡 Wskazówki dla graczy';
@override
String get rulesTipsPlayersBody =>
'• Dawaj subtelne wskazówki, które pokażą, że znasz słowo, ale nie na tyle oczywiste, by oszust mógł je wykorzystać.\n• Obserwuj, kto daje niejasne lub ogólnikowe odpowiedzi.\n• Używaj notatek, by zapisywać, co mówi każdy gracz.\n• Nie mów słowa wprost — to pomaga oszustowi!';
@override
String get rulesTipsImpostorTitle => '🎭 Wskazówki dla oszusta';
@override
String get rulesTipsImpostorBody =>
'• Uważnie słuchaj wskazówek innych.\n• Spróbuj wydedukować słowo, by dawać wiarygodne wskazówki.\n• Nie mów pierwszy, jeśli nie jesteś pewien.\n• Jeśli dostaniesz kategorię jako wskazówkę, wykorzystaj ją.\n• Oskarżaj innych, by odwrócić uwagę.';
@override
String get rulesModesTitle => '📱 Tryby gry';
@override
String get rulesModesBody =>
'• Jedno urządzenie: wszyscy dzielą jedno urządzenie. Każdy gracz widzi swoje słowo, przytrzymując przycisk.\n\n• Wiele urządzeń: każdy gracz używa własnego urządzenia. Łączą się przez Bluetooth/WiFi Direct bez potrzeby internetu.';
@override
String get rulesExampleTitle => '✏️ Przykładowa gra';
@override
String get rulesExampleBody =>
'Tajne słowo: \"Pizza\"\n\n• Kasia: \"Je się na ciepło\"\n• Tomek: \"Przychodzi w pudełku\"\n• Ola (oszust): \"Jest bardzo popularna\" 🤔\n• Marek: \"Ma ser\"\n\nOla dała bardzo ogólnikową odpowiedź... Podejrzana!';
@override
String get joinGameTitle => 'Dołącz do gry';
@override
String get multiDeviceMode => 'Tryb wielu urządzeń';
@override
String get scanQrDescription =>
'Zeskanuj kod QR wyświetlany przez hosta, aby połączyć się z grą przez Bluetooth/WiFi Direct.';
@override
String get comingSoon => 'Wkrótce';
@override
String get nearbyNotAvailable =>
'Połączenie wielourządzeniowe z Nearby Connections wymaga fizycznych urządzeń z Androidem.\n\nNa razie użyj trybu \"Jedno urządzenie\", aby grać na wspólnym urządzeniu.';
@override
String get back => 'Wstecz';
@override
String get yes => 'Tak';
@override
String get no => 'Nie';
@override
String get cancel => 'Anuluj';
@override
String get accept => 'Akceptuj';
@override
String get next => 'Dalej';
@override
String get settingsTitle => 'Ustawienia';
@override
String get language => 'Język';
@override
String get soundVolume => 'Głośność efektów';
@override
String get vibration => 'Wibracje';
@override
String get about => 'O aplikacji';
@override
String get version => 'Wersja';
@override
String get developer => 'Programista';
@override
String get licenses => 'Licencje';
@override
String get scanToJoin => 'Zeskanuj kod QR, aby dołączyć';
@override
String get connectedPlayers => 'Połączeni gracze';
@override
String get hostGame => 'Zarządzanie grą';
@override
String get waitingPlayersSeeWord =>
'Czekamy, aż wszyscy zobaczą swoje słowo...';
@override
String get activePlayers => 'Aktywni gracze';
@override
String get playersVoted => 'Zagłosowali';
@override
String get waitingVoting => 'Czekamy na głosy...';
@override
String get waitingForPlayers => 'Czekamy na graczy...';
@override
String needMorePlayers(int count) {
return 'Brakuje jeszcze $count graczy';
}
@override
String get starting => 'Uruchamianie...';
@override
String get enterNameAndScan =>
'Wpisz swoje imię i zeskanuj kod QR gospodarza';
@override
String get yourName => 'Twoje imię';
@override
String get nameRequired => 'Wpisz swoje imię';
@override
String get connectingTo => 'Łączenie z';
@override
String get scanQR => 'Zeskanuj kod QR';
@override
String get scanHostQR => 'Wyceluj w kod QR gospodarza';
@override
String get connectedWaiting => 'Połączono!';
@override
String get waitingForHost => 'Czekamy, aż gospodarz rozpocznie grę...';
@override
String get enterNameToSearch => 'Wpisz swoje imię, aby znaleźć gry w pobliżu';
@override
String get searchGames => 'Szukaj gier';
@override
String get searchingGames => 'Szukanie gier w pobliżu...';
@override
String get noGamesFound => 'Nie znaleziono gier';
@override
String get noGamesFoundHint =>
'Upewnij się, że gospodarz ma otwarty pokój i jesteście blisko siebie';
@override
String get orScanQR => 'Nie widzisz gry? Zeskanuj kod QR gospodarza';
@override
String get iveSeenIt => 'Już zobaczyłem';
@override
String clueIs(String category) {
return 'Wskazówka: $category';
}
@override
String get debatePhaseActive => 'Trwa faza dyskusji';
@override
String get debateInstructions =>
'Porozmawiajcie ze sobą i powiedzcie, kto waszym zdaniem jest oszustem. Gdy będziecie gotowi, poproście o głosowanie.';
@override
String get solicitarVotacion => 'Poproś o głosowanie';
@override
String get votacionSolicitada => 'Poproszono o głosowanie';
@override
String get whoDoYouThinkIsTheImpostor => 'Kto jest oszustem?';
@override
String get selectOnePlayer => 'Wybierz gracza, na którego głosujesz';
@override
String get votar => 'Głosuj';
@override
String get selectYourProfile => 'Twój profil';
@override
String get selectProfile => 'Wybierz profil';
@override
String get createNewUser => 'Utwórz nowego użytkownika';
@override
String get userNameRequired => 'Imię nie może być puste';
@override
String get profileSelected => 'Wybrano profil';
@override
String get availableProfiles => 'Dostępne profile';
@override
String get scanThisCodeFromAnotherPhone => 'Zeskanuj ten kod innym telefonem';
@override
String get gameUsers => 'Użytkownicy gry';
@override
String get selectedPlayers => 'Wybrani gracze';
@override
String get connectedPhones => 'Połączone telefony';
@override
String get selectedOnThisPhone => 'Wybrano na tym telefonie';
@override
String get selectedByAnotherDevice => 'Wybrano na innym urządzeniu';
@override
String get available => 'Dostępny';
@override
String get notAvailable => 'Niedostępny';
@override
String get release => 'Zwolnij';
@override
String get select => 'Wybierz';
@override
String get delete => 'Usuń';
@override
String get selectAtLeastThreeUsersToStart =>
'Wybierz co najmniej 3 użytkowników, aby rozpocząć.';
@override
String get hostPhoneMustSelectUser =>
'Telefon gospodarza musi wybrać przynajmniej jednego użytkownika.';
@override
String get roomNoLongerInLobby => 'Pokój nie jest już w poczekalni.';
@override
String get completeUserSelectionToStart =>
'Dokończ wybór użytkowników, aby rozpocząć.';
@override
String get preparingSecureRoom => 'Przygotowywanie bezpiecznego pokoju';
@override
String get searchingNearbyBluetoothGames =>
'Szukanie gier w pobliżu przez Bluetooth';
@override
String get tapToJoin => 'Dotknij, aby dołączyć';
@override
String get bluetoothLocationPermissionsRequired =>
'Do wyszukiwania gier potrzebne są uprawnienia Bluetooth i lokalizacji.';
@override
String get bluetoothLocationPermissionsShort =>
'Potrzebne są uprawnienia Bluetooth i lokalizacji';
@override
String get couldNotStartSearch =>
'Nie udało się rozpocząć wyszukiwania. Sprawdź Bluetooth i lokalizację.';
@override
String couldNotConnectToHost(String host) {
return 'Nie udało się połączyć z $host';
}
@override
String get room => 'Pokój';
@override
String get singleDeviceSubtitle => 'Gra na tym urządzeniu';
@override
String get singleDeviceDescription =>
'Idealne do wspólnej gry, podając telefon dalej. Szybka i prosta konfiguracja.';
@override
String get multiDeviceSubtitle => 'Każdy gracz na swoim telefonie';
@override
String get multiDeviceDescription =>
'Utwórz pokój premium, udostępnij kod QR i zarządzaj graczami z poczekalni.';
@override
String get singleDeviceGameLabel => 'Gra na tym urządzeniu';
@override
String get multiDeviceGameLabel => 'Gra na wielu urządzeniach';
@override
String get mainDeviceUser => 'Główny użytkownik urządzenia';
@override
String get couldNotCreateRoom =>
'Nie udało się utworzyć pokoju. Sprawdź Bluetooth.';
@override
String cannotStartWithReason(String reason) {
return 'Nie można rozpocząć: $reason';
}
@override
String get invalidRoom => 'nieprawidłowy pokój';
@override
String get defaultPlayerName => 'Gracz';
@override
String get play => 'Graj';
@override
String get history => 'Historia';
@override
String get mainTagline => 'Znajdź oszusta, zanim będzie za późno';
@override
String get deviceProfile => 'Profil urządzenia';
@override
String get profileName => 'Nazwa';
@override
String get profileNick => 'Nick';
@override
String get save => 'Zapisz';
@override
String get automaticLanguage => 'Automatycznie';
@override
String get noSavedGames => 'Nie ma jeszcze zapisanych gier.';
@override
String get errorNoGame => 'Błąd: brak gry';
@override
String get disconnectedPlayersWarning =>
'Niektórzy gracze mają rozłączone urządzenie.';
@override
String get assumeOnThisPhone => 'Przejmij na tym telefonie';
@override
String get noResult => 'Brak wyniku';
@override
String historyGameSummary(
int players,
int impostors,
int rounds,
String word,
String category,
) {
return '\$players graczy • \$impostors impostor(ów) • \$rounds rund\n\$word • \$category';
}
@override
String voteOf(String name) {
return 'Głos gracza $name';
}
@override
String firstTurnInstruction(String name) {
return '$name zaczyna, mówiąc swoje słowo.';
}
@override
String get impostorsKnowEachOther => '🎭 Oszuści znają się nawzajem';
@override
String get impostorsKnowEachOtherDescription =>
'Każdy oszust zobaczy imiona pozostałych';
@override
String get impostorsKnowEachOtherNeedsTwo =>
'Działa tylko przy 2 lub więcej oszustach';
@override
String otherImpostorsTitle(num count) {
String _temp0 = intl.Intl.pluralLogic(
count,
locale: localeName,
other: 'Pozostali oszuści',
one: 'Drugi oszust',
);
return '$_temp0';
}
@override
String get youAreTheOnlyImpostor => 'Jesteś jedynym oszustem';
@override
String impostorsAdjusted(int count) {
return 'Liczba oszustów dostosowana do $count z powodu liczby graczy';
}
@override
String get eliminatedCannotVote => 'Jesteś wyeliminowany już nie głosujesz';
@override
String get reconnecting => 'Ponowne łączenie...';
@override
String get reconnectingHint =>
'Utracono połączenie z gospodarzem. Twoje miejsce w grze jest zachowane.';
@override
String get leaveGame => 'Opuść grę';
@override
String playerRejoined(String name) {
return '$name wrócił(a) do gry';
}
@override
String get leaveGameTitle => 'Opuścić grę?';
@override
String get leaveGameSingleDevice =>
'Trwająca gra zostanie utracona i nie da się jej odzyskać.';
@override
String get leaveGameHost =>
'Jesteś gospodarzem: jeśli wyjdziesz, gra kończy się dla wszystkich.';
@override
String get leaveGameClient =>
'Opuścisz grę. Możesz wrócić, dopóki gospodarz jej nie zamknie.';
@override
String get stayInGame => 'Graj dalej';
@override
String get permissionsNeededTitle => 'Wymagane uprawnienia';
@override
String get permissionsNeededBody => 'Do trybu wieloosobowego potrzebujemy:';
@override
String get openAppSettingsQuestion => 'Otworzyć ustawienia aplikacji?';
@override
String get openSettings => 'Otwórz ustawienia';
@override
String get permissionLocation => 'Lokalizacja';
@override
String get permissionBluetoothAdvertise => 'Bluetooth (rozgłaszanie)';
@override
String get permissionBluetoothConnect => 'Bluetooth (łączenie)';
@override
String get permissionBluetoothScan => 'Bluetooth (skanowanie)';
@override
String get permissionNearbyWifi => 'Wi-Fi w pobliżu';
}