Yêu cầu gần

*Nội dung này được dịch bằng AI (Beta) và có thể có lỗi. Để xem trang này bằng tiếng Anh, hãy nhấp vào đây.

ProximityPrompt đối tượng khuyến khích sự tương tác của người dùng để kích hoạt một hành động khi họ tiếp cận các đối tượng trong kinh nghiệm như các cửa, công tắc ánh sáng và nút. Bằng cách sử dụng đối tượng này, bạn có thể:

  • Chỉ ra những thứ mà người dùng có thể tương tác trong trải nghiệm.
  • Hiển thị hành động mà người dùng có thể thực hiện trên một đối tượng, sau đó kích hoạt hành động thông qua người dùng nhập như nhấn hoặc giữ một chìa khóa.
  • Hiển thị đúng các lựa chọn đầu vào cho tất cả các loại nhập, chẳng hạn như bàn phím, gamepad và các nút màn hình cảm ứng.

Tạo các hướng dẫn khu vực gần

Bạn phải làm cho gần gũi các mẫu, mô hình hoặc kết cấu gắn liền mà bạn muốn người dùng tương tác với. Để thêm một mẫu gần gũi vào một đối tượng BasePart, Model hoặc Attachment đó là:

  1. Trong cửa sổ Explorer, hover over the BasePart , Model , hoặc 1> Class.附atch1> và nhấp vào nút ⊕. Một menu ng上下文 được hiển thị.

  2. Từ menu, hãy inser một ProximityPrompt .

    Explorer hierarchy showing a ProximityPrompt parented to an Attachment

Tùy chỉnh các hộp thoại gần

Bạn có thể tùy chỉnh một thông báo gần bằng cách bạn muốn nó xuất hiện , khi bạn muốn nó trở nên hiển thị , và những gì bạn muốn một người làm để kích hoạt hành động .

Ngoại hình

Các thông báo gần cần phải truyền đạt ba thứ:

  • người dùng có thể tương tác với một đối tượng.
  • Hành động **** mà nó sẽ kích hoạt khi họ tương tác với gợi ý gần.
  • chìa khóa mà một người phải nhấn hoặc giữ.

Bạn có thể xác định những điều này thông qua các thuộc tính sau đây:

  • ObjectText Tên một đối tượng mà người dùng có thể tương tác với.

  • ActionText Tên một hành động mà một người sẽ thực hiện.

  • KeyboardKeyCode The keyboard key a user must press or hold to trigger the hành động.

  • GamepadKeyCode The gamepad key a user must press or hold to trigger the hành động.

    Diagram indicating basic elements of a ProximityPrompt

Hiển thị

Bạn có thể kiểm tra khi giao ước gần xuất hiện thông qua đường dẫn MaxActivationDistance , Class.ProximityProm

Khoảng cách hoạt hóa tối đa

Chỉ số MaxActivationDistance cho phép bạn xác định khoảng cách từ xung quanh ProximityPrompt đối tượng mà kích hoạt khả năng hiển thị của yêu cầu gần. Khi một nhân vật của người dùng nhập vào khoảng cách

Diagram indicating how a character's distance from a ProximityPrompt object affects whether the prompt appears on screen

Yêu cầu dòng nhìn

Thuộc tính RequiresLineOfSight kích hoạt sự hiển thị của yêu cầu gần khi có con đường rõ ràng từ camera đến đối tượng Class.ProximityPrompt. Bởi mặc định, thuộc tính này được đặt trên true.

Độc quyền

Nếu nhân vật của một người ở trong phạm vi của nhiều thông báo gần gũi, mỗi thông báo gần gũi's độ hiển thị phụ thuộc vào thông báo gần gũi nào mà máy ảnh đang chỉ vào, cũng như giá trị Exclusivity của mỗi thông báo gần gũ

ProximityPrompt objects set to exclusivity of OnePerButton

Chỉ hiển thị một thông báo gần gũi mỗi một cái chìa khóa. Nếu nhiều thông báo gần gũi mỗi khu vực sử dụng các chìa khóa khác nhau, tất cả chúng đều có thể được nhìn thấy. Tuy nhiên, nếu nhiều thông báo gần gũi mỗi khu vự

Tương Tác

Bạn có thể tùy chỉnh cách mà một người tương tác với một thông báo gần qua các thuộc tính HoldDurationClickablePrompt của nó.

Giữ độ lưu trữ

Thuộc tính HoldDuration xác định số giây mà người dùng phải nhấn một nút trước khi hành động gần gũi của gợi ý kích hoạt. Nếu giá trị này có giá trị 0, gợi ý gần gũi sẽ ngay lập tức kích hoạt.

Nhấp chuộtPrompt

Thuộc tính ClickablePrompt xác định nếu một người có thể nhấp vào một thông báo gần để kích chuyển hành động của nó. Khi đặt thành true

Lập trình gần gũi

Bạn có thể kết nối với sự kiện thông báo gần gũi trên đối tượng ProximityPrompt hoặc trên toàn cầu thông qua ProximityPromptService . The ProximityPromptService cho phép bạn quản lý tất cả các hành vi gần gũi gắn li

Sự kiệnMô tả
PromptTriggeredKích hoạt khi một người chơi tương tác với một thông báo gần (sau thời gian cho một thông báo với không có zero HoldDuration ).
PromptTriggerEndedKích hoạt khi người chơi dừng tương tác với một thông báo gần.
PromptButtonHoldBeganLửa khi một người bắt đầu tương tác với một thông báo gần với một giá trị HoldDuration không đồng nghĩa.
PromptButtonHoldEndedKích hoạt khi một người chơi ngừng tương tác với một thông báo gần với giá trị HoldDuration nào đó.
PromptShownNghe thấy trong LocalScripts khi một thông báo gần xuất hiện.
PromptHiddenNghe những gì bạn nói khi bạn ẩn một hộp thoại.

Mẫu mã code sau đây bao gồm một khung cơ bản để sử dụng ProximityPromptService :


local ProximityPromptService = game:GetService("ProximityPromptService")
-- Ngược khi nào đòi hỏi được kích hoạt
local function onPromptTriggered(promptObject, player)
end
-- Nhận xét khi dấu hiệu giữ nhấp bắt đầu
local function onPromptHoldBegan(promptObject, player)
end
-- Nhận xét khi hộp thông báo kết thúc
local function onPromptHoldEnded(promptObject, player)
end
-- Kết nối các sự kiện hộp thoại đến các chức năng xử lý
ProximityPromptService.PromptTriggered:Connect(onPromptTriggered)
ProximityPromptService.PromptButtonHoldBegan:Connect(onPromptHoldBegan)
ProximityPromptService.PromptButtonHoldEnded:Connect(onPromptHoldEnded)