Agency Docs
QBESXStandalone

Agency-Vehiclekeys V2 التصديرات وواجهة البرمجة

مفاتيح مركبات شاملة لـ FiveM على QBCore أو Qbox أو ESX أو بنظام مستقل تمامًا.

v2.0.0مدفوع5 صفحات

01تصديرات العميل

التصديرالوصف
HasKeys(plate)تكون القيمة True عندما يحمل اللاعب مفتاحًا لهذه اللوحة: بصفته مالكًا أو لديه مفتاح مشترك أو مؤقت. تُفتح مركبات الوظائف حسب طرازها، ولا تُحتسب هنا.
GetKeys()جميع مفاتيح اللاعب في قائمة بالتنسيق { plate, kind }. تكون قيمة kind هي owner أو shared أو temp.
ToggleLock(vehicle)يقفل مركبة أو يفتح قفلها إذا كان لدى اللاعب مفتاح لها، باستخدام الحركة وعمليات التحقق نفسها المستخدمة مع G. إذا لم يكن اللاعب داخل مركبة، تُستخدم أقرب مركبة ضمن النطاق.
ToggleEngine()يشغّل محرك المركبة التي يقودها اللاعب أو يوقفه، مثل U.
OpenMenu()يفتح حلقة المفاتيح، على سبيل المثال من قائمة دائرية أو تطبيق هاتف.
CloseMenu()يغلق حلقة المفاتيح ويعيد التحكم بالماوس إلى اللعبة.
IsMenuOpen()تكون القيمة True أثناء فتح حلقة المفاتيح.
useLockpick()يبدأ محاولة فتح الأقفال باستخدام أداة فتح الأقفال للسيارة أمام اللاعب، أو محاولة توصيل الأسلاك في مقعد السائق. مخصص لعناصر ox_inventory: client = { export = 'Agency-Vehiclekeys.useLockpick' }.

02تصديرات الخادم

التصديرالوصف
GiveKeys(source, plate, mode, hours)يمنح مفتاحًا. الوضع 'temp' (افتراضيًا) هو مفتاح مؤقت، ويمكن تحديد عدد الساعات اختياريًا، أما 'perm' فهو مفتاح محفوظ. يعمل مع source أو identifier.
RemoveKeys(source, plate)يسحب مفتاحًا مشتركًا أو مؤقتًا. تُرجع العملية true عند وجود مفتاح لسحبه.
HasKeys(source, plate)تكون القيمة True عندما يحمل اللاعب مفتاحًا للوحة، بما في ذلك مفاتيح الوظائف لمركبة قريبة.
SetOwner(source, plate)يجعل اللاعب مالكًا للوحة، لاستخدامها في المرائب والمتاجر على الخوادم المستقلة. يفقد المالك السابق المفتاح.
RemoveOwner(plate)يزيل المالك الذي حفظه هذا البرنامج النصي للوحة.
GetOwner(plate)معرّف المالك ومصدره: 'framework' للمركبات المملوكة في QBCore أو Qbox أو ESX، و'store' للمالكين الذين حفظهم هذا البرنامج النصي.
GetKeyHolders(plate)كل من لديه مفتاح للوحة، ضمن قائمة بالشكل { identifier, kind, name, expires }.
SetVehicleLocked(vehicle, locked)يقفل مركبة أو يفتح قفلها للجميع، دون التحقق من المفتاح. للسكربتات التي تحتاج إلى فتح سيارة.
IsVehicleLocked(vehicle)تكون القيمة True عندما تكون المركبة مقفلة.
GetFramework()الإطار الذي عثر عليه السكربت: qbcore أو esx أو standalone.

03الأحداث

الاسمالجهةالوصف
Agency:Keys:GiveServerالخادميطلب مفتاحًا مؤقتًا للوحة، كما تفعل Agency Garage وAgency Vehicleshop. شغّله من جهة العميل مع اللوحة. يجب أن تكون السيارة بجوار اللاعب أو أن تكون ملكه.
qb-vehiclekeys:server:AcquireVehicleKeysالخادمحدث المفتاح في qb-vehiclekeys، ويُفهم بالطريقة نفسها، لكي تواصل المرائب والمتاجر المصممة لـ qb-vehiclekeys عملها.
vehiclekeys:client:SetOwnerالعميلحدث عميل تطلقه كثير من المرائب والمتاجر بعد إخراج سيارة. يمنح مفتاحًا مؤقتًا لتلك اللوحة بعد إجراء عمليات التحقق نفسها على الخادم.
qb-vehiclekeys:client:AddKeysالعميلحدث العميل في qb-vehiclekeys لمنح المفاتيح، ويُفهم بالطريقة نفسها.
simple_carkeys:client:toggleEngineالعميليُطلق على العميل عند تشغيل المحرك أو إيقافه بمفتاح، لكي تتمكن واجهات HUD مثل Agency-Hud من متابعة حالة المحرك.

+من المفيد معرفته

يتيح Agency-Vehiclekeys V2 استخدام exports ويفهم أحداث المفاتيح المعتادة، لذا يمكن لسكربتات المرائب والمتاجر والوظائف والسطو منح المفاتيح والتحقق منها وسحبها.

منح المفاتيح والتحقق منها
يمنح GiveKeys مفتاحًا مؤقتًا أو محفوظًا، ويسحب RemoveKeys المفتاح، بينما يتحقق HasKeys منه، على الخادم باستخدام source أو معرّف، وعلى العميل للاعب نفسه.
المالكون في المرائب المستقلة
لا يوجد في الخوادم المستقلة جدول في إطار العمل للمركبات المملوكة. يعيّن SetOwner لاعبًا مالكًا للوحة ترخيص، ويزيل RemoveOwner الملكية، ويقرأ GetOwner بيانات المالك.
الأحداث التي تستخدمها السكربتات الأخرى
تؤدي الأحداث Agency:Keys:GiveServer وqb-vehiclekeys:server:AcquireVehicleKeys وvehiclekeys:client:SetOwner وqb-vehiclekeys:client:AddKeys جميعها إلى منح مفتاح مؤقت بعد إجراء الفحوصات نفسها: يجب أن تكون السيارة بجوار اللاعب أو أن تكون ملكًا له.

?الأسئلة المتكررة

كيف أمنح مفتاحًا من سكربت المرآب الخاص بي؟

على الخادم، استدعِ exports['Agency-Vehiclekeys']:GiveKeys(source, plate) بعد ظهور السيارة، أو أطلق TriggerServerEvent('Agency:Keys:GiveServer', plate) على العميل. لا تحتاج السكربتات المصممة لـ qb-vehiclekeys إلى أي تعديل.

ما زلت عالقًا بعد هذه الصفحة؟ فريق الدعم يتولّى الأمر من هنا.