// ignore: unused_import
import 'package:intl/intl.dart' as intl;
import 'app_localizations.dart';

// ignore_for_file: type=lint

/// The translations for Japanese (`ja`).
class AppLocalizationsJa extends AppLocalizations {
  AppLocalizationsJa([String locale = 'ja']) : super(locale);

  @override
  String get appTitle => 'インポスター';

  @override
  String get subtitle => '正体推理ゲーム';

  @override
  String get loadingWords => 'ワードを読み込み中...';

  @override
  String get playersRange => '3-20人  •  インターネット不要';

  @override
  String get createGame => 'ゲームを作成';

  @override
  String get joinGame => 'ゲームに参加';

  @override
  String get howToPlay => '遊び方';

  @override
  String get settings => '設定';

  @override
  String get gameMode => 'ゲームモード';

  @override
  String get singleDevice => '1台で遊ぶ';

  @override
  String get multiDevice => '複数台で遊ぶ';

  @override
  String get category => 'カテゴリー';

  @override
  String get categoryAll => 'すべて';

  @override
  String get categoryAnimals => '動物';

  @override
  String get categoryFood => '食べ物';

  @override
  String get categoryCountries => '国';

  @override
  String get categorySports => 'スポーツ';

  @override
  String get categoryProfessions => '職業';

  @override
  String get categoryObjects => '物';

  @override
  String get categoryPlaces => '場所';

  @override
  String get categoryMovies => '映画';

  @override
  String get categoryMusic => '音楽';

  @override
  String get categoryTechnology => 'テクノロジー';

  @override
  String playersCount(int count) {
    return 'プレイヤー ($count)';
  }

  @override
  String get playersRangeHint => '3-20';

  @override
  String get playerNameHint => 'プレイヤー名';

  @override
  String get playerAlreadyExists => '同じ名前のプレイヤーがすでにいます';

  @override
  String get maxPlayersReached => '最大20人までです';

  @override
  String get minPlayersRequired => '最低3人必要です';

  @override
  String get configuration => '設定';

  @override
  String get impostors => '🎭 インポスター';

  @override
  String get impostorClue => '🔍 インポスターへのヒント';

  @override
  String get impostorClueDescription => 'インポスターにカテゴリーが表示されます';

  @override
  String get debate => '🗣️ Debate';

  @override
  String get debateTime => '⏱️ 議論の時間';

  @override
  String get noLimit => '制限なし';

  @override
  String get oneMin => '1分';

  @override
  String get twoMin => '2分';

  @override
  String get threeMin => '3分';

  @override
  String get fiveMin => '5分';

  @override
  String get startGame => 'ゲーム開始';

  @override
  String get seeYourWord => '自分のワードを見る';

  @override
  String get eachPlayerMustSee => '各プレイヤーは秘密にワードを確認してください';

  @override
  String roundNumber(int round) {
    return 'ラウンド $round';
  }

  @override
  String get alreadySeen => 'ワードを確認済み';

  @override
  String get tapToSee => 'タップして確認';

  @override
  String get allSeenStartDebate => '全員確認済み → 議論を開始';

  @override
  String playersRemaining(int count) {
    return '残り $count 人';
  }

  @override
  String get youAreImpostor => 'あなたはインポスターです！';

  @override
  String get yourWordIs => 'あなたのワード：';

  @override
  String clueCategory(String category) {
    return 'ヒント: $category';
  }

  @override
  String get holdToSeeWord => '長押しでワードを確認';

  @override
  String get makeSureNoOneLooks => '他の人に見られないようにしてください';

  @override
  String get showingWord => '👁️ 表示中...';

  @override
  String get holdToSee => '👆 長押しで確認';

  @override
  String get seenMyWord => 'ワードを確認しました';

  @override
  String debateRound(int round) {
    return '議論 - ラウンド $round';
  }

  @override
  String get timeUp => '⏰ 時間切れ！';

  @override
  String get timeRemaining => '⏱️ 残り時間';

  @override
  String get playersInDebate => '議論中のプレイヤー';

  @override
  String activePlayersInfo(int active, int impostors) {
    return '$active 人参加中 • $impostors 人のインポスターが潜伏中';
  }

  @override
  String get eliminated => '脱落';

  @override
  String get notes => 'メモ';

  @override
  String get goToVoting => '投票へ進む';

  @override
  String get voting => '🗳️ 投票';

  @override
  String get turnToVote => '投票の番：';

  @override
  String votesProgress(int current, int total) {
    return '投票: $current/$total';
  }

