Prompt Proksimitas

*Konten ini diterjemahkan menggunakan AI (Beta) dan mungkin mengandung kesalahan. Untuk melihat halaman ini dalam bahasa Inggris, klik di sini.

ProximityPrompt objek mendorong interaksi pengguna untuk memicu tindakan ketika mereka mendekati objek di dalam pengalaman seperti pintu, saklar lampu, dan tombol. Menggunakan objek ini, Anda dapat:

  • Menunjukkan objek apa yang dapat diinteraksi oleh pengguna dalam pengalaman.
  • Menampilkan tindakan yang dapat diambil pengguna pada objek, kemudian memicu tindakan tersebut melalui input pengguna seperti menekan atau menahan tombol.
  • Menampilkan input yang benar untuk semua jenis input, seperti keyboard, gamepad, dan tombol layar sentuh.

Buat prompt proksimitas

Anda harus mengaitkan prompt proksimitas ke bagian, model, atau lampiran yang ingin Anda interaksikan oleh pengguna. Untuk menambahkan prompt proksimitas ke objek BasePart, Model, atau Attachment:

  1. Di jendela Explorer, arahkan mouse ke BasePart, Model, atau Attachment dan klik tombol ⊕. Menu kontekstual akan muncul.

  2. Dari menu, masukkan ProximityPrompt.

    Hierarki Explorer menunjukkan ProximityPrompt yang dikaitkan dengan Attachment

Sesuaikan prompt proksimitas

Anda dapat menyesuaikan prompt proksimitas berdasarkan bagaimana Anda ingin prompt tersebut tampil, kapan Anda ingin prompt tersebut terlihat, dan apa yang Anda inginkan pengguna lakukan untuk memicu tindakan.

Tampilan

Prompt proksimitas perlu mengkomunikasikan tiga hal:

  • objek yang dapat diinteraksi oleh pengguna.
  • tindakan yang dipicu ketika mereka berinteraksi dengan prompt proksimitas.
  • tombol yang harus ditekan atau ditahan oleh pengguna.

Anda dapat menentukan ini melalui properti berikut:

  • ObjectText Nama opsional untuk objek yang dapat diinteraksi oleh pengguna.

  • ActionText Nama opsional untuk tindakan yang akan dipicu pengguna.

  • KeyboardKeyCode Tombol keyboard yang harus ditekan atau ditahan pengguna untuk memicu tindakan.

  • GamepadKeyCode Tombol gamepad yang harus ditekan atau ditahan pengguna untuk memicu tindakan.

    Diagram yang menunjukkan elemen dasar dari ProximityPrompt

Visibilitas

Anda dapat mengontrol kapan prompt proksimitas terlihat melalui MaxActivationDistance, RequiresLineOfSight, dan Exclusivity.

MaxActivationDistance

Properti MaxActivationDistance memungkinkan Anda mendefinisikan jarak di sekitar objek ProximityPrompt yang mengaktifkan visibilitas prompt proksimitas. Setelah karakter pengguna memasuki jarak tersebut, prompt proksimitas menjadi terlihat.

Diagram yang menunjukkan bagaimana jarak karakter dari objek ProximityPrompt memengaruhi apakah prompt muncul di layar

RequiresLineOfSight

Properti RequiresLineOfSight mengaktifkan visibilitas prompt proksimitas ketika ada jalur yang jelas dari kamera ke objek ProximityPrompt. Secara default, properti ini diatur ke true.

Eksklusivitas

Jika karakter pengguna berada dalam jangkauan beberapa prompt proksimitas, visibilitas setiap prompt proksimitas tergantung pada prompt proksimitas mana yang ditunjuk kamera, serta nilai properti Exclusivity masing-masing prompt proksimitas.

Objek ProximityPrompt diatur ke eksklusivitas OnePerButton
Hanya satu prompt proksimitas yang terlihat per kode kunci input. Jika beberapa prompt proksimitas dalam jangkauan menggunakan kode kunci yang berbeda, semuanya akan terlihat. Namun, jika beberapa prompt proksimitas dalam jangkauan menggunakan kode kunci yang sama, hanya satu prompt proksimitas yang terlihat pada satu waktu, tergantung pada arah pandang kamera.

Interaktivitas

Anda dapat menyesuaikan bagaimana pengguna berinteraksi dengan prompt proksimitas melalui properti HoldDuration dan ClickablePrompt.

HoldDuration

Properti HoldDuration menentukan berapa detik yang harus dihabiskan pengguna untuk menekan tombol sebelum tindakan prompt proksimitas dipicu. Jika properti ini memiliki nilai 0, tindakan prompt proksimitas akan langsung dipicu.

ClickablePrompt

Properti ClickablePrompt menentukan apakah pengguna dapat mengklik pada prompt proksimitas untuk memicu tindakannya. Ketika diatur ke true, pengguna dapat berinteraksi dengan prompt proksimitas dengan mengklik langsung prompt proksimitas atau dengan menekan tombol yang ditentukan. Ketika diatur ke false, pengguna hanya dapat berinteraksi dengan prompt proksimitas dengan menekan tombol yang ditentukan.

Skrip prompt proksimitas

Anda dapat terhubung ke acara prompt proksimitas baik pada objek ProximityPrompt itu sendiri atau secara global melalui ProximityPromptService. ProximityPromptService memungkinkan Anda mengelola semua perilaku prompt proksimitas dari satu lokasi, mencegah kebutuhan untuk kode yang sama dalam pengalaman Anda.

EventDeskripsi
PromptTriggeredDipicu ketika pemain berinteraksi dengan prompt proksimitas (setelah durasi untuk prompt dengan nilai HoldDuration tidak nol).
PromptTriggerEndedDipicu ketika pemain berhenti berinteraksi dengan prompt proksimitas.
PromptButtonHoldBeganDipicu ketika pemain mulai berinteraksi dengan prompt proksimitas dengan nilai HoldDuration yang tidak nol.
PromptButtonHoldEndedDipicu ketika pemain berhenti berinteraksi dengan prompt proksimitas dengan nilai HoldDuration yang tidak nol.
PromptShownDipicu di LocalScripts ketika prompt proksimitas ditampilkan.
PromptHiddenDipicu di LocalScripts ketika prompt disembunyikan.

Contoh kode berikut mencakup kerangka dasar untuk menggunakan ProximityPromptService:


local ProximityPromptService = game:GetService("ProximityPromptService")
-- Deteksi ketika prompt dipicu
local function onPromptTriggered(promptObject, player)
end
-- Deteksi ketika penahanan prompt mulai
local function onPromptHoldBegan(promptObject, player)
end
-- Deteksi ketika penahanan prompt berakhir
local function onPromptHoldEnded(promptObject, player)
end
-- Hubungkan acara prompt ke fungsi penanganan
ProximityPromptService.PromptTriggered:Connect(onPromptTriggered)
ProximityPromptService.PromptButtonHoldBegan:Connect(onPromptHoldBegan)
ProximityPromptService.PromptButtonHoldEnded:Connect(onPromptHoldEnded)
©2026 Roblox Corporation. Roblox, logo Roblox, dan Powering Imagination termasuk dalam merek dagang kami yang terdaftar dan tidak terdaftar di AS dan negara lainnya.