ProximityPrompt objek mendorong interaksi pengguna untuk memicu tindakan saat mereka mendekati objek dalam pengalaman seperti pintu, sakelar lampu, dan tombol.Menggunakan objek ini, Anda dapat:
- Indikasikan objek apa yang dapat diinteraksi pengguna dalam pengalaman.
- Tampilkan tindakan yang dapat dilakukan pengguna pada objek, lalu memicu tindakan melalui input pengguna seperti menekan atau menahan unit.
- Tampilkan input yang benar untuk semua jenis input, seperti keyboard, gamepad, dan tombol layar sentuh.
Buat peringatan jarak dekat
Anda harus memberi peringatan jarak dekat ke bagian, model, atau lampiran yang ingin pengguna interaksi.Untuk menambahkan peringatan jarak ke BasePart , Model , atau Attachment objek:
Di jendela Explorer, gulir di atas BasePart, Model, atau Attachment dan klik tombol ⊕. Menu konteks ditampilkan.
Dari menu, masukkan Prompt Kedekatan .
Sesuaikan peringatan jarak dekat
Anda dapat menyesuaikan peringatan jarak dekat berdasarkan bagaimana Anda ingin muncul , ketika Anda ingin menjadikannya terlihat , dan apa yang ingin dilakukan pengguna untuk memicu tindakan .
Penampilan
Prompt kedekatan perlu berkomunikasi tiga hal:
- Objek yang dapat diinteraksi oleh pengguna yang dapat diinteraksi oleh pengguna.
- Tindakan ketika mereka berinteraksi dengan prompt kedekatan yang memicu saat mereka berinteraksi dengan prompt kedekatan
- Kunci yang harus ditekan atau dipegang pengguna .
Anda dapat menentukan ini melalui properti berikut:
ObjectText Nama opsional untuk objek yang dapat diinteraksi pengguna.
ActionText Nama opsional untuk tindakan yang akan dipicu pengguna.
KeyboardKeyCode Kunci keyboard yang harus ditekan atau dipegang pengguna untuk memicu action.
GamepadKeyCode Kunci gamepad yang harus ditekan atau dipegang pengguna untuk memicu action.
Keterlihatan
Anda dapat mengontrol kapan peringatan proximitas terlihat melalui properti MaxActivationDistance , RequiresLineOfSight , dan Exclusivity .
Jarak Aktivasi Maksimum
Properti MaxActivationDistance memungkinkan Anda untuk mendefinisikan rentang dari sekitar objek ProximityPrompt yang mengaktifkan visibilitas prompt kedekatan.Setelah karakter pengguna memasuki rentang itu, peringatan jarak jadi terlihat.

Membutuhkan LineOfSight
Properti RequiresLineOfSight aktifkan visibilitas prompt jarak dekat saat ada jalur yang jelas dari kamera ke objek ProximityPrompt.Secara default, properti ini diatur ke benar.
Khususnya
Jika karakter pengguna berada dalam jangkauan beberapa perintah kedekatan, visibilitas setiap perintah kedekatan tergantung pada perintah kedekatan mana kamera menunjuk, serta nilai properti Exclusivity setiap perintah kedekatan.

Interaktivitas
Anda dapat menyesuaikan bagaimana pengguna berinteraksi dengan perintah proximitas melalui properti HoldDuration dan ClickablePrompt nya.
Tahan Durasi
Properti HoldDuration menentukan berapa banyak detik pengguna harus menekan tombol sebelum tindakan prompt kedekatan dipicu.Jika properti ini memiliki nilai 0 , tindakan prompt jarak dekat langsung diaktifkan.
Prompt yang Dapat Diklik
Properti ClickablePrompt menypesifikasi apakah pengguna dapat mengklik prompt kedekatan untuk memicu action.Ketika diatur ke benar , pengguna dapat berinteraksi dengan perintah proximitas dengan langsung mengklik perintah proximitas atau dengan menekan unityang ditentukan.Ketika diatur ke palsu , pengguna hanya dapat berinteraksi dengan perintah proximitas dengan menekan tombol unityang ditentukan.
Prompt kedekatan skrip
Anda dapat terhubung ke peristiwa prompt jarak dekat entah pada objek ProximityPrompt itu sendiri atau secara global melalui ProximityPromptService .The ProximityPromptService memungkinkan Anda untuk mengelola semua perilaku prompt dekat dari satu lokasi, mencegah kebutuhan untuk kode duplikat dalam pengalaman Anda.
Peristiwa | Deskripsi |
---|---|
PromptTriggered | Melepaskan api saat pemain berinteraksi dengan peringatan jarak (setelah durasi untuk peringatan dengan non-nol HoldDuration ). |
PromptTriggerEnded | Memicu ketika pemain berhenti berinteraksi dengan perintah proximitas. |
PromptButtonHoldBegan | Melepaskan api saat pemain mulai berinteraksi dengan perintah proximitas dengan nilai HoldDuration nol bukan. |
PromptButtonHoldEnded | Melepaskan api saat pemain berhenti berinteraksi dengan perintah proximitas dengan nilai HoldDuration nol. |
PromptShown | Pemicu di LocalScripts ketika perintah proximitas dibuat terlihat. |
PromptHidden | Pemicu dalam LocalScripts ketika perintah disembunyikan. |
Contoh kode berikut termasuk framework dasar untuk menggunakan ProximityPromptService :
local ProximityPromptService = game:GetService("ProximityPromptService")
-- Deteksi ketika prompt diaktifkan
local function onPromptTriggered(promptObject, player)
end
-- Deteksi ketika prompt hold dimulai
local function onPromptHoldBegan(promptObject, player)
end
-- Deteksi ketika akhir tahan diperintahkan
local function onPromptHoldEnded(promptObject, player)
end
-- Hubungkan peristiwa prompt ke fungsi penanganan
ProximityPromptService.PromptTriggered:Connect(onPromptTriggered)
ProximityPromptService.PromptButtonHoldBegan:Connect(onPromptHoldBegan)
ProximityPromptService.PromptButtonHoldEnded:Connect(onPromptHoldEnded)