المحفزات القريبة

*This content is translated using AI (Beta) and may contain errors. To view this page in English, click here.

ProximityPrompt الكائنات تشجع التفاعل من المستخدم لبدء إجراء عند اقترابهم من كائنات داخل التجربة مثل الأبواب، مفاتيح الإضاءة، والأزرار. باستخدام هذا الكائن، يمكنك:

  • الإشارة إلى الكائنات التي يمكن للمستخدم التفاعل معها في التجربة.
  • عرض الإجراء الذي يمكن للمستخدم اتخاذه على الكائن، ثم تفعيل الإجراء من خلال مدخلات المستخدم مثل الضغط أو الاستمرار على مفتاح.
  • عرض المدخل الصحيح لجميع أنواع المدخلات، مثل لوحة المفاتيح، جهاز التحكم، ومفاتيح الشاشة اللمسية.

إنشاء المحفزات القريبة

يجب عليك ربط المحفزات القريبة بالجزء أو النموذج أو المرفق الذي تريد من المستخدم التفاعل معه. لإضافة محفز قريب إلى كائن BasePart أو Model أو Attachment:

  1. في نافذة Explorer، قم بالمرور فوق BasePart أو Model أو Attachment وانقر على زر ⊕ . ستظهر قائمة سياقية.

  2. من القائمة، قم بإدراج ProximityPrompt.

    هيكل مستكشف يظهر محفز قريب مرتبطة بمرفق

تخصيص المحفزات القريبة

يمكنك تخصيص محفز قريب بناءً على كيفية رغبتك في أن يظهر ومتى ترغب في أن يكون مرئيًا وماذا تريد من المستخدم أن يفعل لتفعيل الإجراء.

المظهر

تحتاج المحفزات القريبة إلى التواصل بثلاثة أشياء:

  • الكائن الذي يمكن للمستخدم التفاعل معه.
  • الإجراء الذي يتم تفعيله عند تفاعلهم مع المحفز القريب.
  • المفتاح الذي يجب على المستخدم الضغط عليه أو الاستمرار في الضغط عليه.

يمكنك تحديد هذه من خلال الخصائص التالية:

  • ObjectText اسم اختياري للكائن الذي يمكن للمستخدم التفاعل معه.

  • ActionText اسم اختياري للإجراء الذي سيقوم المستخدم بتفعيله.

  • KeyboardKeyCode مفتاح لوحة المفاتيح الذي يجب على المستخدم الضغط عليه أو الاستمرار في الضغط عليه لتفعيل الإجراء.

  • GamepadKeyCode مفتاح جهاز التحكم الذي يجب على المستخدم الضغط عليه أو الاستمرار في الضغط عليه لتفعيل الإجراء.

    رسم بياني يشير إلى العناصر الأساسية لمحفز قريب

الرؤية

يمكنك التحكم في متى يكون المحفز القريب مرئيًا من خلال خصائص MaxActivationDistance وRequiresLineOfSight وExclusivity.

MaxActivationDistance

تسمح لك خاصية MaxActivationDistance بتعريف النطاق من حول كائن ProximityPrompt الذي ينشط رؤية المحفز القريب. بمجرد دخول شخصية المستخدم إلى ذلك النطاق، يصبح المحفز القريب مرئيًا.

رسم بياني يوضح كيف أن مسافة شخصية ما من كائن ProximityPrompt تؤثر على ما إذا كان المحفز يظهر على الشاشة

RequiresLineOfSight

تقوم خاصية RequiresLineOfSight بتنشيط رؤية المحفز القريب عندما تكون هناك مسار واضح من الكاميرا إلى كائن ProximityPrompt. بشكل افتراضي، يتم تعيين هذه الخاصية إلى true.

Exclusivity

إذا كانت شخصية المستخدم ضمن نطاق العديد من المحفزات القريبة، فإن رؤية كل محفز قريب تعتمد على المحفز القريب الذي تشير إليه الكاميرا، بالإضافة إلى قيمة خاصية Exclusivity لكل محفز قريب.

