ProximityPromptService 允許開發人員以全球方式與 ProximityPrompt 對象互動。它可能比較方便通過此服務聆聽事件,而不是通過個別的 ProximityPrompt 對象。
概要
屬性
是否啟用 ProximityPrompts ,以及在體驗中顯示。
最多 ProximityPrompts 玩家將會顯示。
活動
在提示有非零KeyboardKeyCode 按鈕/鍵盤開始時,會發出警報。
在提示中按下 KeyboardKeyCode 按鈕/鍵盤上,如果鍵盤上沒有零HoldDuration 。
當提示變得隱藏時,觸發客戶端。
當提示變得可見時,會在客戶端觸發。
會在玩家停止按住 KeyboardKeyCode 鍵/按鈕時引發提示。
當使用者與此提示互動時會發動。
屬性
Enabled
此屬性決定是否啟用 ProximityPrompts ,因此在體驗中顯示。當為 false 時,將不會顯示提示。
例如,在圓形基礎系統中,您可以在體驗中的某些點停用提示提示,以禁用基於接近度的交互:
local ProximityPromptService = game:GetService("ProximityPromptService")
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local enablePrompts = ReplicatedStorage:FindFirstChild("EnablePrompts") -- 可綁定的事件
-- 連接到 BindableEvent 並從另一個控制體驗逻辑的指令碼發射
enablePrompts.OnServerEvent:Connect(function(enabled)
ProximityPromptService.Enabled = enabled
end)
方法
活動
PromptButtonHoldBegan
此事件會在玩家開始按住 KeyboardKeyCode 鍵/按鈕在提示上持有非零 HoldDuration 時發生。
參數
玩家開始與其互動的提示。
握有鑰匙/按鈕的玩家。
PromptShown
此事件會在提示變得可見時,在連接的本地指令碼中啟動客戶端。
參數
顯示的提示實例。
發生事件的輸入。
PromptTriggerEnded
這個事件會在玩家停止按住 KeyboardKeyCode 鍵/按鈕時發生時發生時發生時發生時發生時發生時發生時發生時發生時發生時發生時發生時發生時發生時發生時發生時發生時發生時發生時發生時發生時發生時發生時發生時發生時發生時發生時發生時發生時發生時發生時發生時發生時發生時發生時發生時發生時發生
參數
玩家停止與其交互的提示。
釋放鑰匙/按鈕的玩家。
PromptTriggered
此事件會在玩家與提示互動時發生,當 KeyboardKeyCode 按鍵/按鈕被按下,或者在指定的時間內按下按鍵/按鈕,如果提示的 HoldDuration 為零,則會發生此事件。
參數
玩家與其交互的提示。
互動玩家。