  @override
  String get whoIsImpostor => '誰がインポスターだと思いますか？';

  @override
  String get confirmVote => '投票を確定';

  @override
  String get votingComplete => '🗳️ 投票完了';

  @override
  String get allVoted => '全員が投票しました！';

  @override
  String get tapToReveal => 'タップして結果を見る';

  @override
  String get revealResult => '結果を発表';

  @override
  String get result => '結果';

  @override
  String get revealing => '発表中...';

  @override
  String get wasImpostor => 'インポスターでした！ 🎉';

  @override
  String get wasInnocent => '一般市民でした 😱';

  @override
  String get votesThisRound => 'このラウンドの投票';

  @override
  String get seeEndResult => '最終結果を見る';

  @override
  String get impostorGuessWord => 'インポスターがワードを当てる？';

  @override
  String get nextRound => '次のラウンドへ';

  @override
  String get impostorGuessTitle => '🎯 インポスターの推理';

  @override
  String get impostorCanGuess => '脱落したインポスターは\nワードを当てることができます';

  @override
  String get ifCorrectImpostorsWin => '正解すればインポスターの勝ちです！';

  @override
  String get guessWordHint => 'ワードは何だと思いますか？';

  @override
  String get dontGuess => '推理しない';

  @override
  String get guess => '当てる';

  @override
  String get correctGuess => '正解！';

  @override
  String theWordWas(String word) {
    return 'ワードは: $word';
  }

  @override
  String get impostorsWin => 'インポスターの勝利！';

  @override
  String get wrongGuess => '不正解！';

  @override
  String get gameContinues => 'ゲームは続きます...';

  @override
  String get gameOver => 'ゲーム終了';

  @override
  String get playersWin => 'プレイヤーの勝利！';

  @override
  String get theSecretWordWas => '🔍 ワードは：';

  @override
  String categoryLabel(String category) {
    return 'カテゴリー: $category';
  }

  @override
  String get theImpostorWas => '🎭 インポスターは：';

  @override
  String get theImpostorsWere => '🎭 インポスターたちは：';

  @override
  String get votingHistory => '📊 投票の履歴';

  @override
  String roundElimination(int round, String name) {
    return 'ラウンド $round: $name';
  }

  @override
  String get rematch => 'もう一度';

  @override
  String get mainMenu => 'メインメニュー';

  @override
  String get notesTitle => '📝 メモ';

  @override
  String get notesSaved => 'メモを保存しました';

  @override
  String get whoAreYou => 'あなたは誰？';

  @override
  String get selectYourName => '名前を選んで自分のメモを見る';

  @override
  String notesOf(String name) {
    return '$nameのメモ';
  }

  @override
  String get notesAboutPlayers => '各プレイヤーについてのメモ';

  @override
  String get playerNoteHint => '何を言った？怪しい？';

  @override
  String get freeNote => 'フリーメモ';

  @override
  String get freeNoteHint => '個人メモ...';

  @override
  String get rulesTitle => '📖 遊び方';

  @override
  String get rulesWhatIsTitle => '🎭 インポスターとは？';

  @override
  String get rulesWhatIsBody =>
      '3〜20人で遊べる正体推理ゲームです。全員にお題のワードが配られますが…インポスターだけは知りません！あなたの使命：誰がなりすましているかを見抜くことです。';

  @override
  String get rulesHowToPlayTitle => '🔍 遊び方は？';

  @override
  String get rulesHowToPlayBody =>
      '1. 役割の配布：全員に同じワードが配られますが、インポスターには配られません。\n\n2. 議論：順番に、各プレイヤーがワードを直接言わずに説明します。インポスターは知っているフリをしなければなりません。\n\n3. 投票：議論が終わったら、全員がインポスターだと思う人に投票します。\n\n4. 脱落：最も票を集めた人が脱落し、インポスターかどうかが明かされます。\n\n5. インポスターだった場合、ワードを当てるチャンスがあります。当たればインポスターの勝ち！';

  @override
  String get rulesWhoWinsTitle => '🏆 誰が勝つ？';

  @override
  String get rulesWhoWinsBody =>
      '• プレイヤー：すべてのインポスターを脱落させれば勝利。\n• インポスター：正体がバレずに一般プレイヤーと同数以下になるまで残れば勝利。また、脱落時にワードを当てても勝利。';

  @override
  String get rulesTipsPlayersTitle => '💡 プレイヤーへのアドバイス';