تعيين كائنات ProximityPrompt على الحصرية OnePerButton
يكون محفز قريب واحد مرئيًا فقط لكل رمز إدخال. إذا كانت هناك محفزات قريبة متعددة في النطاق تستخدم رموز إدخال مختلفة، فإنها جميعًا مرئية. ومع ذلك، إذا كانت هناك محفزات قريبة متعددة في النطاق تستخدم نفس رمز الإدخال، فإن محفزًا قريبًا واحدًا فقط سيكون مرئيًا في أي وقت، اعتمادًا على اتجاه رؤية الكاميرا.

التفاعل

يمكنك تخصيص كيفية تفاعل المستخدم مع المحفز القريب عبر خصائص HoldDuration وClickablePrompt.

HoldDuration

تحدد خاصية HoldDuration عدد الثواني التي يجب على المستخدم الضغط فيها على مفتاح قبل أن يتم تفعيل إجراء المحفز القريب. إذا كانت قيمة هذه الخاصية 0، يتم تفعيل إجراء المحفز القريب على الفور.

ClickablePrompt

تحدد خاصية ClickablePrompt ما إذا كان يمكن للمستخدم النقر على المحفز القريب لتفعيل إجرائه. عندما يتم تعيينه إلى true، يمكن للمستخدم التفاعل مع المحفز القريب بالنقر مباشرة عليه أو من خلال الضغط على المفتاح المحدد. عندما يتم تعيينه إلى false، يمكن للمستخدم التفاعل فقط مع المحفز القريب من خلال الضغط على المفتاح المحدد.

المحفزات القريبة النصية

يمكنك الاتصال بأحداث المحفز القريب إما على كائن ProximityPrompt نفسه أو بشكل عام من خلال ProximityPromptService. تتيح لك ProximityPromptService إدارة سلوك جميع المحفزات القريبة من موقع واحد، مما يمنع أي حاجة إلى تكرار الكود في تجربتك.

الحدثالوصف
PromptTriggeredيحدث عندما يتفاعل لاعب مع محفز قريب (بعد مدة المحفز مع قيمة HoldDuration غير صفرية).
PromptTriggerEndedيحدث عندما يتوقف اللاعب عن التفاعل مع محفز قريب.
PromptButtonHoldBeganيحدث عندما يبدأ لاعب في التفاعل مع محفز قريب مع قيمة HoldDuration غير صفرية.
PromptButtonHoldEndedيحدث عندما يتوقف لاعب عن التفاعل مع محفز قريب مع قيمة HoldDuration غير صفرية.
PromptShownيحدث في LocalScripts عندما يصبح المحفز القريب مرئيًا.
PromptHiddenيحدث في LocalScripts عندما يتم إخفاء المحفز.

تتضمن عينة الكود التالية إطارًا أساسيًا لاستخدام ProximityPromptService:


local ProximityPromptService = game:GetService("ProximityPromptService")
-- Detect when prompt is triggered
local function onPromptTriggered(promptObject, player)
end
-- Detect when prompt hold begins
local function onPromptHoldBegan(promptObject, player)
end
-- Detect when prompt hold ends
local function onPromptHoldEnded(promptObject, player)
end
-- Connect prompt events to handling functions
ProximityPromptService.PromptTriggered:Connect(onPromptTriggered)
ProximityPromptService.PromptButtonHoldBegan:Connect(onPromptHoldBegan)
ProximityPromptService.PromptButtonHoldEnded:Connect(onPromptHoldEnded)
©2026 شركة Roblox Corporation. تُعد منصّة Roblox، وشعار Roblox وشعار "توسيع حدود المخيلة"، من ضمن علاماتنا التجارية المسجّلة وغير المسجّلة في الولايات المتحدة وبلدان أخرى.