diff --git a/frontend/docusaurus.config.ts b/frontend/docusaurus.config.ts index f94699fd26c..44a242384b2 100644 --- a/frontend/docusaurus.config.ts +++ b/frontend/docusaurus.config.ts @@ -8,6 +8,7 @@ import { themes as prismThemes } from "prism-react-renderer"; const currentYear = new Date().getFullYear(); const copyrightByLocale: Record = { + ar: `حقوق النشر © ${currentYear} open.mp. بُني الموقع باستخدام Docusaurus.`, en: `Copyright © ${currentYear} open.mp. Built with Docusaurus.`, uk: `Copyright © ${currentYear} open.mp. Створено на Docusaurus.`, "pt-BR": `Copyright © ${currentYear} open.mp. Feito com Docusaurus.`, @@ -94,6 +95,10 @@ const config: Config = { "zh-TW", ], localeConfigs: { + ar: { + label: "العربية", + direction: "rtl", + }, "zh-CN": { label: "简体中文", }, diff --git a/frontend/i18n/ar/README.md b/frontend/i18n/ar/README.md new file mode 100644 index 00000000000..2cb04f2f35c --- /dev/null +++ b/frontend/i18n/ar/README.md @@ -0,0 +1,70 @@ +# Arabic documentation translation + +This is an ongoing translation, not complete Arabic coverage. The goal is to translate all English docs and correct the existing Arabic pages in one growing draft PR. + +## Current coverage + +Source baseline: `4014a3952e3ae9556440446c32c2b1b8ae7f2f30` (upstream master). + +**25 of 1,247 documentation pages** have Arabic content in this batch. All nine previously existing Arabic pages have been rewritten against this baseline. Pages without an Arabic file still fall back to English through Docusaurus; that fallback does not count as a translation. + +| Section | Arabic pages | +| --- | ---: | +| `.` | 1 | +| `client` | 2 | +| `meta` | 1 | +| `scripting/callbacks` | 14 | +| `scripting/functions` | 5 | +| `scripting/resources` | 2 | + +Navigation, sidebar categories, shared version/NPC notices, and documentation accessibility labels are localized separately from page coverage. Arabic inline code is isolated left-to-right so commands such as `/quit` and paths keep their original order. + +## Writing conventions + +- Write clear Modern Standard Arabic. Explain the meaning in context rather than copying English sentence structure or transliterating every term. +- Keep API names, identifiers, commands, paths, model names, numeric values, and runnable examples intact. Game-client text remains in English in code examples; do not assume Arabic text works in the client. +- Translate front matter descriptions as well as prose, tables, warnings, and related-link explanations. Preserve the English heading IDs explicitly so inbound fragment links keep working. +- Use **معرّف** for ID, **الخادم** for server, **برنامج اللعبة** for client, **نمط اللعب (gamemode)** and **السكربتات الجانبية (filterscripts)** on first use. Use **مركبة** rather than assuming every vehicle is a car. +- Explain streaming as entering or leaving **نطاق العرض** for a particular player. Distinguish vehicle paint colours (**ألوان المركبة**) from paintjobs (**تصاميم الطلاء**). +- Translate callbacks as **دوال الاستدعاء**; explain them with **يستدعي الخادم هذه الدالة عندما…**. Preserve callback order, return-value polarity and the difference between previewing and buying. +- Use Docusaurus locale-level RTL rather than per-page wrapper divs. Keep code left-to-right and check mixed Arabic/API tables in a browser. +- Compare each translation to its English source, including notes and related links. Do not treat file presence or a successful build as proof of translation quality. + +## Remaining work + +- [ ] Remaining client guides. +- [ ] Server installation, configuration, administration and troubleshooting. +- [ ] Remaining scripting callbacks. +- [ ] Remaining scripting functions. +- [ ] Remaining scripting resources and reference tables. +- [ ] Pawn language documentation and language reference. +- [ ] Tutorials, changelog, awesome list and remaining meta pages. +- [ ] Independent Arabic language review and final full-coverage audit. + +## Pages in this batch + +- [client/ClientCommands.md](docusaurus-plugin-content-docs/current/client/ClientCommands.md) +- [client/sa-mp.cfg.md](docusaurus-plugin-content-docs/current/client/sa-mp.cfg.md) +- [index.md](docusaurus-plugin-content-docs/current/index.md) +- [meta/Contributing.md](docusaurus-plugin-content-docs/current/meta/Contributing.md) +- [scripting/callbacks/OnActorStreamIn.md](docusaurus-plugin-content-docs/current/scripting/callbacks/OnActorStreamIn.md) +- [scripting/callbacks/OnActorStreamOut.md](docusaurus-plugin-content-docs/current/scripting/callbacks/OnActorStreamOut.md) +- [scripting/callbacks/OnEnterExitModShop.md](docusaurus-plugin-content-docs/current/scripting/callbacks/OnEnterExitModShop.md) +- [scripting/callbacks/OnPlayerSpawn.md](docusaurus-plugin-content-docs/current/scripting/callbacks/OnPlayerSpawn.md) +- [scripting/callbacks/OnPlayerStreamIn.md](docusaurus-plugin-content-docs/current/scripting/callbacks/OnPlayerStreamIn.md) +- [scripting/callbacks/OnPlayerStreamOut.md](docusaurus-plugin-content-docs/current/scripting/callbacks/OnPlayerStreamOut.md) +- [scripting/callbacks/OnVehicleDeath.md](docusaurus-plugin-content-docs/current/scripting/callbacks/OnVehicleDeath.md) +- [scripting/callbacks/OnVehicleMod.md](docusaurus-plugin-content-docs/current/scripting/callbacks/OnVehicleMod.md) +- [scripting/callbacks/OnVehiclePaintjob.md](docusaurus-plugin-content-docs/current/scripting/callbacks/OnVehiclePaintjob.md) +- [scripting/callbacks/OnVehicleRespray.md](docusaurus-plugin-content-docs/current/scripting/callbacks/OnVehicleRespray.md) +- [scripting/callbacks/OnVehicleSirenStateChange.md](docusaurus-plugin-content-docs/current/scripting/callbacks/OnVehicleSirenStateChange.md) +- [scripting/callbacks/OnVehicleSpawn.md](docusaurus-plugin-content-docs/current/scripting/callbacks/OnVehicleSpawn.md) +- [scripting/callbacks/OnVehicleStreamIn.md](docusaurus-plugin-content-docs/current/scripting/callbacks/OnVehicleStreamIn.md) +- [scripting/callbacks/OnVehicleStreamOut.md](docusaurus-plugin-content-docs/current/scripting/callbacks/OnVehicleStreamOut.md) +- [scripting/functions/ChangeVehicleColor.md](docusaurus-plugin-content-docs/current/scripting/functions/ChangeVehicleColor.md) +- [scripting/functions/ChangeVehiclePaintjob.md](docusaurus-plugin-content-docs/current/scripting/functions/ChangeVehiclePaintjob.md) +- [scripting/functions/GetVehicleParamsSirenState.md](docusaurus-plugin-content-docs/current/scripting/functions/GetVehicleParamsSirenState.md) +- [scripting/functions/SetVehicleHealth.md](docusaurus-plugin-content-docs/current/scripting/functions/SetVehicleHealth.md) +- [scripting/functions/SetVehicleToRespawn.md](docusaurus-plugin-content-docs/current/scripting/functions/SetVehicleToRespawn.md) +- [scripting/resources/paintjobs.md](docusaurus-plugin-content-docs/current/scripting/resources/paintjobs.md) +- [scripting/resources/vehiclehealth.md](docusaurus-plugin-content-docs/current/scripting/resources/vehiclehealth.md) diff --git a/frontend/i18n/ar/code.json b/frontend/i18n/ar/code.json new file mode 100644 index 00000000000..e16cb6e668d --- /dev/null +++ b/frontend/i18n/ar/code.json @@ -0,0 +1,92 @@ +{ + "npcCallbacksNote.message": { + "message": "قد تُستدعى هذه الدالة أيضًا لشخصية يتحكم بها الحاسوب (NPC)." + }, + "versionWarn.name.function": { + "message": "الدالة" + }, + "versionWarn.name.callback": { + "message": "دالة الاستدعاء" + }, + "versionWarn.message": { + "message": "أُضيفت {name} في الإصدار {version}، ولن تعمل في الإصدارات الأقدم." + }, + "notFound.title": { + "message": "الصفحة غير موجودة" + }, + "notFound.imageAlt": { + "message": "لقطة من مهمة القطار في GTA" + }, + "notFound.home": { + "message": "الرئيسية" + }, + "notFound.docs": { + "message": "التوثيق" + }, + "notFound.servers": { + "message": "الخوادم" + }, + "theme.admonition.warning": { + "message": "تحذير" + }, + "theme.admonition.caution": { + "message": "تنبيه" + }, + "theme.admonition.tip": { + "message": "نصيحة" + }, + "theme.CodeBlock.copyButtonAriaLabel": { + "message": "نسخ الشيفرة إلى الحافظة" + }, + "theme.CodeBlock.wordWrapToggle": { + "message": "تفعيل التفاف الأسطر أو إيقافه" + }, + "theme.docs.sidebar.navAriaLabel": { + "message": "فهرس التوثيق" + }, + "theme.docs.sidebar.closeSidebarButtonAriaLabel": { + "message": "إغلاق قائمة التنقل" + }, + "theme.docs.sidebar.toggleSidebarButtonAriaLabel": { + "message": "فتح قائمة التنقل أو إغلاقها" + }, + "theme.DocSidebarItem.expandCategoryAriaLabel": { + "message": "توسيع قسم «{label}» في الفهرس" + }, + "theme.DocSidebarItem.collapseCategoryAriaLabel": { + "message": "طيّ قسم «{label}» في الفهرس" + }, + "theme.IconExternalLink.ariaLabel": { + "message": "(يفتح في علامة تبويب جديدة)" + }, + "theme.NavBar.navAriaLabel": { + "message": "التنقل الرئيسي" + }, + "theme.navbar.mobileDropdown.collapseButton.expandAriaLabel": { + "message": "فتح القائمة المنسدلة" + }, + "theme.navbar.mobileDropdown.collapseButton.collapseAriaLabel": { + "message": "إغلاق القائمة المنسدلة" + }, + "theme.colorToggle.ariaLabel.mode.system": { + "message": "مظهر النظام" + }, + "theme.common.skipToMainContent": { + "message": "الانتقال إلى المحتوى الرئيسي" + }, + "theme.common.headingLinkTitle": { + "message": "رابط مباشر إلى العنوان {heading}" + }, + "theme.BackToTopButton.buttonAriaLabel": { + "message": "العودة إلى أعلى الصفحة" + }, + "theme.TOCCollapsible.toggleButtonLabel": { + "message": "في هذه الصفحة" + }, + "theme.docs.paginator.navAriaLabel": { + "message": "التنقل بين صفحات التوثيق" + }, + "theme.docs.versions.latestVersionLinkLabel": { + "message": "أحدث إصدار" + } +} diff --git a/frontend/i18n/ar/docusaurus-plugin-content-docs/current.json b/frontend/i18n/ar/docusaurus-plugin-content-docs/current.json index 816df1d4999..b37b79b0f15 100644 --- a/frontend/i18n/ar/docusaurus-plugin-content-docs/current.json +++ b/frontend/i18n/ar/docusaurus-plugin-content-docs/current.json @@ -1,32 +1,46 @@ { "sidebar.docsSidebar.category.Scripting": { - "message": "البرمجة النصية" + "message": "البرمجة", + "description": "The label for category 'Scripting' in sidebar 'docsSidebar'" }, "sidebar.docsSidebar.category.Callbacks": { - "message": "وظائف الاستدعاء" + "message": "دوال الاستدعاء", + "description": "The label for category 'Callbacks' in sidebar 'docsSidebar'" }, "sidebar.docsSidebar.category.Functions": { - "message": "الدوال" + "message": "الدوال", + "description": "The label for category 'Functions' in sidebar 'docsSidebar'" }, "sidebar.docsSidebar.category.Language": { - "message": "اللغة" + "message": "لغة Pawn", + "description": "The label for category 'Language' in sidebar 'docsSidebar'" }, "sidebar.docsSidebar.category.Reference": { - "message": "المراجع" + "message": "مرجع اللغة", + "description": "The label for category 'Reference' in sidebar 'docsSidebar'" }, "sidebar.docsSidebar.category.Resources": { - "message": "الموارد" + "message": "الجداول والمراجع", + "description": "The label for category 'Resources' in sidebar 'docsSidebar'" }, "sidebar.docsSidebar.category.Server": { - "message": "الخادم" + "message": "الخادم", + "description": "The label for category 'Server' in sidebar 'docsSidebar'" }, "sidebar.docsSidebar.category.Client": { - "message": "العميل" + "message": "برنامج اللعبة", + "description": "The label for category 'Client' in sidebar 'docsSidebar'" }, "sidebar.docsSidebar.category.Tutorials": { - "message": "الدروس التعليمية" + "message": "دروس تطبيقية", + "description": "The label for category 'Tutorials' in sidebar 'docsSidebar'" }, "sidebar.docsSidebar.category.Meta": { - "message": "ميتا" + "message": "عن التوثيق", + "description": "The label for category 'Meta' in sidebar 'docsSidebar'" + }, + "version.label": { + "message": "الإصدار الحالي", + "description": "The label for version current" } } diff --git a/frontend/i18n/ar/docusaurus-plugin-content-docs/current/client/ClientCommands.md b/frontend/i18n/ar/docusaurus-plugin-content-docs/current/client/ClientCommands.md index d68bafaed0b..fa59dcec3e8 100644 --- a/frontend/i18n/ar/docusaurus-plugin-content-docs/current/client/ClientCommands.md +++ b/frontend/i18n/ar/docusaurus-plugin-content-docs/current/client/ClientCommands.md @@ -1,31 +1,47 @@ --- -title: "أوامر العميل" -sidebar_label: "أوامر العميل" -description: "قائمة بجميع أوامر العميل." +title: أوامر اللعبة +sidebar_label: أوامر اللعبة +description: الأوامر المدمجة في برنامج SA-MP وخيارات إعدادها. --- -
+## الأوامر {#commands} -## الأوامر +هذه أوامر مدمجة في برنامج اللعبة، وقد يضيف الخادم الذي تلعب عليه أوامر أخرى خاصة به. -| الأمر | الوصف | -| -------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| (q/) quit/ | يقوم هذا الكوماند أو الأمر باخراجك من اللعبة. | -| save/ | يعتبر save/ الأمر الأكثر استخدامًا عادةً، وربما الأكثر فائدة. عند كتابة save/ يتم حفظ موقعك الحالي في ملف savedpositions.txt في دليل ملفات المستخدم الخاص بك، حيث يمكنك استخدامه في السيناريوهات. | -| rs/ | rs/ (حفظ نقطة بيانات أساسية) هو عبارة عن save/، ولكنه يقوم بحفظ موقعك الحالي وزاوية التوجه فقط في ملف rawpositions.txt في دليل ملفات المستخدم الخاص بك. لا يتم حفظ أي معلومات إضافية مثل الفريق او الأسلحة. | -| interior/ | يظهر هذا الأمر الانتيريور او الداخل الحالية في الشات. | -| vw/ | يظهر هذا الأمر العالم الافتراضي الحالي في الشات. | -| fpslimit/ | يحدد هذا الأمر الحد الأقصى لمعدل الإطارات في اللعبة (Frames Per Second). كلما زاد الحد الأقصى، زادت سلاسة اللعبة. لا يؤثر إذا قمت بتعطيله في خيارات الغرافيك. الحد بين 20 و 90، والإعداد الافتراضي هو 50. يقوم هذا بتعيين خيار 'fpslimit' في ملف sa-mp.cfg. | -| pagesize/ | يستخدم pagesize/ لاختيار عدد الأسطر في الشات التي يتم عرضها. يمكن أن يكون أي شيء بين 10 و 20 سطرًا. القيمة الافتراضية لـ pagesize هي 10. يقوم هذا بتعيين خيار 'pagesize' في ملف sa-mp.cfg. | -| headmove/ | يتحكم هذا الأمر في حركة رؤوس اللاعبين في الإتجاه الذي ينظر إليه، ولكنه يتم التعامل معه محليًا حتى يرى اللاعبون الآخرون تحرك رأسك. يقوم هذا بتعيين خيار 'disableheadmove' في ملف sa-mp.cfg. | -| timestamp/ | سيظهر هذا الأمر/يخفي وقتًا بجوار جميع الرسائل في مربع الشات. الوقت الذي يتم عرضه هو وقت جهاز الكمبيوتر الخاص بك، وليس وقت السيرفر. يقوم هذا بتعيين خيار 'timestamp' في ملف sa-mp.cfg. | -| dl/ | تعني DL علامات التصحيح. يقوم هذا الأمر بتبديل علامات التصحيح على المركبات، والتي تعرض ايدي المركبة والموديل والصحة وما إذا كانت المركبة محملة مسبقًا والمسافة عن اللاعب والمقطورة والمقاعد المتاحة والموقع الحالي وموقع الظهور. | -| nametagstatus/ | تمت إضافة هذا الأمر في الإصدار 0.3x. عند تمكينه (وهو مفعّل بشكل افتراضي)، سيشاهد اللاعبون رمز الساعة الرملية الصغيرة بجوار علامة اسم اللاعبين المتوقفة. ويشمل ذلك التصغير (alt-tab)، قائمة الإيقاف (ESC)، فقدان الاتصال (تعطل/انقطاع) وعند التقاط لقطات الشاشة التي تجمّد اللعبة لأكثر من 3 ثوانٍ. يقوم هذا بتعيين خيار 'nonametagstatus' في ملف sa-mp.cfg. | -| mem/ | يعرض الحجم الحالي لاستخدام الذاكرة. (على الرغم من أنه عادة ما يطبع 128 ميجابايت فقط.) | -| audiomsg/ | يقوم بتمكين/تعطيل الرسالة التي تظهر عند تشغيل عنوان URL للكلاينت. يقوم هذا بتعيين خيار 'audiomsgoff' في ملف sa-mp.cfg. | -| fontsize/ | يقوم بتغيير حجم الخط في واجهة المستخدم (الشات، الديالوجس، إلخ). القيمة الصحيحة لحجم الخط هي من -3 إلى 5. | -| ctd/ | تمت إضافة هذا الأمر في إصدار SA-MP 0.3.7 RC2. يقوم بتمكين تصحيح الكاميرا المستهدفة للاعب. | -| rcon/ | يتعلق هذا الأمر أكثر بالخادم بدلاً من العميل. يُستخدم هذا الأمر لتنفيذ أوامر RCON. يعد RCON نظام الإدارة المدمج. تعني RCON [التحكم عن بُعد](../server/ControllingServer#using-rcon). | -| hudscalefix/ | تمت إضافة هذا الأمر في SA-MP 0.3.7 R3. يقوم بتمكين/تعطيل إصلاح مقياس الرادار، بحيث يتم تحسين مقياس الرادار في دقة الشاشة عريضة النسبة (أي لا توجد مشكلة "بيضة العثور"). يقوم هذا بتعيين خيار 'nohudscale' في ملف sa-mp.cfg. | +| الأمر | الوصف | +| --- | --- | +| `/quit` أو `/q` | الخروج من اللعبة. كلاهما يؤدي الوظيفة نفسها. | +| `/save` | حفظ موقعك الحالي في ملف `savedpositions.txt` داخل مجلد ملفات المستخدم، لتتمكن من استخدامه لاحقًا في السكربتات. | +| `/rs` | اختصار لـ Raw Save. يشبه `/save`، لكنه يحفظ الموقع وزاوية الاتجاه فقط في `rawpositions.txt` داخل مجلد ملفات المستخدم، دون معلومات إضافية مثل فئة الشخصية أو الأسلحة. | +| `/interior` | عرض معرّف المنطقة الداخلية الحالية في نافذة الدردشة. | +| `/vw` | عرض معرّف العالم الافتراضي الحالي في نافذة الدردشة. | +| `/fpslimit` | تعيين الحد الأقصى لعدد الإطارات في الثانية بين `20` و`90`؛ والقيمة الافتراضية `50`. لا يؤثر الأمر إذا كان محدّد الإطارات معطّلًا في إعدادات الرسومات. رفع الحد يسمح بعرض إطارات أكثر وقد يجعل الحركة أكثر سلاسة. يقابل الخيار `fpslimit` في `sa-mp.cfg`. | +| `/pagesize` | تعيين عدد أسطر الدردشة الظاهرة، من `10` إلى `20` سطرًا. القيمة الافتراضية `10`. يقابل الخيار `pagesize`. | +| `/headmove` | إظهار حركة رؤوس اللاعبين باتجاه نظرهم أو إخفاؤها لديك. هذا التغيير محلي؛ لذا سيظل اللاعبون الآخرون يرون حركة رأسك. يقابل الخيار `disableheadmove`. | +| `/timestamp` | إظهار الوقت بجانب رسائل الدردشة أو إخفاؤه. الوقت المعروض هو وقت جهازك، وليس وقت الخادم. يقابل الخيار `timestamp`. | +| `/dl` | إظهار بيانات تشخيص المركبات أو إخفاؤها. تشمل المعرّف والطراز ومقدار السلامة وحالة التحميل المسبق والمسافة من اللاعب والمقطورة والمقاعد المتاحة والموقع الحالي وموقع الظهور. | +| `/nametagstatus` | إظهار رمز الساعة الرملية بجانب اسم اللاعب الذي أوقف لعبته مؤقتًا أو إخفاؤه. يشمل ذلك تصغير النافذة بـ `Alt+Tab`، وفتح قائمة الإيقاف بـ `Esc`، وانقطاع الاتصال بسبب تعطل اللعبة أو انتهاء المهلة، والتقاط صورة تجمّد اللعبة لأكثر من ثلاث ثوانٍ. الميزة مفعّلة افتراضيًا، ويقابلها الخيار `nonametagstatus`. | +| `/mem` | عرض مقدار الذاكرة المستخدمة حاليًا، مع أنه يعرض عادةً `128 MB` فقط. | +| `/audiomsg` | إظهار رسالة رابط البث الصوتي في الدردشة أو إخفاؤها عند تشغيله. يقابل الخيار `audiomsgoff`. | +| `/fontsize` | تغيير حجم خط الواجهة، بما فيها الدردشة ومربعات الحوار. القيم المقبولة من `-3` إلى `5`. | +| `/ctd` | تفعيل عرض بيانات تشخيص هدف كاميرا اللاعب. أُضيف في `SA-MP 0.3.7 RC2`. | +| `/rcon` | تنفيذ أوامر نظام إدارة الخادم المدمج RCON، وهو اختصار لـ [التحكم عن بُعد](../server/ControllingServer#using-rcon). | +| `/hudscalefix` | تفعيل تصحيح أبعاد الرادار على الشاشات العريضة أو تعطيله، حتى لا يظهر الرادار الدائري بشكل بيضاوي. أُضيف في `SA-MP 0.3.7 R3`، ويقابل الخيار `nohudscale`. | -
+## ملف sa-mp.cfg {#file-sa-mpcfg} + +| الخيار | الوصف | +| --- | --- | +| `pagesize` | انظر `/pagesize` أعلاه. | +| `fpslimit` | انظر `/fpslimit` أعلاه. | +| `disableheadmove` | انظر `/headmove` أعلاه. | +| `timestamp` | انظر `/timestamp` أعلاه. | +| `ime` | دعم إدخال النص وتبديل اللغة باستخدام محرّر أسلوب الإدخال (IME) في الدردشة. القيمة `1` تفعّله، و`0` تعطّله. | +| `audiomsgoff` | انظر `/audiomsg` أعلاه. | +| `multicore` | السماح لبرنامج SA-MP باستخدام عدة أنوية للمعالج. القيمة الافتراضية `1` تفعّل ذلك. جرّب `0` إذا واجهت مشكلات في حركة الفأرة. | +| `directmode` | استخدام طريقة أبطأ لرسم نص الدردشة مباشرةً على الشاشة، للمساعدة في حل مشكلات عرضه. القيمة `1` تفعّلها، و`0` تعطّلها. | +| `audioproxyoff` | عند تعيينه إلى `1`، لا يُستخدم الخادم الوكيل المحدّد في خيارات الإنترنت في Windows لتشغيل البث الصوتي في SA-MP. | +| `nonametagstatus` | انظر `/nametagstatus` أعلاه. | +| `fontface` | تغيير خط الدردشة ومربعات الحوار ولوحة النتائج، مثل `fontface="Comic Sans MS"`. هذا الخيار غير مدعوم رسميًا وقد يسبب مشكلات. | +| `fontweight` | اختيار خط دردشة عريض بالقيمة `0`، وهي الافتراضية، أو عادي بالقيمة `1`. | +| `nohudscale` | أُضيف في `SA-MP 0.3.7 R3`. انظر `/hudscalefix` أعلاه. | diff --git a/frontend/i18n/ar/docusaurus-plugin-content-docs/current/client/sa-mp.cfg.md b/frontend/i18n/ar/docusaurus-plugin-content-docs/current/client/sa-mp.cfg.md new file mode 100644 index 00000000000..b6b4adcfa5a --- /dev/null +++ b/frontend/i18n/ar/docusaurus-plugin-content-docs/current/client/sa-mp.cfg.md @@ -0,0 +1,26 @@ +--- +title: sa-mp.cfg +sidebar_label: sa-mp.cfg +description: شرح ملف إعدادات برنامج SA-MP وخياراته. +--- + +## الوصف {#description} + +يحتوي ملف `sa-mp.cfg` على إعدادات برنامج SA-MP على جهازك. ستجده داخل مجلد `My Documents\GTA San Andreas User Files\SAMP` الخاص بحسابك في Windows. يمكنك تعديله باستخدام محرّر نصوص مثل المفكرة. + +## الخيارات {#options} + +| الخيار | الوصف | +| --- | --- | +| **pagesize** | عدد أسطر الدردشة الظاهرة، من `10` إلى `20` سطرًا. القيمة الافتراضية `10`. يمكنك تغييره داخل اللعبة بالأمر `/pagesize`. | +| **fpslimit** | الحد الأقصى [لعدد الإطارات في الثانية](https://en.wikipedia.org/wiki/Frame_rate)، ويُطبّق عند تفعيل محدّد الإطارات في قائمة GTA:SA. القيم المقبولة من `20` إلى `90`، والافتراضية في SA-MP هي `50`. يمكنك تغييره بالأمر `/fpslimit`. | +| **disableheadmove** | التحكم في حركة رؤوس اللاعبين باتجاه نظرهم. القيمة `1` توقف الحركة، و`0` تسمح بها. يمكنك تبديله بالأمر `/headmove`. | +| **timestamp** | إظهار وقت جهازك بجانب رسائل الدردشة بالقيمة `1`، أو إخفاؤه بالقيمة `0`. يمكنك تبديله بالأمر `/timestamp`. | +| **ime** | دعم إدخال النص وتبديل اللغة باستخدام محرّر أسلوب الإدخال (IME) في الدردشة. القيمة `1` تفعّله، و`0` تعطّله. | +| **multicore** | السماح لبرنامج SA-MP باستخدام عدة أنوية للمعالج. القيمة الافتراضية `1` تفعّل ذلك. جرّب `0` إذا واجهت مشكلات في حركة الفأرة. | +| **directmode** | استخدام طريقة أبطأ لرسم نص الدردشة مباشرةً على الشاشة إذا واجهت مشكلات في عرضه. القيمة `1` تفعّل هذه الطريقة، و`0` تعطّلها. | +| **audiomsgoff** | القيمة `1` تخفي رسائل `Audio Stream: [URL]` التي تظهر عند تشغيل الخادم بثًا صوتيًا. يمكنك تبديل هذا الإعداد بالأمر `/audiomsg`. | +| **audioproxyoff** | القيمة `1` تمنع استخدام الخادم الوكيل المحدّد في خيارات الإنترنت في Windows لتشغيل البث الصوتي في SA-MP. | +| **nonametagstatus** | القيمة `0`، وهي الافتراضية، تُظهر رمز الساعة الرملية بجانب اسم اللاعب الذي أوقف لعبته مؤقتًا. يمكنك تغيير هذا الإعداد بالأمر `/nametagstatus`. | +| **fontface** | تغيير خط الدردشة ومربعات الحوار ولوحة النتائج، مثل `fontface="Comic Sans MS"`. هذا الخيار غير مدعوم رسميًا وقد يسبب مشكلات. | +| **fontweight** | القيمة `0` تختار الخط العريض، وهي الافتراضية، والقيمة `1` تختار الخط العادي. | diff --git a/frontend/i18n/ar/docusaurus-plugin-content-docs/current/index.md b/frontend/i18n/ar/docusaurus-plugin-content-docs/current/index.md new file mode 100644 index 00000000000..555e483867b --- /dev/null +++ b/frontend/i18n/ar/docusaurus-plugin-content-docs/current/index.md @@ -0,0 +1,20 @@ +--- +title: مقدمة +sidebar_label: مقدمة +description: توثيق open.mp وSA-MP وأدلة استخدامهما وتطوير الخوادم لهما. +sidebar_position: 1 +--- + +مرحبًا بك في موسوعة SA-MP وتوثيق open.mp! يتولى فريق open.mp وأعضاء مجتمع SA-MP صيانة هذه الصفحات وتطويرها. + +هدفنا توفير مرجع يسهل الرجوع إليه والمساهمة فيه، لمساعدة اللاعبين ومطوّري الخوادم على استخدام SA-MP وopen.mp. + +## ماذا حدث لموسوعة SA-MP؟ {#the-sa-mp-wiki-is-gone} + +توقفت موسوعة SA-MP عن العمل في أواخر سبتمبر 2020، ثم عادت على هيئة أرشيف لا يمكن تعديله. وبفضل مساهمات المجتمع، نُقل محتواها إلى هذا الموقع. شكرًا لكل من ساعد في ذلك! + +للتعرّف على طرق المساعدة، راجع [دليل المساهمة](meta/Contributing). + +لا يشترط أن تكون لديك خبرة في GitHub. يمكنك الإبلاغ عن المشكلات عبر [Discord](https://discord.gg/samp) أو [المنتدى](https://forum.open.mp) أو وسائل التواصل الاجتماعي. كما يمكنك مشاركة هذا الموقع مع من يبحث عن موسوعة SA-MP القديمة، وحفظه في المفضلة للرجوع إليه لاحقًا. + +نرحّب بتصحيح التوثيق وتحسينه، وبإضافة دروس تشرح مهام شائعة مثل إنشاء نمط لعب بسيط أو استخدام المكتبات والإضافات. للمساهمة، تفضّل بزيارة [مستودع المشروع على GitHub](https://github.com/openmultiplayer/web). diff --git a/frontend/i18n/ar/docusaurus-plugin-content-docs/current/meta/Contributing.md b/frontend/i18n/ar/docusaurus-plugin-content-docs/current/meta/Contributing.md new file mode 100644 index 00000000000..33e15949290 --- /dev/null +++ b/frontend/i18n/ar/docusaurus-plugin-content-docs/current/meta/Contributing.md @@ -0,0 +1,157 @@ +--- +title: المساهمة في التوثيق +sidebar_label: المساهمة في التوثيق +description: كيف تساهم في تحسين موسوعة SA-MP وتوثيق open.mp. +--- + +يمكن لأي شخص المساهمة في هذا التوثيق. تحتاج فقط إلى حساب على [GitHub](https://github.com) وبعض الوقت. ولا يشترط أن تعرف استخدام Git؛ إذ يمكنك إجراء التعديلات من المتصفح مباشرةً. + +إذا أردت المساعدة في صيانة ترجمة لغة معينة، فافتح طلب دمج لتعديل ملف [`CODEOWNERS`](https://github.com/openmultiplayer/web/blob/master/CODEOWNERS)، وأضف سطرًا يربط مجلد تلك اللغة باسم حسابك. + +## تعديل المحتوى {#editing-content} + +يوجد أسفل كل صفحة رابط ينقلك إلى محرّر الملفات في GitHub: + +![رابط تعديل الصفحة في أسفل صفحات التوثيق](https://assets.open.mp/assets/images/contributing/edit-this-page.png) + +على سبيل المثال، ينقلك هذا الرابط في صفحة [SetVehicleAngularVelocity](../scripting/functions/SetVehicleAngularVelocity) إلى [محرّر الصفحة](https://github.com/openmultiplayer/web/edit/master/frontend/docs/scripting/functions/SetVehicleAngularVelocity.md)، حيث يمكنك تعديل الملف إذا كنت قد سجّلت الدخول إلى GitHub. + +بعد إجراء التعديل، أرسله في طلب دمج (Pull Request)، ليتمكن مشرفو التوثيق وأعضاء المجتمع من مراجعته ومناقشته وطلب أي تحسينات لازمة قبل دمجه. + +## إضافة محتوى جديد {#adding-new-content} + +تتطلب إضافة صفحة جديدة خطوات إضافية بسيطة. يمكنك استخدام إحدى الطريقتين التاليتين. + +### من واجهة GitHub {#github-interface} + +عند فتح مجلد في GitHub، ستجد زر **Add file** أعلى قائمة الملفات: + +![زر إضافة ملف في GitHub](https://assets.open.mp/assets/images/contributing/add-new-file.png) + +يمكنك رفع ملف Markdown أعددته مسبقًا، أو كتابة محتواه مباشرةً في محرّر GitHub. + +يجب أن ينتهي اسم الملف بالامتداد `.md` وأن يكون مكتوبًا بصيغة Markdown. إذا لم تكن تعرف هذه الصيغة، فراجع [هذا الدليل](https://guides.github.com/features/mastering-markdown/). + +بعد الانتهاء، اضغط **Propose new file** لاقتراح الملف وفتح طلب دمج لمراجعته. + +### باستخدام Git {#git} + +ابدأ باستنساخ المستودع: + +```sh +git clone https://github.com/openmultiplayer/web.git +``` + +افتح المشروع في محرّر النصوص الذي تفضله. يُعدّ Visual Studio Code خيارًا مناسبًا، لأنه يوفر أدوات لتحرير ملفات Markdown وتنسيقها ومعاينتها. + +![معاينة Markdown في Visual Studio Code](https://assets.open.mp/assets/images/contributing/vscode.png) + +يمكن أن تساعدك الإضافتان التاليتان: + +- [markdownlint](https://marketplace.visualstudio.com/items?itemName=DavidAnson.vscode-markdownlint): تفحص تنسيق Markdown وتنبّهك إلى بعض الأخطاء. ليست كل التحذيرات مهمة بالقدر نفسه، لكن بعضها يحسّن قابلية القراءة. استخدم تقديرك، واسأل أحد المراجعين عند الشك. +- [Prettier](https://marketplace.visualstudio.com/items?itemName=esbenp.prettier-vscode): تنسّق الملفات تلقائيًا لتوحيد أسلوبها. يحتوي المستودع على إعدادات في `package.json` يفترض أن تستخدمها الإضافة تلقائيًا. فعّل خيار **Format On Save** لتنسيق الملف عند حفظه. + +## إرشادات الكتابة والتنسيق {#notes-tips-and-conventions} + +### الروابط الداخلية {#internal-links} + +استخدم مسارات نسبية للروابط التي تشير إلى صفحات أخرى داخل الموقع، بدلًا من العناوين الكاملة. + +مثال غير مناسب: + +```md + To be used with [OnPlayerClickPlayer](https://www.open.mp/docs/scripting/callbacks/OnPlayerClickPlayer) + ``` + +والأفضل: + +```md + To be used with [OnPlayerClickPlayer](../callbacks/OnPlayerClickPlayer) + ``` + +يعني `../` الرجوع إلى المجلد الأب. فإذا كنت تعدّل ملفًا داخل `functions` وتريد الإشارة إلى صفحة في `callbacks`، فاستخدم `../` للرجوع إلى `scripting/`، ثم `callbacks/` للدخول إلى مجلد دوال الاستدعاء، ثم اسم الملف دون الامتداد `.md`. + +### الصور {#images} + +ضع الصور في مجلد فرعي داخل `/static/images`. وعند إدراج الصورة باستخدام `![]()`، ابدأ مسارها بـ `/images/` فقط؛ فلا تكتب `static` ضمن الرابط، لأنه جزء من بنية المستودع لا من عنوان الصورة المنشور. + +إذا لم تتضح لك الطريقة، فراجع صفحة تستخدم صورًا واتبع أسلوبها. + +### بيانات الصفحة {#metadata} + +يجب أن يبدأ كل ملف ببيانات الصفحة، كما في المثال: + +```mdx +--- +title: My Documentation +sidebar_label: My Documentation +description: This is a page about stuff and things and burgers, yay! +--- +``` + +أضف عنوانًا ووصفًا لكل صفحة. ولمعرفة بقية الحقول المتاحة بين علامتي `---`، راجع [توثيق Docusaurus](https://docusaurus.io/docs/markdown-features#markdown-headers). + +### العناوين {#headings} + +لا تضف عنوانًا من المستوى الأول باستخدام `#`، لأن الموقع يولّده تلقائيًا من بيانات الصفحة. ابدأ العناوين داخل المحتوى بالمستوى الثاني، أي `##`. + +مثال غير مناسب: + +```md + # My Title + + This is documentation for ... + + # Sub-Section + ``` + +والأفضل: + +```md + This is documentation for ... + + ## Sub-Section + ``` + +### تمييز الأسماء والمقاطع البرمجية {#use-code-snippets-for-technical-references} + +عند ذكر اسم دالة أو قيمة أو تعبير برمجي داخل فقرة، ضعه بين علامتي backtick لتمييزه عن الشرح. مثلًا، اكتب `fopen` و`File:` و`4` بهذه الطريقة حتى يعرف القارئ أنها أجزاء من الشيفرة. + +بدلًا من كتابة أسماء الدوال والوسوم كنص عادي، يمكنك صياغة الشرح هكذا: + +> تعيد الدالة `fopen` قيمة تحمل الوسم `File:`، ويُخزّن ناتجها في متغيّر يحمل الوسم نفسه. لكن السطر التالي يضيف القيمة `4`، وهي بلا وسم، إلى مقبض الملف. + +يساعد هذا التمييز القارئ أيضًا على ربط الشرح بالمثال البرمجي المرافق له. + +### الجداول {#tables} + +ضع أسماء أعمدة الجدول في صف الرأس، لا في أول صف من صفوف البيانات. + +مثال غير مناسب: + +```md + | | | + | ------- | ------------------------------------ | + | Health | Engine Status | + | 650 | Undamaged | + | 650-550 | White Smoke | + | 550-390 | Grey Smoke | + | 390-250 | Black Smoke | + | < 250 | On fire (will explode seconds later) | + ``` + +والأفضل: + +```md + | Health | Engine Status | + | ------- | ------------------------------------ | + | 650 | Undamaged | + | 650-550 | White Smoke | + | 550-390 | Grey Smoke | + | 390-250 | Black Smoke | + | < 250 | On fire (will explode seconds later) | + ``` + +## اتفاقية ترخيص المساهمات {#license-agreement} + +تستخدم مشاريع open.mp [اتفاقية ترخيص للمساهمين](https://cla-assistant.io/openmultiplayer/homepage). تعني هذه الاتفاقية، باختصار، أنك تسمح باستخدام مساهمتك ونشرها بترخيص مفتوح المصدر. عند فتح طلب الدمج الأول، يرسل البوت CLA-Assistant رابطًا لتوقيع الاتفاقية. diff --git a/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/callbacks/OnActorStreamIn.md b/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/callbacks/OnActorStreamIn.md index 16a8c06872b..f77413c48a0 100644 --- a/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/callbacks/OnActorStreamIn.md +++ b/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/callbacks/OnActorStreamIn.md @@ -1,51 +1,42 @@ --- title: OnActorStreamIn sidebar_label: OnActorStreamIn -description: This callback is called when an actor streams in by a player's client. -tags: [] +description: يستدعي الخادم هذه الدالة عندما تصبح شخصية actor ضمن نطاق العرض لدى لاعب. +tags: ["actor"] --- -
+## الوصف {#description} -## الوصف +يستدعي الخادم هذه الدالة عندما تصبح شخصية من نوع actor ضمن نطاق العرض لدى لاعب ويحمّلها برنامج اللعبة لديه. -يتم استدعاء هذا الاستدعاء أو الكال باك عند تدفق الممثل (أكتور) بواسطة كلاينت اللاعب +| الاسم | الوصف | +| --- | --- | +| actorid | معرّف الشخصية التي دخلت نطاق العرض. | +| forplayerid | معرّف اللاعب الذي ظهرت لديه الشخصية. | -| Name | Description | -| ----------- | ----------------------------------------- | -| actorid | ايدي الممثل الذي تم تدفقه للاعب. | -| forplayerid | هوية اللاعب الذي قام بتدفق الممثل (أكتور) | +## ترتيب الاستدعاء {#returns} -## Returns +يُستدعى أولًا في السكربتات الجانبية (filterscripts). -دائمًا يتم استدعاؤه أولاً في الفلترسكربتات. - -## أمثلة - -
+## مثال {#examples} ```c public OnActorStreamIn(actorid, forplayerid) { - new string[40]; + new string[48]; format(string, sizeof(string), "Actor %d is now streamed in for you.", actorid); SendClientMessage(forplayerid, 0xFFFFFFFF, string); return 1; } ``` -
- -## Notes +## ملاحظات {#notes} -## الاستدعاءات او كالباكات ذات الصلة - -قد تكون الاستدعاءات التالية مفيدة، حيث أنها ذات صلة بهذا الاستدعاء بطريقة أو بأخرى. - -- [OnActorStreamOut](OnActorStreamOut): يتم استدعاؤه عندما يتم تدفق ممثل (أكتور) خارج كلاينت اللاعب. +## دوال استدعاء ذات صلة {#related-callbacks} -
+- [OnActorStreamOut](OnActorStreamOut): عند خروج شخصية actor من نطاق العرض لدى لاعب. +- [OnPlayerStreamIn](OnPlayerStreamIn): عند دخول لاعب نطاق العرض لدى لاعب آخر. diff --git a/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/callbacks/OnActorStreamOut.md b/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/callbacks/OnActorStreamOut.md new file mode 100644 index 00000000000..61273787728 --- /dev/null +++ b/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/callbacks/OnActorStreamOut.md @@ -0,0 +1,42 @@ +--- +title: OnActorStreamOut +sidebar_label: OnActorStreamOut +description: يستدعي الخادم هذه الدالة عند خروج شخصية actor من نطاق العرض لدى لاعب. +tags: ["actor"] +--- + + + +## الوصف {#description} + +يستدعي الخادم هذه الدالة عندما تخرج شخصية من نوع actor من نطاق العرض لدى لاعب ويتوقف برنامج اللعبة لديه عن عرضها. + +| الاسم | الوصف | +| --- | --- | +| actorid | معرّف الشخصية التي خرجت من نطاق العرض. | +| forplayerid | معرّف اللاعب الذي لم تعد الشخصية معروضة لديه. | + +## ترتيب الاستدعاء {#returns} + +تُستدعى أولًا في السكربتات الجانبية (filterscripts). + +## مثال {#examples} + +```c +public OnActorStreamOut(actorid, forplayerid) +{ + new string[48]; + format(string, sizeof(string), "Actor %d is now streamed out for you.", actorid); + SendClientMessage(forplayerid, 0xFFFFFFFF, string); + return 1; +} +``` + +## ملاحظات {#notes} + + + +## دوال استدعاء ذات صلة {#related-callbacks} + +- [OnActorStreamIn](OnActorStreamIn): عند دخول شخصية actor نطاق العرض لدى لاعب. +- [OnPlayerStreamOut](OnPlayerStreamOut): عند خروج لاعب من نطاق العرض لدى لاعب آخر. diff --git a/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/callbacks/OnEnterExitModShop.md b/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/callbacks/OnEnterExitModShop.md new file mode 100644 index 00000000000..b538d2bcfa5 --- /dev/null +++ b/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/callbacks/OnEnterExitModShop.md @@ -0,0 +1,53 @@ +--- +title: OnEnterExitModShop +sidebar_label: OnEnterExitModShop +description: يستدعي الخادم هذه الدالة عند دخول لاعب ورشة تعديل أو خروجه منها. +tags: ["player"] +--- + +## الوصف {#description} + +يستدعي الخادم هذه الدالة عندما يدخل لاعب ورشة تعديل أو يخرج منها. + +| الاسم | الوصف | +| --- | --- | +| playerid | معرّف اللاعب الذي دخل الورشة أو خرج منها. | +| enterexit | القيمة `1` عند الدخول، و`0` عند الخروج. | +| interiorid | معرّف المنطقة الداخلية للورشة عند الدخول، أو `0` عند الخروج. | + +## ترتيب الاستدعاء {#returns} + +تُستدعى أولًا في السكربتات الجانبية (filterscripts). + +## مثال {#examples} + +```c +public OnEnterExitModShop(playerid, enterexit, interiorid) +{ + if (enterexit == 0) // If enterexit is 0, this means they are exiting + { + SendClientMessage(playerid, COLOR_WHITE, "Nice car! You have been taxed $100."); + GivePlayerMoney(playerid, -100); + } + return 1; +} +``` + +## ملاحظات {#notes} + +:::warning + +من المشكلات المعروفة أن اللاعبين قد يصطدمون ببعضهم عند دخول الورشة نفسها. + +::: + +## دوال استدعاء ذات صلة {#related-callbacks} + +- [OnVehicleMod](OnVehicleMod): عند تعديل مركبة. +- [OnVehicleRespray](OnVehicleRespray): عند خروج لاعب من ورشة تعديل، حتى إن لم يغيّر الألوان. +- [OnVehiclePaintjob](OnVehiclePaintjob): عند معاينة تصميم طلاء داخل ورشة تعديل. + +## دوال ذات صلة {#related-functions} + +- [IsPlayerInModShop](../functions/IsPlayerInModShop): التحقق مما إذا كان اللاعب داخل ورشة تعديل. +- [AddVehicleComponent](../functions/AddVehicleComponent): إضافة قطعة تعديل إلى مركبة. diff --git a/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/callbacks/OnPlayerSpawn.md b/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/callbacks/OnPlayerSpawn.md new file mode 100644 index 00000000000..566c1a6390a --- /dev/null +++ b/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/callbacks/OnPlayerSpawn.md @@ -0,0 +1,62 @@ +--- +title: OnPlayerSpawn +sidebar_label: OnPlayerSpawn +description: يستدعي الخادم هذه الدالة عند ظهور اللاعب في عالم اللعبة. +tags: ["player"] +--- + +## الوصف {#description} + +يستدعي الخادم هذه الدالة عندما يظهر اللاعب في عالم اللعبة، مثلما يحدث بعد استدعاء [SpawnPlayer](../functions/SpawnPlayer). + +| الاسم | الوصف | +| --- | --- | +| playerid | معرّف اللاعب الذي ظهر في عالم اللعبة. | + +## القيم المعادة وترتيب الاستدعاء {#returns} + +- `0`: تمنع السكربتات الجانبية الأخرى من تلقي هذا الاستدعاء. +- `1`: تسمح بتمريره إلى السكربت الجانبي التالي. + +تُستدعى أولًا في السكربتات الجانبية (filterscripts). + +## مثال {#examples} + +```c +public OnPlayerSpawn(playerid) +{ + new PlayerName[MAX_PLAYER_NAME]; + GetPlayerName(playerid, PlayerName, sizeof(PlayerName)); + + new string[64]; + format(string, sizeof(string), "%s has spawned successfully.", PlayerName); + + SendClientMessageToAll(0xFFFFFFFF, string); + return 1; +} +``` + +## ملاحظات {#notes} + +:::note + +تخصم San Andreas تلقائيًا `100$` عند موت اللاعب مقابل العلاج في المستشفى. هذا السلوك موجود أيضًا في SA-MP، لكنه أُزيل من open.mp لتترك إدارة الأموال بالكامل للسكربتات. + +بعض السكربتات تعوّض هذا الخصم بإضافة `100$` بعد الموت أو عند إعادة الظهور. إذا كان سكربتك يفعل ذلك، فاحذف التعويض؛ مع أن open.mp يحاول مراعاة السكربتات التي تستخدمه. أما إذا كنت تعتمد على الخصم الأصلي، فأضف ما يلي إلى [OnPlayerDeath](OnPlayerDeath): + +```c +GivePlayerMoney(playerid, -100); +``` + +::: + +## دوال استدعاء ذات صلة {#related-callbacks} + +- [OnPlayerDeath](OnPlayerDeath): عند موت لاعب. +- [OnVehicleSpawn](OnVehicleSpawn): عند إعادة ظهور مركبة. + +## دوال ذات صلة {#related-functions} + +- [SpawnPlayer](../functions/SpawnPlayer): إظهار لاعب في عالم اللعبة برمجيًا. +- [AddPlayerClass](../functions/AddPlayerClass): إضافة فئة إلى شاشة اختيار الشخصية. +- [SetSpawnInfo](../functions/SetSpawnInfo): تعيين بيانات ظهور اللاعب. diff --git a/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/callbacks/OnPlayerStreamIn.md b/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/callbacks/OnPlayerStreamIn.md new file mode 100644 index 00000000000..0588830da92 --- /dev/null +++ b/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/callbacks/OnPlayerStreamIn.md @@ -0,0 +1,41 @@ +--- +title: OnPlayerStreamIn +sidebar_label: OnPlayerStreamIn +description: يستدعي الخادم هذه الدالة عند دخول لاعب نطاق العرض لدى لاعب آخر. +tags: ["player"] +--- + +## الوصف {#description} + +يستدعي الخادم هذه الدالة عندما يصبح لاعب ضمن نطاق العرض لدى لاعب آخر ويحمّله برنامج اللعبة لديه. + +| الاسم | الوصف | +| --- | --- | +| playerid | معرّف اللاعب الذي دخل نطاق العرض. | +| forplayerid | معرّف اللاعب الذي ظهر لديه اللاعب الآخر. | + +## ترتيب الاستدعاء {#returns} + +تُستدعى أولًا في السكربتات الجانبية (filterscripts). + +## مثال {#examples} + +```c +public OnPlayerStreamIn(playerid, forplayerid) +{ + new string[40]; + format(string, sizeof(string), "Player %d is now streamed in for you.", playerid); + SendClientMessage(forplayerid, 0xFFFFFFFF, string); + return 1; +} +``` + +## ملاحظات {#notes} + + + +## دوال استدعاء ذات صلة {#related-callbacks} + +- [OnPlayerStreamOut](OnPlayerStreamOut): عند خروج لاعب من نطاق العرض لدى لاعب آخر. +- [OnActorStreamIn](OnActorStreamIn): عند دخول شخصية actor نطاق العرض لدى لاعب. +- [OnVehicleStreamIn](OnVehicleStreamIn): عند دخول مركبة نطاق العرض لدى لاعب. diff --git a/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/callbacks/OnPlayerStreamOut.md b/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/callbacks/OnPlayerStreamOut.md new file mode 100644 index 00000000000..3ccc96439be --- /dev/null +++ b/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/callbacks/OnPlayerStreamOut.md @@ -0,0 +1,47 @@ +--- +title: OnPlayerStreamOut +sidebar_label: OnPlayerStreamOut +description: يستدعي الخادم هذه الدالة عند خروج لاعب من نطاق العرض لدى لاعب آخر. +tags: ["player"] +--- + +## الوصف {#description} + +يستدعي الخادم هذه الدالة عندما يخرج لاعب من نطاق العرض لدى لاعب آخر ويتوقف برنامج اللعبة لديه عن عرضه. + +| الاسم | الوصف | +| --- | --- | +| playerid | معرّف اللاعب الذي خرج من نطاق العرض. | +| forplayerid | معرّف اللاعب الذي لم يعد اللاعب الآخر معروضًا لديه. | + +## ترتيب الاستدعاء {#returns} + +تُستدعى أولًا في السكربتات الجانبية (filterscripts). + +## مثال {#examples} + +```c +public OnPlayerStreamOut(playerid, forplayerid) +{ + new string[80]; + format(string, sizeof(string), "Your computer has just unloaded player ID %d", playerid); + SendClientMessage(forplayerid, 0xFF0000FF, string); + return 1; +} +``` + +## ملاحظات {#notes} + + + +:::warning + +عندما ينقطع اتصال لاعب، لا تُستدعى `OnPlayerStreamOut` لكلا اللاعبين. + +::: + +## دوال استدعاء ذات صلة {#related-callbacks} + +- [OnPlayerStreamIn](OnPlayerStreamIn): عند دخول لاعب نطاق العرض لدى لاعب آخر. +- [OnActorStreamOut](OnActorStreamOut): عند خروج شخصية actor من نطاق العرض لدى لاعب. +- [OnVehicleStreamOut](OnVehicleStreamOut): عند خروج مركبة من نطاق العرض لدى لاعب. diff --git a/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/callbacks/OnVehicleDeath.md b/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/callbacks/OnVehicleDeath.md index be3978334e4..e9bf5b15693 100644 --- a/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/callbacks/OnVehicleDeath.md +++ b/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/callbacks/OnVehicleDeath.md @@ -1,28 +1,24 @@ --- title: OnVehicleDeath sidebar_label: OnVehicleDeath -description: يتم إستدعاء هذا الكالباك عند يتم تدمير السيارة +description: يستدعي الخادم هذه الدالة عند تدمير مركبة، سواء بانفجارها أو بغمرها بالماء. tags: ["vehicle"] --- -
- -## الوصف +## الوصف {#description} -يتم إستدعاء هذا الكالباك عند يتم تدمير السيارة +يستدعي الخادم هذه الدالة عند تدمير مركبة، سواء بانفجارها أو بغمرها بالماء. -| Name | Description | -| --------- | ----------------------------- | -| vehicleid | إيدي السيارة التي تم تدميرها | -| killerid | إيدي اللاعب الذي دمّر السيارة | +| الاسم | الوصف | +| --- | --- | +| vehicleid | معرّف المركبة التي دُمّرت. | +| killerid | معرّف اللاعب الذي أبلغ برنامج اللعبة لديه الخادمَ بتدمير المركبة عبر المزامنة. الاسم قد يكون مضللًا؛ فهذا اللاعب ليس بالضرورة من دمّرها، بل يكون عادةً السائق أو أحد الركاب إن وُجدوا، أو أقرب لاعب إليها. | -## Returns +## ترتيب الاستدعاء {#returns} -دائمًا يتم استدعاؤه أولاً في الفلترسكربتات. +يُستدعى أولًا في السكربتات الجانبية (filterscripts). -## أمثلة - -
+## مثال {#examples} ```c public OnVehicleDeath(vehicleid, killerid) @@ -34,27 +30,18 @@ public OnVehicleDeath(vehicleid, killerid) } ``` -
- -## Notes +## ملاحظات {#notes} :::note -يتم إستدعاء هذا الكالباك أيضا عند دخول السيارة في الماء لكن السيارة يمكن إنقاذها من التدمير بالإنتقال الآني او قيادتها خارج الماء(إذا كانت مغمورة جزئيا) . هذا الكالباك لن يستدعى -مرة ثانية و هناك إمكانية إختفاء السيارة عند نزول السائق منها +تُستدعى هذه الدالة أيضًا عند دخول المركبة في الماء، مع أن إنقاذها قد يظل ممكنًا بنقلها إلى مكان آخر برمجيًا، أو بقيادتها خارج الماء إن كانت مغمورة جزئيًا فقط. لن تُستدعى الدالة مرة ثانية، وقد تختفي المركبة عندما يغادرها السائق أو بعد وقت قصير. ::: -## الاستدعاءات او كالباكات ذات الصلة - -قد تكون الاستدعاءات التالية مفيدة، حيث أنها ذات صلة بهذا الاستدعاء بطريقة أو بأخرى - -- [OnVehicleSpawn](OnVehicleSpawn): يتم إستدعاء هذا الكالباك عند رسبنت السيارة - -## وظائف ذات صلة +## دوال استدعاء ذات صلة {#related-callbacks} -قد تكون الوظائف التالية مفيدة، حيث أنها ذات صلة بهذا الاستدعاء بطريقة أو بأخرى +- [OnVehicleSpawn](OnVehicleSpawn): عند إعادة ظهور مركبة. -- [SetVehicleHealth](../functions/SetVehicleHealth): ضبط صحة السيارة +## دوال ذات صلة {#related-functions} -
+- [SetVehicleHealth](../functions/SetVehicleHealth): تعيين مقدار سلامة المركبة. diff --git a/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/callbacks/OnVehicleMod.md b/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/callbacks/OnVehicleMod.md new file mode 100644 index 00000000000..5949a265f71 --- /dev/null +++ b/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/callbacks/OnVehicleMod.md @@ -0,0 +1,57 @@ +--- +title: OnVehicleMod +sidebar_label: OnVehicleMod +description: يستدعي الخادم هذه الدالة عند إضافة قطعة تعديل إلى مركبة. +tags: ["vehicle"] +--- + +## الوصف {#description} + +يستدعي الخادم هذه الدالة عند إضافة قطعة تعديل إلى مركبة. + +| الاسم | الوصف | +| --- | --- | +| playerid | معرّف سائق المركبة. | +| vehicleid | معرّف المركبة التي عُدّلت. | +| componentid | [معرّف قطعة التعديل](../resources/carcomponentid) التي أُضيفت إلى المركبة. | + +## القيم المعادة وترتيب الاستدعاء {#returns} + +إعادة `0` تمنع مزامنة التعديل مع بقية اللاعبين. + +تُستدعى أولًا في سكربت نمط اللعب (gamemode). إذا أعادت `0` هناك، فلن تتلقاها السكربتات الجانبية (filterscripts) أيضًا. + +## مثال {#examples} + +```c +public OnVehicleMod(playerid, vehicleid, componentid) +{ + printf("Vehicle %d was modded by ID %d with the componentid %d", vehicleid, playerid, componentid); + + if (GetPlayerInterior(playerid) == 0) + { + BanEx(playerid, "Tuning Hacks"); // Anti-tuning hacks script + return 0; // Prevents the bad modification from being synced to other players + // Tested and it works even on servers wich allow you to mod your vehicle using commands, menus, dialogs, etc.. + } + return 1; +} +``` + +## ملاحظات {#notes} + +:::note + +استدعاء `AddVehicleComponent` لا يؤدي إلى استدعاء هذه الدالة. + +::: + +## دوال استدعاء ذات صلة {#related-callbacks} + +- [OnEnterExitModShop](OnEnterExitModShop): عند دخول ورشة تعديل أو الخروج منها. +- [OnVehiclePaintjob](OnVehiclePaintjob): عند تغيير تصميم طلاء المركبة. +- [OnVehicleRespray](OnVehicleRespray): عند إعادة طلاء المركبة. + +## دوال ذات صلة {#related-functions} + +- [AddVehicleComponent](../functions/AddVehicleComponent): إضافة قطعة تعديل إلى مركبة. diff --git a/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/callbacks/OnVehiclePaintjob.md b/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/callbacks/OnVehiclePaintjob.md index 03ebbf7304c..6c24411aea3 100644 --- a/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/callbacks/OnVehiclePaintjob.md +++ b/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/callbacks/OnVehiclePaintjob.md @@ -1,31 +1,25 @@ --- title: OnVehiclePaintjob sidebar_label: OnVehiclePaintjob -description: يتم إستدعاء هذا الكالباك عند تغيير طلاء السيارة في مرآب التعديل +description: يستدعي الخادم هذه الدالة عند معاينة تصميم طلاء مركبة داخل ورشة تعديل. tags: ["vehicle"] --- -
- -## الوصف +## الوصف {#description} -يتم إستدعاء هذا الكالباك عند تغيير طلاء السيارة في مرآب التعديل +يستدعي الخادم هذه الدالة عندما يعاين لاعب تصميم طلاء (paintjob) لمركبته داخل ورشة تعديل. انتبه: المعاينة هي التي تستدعي الدالة، وليس شراء التصميم. -| Name | Description | -| ---------- | ---------------------------------------------- | -| playerid | إيدي اللاعب الذي غيّر طلاء السيارة | -| vehicleid | إيدي السيارة التي تم تغيير طلائها | -| paintjobid | اللون الذي تم تغيير اللون الأساسي للمركبة إليه | +| الاسم | الوصف | +| --- | --- | +| playerid | معرّف اللاعب الذي غيّر تصميم طلاء مركبته. | +| vehicleid | معرّف المركبة التي تغيّر تصميم طلائها. | +| paintjobid | معرّف [تصميم الطلاء](../resources/paintjobs) الجديد. | -## Returns +## القيم المعادة وترتيب الاستدعاء {#returns} -يتم إستدعائه أولا في ال(الغيم مود¹) إذا يرجع 0 و يقوم أيضا بتعطيل بقية الفيلترسكريبتات من رأيته +تُستدعى أولًا في سكربت نمط اللعب (gamemode). إذا أعادت `0` هناك، فلن تتلقاها السكربتات الجانبية (filterscripts). -¹ غيم مود = gamemode - -## أمثلة - -
+## مثال {#examples} ```c public OnVehiclePaintjob(playerid, vehicleid, paintjobid) @@ -37,35 +31,20 @@ public OnVehiclePaintjob(playerid, vehicleid, paintjobid) } ``` -
- -## Notes +## ملاحظات {#notes} :::note -هذا الكالب باك لا يتم إستدعائه من قبل (ChangeVehiclePaintjob). -يجب عليك إستعمال OnVehicleChangePaintJob من vSync لمعرفة إن قام اللاعب بدفع ثمن تغيير الطلاء - -::: - -:::warning - -الأخطاء المعروفة : معاينة أحد المكونات في مرآب التعديل قد يستدعي هذا الكال باك +استدعاء `ChangeVehiclePaintjob` لا يؤدي إلى استدعاء هذه الدالة. لمعرفة وقت شراء اللاعب تصميم الطلاء، يمكنك استخدام `OnVehicleChangePaintjob` من مكتبة vSync. ::: -## الاستدعاءات او كالباكات ذات الصلة - -قد تكون الاستدعاءات التالية مفيدة، حيث أنها ذات صلة بهذا الاستدعاء بطريقة أو بأخرى - -- [OnVehicleRespray](OnVehicleRespray): هذا الكالباك يتم إستدعائه عندما يتم تغيير طلاء السيارة -- [OnVehicleMod](OnVehicleMod): هذا الكالباك يتم إستدعائه عندما يتم تغيير مكونات السيارة - -## وظائف ذات صلة +## دوال استدعاء ذات صلة {#related-callbacks} -قد تكون الوظائف التالية مفيدة، حيث أنها ذات صلة بهذا الاستدعاء بطريقة أو بأخرى +- [OnVehicleRespray](OnVehicleRespray): عند إعادة طلاء المركبة. +- [OnVehicleMod](OnVehicleMod): عند تعديل المركبة. -- [ChangeVehicleColor](../functions/ChangeVehicleColor): يغير لون السيارة -- [ChangeVehiclePaintjob](../functions/ChangeVehiclePaintjob): يغير ستيكرات السيارة +## دوال ذات صلة {#related-functions} -
+- [ChangeVehiclePaintjob](../functions/ChangeVehiclePaintjob): تغيير تصميم طلاء المركبة. +- [ChangeVehicleColor](../functions/ChangeVehicleColor): تعيين لون المركبة. diff --git a/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/callbacks/OnVehicleRespray.md b/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/callbacks/OnVehicleRespray.md index 3981d2cf6bd..451eb0d4fee 100644 --- a/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/callbacks/OnVehicleRespray.md +++ b/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/callbacks/OnVehicleRespray.md @@ -1,30 +1,28 @@ --- title: OnVehicleRespray sidebar_label: OnVehicleRespray -description: يتم إستدعاء هذا الكالباك عند خروج اللاعب من مرآب تعديل السيارات حتى إذا كان طلاء السيارة لم يتغير +description: يستدعي الخادم هذه الدالة عند خروج لاعب من ورشة تعديل، حتى إن لم يغيّر ألوان المركبة. tags: ["vehicle"] --- -
- -## الوصف +## الوصف {#description} -يتم إستدعاء هذا الكالباك عند خروج اللاعب من مرآب تعديل السيارات حتى إذا كان طلاء السيارة لم يتغير. إحذر الإسم غامض مرائب (إدفع و رش¹) لا يفعلوا هذا الكالباك +يستدعي الخادم هذه الدالة عند خروج لاعب من ورشة تعديل، حتى إن لم يغيّر ألوان المركبة. قد يوحي اسم الدالة بأنها تشمل ورش Pay 'n' Spray، لكن تلك الورش لا تستدعيها. -| Name | Description | -| --------- | ---------------------------------------------- | -| playerid | إيدي اللاعب اللذي يقود السيارة | -| vehicleid | إيدي السيارة التي تم إغادة طلائها | -| color1 | اللون الذي تم تغيير اللون الأساسي للمركبة إليه | -| color2 | اللون الذي تم تغيير اللون الثانوي للمركبة إليه | +| الاسم | الوصف | +| --- | --- | +| playerid | معرّف اللاعب الذي يقود المركبة. | +| vehicleid | معرّف المركبة التي أُعيد طلاؤها. | +| color1 | اللون الأساسي الجديد للمركبة. | +| color2 | اللون الثانوي الجديد للمركبة. | -## Returns +## القيم المعادة وترتيب الاستدعاء {#returns} -يتم إستدعائه أولا في ال(الغيم مود²) إذا يرجع 0 و يقوم أيضا بتعطيل بقية الفيلترسكريبتات من رأيته +إعادة `0` تمنع تغيير اللون، وإعادة `1` تسمح به. -## أمثلة +تُستدعى الدالة أولًا في سكربت نمط اللعب (gamemode). إذا أعادت `0` هناك، فلن تتلقاها السكربتات الجانبية (filterscripts) أيضًا. -
+## مثال {#examples} ```c public OnVehicleRespray(playerid, vehicleid, color1, color2) @@ -36,41 +34,29 @@ public OnVehicleRespray(playerid, vehicleid, color1, color2) } ``` -
- -## Notes +## ملاحظات {#notes} :::note -هذا الكالب باك لا يتم إستدعائه من قبل (ChangeVehicleColor) بشكل مضلل. -هذا الكالباك لا يتم إستدعائه من قبل (إدفع و رش¹) +استدعاء `ChangeVehicleColor` لا يؤدي إلى استدعاء هذه الدالة. كذلك لا تستدعيها ورش Pay 'n' Spray؛ فهي تخص ورش التعديل فقط. -الإصلاح هنا: https://pastebin.com/G81da7N1 +يتوفر حل بديل هنا: https://pastebin.com/G81da7N1 ::: :::warning -الأخطاء المعروفة : معاينة أحد المكونات في مرآب التعديل قد يستدعي هذا الكال باك +من المشكلات المعروفة أن معاينة قطعة تعديل داخل الورشة قد تستدعي هذه الدالة. ::: -¹إدقع و رش = Pay 'n' Spray -²الغيم مود = gamemode - -## الاستدعاءات او كالباكات ذات الصلة - -قد تكون الاستدعاءات التالية مفيدة، حيث أنها ذات صلة بهذا الاستدعاء بطريقة أو بأخرى - -- [OnVehiclePaintjob](OnVehiclePaintjob): هذا الكالباك يتم إستدعائه عندما يتم تغيير ستيكرات السيارة -- [OnVehicleMod](OnVehicleMod): هذا الكالباك يتم إستدعائه عندما يتم تغيير مكونات السيارة -- [OnEnterExitModShop](OnEnterExitModShop): هذا الكالباك يتم إستدعائه عند دخول أو خروج سيارة إلى مرآب التعديل - -## وظائف ذات صلة +## دوال استدعاء ذات صلة {#related-callbacks} -قد تكون الوظائف التالية مفيدة، حيث أنها ذات صلة بهذا الاستدعاء بطريقة أو بأخرى +- [OnVehiclePaintjob](OnVehiclePaintjob): عند تغيير تصميم طلاء المركبة. +- [OnVehicleMod](OnVehicleMod): عند تعديل المركبة. +- [OnEnterExitModShop](OnEnterExitModShop): عند دخول مركبة ورشة تعديل أو خروجها منها. -- [ChangeVehicleColor](../functions/ChangeVehicleColor): يغير لون السيارة -- [ChangeVehiclePaintjob](../functions/ChangeVehiclePaintjob): يغير ستيكرات السيارة +## دوال ذات صلة {#related-functions} -
+- [ChangeVehicleColor](../functions/ChangeVehicleColor): تعيين لون المركبة. +- [ChangeVehiclePaintjob](../functions/ChangeVehiclePaintjob): تغيير تصميم طلاء المركبة. diff --git a/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/callbacks/OnVehicleSirenStateChange.md b/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/callbacks/OnVehicleSirenStateChange.md index d193ea4c948..ade4c1b0fd3 100644 --- a/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/callbacks/OnVehicleSirenStateChange.md +++ b/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/callbacks/OnVehicleSirenStateChange.md @@ -1,37 +1,30 @@ --- title: OnVehicleSirenStateChange sidebar_label: OnVehicleSirenStateChange -description: يتم إستدعاء هذا الكال باك عند تفعيل صفارة الإنذار للسيارة +description: يستدعي الخادم هذه الدالة عند تشغيل صفّارة إنذار المركبة أو إيقافها. tags: ["vehicle"] --- -
+## الوصف {#description} -## Description +يستدعي الخادم هذه الدالة عند تشغيل صفّارة إنذار المركبة أو إيقافها. -يتم إستدعاء هذا الكال باك عند تفعيل صفارة الإنذار للسيارة +| الاسم | الوصف | +| --- | --- | +| playerid | معرّف اللاعب الذي شغّل الصفّارة أو أوقفها، وهو السائق. | +| vehicleid | معرّف المركبة التي تغيّرت حالة صفّارتها. | +| newstate | القيمة `0` إذا أُوقفت الصفّارة، و`1` إذا شُغّلت. | -| Name | Description | -| --------- | ---------------------------------------------- | -| playerid | إيدي اللاعب الذي فعّل صفارة الإنذار (السائق) | -| vehicleid | إيدي السيارة التي تم تفعيل صفارة الإنذار فيها | -| newstate | 0 إذا تم إطفاء الصفارة، 1 إذا تم تشغيل الصفارة | +## القيم المعادة وترتيب الاستدعاء {#returns} -## Returns +- `1`: تمنع وصول هذا الاستدعاء إلى سكربت نمط اللعب (gamemode). +- `0`: تسمح بتمرير هذا الاستدعاء إلى سكربت نمط اللعب. -1 - سيمنع ال(الغيم مود¹) من تلقي هذا الكالباك +يُستدعى أولًا في السكربتات الجانبية (filterscripts). -0 - يشير إلى أنه سيتم تمرير هذا الكال باك إلى ال(الغيم مود¹) القادم - -¹الغيم مود = gamemode - -يتم إستدعائه أولا في الفيلترسكريبتات - -## أمثلة - -
+## مثال {#examples} ```c public OnVehicleSirenStateChange(playerid, vehicleid, newstate) @@ -48,20 +41,14 @@ public OnVehicleSirenStateChange(playerid, vehicleid, newstate) } ``` -
- -## Notes +## ملاحظات {#notes} :::note -يتم إستدعاء هذا الكالباك فقط عندما يتم تشغيل او إطفاء صفارة الإنظار +تُستدعى الدالة فقط عند تشغيل الصفّارة أو إيقافها، ولا تُستدعى عند استخدام الصفّارة البديلة بالاستمرار في الضغط على زر البوق. ::: -## وظائف ذات صلة - -قد تكون الوظائف التالية مفيدة، حيث أنها ذات صلة بهذا الاستدعاء بطريقة أو بأخرى - -- [GetVehicleParamsSirenState](../functions/GetVehicleParamsSirenState): التحقق إذ كانت صفارة الإنذار الخاصة بالسيارة مشغلة أو لا +## دوال ذات صلة {#related-functions} -
+- [GetVehicleParamsSirenState](../functions/GetVehicleParamsSirenState): التحقق مما إذا كانت صفّارة المركبة تعمل. diff --git a/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/callbacks/OnVehicleSpawn.md b/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/callbacks/OnVehicleSpawn.md index 3227cf66777..8b1e5b3ad0b 100644 --- a/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/callbacks/OnVehicleSpawn.md +++ b/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/callbacks/OnVehicleSpawn.md @@ -1,39 +1,32 @@ --- title: OnVehicleSpawn sidebar_label: OnVehicleSpawn -description: يتم إستدعاء هذا الكال باك عند رسبنت السبارة +description: يستدعي الخادم هذه الدالة عند إعادة ظهور مركبة. tags: ["vehicle"] --- - - -
- :::warning -هذا الكال باك يتم إستدعائه فقط عندم يتم إعادة رسبنت السيارة . CreateVehicle و AddStaticVehicle(Ex) لن يفعلو هذا الكال باك +تُستدعى هذه الدالة عند **إعادة** ظهور المركبة فقط. إنشاء مركبة باستخدام `CreateVehicle` أو `AddStaticVehicle` أو `AddStaticVehicleEx` لا يستدعيها. ::: -## الوصف - -This callback is called when a vehicle respawns. +## الوصف {#description} -| Name | Description | -| --------- | ----------------------- | -| vehicleid | إيدي السيارة التي رسبنت | +يستدعي الخادم هذه الدالة عند إعادة ظهور مركبة. -## Returns +| الاسم | الوصف | +| --- | --- | +| vehicleid | معرّف المركبة التي أُعيد إظهارها. | -0 - سيمنع بقيت الفلترسكريبتات من تلقي هذا الكال باك +## القيم المعادة وترتيب الاستدعاء {#returns} -1 - يشير إلى أنه سيتم تمرير هذا الكال باك إلى الفيلتر سكريبت القادم +- `0`: تمنع السكربتات الجانبية الأخرى من تلقي هذا الاستدعاء. +- `1`: تسمح بتمريره إلى السكربت الجانبي التالي. -يتم إستدعائه أولا في الفيلترسكريبت +يُستدعى أولًا في السكربتات الجانبية (filterscripts). -## أمثلة - -
+## مثال {#examples} ```c public OnVehicleSpawn(vehicleid) @@ -43,20 +36,12 @@ public OnVehicleSpawn(vehicleid) } ``` -
- -## الاستدعاءات او كالباكات ذات الصلة - -قد تكون الاستدعاءات التالية مفيدة، حيث أنها ذات صلة بهذا الاستدعاء بطريقة أو بأخرى - -- [OnVehicleDeath](OnVehicleDeath): هذا الكال باك يتم إستدعائه عند تدمير السيارة. -- [OnPlayerSpawn](OnPlayerSpawn): هذا الكال باك يتم إستدعائه عند رسبنت اللاعب. - -## وظائف ذات صلة +## دوال استدعاء ذات صلة {#related-callbacks} -قد تكون الوظائف التالية مفيدة، حيث أنها ذات صلة بهذا الاستدعاء بطريقة أو بأخرى +- [OnVehicleDeath](OnVehicleDeath): عند تدمير مركبة. +- [OnPlayerSpawn](OnPlayerSpawn): عند ظهور لاعب في عالم اللعبة. -- [SetVehicleToRespawn](../functions/SetVehicleToRespawn):إغادة رسبنت السيارة -- [CreateVehicle](../functions/CreateVehicle): صنع سيارة +## دوال ذات صلة {#related-functions} -
+- [SetVehicleToRespawn](../functions/SetVehicleToRespawn): إعادة إظهار مركبة. +- [CreateVehicle](../functions/CreateVehicle): إنشاء مركبة. diff --git a/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/callbacks/OnVehicleStreamIn.md b/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/callbacks/OnVehicleStreamIn.md index 90224342e4b..afc69334050 100644 --- a/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/callbacks/OnVehicleStreamIn.md +++ b/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/callbacks/OnVehicleStreamIn.md @@ -1,30 +1,24 @@ --- title: OnVehicleStreamIn sidebar_label: OnVehicleStreamIn -description: يتم استدعاء هذا الاستدعاء أو الكال باك عند تدفق سيارة بواسطة كلاينت اللاعب -tags: [] +description: يستدعي الخادم هذه الدالة عندما تصبح مركبة ضمن نطاق العرض لدى لاعب. +tags: ["vehicle"] --- - +## الوصف {#description} -
+يستدعي الخادم هذه الدالة عندما تدخل مركبة نطاق العرض لدى لاعب ويحمّلها برنامج اللعبة لديه. -## الوصف +| الاسم | الوصف | +| --- | --- | +| vehicleid | معرّف المركبة التي دخلت نطاق العرض. | +| forplayerid | معرّف اللاعب الذي ظهرت لديه المركبة. | -يتم استدعاء هذا الاستدعاء أو الكال باك عند تدفق سيارة بواسطة كلاينت اللاعب +## ترتيب الاستدعاء {#returns} -| الوصف | الإسم | -| ----------- | ---------------------------------- | -| vehicleid | ايدي السيارة الذي تم تدفقها للاعب. | -| forplayerid | هوية اللاعب الذي قام بتدفق السيارة | +يُستدعى أولًا في السكربتات الجانبية (filterscripts). -## Returns - -دائمًا يتم استدعاؤه أولاً في الفلترسكربتات. - -## أمثلة - -
+## مثال {#examples} ```c public OnVehicleStreamIn(vehicleid, forplayerid) @@ -36,18 +30,12 @@ public OnVehicleStreamIn(vehicleid, forplayerid) } ``` -
- -## Notes +## ملاحظات {#notes} -## الاستدعاءات او كالباكات ذات الصلة - -قد تكون الاستدعاءات التالية مفيدة، حيث أنها ذات صلة بهذا الاستدعاء بطريقة أو بأخرى. - -- [OnVehicleStreamOut](OnVehicleStreamOut): يتم استدعاؤه عندما يتم تدفق السبارة خارج كلاينت اللاعب. -- [OnPlayerStreamIn](OnPlayerStreamIn): يتم استدعاؤه عندما يتم تدفق لاعب آخر إلى كلاينت اللاعب. -- [OnPlayerStreamOut](OnPlayerStreamOut): يتم استدعاؤه عندما يتم تدفق لاعب آخر خارج كلاينت اللاعب. +## دوال استدعاء ذات صلة {#related-callbacks} -
+- [OnVehicleStreamOut](OnVehicleStreamOut): عند خروج مركبة من نطاق العرض لدى لاعب. +- [OnPlayerStreamIn](OnPlayerStreamIn): عند دخول لاعب نطاق العرض لدى لاعب آخر. +- [OnPlayerStreamOut](OnPlayerStreamOut): عند خروج لاعب من نطاق العرض لدى لاعب آخر. diff --git a/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/callbacks/OnVehicleStreamOut.md b/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/callbacks/OnVehicleStreamOut.md index 5adce741bbb..4f1ae7104cf 100644 --- a/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/callbacks/OnVehicleStreamOut.md +++ b/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/callbacks/OnVehicleStreamOut.md @@ -1,30 +1,24 @@ --- -title: OnActorStreamIn -sidebar_label: OnActorStreamIn -description: يتم استدعاء هذا الاستدعاء أو الكال باك عند خروج السيارة بواسطة كلاينت اللاعب -tags: [] +title: OnVehicleStreamOut +sidebar_label: OnVehicleStreamOut +description: يستدعي الخادم هذه الدالة عندما تخرج مركبة من نطاق العرض لدى لاعب. +tags: ["vehicle"] --- - +## الوصف {#description} -
+يستدعي الخادم هذه الدالة عندما تخرج مركبة من نطاق العرض لدى لاعب، مثلما يحدث عندما تبتعد عنه إلى حدّ لا يعود بإمكانه رؤيتها. -## الوصف +| الاسم | الوصف | +| --- | --- | +| vehicleid | معرّف المركبة التي خرجت من نطاق العرض. | +| forplayerid | معرّف اللاعب الذي لم تعد المركبة معروضة لديه. | -يتم استدعاء هذا الاستدعاء أو الكال باك عند خروج السيارة بواسطة كلاينت اللاعب +## ترتيب الاستدعاء {#returns} -| الوصف | الإسم | -| ----------- | --------------------------------- | -| vehicleid | ايدي السيارة الذي تم خرجت للاعب. | -| forplayerid | هوية اللاعب الذي قام خرجت السيارة | +يُستدعى أولًا في السكربتات الجانبية (filterscripts). -## Returns - -دائمًا يتم استدعاؤه أولاً في الفلترسكربتات. - -## أمثلة - -
+## مثال {#examples} ```c public OnVehicleStreamOut(vehicleid, forplayerid) @@ -36,18 +30,12 @@ public OnVehicleStreamOut(vehicleid, forplayerid) } ``` -
- -## Notes +## ملاحظات {#notes} -## الاستدعاءات او كالباكات ذات الصلة - -قد تكون الاستدعاءات التالية مفيدة، حيث أنها ذات صلة بهذا الاستدعاء بطريقة أو بأخرى. - -- [OnVehicleStreamIn](OnVehicleStreamIn): يتم استدعاؤه عندما يتم تدفق السبارةإلى كلاينت اللاعب. -- [OnPlayerStreamIn](OnPlayerStreamIn): يتم استدعاؤه عندما يتم تدفق لاعب آخر إلى كلاينت اللاعب. -- [OnPlayerStreamOut](OnPlayerStreamOut): يتم استدعاؤه عندما يتم تدفق لاعب آخر خارج كلاينت اللاعب. +## دوال استدعاء ذات صلة {#related-callbacks} -
+- [OnVehicleStreamIn](OnVehicleStreamIn): عند دخول مركبة نطاق العرض لدى لاعب. +- [OnPlayerStreamIn](OnPlayerStreamIn): عند دخول لاعب نطاق العرض لدى لاعب آخر. +- [OnPlayerStreamOut](OnPlayerStreamOut): عند خروج لاعب من نطاق العرض لدى لاعب آخر. diff --git a/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/functions/ChangeVehicleColor.md b/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/functions/ChangeVehicleColor.md new file mode 100644 index 00000000000..e7390344ad1 --- /dev/null +++ b/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/functions/ChangeVehicleColor.md @@ -0,0 +1,89 @@ +--- +title: ChangeVehicleColor +sidebar_label: ChangeVehicleColor +description: تغيير اللونين الأساسي والثانوي للمركبة. +tags: ["vehicle"] +--- + +## الوصف {#description} + +تغيّر هذه الدالة اللونين الأساسي والثانوي للمركبة. + +| الاسم | الوصف | +| --- | --- | +| vehicleid | معرّف المركبة المطلوب تغيير ألوانها. | +| color1 | معرّف اللون الأساسي الجديد. | +| color2 | معرّف اللون الثانوي الجديد. | + +## القيم المعادة {#returns} + +- `1`: نجح تغيير ألوان المركبة. +- `0`: تعذّر تنفيذ الدالة لأن المركبة غير موجودة. + +## مثال {#examples} + +```c +public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger) +{ + // Change the primary color to black and the secondary color to white + ChangeVehicleColor(vehicleid, 0, 1); + return 1; +} +``` + +## شيفرة مساعدة {#snippets} + +```c +new VehicleColoursTableRGBA[256] = { +// The existing colours from San Andreas +0x000000FF, 0xF5F5F5FF, 0x2A77A1FF, 0x840410FF, 0x263739FF, 0x86446EFF, 0xD78E10FF, 0x4C75B7FF, 0xBDBEC6FF, 0x5E7072FF, +0x46597AFF, 0x656A79FF, 0x5D7E8DFF, 0x58595AFF, 0xD6DAD6FF, 0x9CA1A3FF, 0x335F3FFF, 0x730E1AFF, 0x7B0A2AFF, 0x9F9D94FF, +0x3B4E78FF, 0x732E3EFF, 0x691E3BFF, 0x96918CFF, 0x515459FF, 0x3F3E45FF, 0xA5A9A7FF, 0x635C5AFF, 0x3D4A68FF, 0x979592FF, +0x421F21FF, 0x5F272BFF, 0x8494ABFF, 0x767B7CFF, 0x646464FF, 0x5A5752FF, 0x252527FF, 0x2D3A35FF, 0x93A396FF, 0x6D7A88FF, +0x221918FF, 0x6F675FFF, 0x7C1C2AFF, 0x5F0A15FF, 0x193826FF, 0x5D1B20FF, 0x9D9872FF, 0x7A7560FF, 0x989586FF, 0xADB0B0FF, +0x848988FF, 0x304F45FF, 0x4D6268FF, 0x162248FF, 0x272F4BFF, 0x7D6256FF, 0x9EA4ABFF, 0x9C8D71FF, 0x6D1822FF, 0x4E6881FF, +0x9C9C98FF, 0x917347FF, 0x661C26FF, 0x949D9FFF, 0xA4A7A5FF, 0x8E8C46FF, 0x341A1EFF, 0x6A7A8CFF, 0xAAAD8EFF, 0xAB988FFF, +0x851F2EFF, 0x6F8297FF, 0x585853FF, 0x9AA790FF, 0x601A23FF, 0x20202CFF, 0xA4A096FF, 0xAA9D84FF, 0x78222BFF, 0x0E316DFF, +0x722A3FFF, 0x7B715EFF, 0x741D28FF, 0x1E2E32FF, 0x4D322FFF, 0x7C1B44FF, 0x2E5B20FF, 0x395A83FF, 0x6D2837FF, 0xA7A28FFF, +0xAFB1B1FF, 0x364155FF, 0x6D6C6EFF, 0x0F6A89FF, 0x204B6BFF, 0x2B3E57FF, 0x9B9F9DFF, 0x6C8495FF, 0x4D8495FF, 0xAE9B7FFF, +0x406C8FFF, 0x1F253BFF, 0xAB9276FF, 0x134573FF, 0x96816CFF, 0x64686AFF, 0x105082FF, 0xA19983FF, 0x385694FF, 0x525661FF, +0x7F6956FF, 0x8C929AFF, 0x596E87FF, 0x473532FF, 0x44624FFF, 0x730A27FF, 0x223457FF, 0x640D1BFF, 0xA3ADC6FF, 0x695853FF, +0x9B8B80FF, 0x620B1CFF, 0x5B5D5EFF, 0x624428FF, 0x731827FF, 0x1B376DFF, 0xEC6AAEFF, 0x000000FF, +// SA-MP extended colours (0.3x) +0x177517FF, 0x210606FF, 0x125478FF, 0x452A0DFF, 0x571E1EFF, 0x010701FF, 0x25225AFF, 0x2C89AAFF, 0x8A4DBDFF, 0x35963AFF, +0xB7B7B7FF, 0x464C8DFF, 0x84888CFF, 0x817867FF, 0x817A26FF, 0x6A506FFF, 0x583E6FFF, 0x8CB972FF, 0x824F78FF, 0x6D276AFF, +0x1E1D13FF, 0x1E1306FF, 0x1F2518FF, 0x2C4531FF, 0x1E4C99FF, 0x2E5F43FF, 0x1E9948FF, 0x1E9999FF, 0x999976FF, 0x7C8499FF, +0x992E1EFF, 0x2C1E08FF, 0x142407FF, 0x993E4DFF, 0x1E4C99FF, 0x198181FF, 0x1A292AFF, 0x16616FFF, 0x1B6687FF, 0x6C3F99FF, +0x481A0EFF, 0x7A7399FF, 0x746D99FF, 0x53387EFF, 0x222407FF, 0x3E190CFF, 0x46210EFF, 0x991E1EFF, 0x8D4C8DFF, 0x805B80FF, +0x7B3E7EFF, 0x3C1737FF, 0x733517FF, 0x781818FF, 0x83341AFF, 0x8E2F1CFF, 0x7E3E53FF, 0x7C6D7CFF, 0x020C02FF, 0x072407FF, +0x163012FF, 0x16301BFF, 0x642B4FFF, 0x368452FF, 0x999590FF, 0x818D96FF, 0x99991EFF, 0x7F994CFF, 0x839292FF, 0x788222FF, +0x2B3C99FF, 0x3A3A0BFF, 0x8A794EFF, 0x0E1F49FF, 0x15371CFF, 0x15273AFF, 0x375775FF, 0x060820FF, 0x071326FF, 0x20394BFF, +0x2C5089FF, 0x15426CFF, 0x103250FF, 0x241663FF, 0x692015FF, 0x8C8D94FF, 0x516013FF, 0x090F02FF, 0x8C573AFF, 0x52888EFF, +0x995C52FF, 0x99581EFF, 0x993A63FF, 0x998F4EFF, 0x99311EFF, 0x0D1842FF, 0x521E1EFF, 0x42420DFF, 0x4C991EFF, 0x082A1DFF, +0x96821DFF, 0x197F19FF, 0x3B141FFF, 0x745217FF, 0x893F8DFF, 0x7E1A6CFF, 0x0B370BFF, 0x27450DFF, 0x071F24FF, 0x784573FF, +0x8A653AFF, 0x732617FF, 0x319490FF, 0x56941DFF, 0x59163DFF, 0x1B8A2FFF, 0x38160BFF, 0x041804FF, 0x355D8EFF, 0x2E3F5BFF, +0x561A28FF, 0x4E0E27FF, 0x706C67FF, 0x3B3E42FF, 0x2E2D33FF, 0x7B7E7DFF, 0x4A4442FF, 0x28344EFF +}; +``` + +## ملاحظات {#notes} + +:::note + +بعض المركبات لها لون أساسي فقط، وبعضها لا يمكن تغيير لونه أصلًا. توجد أيضًا مركبات، مثل `cement` و`squallo`، لها أربعة ألوان؛ لا يمكن تغيير اثنين منها في SA-MP. + +::: + +## دوال ذات صلة {#related-functions} + +- [GetVehicleColours](GetVehicleColours): قراءة ألوان المركبة. +- [ChangeVehiclePaintjob](ChangeVehiclePaintjob): تغيير تصميم طلاء المركبة. + +## دوال استدعاء ذات صلة {#related-callbacks} + +- [OnVehicleRespray](../callbacks/OnVehicleRespray): عند إعادة طلاء مركبة. + +## مراجع ذات صلة {#related-resources} + +- [معرّفات ألوان المركبات](../resources/vehiclecolorid). +- [الألوان الأصلية للمركبات](../resources/original-car-colors). diff --git a/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/functions/ChangeVehiclePaintjob.md b/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/functions/ChangeVehiclePaintjob.md new file mode 100644 index 00000000000..ec0d87938b6 --- /dev/null +++ b/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/functions/ChangeVehiclePaintjob.md @@ -0,0 +1,54 @@ +--- +title: ChangeVehiclePaintjob +sidebar_label: ChangeVehiclePaintjob +description: تغيير تصميم طلاء المركبة. +tags: ["vehicle"] +--- + +## الوصف {#description} + +تغيّر هذه الدالة تصميم طلاء المركبة (paintjob). لتغيير الألوان العادية، استخدم [ChangeVehicleColor](ChangeVehicleColor). + +| الاسم | الوصف | +| --- | --- | +| vehicleid | معرّف المركبة المطلوب تغيير تصميم طلائها. | +| paintjob | معرّف [تصميم الطلاء](../resources/paintjobs) المطلوب تطبيقه. استخدم `3` لإزالة التصميم. | + +## القيم المعادة {#returns} + +تعيد هذه الدالة دائمًا **true**، حتى لو كانت المركبة المحددة غير موجودة؛ لذلك لا تعتمد على القيمة المعادة للتحقق من وجود المركبة. + +## مثال {#examples} + +```c +new rand = random(3); // Will either be 0 1 or 2 (all valid) +new vehicleid = GetPlayerVehicleID(playerid); + +ChangeVehicleColor(vehicleid, 1, 1); // making sure it is white for better result +ChangeVehiclePaintjob(vehicleid, rand); // changes the paintjob of the player's current vehicle to a random one +``` + +## ملاحظات {#notes} + +:::warning + +قد لا يظهر تصميم الطلاء إذا كان لون المركبة أسود. للحصول على نتيجة أوضح، اجعل المركبة بيضاء قبل تطبيق التصميم باستخدام: + +```c +ChangeVehicleColor(vehicleid, 1, 1); +``` + +::: + +## دوال ذات صلة {#related-functions} + +- [GetVehiclePaintjob](GetVehiclePaintjob): قراءة معرّف تصميم طلاء المركبة. +- [ChangeVehicleColor](ChangeVehicleColor): تعيين ألوان المركبة. + +## دوال استدعاء ذات صلة {#related-callbacks} + +- [OnVehiclePaintjob](../callbacks/OnVehiclePaintjob): عند تغيير تصميم طلاء مركبة. + +## مراجع ذات صلة {#related-resources} + +- [معرّفات تصاميم طلاء المركبات](../resources/paintjobs). diff --git a/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/functions/GetVehicleParamsSirenState.md b/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/functions/GetVehicleParamsSirenState.md new file mode 100644 index 00000000000..39a3b9bd961 --- /dev/null +++ b/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/functions/GetVehicleParamsSirenState.md @@ -0,0 +1,58 @@ +--- +title: GetVehicleParamsSirenState +sidebar_label: GetVehicleParamsSirenState +description: قراءة حالة صفّارة إنذار المركبة لمعرفة ما إذا كانت تعمل. +tags: ["vehicle"] +--- + + + +## الوصف {#description} + +تعيد هذه الدالة حالة صفّارة إنذار المركبة: هل تعمل أم لا؟ + +| الاسم | الوصف | +| --- | --- | +| vehicleid | معرّف المركبة المطلوب معرفة حالة صفّارتها. | + +## القيم المعادة {#returns} + +- **-1**: لم تُعيّن حالة الصفّارة بعد، وهي متوقفة. +- **0**: الصفّارة متوقفة. +- **1**: الصفّارة تعمل. + +## مثال {#examples} + +```c +new + siren = GetVehicleParamsSirenState(vehicleid); + +if (siren == 1) +{ + // Siren is on, do something +} +else if (siren == 0) +{ + // Siren is off, do something +} +else +{ + // Vehicle does not have a siren +} +``` + +## ملاحظات {#notes} + +:::warning + +القيمتان `-1` و`0` تعنيان أن الصفّارة متوقفة، لكن الشرط `if (sirenstate)` يعامل أي قيمة غير الصفر على أنها صحيحة، بما فيها `-1`. لذلك تحقّق صراحةً من أن الحالة تساوي `1` لمعرفة ما إذا كانت الصفّارة تعمل. + +::: + +## دوال ذات صلة {#related-functions} + +- [SetVehicleParamsSirenState](SetVehicleParamsSirenState): تشغيل صفّارة المركبة أو إيقافها. + +## دوال استدعاء ذات صلة {#related-callbacks} + +- [OnVehicleSirenStateChange](../callbacks/OnVehicleSirenStateChange): عند تشغيل الصفّارة أو إيقافها. diff --git a/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/functions/SetVehicleHealth.md b/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/functions/SetVehicleHealth.md new file mode 100644 index 00000000000..482e7226768 --- /dev/null +++ b/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/functions/SetVehicleHealth.md @@ -0,0 +1,60 @@ +--- +title: SetVehicleHealth +sidebar_label: SetVehicleHealth +description: تعيين مقدار سلامة المركبة. +tags: ["vehicle"] +--- + +## الوصف {#description} + +تعيّن هذه الدالة مقدار سلامة المركبة. كلما انخفضت القيمة، بدأ المحرك بإخراج الدخان، ثم اشتعلت فيه النار عندما تصبح أقل من `250`، أي `25%` من قيمة السلامة الكاملة. + +| الاسم | الوصف | +| --- | --- | +| vehicleid | معرّف المركبة المطلوب تعيين مقدار سلامتها. | +| Float:health | مقدار السلامة، بقيمة ذات فاصلة عائمة. | + +## القيم المعادة {#returns} + +- **true**: نُفّذت الدالة بنجاح. +- **false**: تعذّر التنفيذ لأن المركبة غير موجودة. + +## مثال {#examples} + +```c +public OnPlayerCommandText(playerid, cmdtext[]) +{ + if (strcmp("/fixengine", cmdtext, true) == 0) + { + new + vehicleid = GetPlayerVehicleID(playerid); + + SetVehicleHealth(vehicleid, 1000.0); + SendClientMessage(playerid, -1, "The vehicles engine has been fully repaired."); + return 1; + } + return 0; +} +``` + +## ملاحظات {#notes} + +:::note + +قيمة السلامة الكاملة للمركبة هي `1000`، لكن يمكن تعيين قيم أعلى. للمزيد، راجع [قيم سلامة المركبات](../resources/vehiclehealth). + +::: + +## دوال ذات صلة {#related-functions} + +- [GetVehicleHealth](GetVehicleHealth): قراءة مقدار سلامة المركبة. +- [RepairVehicle](RepairVehicle): إصلاح المركبة بالكامل. +- [SetPlayerHealth](SetPlayerHealth): تعيين صحة اللاعب. + +## دوال استدعاء ذات صلة {#related-callbacks} + +- [OnVehicleDeath](../callbacks/OnVehicleDeath): عند تدمير مركبة. + +## مراجع ذات صلة {#related-resources} + +- [قيم سلامة المركبات](../resources/vehiclehealth). diff --git a/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/functions/SetVehicleToRespawn.md b/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/functions/SetVehicleToRespawn.md new file mode 100644 index 00000000000..8476015d9c7 --- /dev/null +++ b/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/functions/SetVehicleToRespawn.md @@ -0,0 +1,34 @@ +--- +title: SetVehicleToRespawn +sidebar_label: SetVehicleToRespawn +description: إعادة إظهار المركبة في الموقع الذي أُنشئت فيه. +tags: ["vehicle"] +--- + +## الوصف {#description} + +تعيد هذه الدالة إظهار المركبة في الموقع الذي أُنشئت فيه. + +| الاسم | الوصف | +| --- | --- | +| vehicleid | معرّف المركبة المطلوب إعادة إظهارها. | + +## القيم المعادة {#returns} + +- **true**: نُفّذت الدالة بنجاح. +- **false**: تعذّر التنفيذ لأن المركبة غير موجودة. + +## مثال {#examples} + +```c +// Respawns the all vehicles +for (new i = 1; i < MAX_VEHICLES; i++) +{ + SetVehicleToRespawn(i); +} +``` + +## دوال ذات صلة {#related-functions} + +- [CreateVehicle](CreateVehicle): إنشاء مركبة. +- [DestroyVehicle](DestroyVehicle): حذف مركبة. diff --git a/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/resources/paintjobs.md b/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/resources/paintjobs.md new file mode 100644 index 00000000000..bede3d4b580 --- /dev/null +++ b/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/resources/paintjobs.md @@ -0,0 +1,58 @@ +--- +title: تصاميم طلاء المركبات +sidebar_label: تصاميم الطلاء +description: تصاميم الطلاء المتاحة للمركبات ومعرّفاتها. +--- + +:::info + +تعرض هذه الصفحة تصاميم الطلاء التي يمكن تطبيقها على مركبات محددة باستخدام [ChangeVehiclePaintjob](../functions/ChangeVehiclePaintjob). يوضّح الجدول معرّف كل تصميم، ومعرّف المركبة التي تدعمه واسمها. + +::: + +## جدول تصاميم الطلاء {#paintjob-table} + +| الصورة | معرّف التصميم | معرّف الطراز | اسم الطراز | اللون | متاح في اللعب الفردي | +| ----------------------------------------------------------------------------------- | ----------- | -------- | ---------- | ------------------------------ | ------------------------ | +| ![](https://assets.open.mp/assets/images/paintjobs/VehiclePaintjob_Camper_0.png) | 0 | 483 | Camper | الافتراضي، دون لون مخصص | لا | +| ![](https://assets.open.mp/assets/images/paintjobs/VehiclePaintjob_Remington_0.png) | 0 | 534 | Remington | الافتراضي، دون لون مخصص | نعم | +| ![](https://assets.open.mp/assets/images/paintjobs/VehiclePaintjob_Remington_1.png) | 1 | 534 | Remington | الافتراضي، دون لون مخصص | نعم | +| ![](https://assets.open.mp/assets/images/paintjobs/VehiclePaintjob_Remington_2.png) | 2 | 534 | Remington | الافتراضي، دون لون مخصص | نعم | +| ![](https://assets.open.mp/assets/images/paintjobs/VehiclePaintjob_Slamvan_0.png) | 0 | 535 | Slamvan | الافتراضي، دون لون مخصص | نعم | +| ![](https://assets.open.mp/assets/images/paintjobs/VehiclePaintjob_Slamvan_1.png) | 1 | 535 | Slamvan | الافتراضي، دون لون مخصص | نعم | +| ![](https://assets.open.mp/assets/images/paintjobs/VehiclePaintjob_Slamvan_2.png) | 2 | 535 | Slamvan | الافتراضي، دون لون مخصص | نعم | +| ![](https://assets.open.mp/assets/images/paintjobs/VehiclePaintjob_Blade_0.png) | 0 | 536 | Blade | الافتراضي، دون لون مخصص | نعم | +| ![](https://assets.open.mp/assets/images/paintjobs/VehiclePaintjob_Blade_0.png) | 1 | 536 | Blade | الافتراضي، دون لون مخصص | نعم | +| ![](https://assets.open.mp/assets/images/paintjobs/VehiclePaintjob_Blade_0.png) | 2 | 536 | Blade | الافتراضي، دون لون مخصص | نعم | +| ![](https://assets.open.mp/assets/images/paintjobs/VehiclePaintjob_Uranus_0.png) | 0 | 558 | Uranus | الافتراضي، دون لون مخصص | نعم | +| ![](https://assets.open.mp/assets/images/paintjobs/VehiclePaintjob_Uranus_0.png) | 1 | 558 | Uranus | الافتراضي، دون لون مخصص | نعم | +| ![](https://assets.open.mp/assets/images/paintjobs/VehiclePaintjob_Uranus_0.png) | 2 | 558 | Uranus | الافتراضي، دون لون مخصص | نعم | +| ![](https://assets.open.mp/assets/images/paintjobs/VehiclePaintjob_Jester_0.png) | 0 | 559 | Jester | الافتراضي، دون لون مخصص | نعم | +| ![](https://assets.open.mp/assets/images/paintjobs/VehiclePaintjob_Jester_1.png) | 1 | 559 | Jester | الافتراضي، دون لون مخصص | نعم | +| ![](https://assets.open.mp/assets/images/paintjobs/VehiclePaintjob_Jester_2.png) | 2 | 559 | Jester | الافتراضي، دون لون مخصص | نعم | +| ![](https://assets.open.mp/assets/images/paintjobs/VehiclePaintjob_Sultan_0.png) | 0 | 560 | Sultan | الافتراضي، دون لون مخصص | نعم | +| ![](https://assets.open.mp/assets/images/paintjobs/VehiclePaintjob_Sultan_1.png) | 1 | 560 | Sultan | الافتراضي، دون لون مخصص | نعم | +| ![](https://assets.open.mp/assets/images/paintjobs/VehiclePaintjob_Sultan_2.png) | 2 | 560 | Sultan | الافتراضي، دون لون مخصص | نعم | +| ![](https://assets.open.mp/assets/images/paintjobs/VehiclePaintjob_Stratum_0.png) | 0 | 561 | Stratum | الافتراضي، دون لون مخصص | نعم | +| ![](https://assets.open.mp/assets/images/paintjobs/VehiclePaintjob_Stratum_1.png) | 1 | 561 | Stratum | الافتراضي، دون لون مخصص | نعم | +| ![](https://assets.open.mp/assets/images/paintjobs/VehiclePaintjob_Stratum_2.png) | 2 | 561 | Stratum | الافتراضي، دون لون مخصص | نعم | +| ![](https://assets.open.mp/assets/images/paintjobs/VehiclePaintjob_Elegy_0.png) | 0 | 562 | Elegy | الافتراضي، دون لون مخصص | نعم | +| ![](https://assets.open.mp/assets/images/paintjobs/VehiclePaintjob_Elegy_1.png) | 1 | 562 | Elegy | الافتراضي، دون لون مخصص | نعم | +| ![](https://assets.open.mp/assets/images/paintjobs/VehiclePaintjob_Elegy_2.png) | 2 | 562 | Elegy | الافتراضي، دون لون مخصص | نعم | +| ![](https://assets.open.mp/assets/images/paintjobs/VehiclePaintjob_Flash_0.png) | 0 | 565 | Flash | الافتراضي، دون لون مخصص | نعم | +| ![](https://assets.open.mp/assets/images/paintjobs/VehiclePaintjob_Flash_1.png) | 1 | 565 | Flash | الافتراضي، دون لون مخصص | نعم | +| ![](https://assets.open.mp/assets/images/paintjobs/VehiclePaintjob_Flash_2.png) | 2 | 565 | Flash | الافتراضي، دون لون مخصص | نعم | +| ![](https://assets.open.mp/assets/images/paintjobs/VehiclePaintjob_Savanna_0.png) | 0 | 567 | Savanna | الافتراضي، دون لون مخصص | نعم | +| ![](https://assets.open.mp/assets/images/paintjobs/VehiclePaintjob_Savanna_1.png) | 1 | 567 | Savanna | الافتراضي، دون لون مخصص | نعم | +| ![](https://assets.open.mp/assets/images/paintjobs/VehiclePaintjob_Savanna_2.png) | 2 | 567 | Savanna | الافتراضي، دون لون مخصص | نعم | +| ![](https://assets.open.mp/assets/images/paintjobs/VehiclePaintjob_Broadway_0.png) | 0 | 575 | Broadway | الافتراضي، دون لون مخصص | نعم | +| ![](https://assets.open.mp/assets/images/paintjobs/VehiclePaintjob_Broadway_1.png) | 1 | 575 | Broadway | الافتراضي، دون لون مخصص | نعم | +| ![](https://assets.open.mp/assets/images/paintjobs/VehiclePaintjob_Tornado_0.png) | 0 | 576 | Tornado | الافتراضي، دون لون مخصص | نعم | +| ![](https://assets.open.mp/assets/images/paintjobs/VehiclePaintjob_Tornado_1.png) | 1 | 576 | Tornado | الافتراضي، دون لون مخصص | نعم | +| ![](https://assets.open.mp/assets/images/paintjobs/VehiclePaintjob_Tornado_2.png) | 2 | 576 | Tornado | الافتراضي، دون لون مخصص | نعم | + +## دوال ذات صلة {#related-functions} + +- [ChangeVehiclePaintjob](../functions/ChangeVehiclePaintjob): تغيير تصميم طلاء المركبة. +- [ChangeVehicleColor](../functions/ChangeVehicleColor): تعيين ألوان المركبة. +- [OnVehiclePaintjob](../callbacks/OnVehiclePaintjob): عند تغيير تصميم طلاء مركبة. diff --git a/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/resources/vehiclehealth.md b/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/resources/vehiclehealth.md new file mode 100644 index 00000000000..c19c2132b8c --- /dev/null +++ b/frontend/i18n/ar/docusaurus-plugin-content-docs/current/scripting/resources/vehiclehealth.md @@ -0,0 +1,21 @@ +--- +title: قيم سلامة المركبات +sidebar_label: سلامة المركبات +description: تأثير مقدار سلامة المركبة في المحرك والدخان والاشتعال. +--- + +:::info + +تستخدم الدالتان [SetVehicleHealth](../functions/SetVehicleHealth) و[GetVehicleHealth](../functions/GetVehicleHealth) قيمة عددية لتمثيل سلامة المركبة. ضمن النطاق المعتاد من `0` إلى `1000`، تعني `0` أن المركبة ستنفجر، وتعني `1000` أنها سليمة تمامًا. ويمكن تعيين قيم أعلى من `1000` باستخدام `SetVehicleHealth`. + +يوضح الجدول التالي تأثير انخفاض السلامة في المحرك. + +::: + +| مقدار السلامة | التأثير في المحرك | +| --- | --- | +| > 650 | لا تأثير ملحوظ؛ المحرك ما زال بحالة جيدة. | +| 550-650 | ترتفع حرارة المحرك ويخرج منه دخان أبيض. | +| 390-550 | ترتفع حرارة المحرك بدرجة أكبر ويخرج منه دخان رمادي. | +| 250-390 | تصبح حرارة المحرك شديدة ويخرج منه دخان أسود. | +| < 250 | يشتعل المحرك، وتنفجر المركبة بعد بضع ثوانٍ ما لم تُصلح قبل ذلك. | diff --git a/frontend/i18n/ar/docusaurus-theme-classic/footer.json b/frontend/i18n/ar/docusaurus-theme-classic/footer.json new file mode 100644 index 00000000000..401d443e772 --- /dev/null +++ b/frontend/i18n/ar/docusaurus-theme-classic/footer.json @@ -0,0 +1,74 @@ +{ + "link.title.Documentations": { + "message": "التوثيق", + "description": "The title of the footer links column with title=Documentations in the footer" + }, + "link.title.Community": { + "message": "المجتمع", + "description": "The title of the footer links column with title=Community in the footer" + }, + "link.title.More": { + "message": "المزيد", + "description": "The title of the footer links column with title=More in the footer" + }, + "link.item.label.Introduction": { + "message": "مقدمة", + "description": "The label of footer link with label=Introduction linking to docs" + }, + "link.item.label.open.mp Migration": { + "message": "الانتقال إلى open.mp", + "description": "The label of footer link with label=open.mp Migration linking to docs/server/Installation" + }, + "link.item.label.config.json": { + "message": "config.json", + "description": "The label of footer link with label=config.json linking to docs/server/config.json" + }, + "link.item.label.Discord": { + "message": "Discord", + "description": "The label of footer link with label=Discord linking to https://discord.gg/samp" + }, + "link.item.label.GitHub": { + "message": "GitHub", + "description": "The label of footer link with label=GitHub linking to https://github.com/openmultiplayer/open.mp" + }, + "link.item.label.Donate": { + "message": "تبرّع", + "description": "The label of footer link with label=Donate linking to https://opencollective.com/openmultiplayer" + }, + "link.item.label.YouTube": { + "message": "YouTube", + "description": "The label of footer link with label=YouTube linking to https://youtube.com/openmultiplayer" + }, + "link.item.label.X": { + "message": "X", + "description": "The label of footer link with label=X linking to https://x.com/openmultiplayer" + }, + "link.item.label.Servers": { + "message": "الخوادم", + "description": "The label of footer link with label=Servers linking to /servers" + }, + "link.item.label.Blog": { + "message": "المدونة", + "description": "The label of footer link with label=Blog linking to /blog" + }, + "link.item.label.Animations": { + "message": "الحركات", + "description": "The label of footer link with label=Animations linking to /animations" + }, + "link.item.label.UID Generator": { + "message": "إنشاء معرّف UID", + "description": "The label of footer link with label=UID Generator linking to /uid" + }, + "link.item.label.SA-MP": { + "message": "SA-MP", + "description": "The label of footer link with label=SA-MP linking to https://sa-mp.mp/" + }, + "copyright": { + "message": "حقوق النشر © 2026 open.mp. بُني الموقع باستخدام Docusaurus.", + "description": "The footer copyright" + }, + "logo.alt": { + "message": "شعار open.mp", + "description": "The alt text of footer logo" + } +} diff --git a/frontend/i18n/ar/docusaurus-theme-classic/navbar.json b/frontend/i18n/ar/docusaurus-theme-classic/navbar.json new file mode 100644 index 00000000000..976199bb8d5 --- /dev/null +++ b/frontend/i18n/ar/docusaurus-theme-classic/navbar.json @@ -0,0 +1,34 @@ +{ + "title": { + "message": "Open Multiplayer", + "description": "The title in the navbar" + }, + "logo.alt": { + "message": "شعار open.mp", + "description": "The alt text of navbar logo" + }, + "item.label.Docs": { + "message": "التوثيق", + "description": "Navbar item with label Docs" + }, + "item.label.Blog": { + "message": "المدونة", + "description": "Navbar item with label Blog" + }, + "item.label.Forums": { + "message": "المنتديات", + "description": "Navbar item with label Forums" + }, + "item.label.Servers": { + "message": "الخوادم", + "description": "Navbar item with label Servers" + }, + "item.label.Partners": { + "message": "الشركاء", + "description": "Navbar item with label Partners" + }, + "item.label.Donate": { + "message": "تبرّع", + "description": "Navbar item with label Donate" + } +} diff --git a/frontend/src/css/custom.css b/frontend/src/css/custom.css index 393b6800e03..f56cf46bff4 100644 --- a/frontend/src/css/custom.css +++ b/frontend/src/css/custom.css @@ -1283,3 +1283,10 @@ html[data-theme="dark"] { .hash-link { font-family: var(--ifm-font-family-base); } + +/* Keep commands, paths and API expressions readable within Arabic prose. */ +html[lang="ar"] .theme-doc-markdown :not(pre) > code { + /* rtl:ignore */ + direction: ltr; + unicode-bidi: isolate; +}