هذا البرنامج النصي لم يكتمل بعد بنسبة 100%. إذا كان لديك أي شيء ترغب في المساهمة به في المشروع فلا تتردد في تقديم طلب سحب!
يحفظ هذا المورد العناصر الأصلية في جدول ذاكرة التخزين المؤقت مما يقلل العدد الإجمالي لطلبات الخادم من العميل. وهذا يعطي دفعة شاملة للأداء العام للخادم ويقلل من أوقات تحميل أي نصوص برمجية تستخدم ذاكرة التخزين المؤقت.
يقوم ملف العميل esx_policejob باستدعاء PlayerPed()
الأصلي 18 مرة - يمكن استرداد نفس البيانات من مكالمة واحدة من خلال Cache.PlayerPed
(ملاحظة: ESX ليس شرطًا لهذا البرنامج النصي)
باختصار، فهو يقلل من كمية المكالمات المحلية بمقدار كبير اعتمادًا على ما قمت بتخزينه مؤقتًا.
هذا عمل مستمر قيد التنفيذ - لذا فإن أي مساهمة أو مدخلات ستكون موضع تقدير كبير دائمًا!
لنفترض أنك تريد إرجاع PlayerPed()
- يمكننا استدعاؤه من خلال التصدير من البرنامج النصي باستخدام:
exports.cache:requestCache().PlayerPed
تأكد من أن اسم المورد لهذا المورد لا يحتوي على واصلة في الاسم (الرمز -) وإلا فإنه سيعرض خطأ:
attempt to index a nil value (global 'cache')
أدخل هذا السطر في client_scripts في fxmanifest.lua الخاص بالبرنامج النصي الذي ترغب في استخدام ذاكرة التخزين المؤقت فيه
"@cache/client/cl_cache.lua",
ستحتاج إلى القيام بذلك يدويًا بنفسك. فيما يلي مثال على ما ستحتاج إلى القيام به:
إذن هنا لديناPlayerPedId() محفوظ في ذاكرة التخزين المؤقت:
Cache.PlayerPed = PlayerPedId()
في أي مكان ترى PlayerPedId()
في البرنامج النصي الخاص بك، ستحتاج إلى استبداله بـ exports.cache:requestCache().PlayerPed
ضع start mascotte-cache
قبل إطار العمل/البرامج النصية الخاصة بك
سأقوم بتحديث هذا بانتظام قدر الإمكان، ولكن إذا كنت ترغب في إضافة القيم المخزنة مؤقتًا الخاصة بك، فكل ما عليك فعله هو اتباع هذا التنسيق:
Cache.YourNameHere = NativeYouWantToCache()
-- أضف إلى الموضوع
@ d0p3t - نظرًا لأن المعلومات الوحيدة التي يمكنني العثور عليها حول إنشاء ذاكرة تخزين مؤقت للبدء بها كانت من منشور نشره على CFX Discord يشرح كيفية تخزين البيانات مؤقتًا من السكان الأصليين
@NotSomething0 - لمساهمته في تنظيف الكثير من التعليمات البرمجية والذي تشاورت معه كثيرًا خلال بداية تطوير البرنامج النصي