ProximityPrompt nesneler, kullanıcı etkileşimini teşvik ederek deneyim nesnelerine, örneğin kapılar, ışık anahtarları ve düğmeler gibi yaklaştıklarında bir eylem tetikler.Bu nesneyi kullanarak, şunları yapabilirsiniz:
- Bir kullanıcının deneyimde hangi nesnelerle etkileşebileceğini gösterin.
- Bir kullanıcının nesneye yapabileceği eylemi gösterin, ardından eylemi basılarak veya bir tuş tutularak kullanıcı girişiyle tetikleyin.
- Tüm giriş türleri için doğru girişi gösterin, bir klavye, oyun konsolu ve dokunma ekranı tuşları gibi.
Yakınlık uyarıları oluşturma
Bir kullanıcının etkileşime girmesini istediğiniz parçaya, model veya ekipmana yakınlık uyarıları vermelisiniz.Bir BasePart , Model veya Attachment nesneye bir yakınlık uyarısı eklemek için:
Araştırıcı penceresinde, , veya üzerine gelin ve ⊕ düğmesine tıklayın. Bir bağımsız menü görüntülenir.
Menüden, bir Yakınlıkİpuçu girin.
Yakınlık uyarılarını özelleştirin
Yakınlık uyarısını, nasıl görünmesini istediğinize bağlı olarak özelleştirebilirsiniz görünmesini istediğinizde , görünmesini istediğinizde kullanıcının eylemi tetiklemesi için ne yapmasını istediğinize bağlı olarak ve eylemi tetiklemek için kullanıcının yapması gereken şey .
Görünüm
Yakınlık uyarıları üç şeyi iletişime geçirmelidir:
- Bir kullanıcının etkileşime girebileceği nesne .
- Yakınlık uyarısıyla etkileşim kurduklarında tetiklenen eylem .
- Bir kullanıcının basması veya tutması gereken anahtar .
Bunları aşağıdaki özellikler aracılığıyla belirleyebilirsiniz:
ObjectText Kullanıcının etkileşime girebileceği nesne için isteğe bağlı bir isim.
ActionText Kullanıcının tetikleyeceği eylem için isteğe bağlı bir isim.
KeyboardKeyCode Kullanıcının aksiyontetiklemek için basması veya tutması gereken klavye tuşu.
GamepadKeyCode Oyun kolu tuşu bir kullanıcının aksiyontetiklemek için basması veya tutması gereken tuş.
Görünürlük
Yakınlık uyarısının MaxActivationDistance , RequiresLineOfSight ve Exclusivity özellikleri aracılığıyla ne zaman görülebileceğini kontrol edebilirsiniz.
Maksimum Aktivasyon Mesafesi
The MaxActivationDistance özelliği, yakınlık uyarısının görünürlüğünü etkinleştiren ProximityPrompt nesnesinin etrafındaki menzili tanımlamanıza izin verirBir kullanıcının karakteri bu menzile girdiğinde, yakınlık uyarısı görünür hale gelir.

Görüş Hattı Gerektirir
The RequiresLineOfSight özelliği, kamera 'dan ProximityPrompt nesneye net bir yol olduğunda yakınlık uyarısının görünürlüğünü etkinleştirir.Varsayılan olarak, bu özellik true olarak ayarlanır.
Özellik
Bir kullanıcının karakteri çok sayıda yakınlık hatırlatmasının menzilindeyse, her yakınlık hatırlatmasının görünürlüğü, kamera'nın hangi yakınlık hatırlatmasına işaret ettiğine ve her yakınlık hatırlatmasının Exclusivity özellik değerine bağlıdır.

Etkileşim
Bir kullanıcının yakınlık uyarısıyla nasıl etkileşime geçtiğini HoldDuration ve ClickablePrompt özellikleri aracılığıyla özelleştirebilirsiniz.
Süre Tutma Süresi
The HoldDuration özelliği, bir kullanıcının yakınlık uyarısının eylemine tepki vermeden önce bir tuşa basması gereken saniye sayısını belirler.Bu özelliğin değeri 0 ise, yakınlık istemesinin eylemi hemen tetiklenir.
Tıklanabilirİpucu
The ClickablePrompt özelliği, bir kullanıcının aksiyontetiklemek için yakınlık uyarısına tıklayıp tıklayamayacağını belirler. doğru olarak ayarlanırsa, bir kullanıcı belirlenen anahtara basarak yakınlık uyarısına doğrudan tıklayarak yakınlık uyarısıyla etkileşebilir veya . kapalı olarak ayarlanırsa, bir kullanıcı yalnızca belirtilen anahtara basarak yakınlık uyarısıyla etkileşebilir.
Senaryo yakınlık uyarıları
Yakınlık uyarı etkinliklerine ProximityPrompt nesneye kendi başına veya küresel olarak ProximityPromptService aracılığıyla bağlanabilirsiniz.The ProximityPromptService tüm yakınlık istemesi davranışını bir konumdan yönetmenizi sağlar, deneyiminizde yinelenen kod gereksinimini engeller.
Olay | Açıklama |
---|---|
PromptTriggered | Bir oyuncu bir yakınlık uyarısıyla etkileştiğinde ateş eder (sıfır olmayan HoldDuration için bir uyarı süresinden sonra). |
PromptTriggerEnded | Oyuncu bir yakınlık hatırlatmasıyla etkileşime son verdiğinde tetiklenir. |
PromptButtonHoldBegan | Bir oyuncu, sıfır değerli bir yakınlık uyarısı ile etkileşime başladığında ateş eder HoldDuration değeriyle. |
PromptButtonHoldEnded | Bir oyuncu, sıfır değerli bir yakınlık uyarısı ile etkileşim kurmayı bıraktığında ateş eder HoldDuration değeriyle. |
PromptShown | Yakınlık uyarısı görünür hale getirildiğinde LocalScripts uyarıları tetiklenir. |
PromptHidden | Bir uyarı gizlendiğinde LocalScripts içinde tetikler. |
Aşağıdaki kod örneği, ProximityPromptService kullanmak için temel bir çerçeve içerir:
local ProximityPromptService = game:GetService("ProximityPromptService")
-- Uyarı tetiklendiğinde algılanmasını sağla
local function onPromptTriggered(promptObject, player)
end
-- İstek tutma başladığında tespit edin
local function onPromptHoldBegan(promptObject, player)
end
-- İstek tutma sonlarını tespit etmeyi tetikleyin
local function onPromptHoldEnded(promptObject, player)
end
-- Hızlı etkinlikleri işleme fonksiyonlarına bağla
ProximityPromptService.PromptTriggered:Connect(onPromptTriggered)
ProximityPromptService.PromptButtonHoldBegan:Connect(onPromptHoldBegan)
ProximityPromptService.PromptButtonHoldEnded:Connect(onPromptHoldEnded)