Internacionalización completa: - 18 ficheros .arb: es, en, fr, pt, de, it, ru, ja, ko, zh, zh_TW, ar, hi, tr, pl, nl, ca, eu - Todos los strings extraídos de todas las pantallas - Detección automática de idioma del sistema - Selector manual en pantalla de ajustes Pantalla de ajustes nueva: - Selector de idioma con banderas emoji - Vibración ON/OFF - Acerca de (versión, desarrollador) Bancos de palabras multiidioma: - palabras.json (castellano, 1000 palabras) - palabras_en.json (inglés, 1000 palabras) - palabras_fr.json (francés, 1000 palabras) - Fallback a castellano si no hay banco del idioma 13138 líneas Dart, 39 ficheros, 0 issues en flutter analyze
224 lines
9.8 KiB
Plaintext
224 lines
9.8 KiB
Plaintext
{
|
||
"@@locale": "ja",
|
||
|
||
"appTitle": "インポスター",
|
||
"subtitle": "正体推理ゲーム",
|
||
"loadingWords": "ワードを読み込み中...",
|
||
"playersRange": "3-20人 • インターネット不要",
|
||
|
||
"createGame": "ゲームを作成",
|
||
"joinGame": "ゲームに参加",
|
||
"howToPlay": "遊び方",
|
||
"settings": "設定",
|
||
|
||
"gameMode": "ゲームモード",
|
||
"singleDevice": "1台で遊ぶ",
|
||
"multiDevice": "複数台で遊ぶ",
|
||
|
||
"category": "カテゴリー",
|
||
"categoryAll": "すべて",
|
||
"categoryAnimals": "動物",
|
||
"categoryFood": "食べ物",
|
||
"categoryCountries": "国",
|
||
"categorySports": "スポーツ",
|
||
"categoryProfessions": "職業",
|
||
"categoryObjects": "物",
|
||
"categoryPlaces": "場所",
|
||
"categoryMovies": "映画",
|
||
"categoryMusic": "音楽",
|
||
"categoryTechnology": "テクノロジー",
|
||
|
||
"playersCount": "プレイヤー ({count})",
|
||
"@playersCount": {
|
||
"placeholders": {
|
||
"count": {"type": "int"}
|
||
}
|
||
},
|
||
"playersRangeHint": "3-20",
|
||
"playerNameHint": "プレイヤー名",
|
||
"playerAlreadyExists": "同じ名前のプレイヤーがすでにいます",
|
||
"maxPlayersReached": "最大20人までです",
|
||
"minPlayersRequired": "最低3人必要です",
|
||
|
||
"configuration": "設定",
|
||
"impostors": "🎭 インポスター",
|
||
"impostorClue": "🔍 インポスターへのヒント",
|
||
"impostorClueDescription": "インポスターにカテゴリーが表示されます",
|
||
"debateTime": "⏱️ 議論の時間",
|
||
"noLimit": "制限なし",
|
||
"oneMin": "1分",
|
||
"twoMin": "2分",
|
||
"threeMin": "3分",
|
||
"fiveMin": "5分",
|
||
|
||
"startGame": "ゲーム開始",
|
||
|
||
"seeYourWord": "自分のワードを見る",
|
||
"eachPlayerMustSee": "各プレイヤーは秘密にワードを確認してください",
|
||
"roundNumber": "ラウンド {round}",
|
||
"@roundNumber": {
|
||
"placeholders": {
|
||
"round": {"type": "int"}
|
||
}
|
||
},
|
||
"alreadySeen": "ワードを確認済み",
|
||
"tapToSee": "タップして確認",
|
||
"allSeenStartDebate": "全員確認済み → 議論を開始",
|
||
"playersRemaining": "残り {count} 人",
|
||
"@playersRemaining": {
|
||
"placeholders": {
|
||
"count": {"type": "int"}
|
||
}
|
||
},
|
||
|
||
"youAreImpostor": "あなたはインポスターです!",
|
||
"yourWordIs": "あなたのワード:",
|
||
"clueCategory": "ヒント: {category}",
|
||
"@clueCategory": {
|
||
"placeholders": {
|
||
"category": {"type": "String"}
|
||
}
|
||
},
|
||
"holdToSeeWord": "長押しでワードを確認",
|
||
"makeSureNoOneLooks": "他の人に見られないようにしてください",
|
||
"showingWord": "👁️ 表示中...",
|
||
"holdToSee": "👆 長押しで確認",
|
||
"seenMyWord": "ワードを確認しました",
|
||
|
||
"debateRound": "議論 - ラウンド {round}",
|
||
"@debateRound": {
|
||
"placeholders": {
|
||
"round": {"type": "int"}
|
||
}
|
||
},
|
||
"timeUp": "⏰ 時間切れ!",
|
||
"timeRemaining": "⏱️ 残り時間",
|
||
"playersInDebate": "議論中のプレイヤー",
|
||
"activePlayersInfo": "{active} 人参加中 • {impostors} 人のインポスターが潜伏中",
|
||
"@activePlayersInfo": {
|
||
"placeholders": {
|
||
"active": {"type": "int"},
|
||
"impostors": {"type": "int"}
|
||
}
|
||
},
|
||
"eliminated": "脱落",
|
||
"notes": "メモ",
|
||
"goToVoting": "投票へ進む",
|
||
|
||
"voting": "🗳️ 投票",
|
||
"turnToVote": "投票の番:",
|
||
"votesProgress": "投票: {current}/{total}",
|
||
"@votesProgress": {
|
||
"placeholders": {
|
||
"current": {"type": "int"},
|
||
"total": {"type": "int"}
|
||
}
|
||
},
|
||
"whoIsImpostor": "誰がインポスターだと思いますか?",
|
||
"confirmVote": "投票を確定",
|
||
"votingComplete": "🗳️ 投票完了",
|
||
"allVoted": "全員が投票しました!",
|
||
"tapToReveal": "タップして結果を見る",
|
||
"revealResult": "結果を発表",
|
||
|
||
"result": "結果",
|
||
"revealing": "発表中...",
|
||
"wasImpostor": "インポスターでした! 🎉",
|
||
"wasInnocent": "一般市民でした 😱",
|
||
"votesThisRound": "このラウンドの投票",
|
||
"seeEndResult": "最終結果を見る",
|
||
"impostorGuessWord": "インポスターがワードを当てる?",
|
||
"nextRound": "次のラウンドへ",
|
||
|
||
"impostorGuessTitle": "🎯 インポスターの推理",
|
||
"impostorCanGuess": "脱落したインポスターは\nワードを当てることができます",
|
||
"ifCorrectImpostorsWin": "正解すればインポスターの勝ちです!",
|
||
"guessWordHint": "ワードは何だと思いますか?",
|
||
"dontGuess": "推理しない",
|
||
"guess": "当てる",
|
||
"correctGuess": "正解!",
|
||
"theWordWas": "ワードは: {word}",
|
||
"@theWordWas": {
|
||
"placeholders": {
|
||
"word": {"type": "String"}
|
||
}
|
||
},
|
||
"impostorsWin": "インポスターの勝利!",
|
||
"wrongGuess": "不正解!",
|
||
"gameContinues": "ゲームは続きます...",
|
||
|
||
"gameOver": "ゲーム終了",
|
||
"playersWin": "プレイヤーの勝利!",
|
||
"theSecretWordWas": "🔍 ワードは:",
|
||
"categoryLabel": "カテゴリー: {category}",
|
||
"@categoryLabel": {
|
||
"placeholders": {
|
||
"category": {"type": "String"}
|
||
}
|
||
},
|
||
"theImpostorWas": "🎭 インポスターは:",
|
||
"theImpostorsWere": "🎭 インポスターたちは:",
|
||
"votingHistory": "📊 投票の履歴",
|
||
"roundElimination": "ラウンド {round}: {name}",
|
||
"@roundElimination": {
|
||
"placeholders": {
|
||
"round": {"type": "int"},
|
||
"name": {"type": "String"}
|
||
}
|
||
},
|
||
"rematch": "もう一度",
|
||
"mainMenu": "メインメニュー",
|
||
|
||
"notesTitle": "📝 メモ",
|
||
"notesSaved": "メモを保存しました",
|
||
"whoAreYou": "あなたは誰?",
|
||
"selectYourName": "名前を選んで自分のメモを見る",
|
||
"notesOf": "{name}のメモ",
|
||
"@notesOf": {
|
||
"placeholders": {
|
||
"name": {"type": "String"}
|
||
}
|
||
},
|
||
"notesAboutPlayers": "各プレイヤーについてのメモ",
|
||
"playerNoteHint": "何を言った?怪しい?",
|
||
"freeNote": "フリーメモ",
|
||
"freeNoteHint": "個人メモ...",
|
||
|
||
"rulesTitle": "📖 遊び方",
|
||
"rulesWhatIsTitle": "🎭 インポスターとは?",
|
||
"rulesWhatIsBody": "3〜20人で遊べる正体推理ゲームです。全員にお題のワードが配られますが…インポスターだけは知りません!あなたの使命:誰がなりすましているかを見抜くことです。",
|
||
"rulesHowToPlayTitle": "🔍 遊び方は?",
|
||
"rulesHowToPlayBody": "1. 役割の配布:全員に同じワードが配られますが、インポスターには配られません。\n\n2. 議論:順番に、各プレイヤーがワードを直接言わずに説明します。インポスターは知っているフリをしなければなりません。\n\n3. 投票:議論が終わったら、全員がインポスターだと思う人に投票します。\n\n4. 脱落:最も票を集めた人が脱落し、インポスターかどうかが明かされます。\n\n5. インポスターだった場合、ワードを当てるチャンスがあります。当たればインポスターの勝ち!",
|
||
"rulesWhoWinsTitle": "🏆 誰が勝つ?",
|
||
"rulesWhoWinsBody": "• プレイヤー:すべてのインポスターを脱落させれば勝利。\n• インポスター:正体がバレずに一般プレイヤーと同数以下になるまで残れば勝利。また、脱落時にワードを当てても勝利。",
|
||
"rulesTipsPlayersTitle": "💡 プレイヤーへのアドバイス",
|
||
"rulesTipsPlayersBody": "• ワードを知っていると証明できるさりげないヒントを出しましょう。ただし、インポスターに利用されるほど分かりやすくしないこと。\n• 曖昧で抽象的な回答をする人に注目しましょう。\n• メモを活用して各自の発言を記録しましょう。\n• ワードを直接言ってはいけません。インポスターを助けることになります!",
|
||
"rulesTipsImpostorTitle": "🎭 インポスターへのアドバイス",
|
||
"rulesTipsImpostorBody": "• 他のプレイヤーのヒントをよく聞きましょう。\n• ワードを推測して、もっともらしいヒントを出しましょう。\n• 自信がなければ最初に話さないようにしましょう。\n• カテゴリーがヒントとして出されたら、それを利用しましょう。\n• 他の人を疑って注意をそらしましょう。",
|
||
"rulesModesTitle": "📱 ゲームモード",
|
||
"rulesModesBody": "• 1台で遊ぶ:端末を全員で共有します。各プレイヤーはボタンを長押しして自分のワードを確認します。\n\n• 複数台で遊ぶ:各プレイヤーが自分の端末を使います。Bluetooth/WiFi Directで接続、インターネット不要。",
|
||
"rulesExampleTitle": "✏️ ゲームの例",
|
||
"rulesExampleBody": "お題のワード:「ピザ」\n\n• さくら:「温かいうちに食べる」 ✓\n• たくや:「箱に入って届く」 ✓\n• ゆい(インポスター):「とても人気がある」 🤔\n• けんと:「チーズがのっている」 ✓\n\nゆいの答えはあまりにも曖昧... 怪しい!",
|
||
|
||
"joinGameTitle": "ゲームに参加",
|
||
"multiDeviceMode": "複数台モード",
|
||
"scanQrDescription": "ホストが表示するQRコードをスキャンして、Bluetooth/WiFi Direct経由でゲームに接続します。",
|
||
"comingSoon": "近日公開",
|
||
"nearbyNotAvailable": "複数台接続のNearby Connectionsには、物理的なAndroid端末が必要です。\n\n現時点では「1台で遊ぶ」モードをご利用ください。",
|
||
"back": "戻る",
|
||
|
||
"yes": "はい",
|
||
"no": "いいえ",
|
||
"cancel": "キャンセル",
|
||
"accept": "OK",
|
||
"next": "次へ",
|
||
|
||
"settingsTitle": "設定",
|
||
"language": "言語",
|
||
"soundVolume": "効果音の音量",
|
||
"vibration": "バイブレーション",
|
||
"about": "アプリについて",
|
||
"version": "バージョン",
|
||
"developer": "開発者",
|
||
"licenses": "ライセンス"
|
||
} |