  @override
  String get rulesTipsPlayersBody =>
      '• ワードを知っていると証明できるさりげないヒントを出しましょう。ただし、インポスターに利用されるほど分かりやすくしないこと。\n• 曖昧で抽象的な回答をする人に注目しましょう。\n• メモを活用して各自の発言を記録しましょう。\n• ワードを直接言ってはいけません。インポスターを助けることになります！';

  @override
  String get rulesTipsImpostorTitle => '🎭 インポスターへのアドバイス';

  @override
  String get rulesTipsImpostorBody =>
      '• 他のプレイヤーのヒントをよく聞きましょう。\n• ワードを推測して、もっともらしいヒントを出しましょう。\n• 自信がなければ最初に話さないようにしましょう。\n• カテゴリーがヒントとして出されたら、それを利用しましょう。\n• 他の人を疑って注意をそらしましょう。';

  @override
  String get rulesModesTitle => '📱 ゲームモード';

  @override
  String get rulesModesBody =>
      '• 1台で遊ぶ：端末を全員で共有します。各プレイヤーはボタンを長押しして自分のワードを確認します。\n\n• 複数台で遊ぶ：各プレイヤーが自分の端末を使います。Bluetooth/WiFi Directで接続、インターネット不要。';

  @override
  String get rulesExampleTitle => '✏️ ゲームの例';

  @override
  String get rulesExampleBody =>
      'お題のワード：「ピザ」\n\n• さくら：「温かいうちに食べる」 ✓\n• たくや：「箱に入って届く」 ✓\n• ゆい（インポスター）：「とても人気がある」 🤔\n• けんと：「チーズがのっている」 ✓\n\nゆいの答えはあまりにも曖昧... 怪しい！';

  @override
  String get joinGameTitle => 'ゲームに参加';

  @override
  String get multiDeviceMode => '複数台モード';

  @override
  String get scanQrDescription =>
      'ホストが表示するQRコードをスキャンして、Bluetooth/WiFi Direct経由でゲームに接続します。';

  @override
  String get comingSoon => '近日公開';

  @override
  String get nearbyNotAvailable =>
      '複数台接続のNearby Connectionsには、物理的なAndroid端末が必要です。\n\n現時点では「1台で遊ぶ」モードをご利用ください。';

  @override
  String get back => '戻る';

  @override
  String get yes => 'はい';

  @override
  String get no => 'いいえ';

  @override
  String get cancel => 'キャンセル';

  @override
  String get accept => 'OK';

  @override
  String get next => '次へ';

  @override
  String get settingsTitle => '設定';

  @override
  String get language => '言語';

  @override
  String get soundVolume => '効果音の音量';

  @override
  String get vibration => 'バイブレーション';

  @override
  String get about => 'アプリについて';

  @override
  String get version => 'バージョン';

  @override
  String get developer => '開発者';

  @override
  String get licenses => 'ライセンス';

  @override
  String get scanToJoin => 'Escanea el QR para unirte';

  @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...';

  @override
  String needMorePlayers(int count) {
    return 'Faltan $count jugadores más';
  }

  @override
  String get starting => 'Iniciando...';

  @override
  String get enterNameAndScan => 'Escribe tu nombre y escanea el QR del host';

  @override
  String get yourName => 'Tu nombre';

  @override
  String get nameRequired => 'Escribe tu nombre';

  @override
  String get connectingTo => 'Conectando a';

  @override
  String get scanQR => 'Escanear QR';

  @override
  String get scanHostQR => 'Apunta al QR del host';

  @override
  String get connectedWaiting => '¡Conectado!';

  @override
  String get waitingForHost => 'Esperando a que el host inicie la partida...';

  @override
  String get enterNameToSearch =>
      'Escribe tu nombre para buscar partidas cercanas';

  @override
  String get searchGames => 'Buscar partidas';

  @override
  String get searchingGames => 'Buscando partidas cercanas...';

  @override
  String get noGamesFound => 'No se encontraron partidas';

  @override
  String get noGamesFoundHint =>
      'Asegúrate de que el host tiene la sala abierta y estáis cerca';

  @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';

  @override
  String get selectYourProfile => 'Tu perfil';

  @override
  String get selectProfile => 'Selecciona un perfil';

  @override
  String get createNewUser => 'Crear nuevo usuario';

  @override
  String get userNameRequired => 'El nombre no puede estar vacio';

  @override
  String get profileSelected => 'Perfil seleccionado';

  @override
  String get availableProfiles => 'Perfiles disponibles';
}
