flutter: intl: Add Farsi (Persian language) machine translation
This commit is contained in:
parent
389ccb26f6
commit
5783799a3b
|
@ -0,0 +1,4 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<resources>
|
||||
<string name="app_name">دوز</string>
|
||||
</resources>
|
|
@ -0,0 +1,999 @@
|
|||
{
|
||||
"@@locale": "fa",
|
||||
"appName": "دوز",
|
||||
"@appName": {
|
||||
"description": "The App name"
|
||||
},
|
||||
"yes": "آره",
|
||||
"@yes": {
|
||||
"description": "Yes"
|
||||
},
|
||||
"no": "نه",
|
||||
"@no": {
|
||||
"description": "No"
|
||||
},
|
||||
"game": "بازی",
|
||||
"@game": {
|
||||
"description": "Game"
|
||||
},
|
||||
"humanVsAi": "انسان در مقابل کامپیوتر",
|
||||
"@humanVsAi": {
|
||||
"description": "Human Vs AI"
|
||||
},
|
||||
"humanVsHuman": "انسان در مقابل انسان",
|
||||
"@humanVsHuman": {
|
||||
"description": "Human Vs Human"
|
||||
},
|
||||
"aiVsAi": "رایانه در مقابل رایانه",
|
||||
"@aiVsAi": {
|
||||
"description": "AI Vs AI"
|
||||
},
|
||||
"humanVsCloud": "Human Vs Cloud",
|
||||
"@humanVsCloud": {
|
||||
"description": "Human Vs Cloud"
|
||||
},
|
||||
"humanVsLAN": "Human Vs LAN",
|
||||
"@humanVsLAN": {
|
||||
"description": "Human Vs LAN"
|
||||
},
|
||||
"testViaLAN": "Test Via LAN",
|
||||
"@testViaLAN": {
|
||||
"description": "Test Via LAN"
|
||||
},
|
||||
"move": "حرکت",
|
||||
"@move": {
|
||||
"description": "Move"
|
||||
},
|
||||
"moves": " حرکت می کند",
|
||||
"@moves": {
|
||||
"description": " Moves"
|
||||
},
|
||||
"showMoveList": "لیست حرکت",
|
||||
"@showMoveList": {
|
||||
"description": "Move list"
|
||||
},
|
||||
"moveList": "لیست حرکت",
|
||||
"@moveList": {
|
||||
"description": "Move list"
|
||||
},
|
||||
"noGameRecord": "بدون سابقه",
|
||||
"@noGameRecord": {
|
||||
"description": "No record"
|
||||
},
|
||||
"ok": "خوب",
|
||||
"@ok": {
|
||||
"description": "OK"
|
||||
},
|
||||
"confirm": "تایید",
|
||||
"@confirm": {
|
||||
"description": "Confirm"
|
||||
},
|
||||
"cancel": "لغو",
|
||||
"@cancel": {
|
||||
"description": "Cancel"
|
||||
},
|
||||
"daSanQi": "Da San Qi",
|
||||
"@daSanQi": {
|
||||
"description": "Da San Qi"
|
||||
},
|
||||
"copyright": "Copyright © 2021 Calcitem Studio",
|
||||
"@copyright": {
|
||||
"description": "Copyright"
|
||||
},
|
||||
"gameWarning": "Healthy Gaming Advisory\nBoycott harmful games; reject game piracy.\nExercise self-protection; avoid deception.\nModeration promotes brain health; excess play is harmful to the body.\nWell-planned use of your time will lead to a healthy lifestyle.",
|
||||
"@gameWarning": {
|
||||
"description": "Game Warning"
|
||||
},
|
||||
"tipSelectWrong": "قطعه اشتباه را انتخاب کنید.",
|
||||
"@tipSelectWrong": {
|
||||
"description": "Select wrong piece."
|
||||
},
|
||||
"tipPlace": "قطعات خود را قرار دهید.",
|
||||
"@tipPlace": {
|
||||
"description": "Place your pieces."
|
||||
},
|
||||
"tipBanPlace": "نمی توان در اینجا قرار داد.",
|
||||
"@tipBanPlace": {
|
||||
"description": "Cannot place here."
|
||||
},
|
||||
"tipPlaced": "قرار داده شده.",
|
||||
"@tipPlaced": {
|
||||
"description": "Placed."
|
||||
},
|
||||
"tipRemove": "یک قطعه را بردارید.",
|
||||
"@tipRemove": {
|
||||
"description": "Remove a piece."
|
||||
},
|
||||
"tipBanRemove": "قابل حذف نیست",
|
||||
"@tipBanRemove": {
|
||||
"description": "Cannot remove."
|
||||
},
|
||||
"tipRemoved": "حذف شده.",
|
||||
"@tipRemoved": {
|
||||
"description": "Removed."
|
||||
},
|
||||
"tipMove": "یک قطعه را حرکت دهید",
|
||||
"@tipMove": {
|
||||
"description": "Move a piece."
|
||||
},
|
||||
"tipCannotPlace": "نمی توانید قطعه خود را اینجا قرار دهید.",
|
||||
"@tipCannotPlace": {
|
||||
"description": "You can't place your piece here."
|
||||
},
|
||||
"tipCannotMove": "نمی توانید قطعه خود را به اینجا منتقل کنید.",
|
||||
"@tipCannotMove": {
|
||||
"description": "You can't move your piece here."
|
||||
},
|
||||
"tipMill": "شما می توانید قطعه حریف خود را حذف کنید",
|
||||
"@tipMill": {
|
||||
"description": "Mill! Take your opponent's piece."
|
||||
},
|
||||
"tipContinueMill": "ادامه گرفتن مهره حریف خود را ادامه دهید.",
|
||||
"@tipContinueMill": {
|
||||
"description": "Continue to take your opponent's piece."
|
||||
},
|
||||
"tipSelectOpponentsPiece": "یکی از مهره های حریف خود را انتخاب کنید.",
|
||||
"@tipSelectOpponentsPiece": {
|
||||
"description": "Select one of your opponent's pieces."
|
||||
},
|
||||
"tipCannotRemovePieceFromMill": "نمی توانید قطعه ای را از آسیاب بردارید.",
|
||||
"@tipCannotRemovePieceFromMill": {
|
||||
"description": "You cannot remove a piece from a Mill."
|
||||
},
|
||||
"tipCanMoveOnePoint": "یک قطعه می تواند 1 امتیاز را جابجا کند.",
|
||||
"@tipCanMoveOnePoint": {
|
||||
"description": "A piece can move 1 point."
|
||||
},
|
||||
"tipCannotMoveOpponentsPieces": "شما نمی توانید مهره های حریف خود را حرکت دهید.",
|
||||
"@tipCannotMoveOpponentsPieces": {
|
||||
"description": "You can't move your opponent's pieces."
|
||||
},
|
||||
"tipThreePiecesInLine": "3 قطعه در یک خط وجود دارد.",
|
||||
"@tipThreePiecesInLine": {
|
||||
"description": "There are 3 pieces in a line."
|
||||
},
|
||||
"tipSelectPieceToMove": "قطعه خود را برای حرکت انتخاب کنید.",
|
||||
"@tipSelectPieceToMove": {
|
||||
"description": "Select your piece to move."
|
||||
},
|
||||
"tipHaveThreePiecesLeft": "شما 3 قطعه مانده است.",
|
||||
"@tipHaveThreePiecesLeft": {
|
||||
"description": "Your have 3 pieces left."
|
||||
},
|
||||
"tipCanMoveToAnyPoint": "می توانید به هر نقطه ای که دوست دارید بروید.",
|
||||
"@tipCanMoveToAnyPoint": {
|
||||
"description": "You can move to any point you like."
|
||||
},
|
||||
"tipToMove": " حرکت کردن",
|
||||
"@tipToMove": {
|
||||
"description": " to move."
|
||||
},
|
||||
"whiteWin": "بازیکن 1 برنده!",
|
||||
"@whiteWin": {
|
||||
"description": "Player 1 win!"
|
||||
},
|
||||
"blackWin": "بازیکن 2 برنده!",
|
||||
"@blackWin": {
|
||||
"description": "Player 2 win!"
|
||||
},
|
||||
"won": "برنده شد",
|
||||
"@won": {
|
||||
"description": "Won"
|
||||
},
|
||||
"lost": "از دست دادن",
|
||||
"@lost": {
|
||||
"description": "Lost"
|
||||
},
|
||||
"aborted": "سقط شده",
|
||||
"@aborted": {
|
||||
"description": "Aborted"
|
||||
},
|
||||
"draw": "این یک قرعه کشی است",
|
||||
"@draw": {
|
||||
"description": "It is a Draw!"
|
||||
},
|
||||
"thinking": "فكر كردن...",
|
||||
"@thinking": {
|
||||
"description": "Thinking..."
|
||||
},
|
||||
"newGame": "شروع کنید",
|
||||
"@newGame": {
|
||||
"description": "Start"
|
||||
},
|
||||
"startNewGame": "شروع بازی جدید",
|
||||
"@startNewGame": {
|
||||
"description": "Start new game"
|
||||
},
|
||||
"startRecording": "شروع به ضبط کنید",
|
||||
"@startRecording": {
|
||||
"description": "Start recording"
|
||||
},
|
||||
"recording": "ضبط ...",
|
||||
"@recording": {
|
||||
"description": "Recording..."
|
||||
},
|
||||
"stopRecording": "ضبط را متوقف کنید",
|
||||
"@stopRecording": {
|
||||
"description": "Stop recording"
|
||||
},
|
||||
"showRecording": "ضبط را نشان دهید",
|
||||
"@showRecording": {
|
||||
"description": "Show recording"
|
||||
},
|
||||
"noRecording": "ضبط نشده",
|
||||
"@noRecording": {
|
||||
"description": "No recording."
|
||||
},
|
||||
"pleaseWait": "لطفا صبر کنید...",
|
||||
"@pleaseWait": {
|
||||
"description": "Please wait..."
|
||||
},
|
||||
"restartGame": "بازی فعلی را دوباره راه اندازی کنید؟",
|
||||
"@restartGame": {
|
||||
"description": "Restart current Game?"
|
||||
},
|
||||
"restart": "راه اندازی مجدد",
|
||||
"@restart": {
|
||||
"description": "Restart"
|
||||
},
|
||||
"gameStarted": "بازی شروع شده است ، لطفا قطعه را قرار دهید",
|
||||
"@gameStarted": {
|
||||
"description": "Game started, please place"
|
||||
},
|
||||
"analyzing": "در حال تجزیه و تحلیل ...",
|
||||
"@analyzing": {
|
||||
"description": "Analyzing ..."
|
||||
},
|
||||
"error": "خطا",
|
||||
"@error": {
|
||||
"description": "Error"
|
||||
},
|
||||
"winRate": "درصد برد",
|
||||
"@winRate": {
|
||||
"description": "Win Rate"
|
||||
},
|
||||
"score": "نمره",
|
||||
"@score": {
|
||||
"description": "Score"
|
||||
},
|
||||
"white": "پخش کننده 1",
|
||||
"@white": {
|
||||
"description": "Player 1"
|
||||
},
|
||||
"black": "پخش کننده 2",
|
||||
"@black": {
|
||||
"description": "Player 2"
|
||||
},
|
||||
"loseReasonlessThanThree": " تعداد قطعات کمتر از سه است.",
|
||||
"@loseReasonlessThanThree": {
|
||||
"description": " piece count is less than three."
|
||||
},
|
||||
"loseReasonResign": " استعفا",
|
||||
"@loseReasonResign": {
|
||||
"description": " resign."
|
||||
},
|
||||
"loseReasonNoWay": " راهی برای رفتن نیست",
|
||||
"@loseReasonNoWay": {
|
||||
"description": " is no way to go."
|
||||
},
|
||||
"loseReasonBoardIsFull": "هیئت مدیره پر است ، راهی برای رفتن نیست.",
|
||||
"@loseReasonBoardIsFull": {
|
||||
"description": "The board is full, no way to go."
|
||||
},
|
||||
"loseReasonTimeOver": "وقت تمام شد",
|
||||
"@loseReasonTimeOver": {
|
||||
"description": "Time Over"
|
||||
},
|
||||
"drawReasonRule50": "در مرحله متحرک ، هیچ قطعه ای در پنجاه حرکت گذشته برداشته نشده است.",
|
||||
"@drawReasonRule50": {
|
||||
"description": "In moving phase, no piece has been removed in the last fifty moves."
|
||||
},
|
||||
"drawReasonBoardIsFull": "این مساوی است.چون تخته پر است.",
|
||||
"@drawReasonBoardIsFull": {
|
||||
"description": "It is a Draw, because the board is full"
|
||||
},
|
||||
"drawReasonThreefoldRepetition": "این یک قرعه کشی است ، زیرا تکرار سه برابر است.",
|
||||
"@drawReasonThreefoldRepetition": {
|
||||
"description": "It is a Draw, because threefold repetition."
|
||||
},
|
||||
"gameOverUnknownReason": "بازی تمام شد! دلیل نامعلوم.",
|
||||
"@gameOverUnknownReason": {
|
||||
"description": "Game Over! Unknown reason."
|
||||
},
|
||||
"gameOver": "بازی تمام شد",
|
||||
"@gameOver": {
|
||||
"description": "Game Over"
|
||||
},
|
||||
"youWin": "شما برنده می شوید! تبریک می گویم!",
|
||||
"@youWin": {
|
||||
"description": "You win! Congratulations!"
|
||||
},
|
||||
"challengeHarderLevel": "چالش سطح سخت تر؟ مرحله ی بعدی: ",
|
||||
"@challengeHarderLevel": {
|
||||
"description": "Challenge harder level?"
|
||||
},
|
||||
"youLose": "تو باختی!",
|
||||
"@youLose": {
|
||||
"description": "You Lose!"
|
||||
},
|
||||
"analyze": "تجزیه و تحلیل",
|
||||
"@analyze": {
|
||||
"description": "Analyze"
|
||||
},
|
||||
"playerName": "نام بازیکن",
|
||||
"@playerName": {
|
||||
"description": "Player Name"
|
||||
},
|
||||
"about": "در باره",
|
||||
"@about": {
|
||||
"description": "About"
|
||||
},
|
||||
"version": "نسخه",
|
||||
"@version": {
|
||||
"description": "Version"
|
||||
},
|
||||
"releaseBaseOn": "پایه را در GPLv3 آزاد کنید",
|
||||
"@releaseBaseOn": {
|
||||
"description": "Release base On GPLv3"
|
||||
},
|
||||
"webSite": "سایت اینترنتی",
|
||||
"@webSite": {
|
||||
"description": "Web Site"
|
||||
},
|
||||
"whatsNew": "What's New",
|
||||
"@whatsNew": {
|
||||
"description": "What's New"
|
||||
},
|
||||
"fastUpdateChannel": "کانال بروزرسانی سریع",
|
||||
"@fastUpdateChannel": {
|
||||
"description": "Fast Update Channel"
|
||||
},
|
||||
"thanks": "با تشکر",
|
||||
"@thanks": {
|
||||
"description": "Thanks"
|
||||
},
|
||||
"thankWho": "با تشکر از برنامه نویسان و تیم های زیر:",
|
||||
"@thankWho": {
|
||||
"description": "Thank who"
|
||||
},
|
||||
"settings": "تنظیمات",
|
||||
"@settings": {
|
||||
"description": "Settings"
|
||||
},
|
||||
"options": "گزینه ها",
|
||||
"@options": {
|
||||
"description": "Options"
|
||||
},
|
||||
"preferences": "تنظیمات بازی",
|
||||
"@preferences": {
|
||||
"description": "Preferences"
|
||||
},
|
||||
"skillLevel": "سطح دشواری",
|
||||
"@skillLevel": {
|
||||
"description": "Difficulty level"
|
||||
},
|
||||
"moveTime": "زمان تفکر رایانه ای",
|
||||
"@moveTime": {
|
||||
"description": "AI thinking time"
|
||||
},
|
||||
"difficulty": "دشواری",
|
||||
"@difficulty": {
|
||||
"description": "Difficulty"
|
||||
},
|
||||
"playSounds": "جلوه های صوتی",
|
||||
"@playSounds": {
|
||||
"description": "Sound effects"
|
||||
},
|
||||
"playSoundsInTheGame": "صداها را در بازی پخش کنید",
|
||||
"@playSoundsInTheGame": {
|
||||
"description": "Play sounds in the game"
|
||||
},
|
||||
"keepMuteWhenTakingBack": "هنگام بازگشت به عقب ، بی صدا را حفظ کنید",
|
||||
"@keepMuteWhenTakingBack": {
|
||||
"description": "Keep mute when taking back"
|
||||
},
|
||||
"tone": "لحن",
|
||||
"@tone": {
|
||||
"description": "Tone"
|
||||
},
|
||||
"leaderBoard": "هیئت مدیره",
|
||||
"@leaderBoard": {
|
||||
"description": "Leader Board"
|
||||
},
|
||||
"whoMovesFirst": "حرکت اول",
|
||||
"@whoMovesFirst": {
|
||||
"description": "First move"
|
||||
},
|
||||
"firstMove": "حرکت اول",
|
||||
"@firstMove": {
|
||||
"description": "First move"
|
||||
},
|
||||
"human": "انسان",
|
||||
"@human": {
|
||||
"description": "Human"
|
||||
},
|
||||
"ai": "کامپیوتر",
|
||||
"@ai": {
|
||||
"description": "AI"
|
||||
},
|
||||
"alternate": "متناوب",
|
||||
"@alternate": {
|
||||
"description": "Alternate"
|
||||
},
|
||||
"isAutoRestart": "وقتی بازی تمام شد بازی را دوباره راه اندازی کنید",
|
||||
"@isAutoRestart": {
|
||||
"description": "Auto restart game when game over"
|
||||
},
|
||||
"isAutoChangeFirstMove": "تغییر خودکار حرکت اول",
|
||||
"@isAutoChangeFirstMove": {
|
||||
"description": "Auto Change First Move"
|
||||
},
|
||||
"resignIfMostLose": "AI Resign if Most Lose",
|
||||
"@resignIfMostLose": {
|
||||
"description": "AI Resign if Most Lose"
|
||||
},
|
||||
"shufflingEnabled": "حرکت تصادفی",
|
||||
"@shufflingEnabled": {
|
||||
"description": "Random move"
|
||||
},
|
||||
"learnEndgame": "Learn Endgame",
|
||||
"@learnEndgame": {
|
||||
"description": "Learn Endgame"
|
||||
},
|
||||
"idsEnabled": "IDS",
|
||||
"@idsEnabled": {
|
||||
"description": "IDS"
|
||||
},
|
||||
"depthExtension": "Depth Extension",
|
||||
"@depthExtension": {
|
||||
"description": "Depth Extension"
|
||||
},
|
||||
"openingBook": "Opening Book",
|
||||
"@openingBook": {
|
||||
"description": "Opening Book"
|
||||
},
|
||||
"misc": "متفرقه",
|
||||
"@misc": {
|
||||
"description": "Miscellaneous"
|
||||
},
|
||||
"rules": "قوانین",
|
||||
"@rules": {
|
||||
"description": "Rules"
|
||||
},
|
||||
"piecesCount": "تعداد مهره های هر بازیکن",
|
||||
"@piecesCount": {
|
||||
"description": "The number of pieces each player has"
|
||||
},
|
||||
"piecesCount_Detail": "هر بازیکن چند مهره دارد؟",
|
||||
"@piecesCount_Detail": {
|
||||
"description": "How many pieces does each player have?"
|
||||
},
|
||||
"ninePieces": "9 قطعه",
|
||||
"@ninePieces": {
|
||||
"description": "Nine Pieces"
|
||||
},
|
||||
"twelvePieces": "12 قطعه",
|
||||
"@twelvePieces": {
|
||||
"description": "Twelve Pieces"
|
||||
},
|
||||
"piecesAtLeastCount": "Pieces At Least",
|
||||
"@piecesAtLeastCount": {
|
||||
"description": "Pieces At Least"
|
||||
},
|
||||
"hasDiagonalLines": "خطوط مورب",
|
||||
"@hasDiagonalLines": {
|
||||
"description": "Diagonal lines"
|
||||
},
|
||||
"hasDiagonalLines_Detail": "چهار خط مورب به صفحه بازی اضافه کنید.",
|
||||
"@hasDiagonalLines_Detail": {
|
||||
"description": "Add four diagonal lines to the board."
|
||||
},
|
||||
"hasBannedLocations": "برداشتن قطعات را علامت گذاری کرده و به تأخیر بیندازید",
|
||||
"@hasBannedLocations": {
|
||||
"description": "Mark and delay removing pieces"
|
||||
},
|
||||
"hasBannedLocations_Detail": "در مرحله قرار دادن ، نقاط قطعات برداشته شده دیگر قادر به قرار دادن نخواهند بود.",
|
||||
"@hasBannedLocations_Detail": {
|
||||
"description": "In the placing phase, the points of removed pieces will no longer be able to place unless moving phase is entered."
|
||||
},
|
||||
"isDefenderMoveFirst": "بازیکن دوم ابتدا حرکت می کند",
|
||||
"@isDefenderMoveFirst": {
|
||||
"description": "The second player moves first"
|
||||
},
|
||||
"isDefenderMoveFirst_Detail": "بازیکنی که در عبارت قرار دادن دوم حرکت می کند در عبارت متحرک اول حرکت می کند.",
|
||||
"@isDefenderMoveFirst_Detail": {
|
||||
"description": "The player who moves second in the placing phrase moves first in the moving phrase."
|
||||
},
|
||||
"mayRemoveMultiple": "می تواند چند قطعه را حذف کند",
|
||||
"@mayRemoveMultiple": {
|
||||
"description": "Multi-remove"
|
||||
},
|
||||
"mayRemoveMultiple_Detail": "اگر یک بازیکن یک باره بیش از یک آسیاب را ببندد ، می تواند تعداد آسیاب هایی را که بسته است از بین ببرد.",
|
||||
"@mayRemoveMultiple_Detail": {
|
||||
"description": "If a player close more than one mill at once, she will be able to remove the number of mills she closed."
|
||||
},
|
||||
"mayRemoveFromMillsAlways": "آسیاب ها را نابود کنید",
|
||||
"@mayRemoveFromMillsAlways": {
|
||||
"description": "Destroy mills"
|
||||
},
|
||||
"mayRemoveFromMillsAlways_Detail": "به طور پیش فرض ، بازیکنان باید قبل از برداشتن قطعه ای از آسیاب تشکیل شده ، سایر قطعات را حذف کنند. برای غیرفعال کردن محدودیت ، این گزینه را فعال کنید.",
|
||||
"@mayRemoveFromMillsAlways_Detail": {
|
||||
"description": "mayRemoveFromMillsAlways_Detail"
|
||||
},
|
||||
"isWhiteLoseButNotDrawWhenBoardFull": "بازیکن دوم هنگام پر شدن صفحه از دست می رود",
|
||||
"@isWhiteLoseButNotDrawWhenBoardFull": {
|
||||
"description": "Second player loses when board full"
|
||||
},
|
||||
"isWhiteLoseButNotDrawWhenBoardFull_Detail": "در پایان مرحله قرار دادن ، وقتی تخته پر است ، طرفی که ابتدا قرار می گیرد بازی را از دست می دهد ، در غیر این صورت بازی مساوی است.",
|
||||
"@isWhiteLoseButNotDrawWhenBoardFull_Detail": {
|
||||
"description": "At the end of the placing phase, when the board is full, the side that places first loses the game, otherwise, the game is a draw."
|
||||
},
|
||||
"isLoseButNotChangeSideWhenNoWay": "از دست دادن هنگامی که هیچ حرکت قانونی است",
|
||||
"@isLoseButNotChangeSideWhenNoWay": {
|
||||
"description": "Lose when no legal moves"
|
||||
},
|
||||
"isLoseButNotChangeSideWhenNoWay_Detail": "اگر حریف مانع آنها شود تا بازیکن نتواند آنها را جابجا کند بازیکن شکست می خورد. در صورت غیرفعال بودن گزینه ، جهت حرکت را تغییر دهید.",
|
||||
"@isLoseButNotChangeSideWhenNoWay_Detail": {
|
||||
"description": "The player will lose if his opponent blocks them so that they cannot be moved. Change side to move if this option is disabled."
|
||||
},
|
||||
"mayFly": "پرواز کردن",
|
||||
"@mayFly": {
|
||||
"description": "Flying"
|
||||
},
|
||||
"mayFly_Detail": "اگر به بازیکنی فقط سه قطعه مانده باشد ، می تواند قطعه را به هر نقطه آزاد منتقل کند.",
|
||||
"@mayFly_Detail": {
|
||||
"description": "If a player has only three pieces left, she can move the piece to any free point."
|
||||
},
|
||||
"maxStepsLedToDraw": "مراحل حداکثر منجر به قرعه کشی",
|
||||
"@maxStepsLedToDraw": {
|
||||
"description": "Max Steps Led to Draw"
|
||||
},
|
||||
"rollback": "بازگشت به عقب",
|
||||
"@rollback": {
|
||||
"description": "Rollback"
|
||||
},
|
||||
"pleaseSelect": "لطفا انتخاب کنید",
|
||||
"@pleaseSelect": {
|
||||
"description": "Please select"
|
||||
},
|
||||
"copy": "کپی",
|
||||
"@copy": {
|
||||
"description": "Copy"
|
||||
},
|
||||
"moveHistoryCopied": "انتقال تاریخچه کپی شده به کلیپ بورد",
|
||||
"@moveHistoryCopied": {
|
||||
"description": "Move history copied to clipboard"
|
||||
},
|
||||
"help": "کمک",
|
||||
"@help": {
|
||||
"description": "Help"
|
||||
},
|
||||
"feedback": "بازخورد",
|
||||
"@feedback": {
|
||||
"description": "Feedback"
|
||||
},
|
||||
"inviteFriend": "Invite Friend",
|
||||
"@inviteFriend": {
|
||||
"description": "Invite Friend"
|
||||
},
|
||||
"rateTheApp": "Rate the App",
|
||||
"@rateTheApp": {
|
||||
"description": "Rate the App"
|
||||
},
|
||||
"exit": "خروج",
|
||||
"@exit": {
|
||||
"description": "Exit"
|
||||
},
|
||||
"ruleSettings": "تنظیمات قانون",
|
||||
"@ruleSettings": {
|
||||
"description": "Rule Settings"
|
||||
},
|
||||
"color": "رنگ",
|
||||
"@color": {
|
||||
"description": "Color"
|
||||
},
|
||||
"boardColor": "رنگ تخته",
|
||||
"@boardColor": {
|
||||
"description": "Board color"
|
||||
},
|
||||
"pieceColor": "رنگ قطعه",
|
||||
"@pieceColor": {
|
||||
"description": "Piece color"
|
||||
},
|
||||
"backgroudColor": "رنگ پس زمینه",
|
||||
"@backgroudColor": {
|
||||
"description": "Background color"
|
||||
},
|
||||
"lineColor": "رنگ خط تخته",
|
||||
"@lineColor": {
|
||||
"description": "Board linecolor"
|
||||
},
|
||||
"whitePieceColor": "پخش کننده 1 قطعه رنگ",
|
||||
"@whitePieceColor": {
|
||||
"description": "Player 1 piece color"
|
||||
},
|
||||
"blackPieceColor": "Player 2 piece color",
|
||||
"@blackPieceColor": {
|
||||
"description": "Player 2 piece color"
|
||||
},
|
||||
"messageColor": "رنگ پیام",
|
||||
"@messageColor": {
|
||||
"description": "Message color"
|
||||
},
|
||||
"aiIsLazy": "کامپیوتر تنبل است",
|
||||
"@aiIsLazy": {
|
||||
"description": "AI is Lazy"
|
||||
},
|
||||
"isPieceCountInHandShown": "تعداد قطعات موجود در دست را نشان دهید",
|
||||
"@isPieceCountInHandShown": {
|
||||
"description": "Show count of pieces in hand"
|
||||
},
|
||||
"isNotationsShown": "نمایش مختصات",
|
||||
"@isNotationsShown": {
|
||||
"description": "Show notations on board"
|
||||
},
|
||||
"display": "نمایش دادن",
|
||||
"@display": {
|
||||
"description": "Display"
|
||||
},
|
||||
"boardBorderLineWidth": "عرض خط مرزی تخته",
|
||||
"@boardBorderLineWidth": {
|
||||
"description": "Board border line width"
|
||||
},
|
||||
"boardInnerLineWidth": "عرض خط داخلی تخته",
|
||||
"@boardInnerLineWidth": {
|
||||
"description": "Board inner line width"
|
||||
},
|
||||
"pieceWidth": "عرض قطعه",
|
||||
"@pieceWidth": {
|
||||
"description": "Piece width"
|
||||
},
|
||||
"fontSize": "اندازه فونت",
|
||||
"@fontSize": {
|
||||
"description": "Font size"
|
||||
},
|
||||
"standardNotation": "علامت گذاری استاندارد",
|
||||
"@standardNotation": {
|
||||
"description": "Standard notation"
|
||||
},
|
||||
"restore": "بازگرداندن",
|
||||
"@restore": {
|
||||
"description": "Restore"
|
||||
},
|
||||
"restoreDefaultSettings": "تنظیمات پیش فرض را بازیابی کنید",
|
||||
"@restoreDefaultSettings": {
|
||||
"description": "Restore Default Settings"
|
||||
},
|
||||
"exitApp": "برنامه بسته خواهد شد",
|
||||
"@exitApp": {
|
||||
"description": "The App will exit."
|
||||
},
|
||||
"exitAppManually": "شما باید بلافاصله ببندید و برنامه را دوباره باز کنید تا اثر بگذارد.",
|
||||
"@exitAppManually": {
|
||||
"description": "You have to close immediately and reopen App to take effect."
|
||||
},
|
||||
"pick": "انتخاب",
|
||||
"@pick": {
|
||||
"description": "Pick "
|
||||
},
|
||||
"info": "اطلاعات",
|
||||
"@info": {
|
||||
"description": "Info"
|
||||
},
|
||||
"hint": "اشاره",
|
||||
"@hint": {
|
||||
"description": "Hint"
|
||||
},
|
||||
"player": "بازیکن",
|
||||
"@player": {
|
||||
"description": "player"
|
||||
},
|
||||
"player1": "بازیکن 1",
|
||||
"@player1": {
|
||||
"description": "Player 1"
|
||||
},
|
||||
"player2": "بازیکن 2",
|
||||
"@player2": {
|
||||
"description": "Player 2"
|
||||
},
|
||||
"howToPlay": "نحوه بازی",
|
||||
"@howToPlay": {
|
||||
"description": "How to play"
|
||||
},
|
||||
"toPlacePiece": "برای قرار دادن قطعه ، روی هر نقطه موجود ضربه بزنید.",
|
||||
"@toPlacePiece": {
|
||||
"description": "Tap on any available point to place the piece."
|
||||
},
|
||||
"toSelectPiece": "برای حرکت دادن آن ، روی قطعه ضربه بزنید.",
|
||||
"@toSelectPiece": {
|
||||
"description": "Tap on a piece to move it."
|
||||
},
|
||||
"toMovePiece": "برای جابجایی آن روی نقطه مجاور قطعه ضربه بزنید.",
|
||||
"@toMovePiece": {
|
||||
"description": "Tap on point connected to piece to move it."
|
||||
},
|
||||
"toRemovePiece": "برای برداشتن روی یک تکه حریف ضربه بزنید.",
|
||||
"@toRemovePiece": {
|
||||
"description": "Tap on opponent's one piece to remove."
|
||||
},
|
||||
"needToCreateMillFirst": "قبل از اینکه بتوانید قطعه ای را بردارید ، ابتدا باید یک آسیاب ایجاد کنید.",
|
||||
"@needToCreateMillFirst": {
|
||||
"description": "You need to create a mill first, before you can remove a piece."
|
||||
},
|
||||
"needToPlayWithOwnPieces": "شما باید با قطعات خودتان بازی کنید.",
|
||||
"@needToPlayWithOwnPieces": {
|
||||
"description": "You need to play with your own pieces."
|
||||
},
|
||||
"statistics": "آمار",
|
||||
"@statistics": {
|
||||
"description": "Statistics"
|
||||
},
|
||||
"totalGames": "کل بازیهای انجام شده",
|
||||
"@totalGames": {
|
||||
"description": "Total games"
|
||||
},
|
||||
"results": "نتایج",
|
||||
"@results": {
|
||||
"description": "Results"
|
||||
},
|
||||
"easy": "آسان",
|
||||
"@easy": {
|
||||
"description": "Easy"
|
||||
},
|
||||
"difficult": "دشوار",
|
||||
"@difficult": {
|
||||
"description": "Difficult"
|
||||
},
|
||||
"cannotRemoveFromMill": "نمی توان از آسیاب حذف کرد.",
|
||||
"@cannotRemoveFromMill": {
|
||||
"description": "Cannot remove from mill."
|
||||
},
|
||||
"left": "ترک کرد",
|
||||
"@left": {
|
||||
"description": "left"
|
||||
},
|
||||
"privacyPolicy": "سیاست حفظ حریم خصوصی",
|
||||
"@privacyPolicy": {
|
||||
"description": "Privacy Policy"
|
||||
},
|
||||
"privacyPolicy_Detail_1": "لطفاً با دقت مطالعه کنید و مطمئن شوید که این موضوع را کاملاً درک کرده و با آن موافق هستید ",
|
||||
"@privacyPolicy_Detail_1": {
|
||||
"description": "Privacy Policy Detail 1"
|
||||
},
|
||||
"privacyPolicy_Detail_2": ". اگر با این سیاست موافق نیستید ، لطفاً از این برنامه استفاده نکنید. استفاده از برنامه به معنای پذیرفتن این شرایط است. ما گاهی اوقات این شرایط را به روز می کنیم ، بنابراین لطفا در آینده به آنها مراجعه کنید.",
|
||||
"@privacyPolicy_Detail_2": {
|
||||
"description": "Privacy Policy Detail 2"
|
||||
},
|
||||
"accept": "تایید کنید",
|
||||
"@accept": {
|
||||
"description": "Accept"
|
||||
},
|
||||
"undo": "واگرد",
|
||||
"@undo": {
|
||||
"description": "Undo"
|
||||
},
|
||||
"undoOption": "گزینه واگرد",
|
||||
"@undoOption": {
|
||||
"description": "Undo option"
|
||||
},
|
||||
"undoOption_Detail": "واگرد یک حرکت امکان پذیر است.",
|
||||
"@undoOption_Detail": {
|
||||
"description": "It is possible to undo a move."
|
||||
},
|
||||
"takeBack": "برگرد",
|
||||
"@takeBack": {
|
||||
"description": "Take back"
|
||||
},
|
||||
"takingBack": "پس گرفتن... ",
|
||||
"@takingBack": {
|
||||
"description": "Taking back..."
|
||||
},
|
||||
"waiting": "در انتظار..",
|
||||
"@waiting": {
|
||||
"description": "Waiting..."
|
||||
},
|
||||
"stepForward": "قدم به جلو",
|
||||
"@stepForward": {
|
||||
"description": "Step forward"
|
||||
},
|
||||
"takeBackAll": "همه را پس بگیرید",
|
||||
"@takeBackAll": {
|
||||
"description": "Take back all"
|
||||
},
|
||||
"stepForwardAll": "قدم جلو تا انتها",
|
||||
"@stepForwardAll": {
|
||||
"description": "Step forward all"
|
||||
},
|
||||
"moveNow": "حالا حرکت کن",
|
||||
"@moveNow": {
|
||||
"description": "Move now"
|
||||
},
|
||||
"done": "انجام شده.",
|
||||
"@done": {
|
||||
"description": "Done."
|
||||
},
|
||||
"crackMill": "آسیاب را ترک بزنید",
|
||||
"@crackMill": {
|
||||
"description": "Crack-mill"
|
||||
},
|
||||
"crackMill_Detail": "اگر پخش کننده فقط قطعاتی در آسیاب داشته باشد ، قطعات موجود در آسیاب قفل نمی شوند تا برداشته شوند.",
|
||||
"@crackMill_Detail": {
|
||||
"description": "If a player has only pieces in mills, the pieces in the mills will not locked to remove."
|
||||
},
|
||||
"haveFunPlaying": "از بازی لذت ببرید!",
|
||||
"@haveFunPlaying": {
|
||||
"description": "Have fun playing!"
|
||||
},
|
||||
"animationSpeed": "سرعت انیمیشن",
|
||||
"@animationSpeed": {
|
||||
"description": "Animation speed"
|
||||
},
|
||||
"animationDuration": "مدت زمان انیمیشن",
|
||||
"@animationDuration": {
|
||||
"description": "Animation duration"
|
||||
},
|
||||
"slow": "آهسته. تدریجی",
|
||||
"@slow": {
|
||||
"description": "Slow"
|
||||
},
|
||||
"medium": "متوسط",
|
||||
"@medium": {
|
||||
"description": "Medium"
|
||||
},
|
||||
"fast": "سریع",
|
||||
"@fast": {
|
||||
"description": "Fast"
|
||||
},
|
||||
"none": "هیچ یک",
|
||||
"@none": {
|
||||
"description": "None"
|
||||
},
|
||||
"theme": "موضوع",
|
||||
"@theme": {
|
||||
"description": "Theme"
|
||||
},
|
||||
"helpContent": "The aim of the game is to leave the opponent with fewer than three pieces or no legal moves.\n\nThe game is automatically drawn if a position occurs for the third time, or if no remove has been made in the last fifty moves.\n\nThe game proceeds in three phases:\n\n1. Placing pieces on vacant points\n2. Moving pieces to adjacent points\n3. (optional phase) Moving pieces to any vacant point when the player has been reduced to three pieces\n\nPlacing\n\nThe game begins with an empty board, which consists of a grid with twenty-four points. Players take turns placing their pieces on vacant points until each player has placed all pieces on the board. If a player is able to place three of his pieces in a straight line, he has a \"mill\" and may remove one of his opponent\"s pieces from the board.\n\nIn some variants of rules, players must remove any other pieces first before removing a piece from a formed mill.\n\nIn some variants of rules, all the points of removed pieces may not be placed again in the placing phrase.\n\nOnce all pieces have been used players take turns moving.\n\nMoving\n\nTo move, a player moves one of his pieces along a board line to a vacant adjacent point. If he cannot do so, he has lost the game. As in the placing phase, a player who aligns three of his pieces on a board line has a mill and may remove one of his opponent\"s pieces. Any player reduces to two pieces and has no option to form new mills and thus loses the game. A player can also lose with more than three pieces, if his opponent blocks them so that they cannot be moved.\n\nFlying\n\nIn some variants of rules, once a player has only three pieces left, his pieces may \"fly\", \"hop\", or \"jump\" to any vacant points, not only adjacent ones.\n\n",
|
||||
"@helpContent": {
|
||||
"description": "Help Content"
|
||||
},
|
||||
"viewInGooglePlayStore": "مشاهده در فروشگاه Google Play",
|
||||
"@viewInGooglePlayStore": {
|
||||
"description": "View in Google Play Store"
|
||||
},
|
||||
"versionInfo": "اطلاعات نسخه",
|
||||
"@versionInfo": {
|
||||
"description": "Version info"
|
||||
},
|
||||
"license": "مجوز",
|
||||
"@license": {
|
||||
"description": "License"
|
||||
},
|
||||
"sourceCode": "کد منبع",
|
||||
"@sourceCode": {
|
||||
"description": "Source code"
|
||||
},
|
||||
"openSourceLicenses": "مجوزهای منبع باز",
|
||||
"@openSourceLicenses": {
|
||||
"description": "Open-source licenses"
|
||||
},
|
||||
"thirdPartyNotices": "اعلامیه های شخص ثالث",
|
||||
"@thirdPartyNotices": {
|
||||
"description": "Third-party notices"
|
||||
},
|
||||
"termOfUse": "شرایط استفاده",
|
||||
"@termOfUse": {
|
||||
"description": "Term of use"
|
||||
},
|
||||
"servicesAgreement": "توافق نامه خدمات",
|
||||
"@servicesAgreement": {
|
||||
"description": "Services agreement"
|
||||
},
|
||||
"appVersion": "نسخه برنامه",
|
||||
"@appVersion": {
|
||||
"description": "App Version"
|
||||
},
|
||||
"general": "عمومی",
|
||||
"@general": {
|
||||
"description": "General"
|
||||
},
|
||||
"advanced": "پیشرفته",
|
||||
"@advanced": {
|
||||
"description": "Advanced"
|
||||
},
|
||||
"placing": "قرار دادن",
|
||||
"@placing": {
|
||||
"description": "Placing"
|
||||
},
|
||||
"moving": "در حال حرکت",
|
||||
"@moving": {
|
||||
"description": "Moving"
|
||||
},
|
||||
"removing": "حذف کردن",
|
||||
"@removing": {
|
||||
"description": "Removing"
|
||||
},
|
||||
"gameOverCondition": "شرایط Game Over",
|
||||
"@gameOverCondition": {
|
||||
"description": "Game over condition"
|
||||
},
|
||||
"aisPlayStyle": "سبک بازی کامپیوتر",
|
||||
"@aisPlayStyle": {
|
||||
"description": "AI's play style"
|
||||
},
|
||||
"passive": "منفعل",
|
||||
"@passive": {
|
||||
"description": "Passive"
|
||||
},
|
||||
"automaticBehavior": "رفتار خودکار",
|
||||
"@automaticBehavior": {
|
||||
"description": "Automatic behavior"
|
||||
},
|
||||
"timeout": "مهلت زمانی",
|
||||
"@timeout": {
|
||||
"description": "Timeout"
|
||||
},
|
||||
"personalization": "تنظیمات ظاهر",
|
||||
"@personalization": {
|
||||
"description": "Personalization"
|
||||
},
|
||||
"forDevelopers": "برای توسعه دهندگان",
|
||||
"@forDevelopers": {
|
||||
"description": "For developers"
|
||||
},
|
||||
"developerMode": "حالت توسعه دهنده",
|
||||
"@developerMode": {
|
||||
"description": "Developer mode"
|
||||
},
|
||||
"pieceCount": "تعداد قطعه",
|
||||
"@pieceCount": {
|
||||
"description": "Piece count"
|
||||
},
|
||||
"inHand": "در دست",
|
||||
"@inHand": {
|
||||
"description": "in hand"
|
||||
},
|
||||
"onBoard": "روی تخته بازی",
|
||||
"@onBoard": {
|
||||
"description": "on board"
|
||||
},
|
||||
"boardTop": "بالا",
|
||||
"@boardTop": {
|
||||
"description": "Board offset from the top"
|
||||
},
|
||||
"notAIsTurn": "نوبت به کامپیوتر نمی رسد.",
|
||||
"@notAIsTurn": {
|
||||
"description": "It is not AI's turn."
|
||||
},
|
||||
"aiIsNotThinking": "کامپیوتر فکر نمی کند.",
|
||||
"@aiIsNotThinking": {
|
||||
"description": "AI is not thinking."
|
||||
},
|
||||
"autoReplay": "پخش خودکار حرکت می کند",
|
||||
"@autoReplay": {
|
||||
"description": "Auto replay moves"
|
||||
},
|
||||
"atEnd": "در پایین لیست تاریخچه.",
|
||||
"@atEnd": {
|
||||
"description": "At the end of move list."
|
||||
},
|
||||
"tapBackAgainToLeave": "برای خروج از برنامه ، دوباره روی دکمه برگشت ضربه بزنید.",
|
||||
"@tapBackAgainToLeave": {
|
||||
"description": "Tap back again to leave."
|
||||
},
|
||||
"environmentVariables": "متغیرهای محیطی",
|
||||
"@environmentVariables": {
|
||||
"description": "Environment variables"
|
||||
},
|
||||
"more": "بیشتر",
|
||||
"@more": {
|
||||
"description": "More"
|
||||
},
|
||||
"experimental": "این یک ویژگی تجربی است.",
|
||||
"@experimental": {
|
||||
"description": "This is an experimental feature."
|
||||
},
|
||||
"experiments": "آزمایش",
|
||||
"@experiments": {
|
||||
"description": "Experiments"
|
||||
}
|
||||
}
|
|
@ -41,6 +41,13 @@ class ChineseStrings extends Strings {
|
|||
String get tapBackAgainToLeave => '再次按返回键退出应用';
|
||||
}
|
||||
|
||||
/// Farsi strings
|
||||
class FarsiStrings extends Strings {
|
||||
@override
|
||||
String get tapBackAgainToLeave =>
|
||||
'برای خروج از برنامه ، دوباره روی دکمه برگشت ضربه بزنید.';
|
||||
}
|
||||
|
||||
class Resources {
|
||||
Resources();
|
||||
|
||||
|
@ -51,6 +58,8 @@ class Resources {
|
|||
return GermanStrings();
|
||||
case 'zh':
|
||||
return ChineseStrings();
|
||||
case 'fa':
|
||||
return FarsiStrings();
|
||||
default:
|
||||
return EnglishStrings();
|
||||
}
|
||||
|
|
|
@ -133,14 +133,16 @@ class _SanmillAppState extends State<SanmillApp> {
|
|||
GlobalCupertinoLocalizations.delegate,
|
||||
],
|
||||
supportedLocales: [
|
||||
const Locale('en', ''), // English, no country code
|
||||
const Locale('en', ''),
|
||||
const Locale.fromSubtags(
|
||||
languageCode: 'de',
|
||||
), // Deutsch *See Advanced Locales below*
|
||||
),
|
||||
const Locale.fromSubtags(
|
||||
languageCode: 'zh',
|
||||
), // Chinese *See Advanced Locales below*
|
||||
// ... other locales the app supports
|
||||
),
|
||||
const Locale.fromSubtags(
|
||||
languageCode: 'fa',
|
||||
),
|
||||
],
|
||||
theme: ThemeData(primarySwatch: AppTheme.appPrimaryColor),
|
||||
debugShowCheckedModeBanner: false,
|
||||
|
|
Loading…
Reference in New Issue