ترجم لعبة PlayDrop وصفحتها
اقرأ لغة اللاعب باستخدام sdk.host.language، واختر أيًا من لغات PlayDrop العشرين تدعمها، وترجم صفحة اللعبة وصورها.
يتحدث موقع PlayDrop وتطبيقاته 20 لغة. ويمكن للعبة أن تتبع لغة اللاعب في مكانين منفصلين: اللعبة نفسها، التي تترجمها في الكود، وصفحتها، التي تترجمها في catalogue.json.
ابدأ بالإنجليزية ولغة واحدة أخرى
قدّم اللعبة بالإنجليزية، إضافة إلى لغة الشخص الذي تعمل معه إن كانت مختلفة. وأضف لغات أخرى عندما تخطط للوصول إلى لاعبيها. فالترجمة الجزئية أسوأ من لعبة إنجليزية جيدة، لذا ترجم الشاشات كاملة.
ترجم اللعبة
تمثل sdk.host.language لغة اللاعب من بين لغات PlayDrop العشرين: en وfr وde وes وpt-BR وit وnl وsv وnb وfi وpl وtr وar وth وvi وid وja وko وzh-Hans وzh-Hant.
const STRINGS = { en: { play: "Play" }, fr: { play: "Jouer" } };
let language = "en";
try { language = sdk.host.language; } catch { /* older host */ }
const t = STRINGS[language] ?? STRINGS[language.split("-")[0]] ?? STRINGS.en;sdk.host.locale هي القيمة الأقدم، وتقتصر على اللغات العشر الأصلية وتعطي en للغات الأخرى؛ ففضّل language. ويمكن للاثنتين أن ترميا الخطأ host_locale_unavailable في البيئات المضيفة القديمة جدًا. تُكتب العربية من اليمين إلى اليسار: اعكس التخطيط لا طريقة اللعب، واختبر الكلمات الطويلة بالألمانية والفنلندية.
ترجم صفحة اللعبة
اضبط sourceLocale على اللغة التي كُتبت بها صفحة اللعبة، ثم أضف ترجمة كاملة واحدة لكل لغة في listingLocalizations، مفهرسة بحسب اللغة:
{
"sourceLocale": "en",
"displayName": "Moon Jump",
"description": "Jump between lunar platforms and reach the flag.",
"listingLocalizations": {
"fr": {
"displayName": "Saut lunaire",
"subtitle": "Des plateformes lunaires contre la montre",
"description": "Sautez de plateforme en plateforme et atteignez le drapeau.",
"controls": "Touchez ou appuyez sur Espace pour sauter.",
"listing": { "heroLandscape": "listing/locales/fr/hero-landscape.png" }
}
}
}- تحتاج كل ترجمة إلى
displayNameخاص بها. ويمكنها أيضًا ترجمةsubtitleوdescriptionوinspirationPromptوcontrolsوmakingOfوreleaseNotes. - توضع الصور المترجمة، مثل صورة رئيسية بعنوان مترجم، في كائن
listingالخاص بالترجمة، باستخدام الحقول نفسها المستخدمة في صفحة اللعبة الأساسية. - يسجّل PlayDrop أي إصدار من النص المصدر تطابقه كل ترجمة. وعندما تتغير صفحة اللعبة المصدر، حدّث الترجمات في عملية الرفع نفسها.
ترجمة صفحة اللعبة لا تترجم اللعبة، وترجمة اللعبة لا تترجم صفحتها. ولا تذكر إلا اللغات التي تدعمها اللعبة فعلًا.
اللاعبون والبحث
يعرض الموقع كل لغة على عنوان خاص بها مع روابط بين النسخ، لتتمكن محركات البحث من عرض لغة القارئ. ويرى اللاعبون الترجمة التي تطابق لغتهم في PlayDrop، وإلا فيرون اللغة المصدر.