คุณสามารถสร้างคําเตือนความใกล้ชิดแบบโต้ตอบที่ปรากฏเมื่อผู้ใช้เข้าใกล้วัตถุในพื้นที่ 3D จากนั้นกระตุ้นการดําเนินการตามการป้อนข้อมูลของผู้ใช้
บทแนะนำนี้ใช้โครงการ Dungeon Delve เป็นการแสดงผล เพื่อที่จะทำต่อไปให้เปิดใน Studio ก่อนดำเนินการต่อ

สร้างคำเตือน
คําแนะนําบนหน้าจอจะถูกสร้างโดยวัตถุ ProximityPrompt ที่เป็นพ่อของ Attachment หรือ BasePart หรือ Model
เลือกโมเดล ประตูคุก ในมุมมอง 3D หรือจาก Explorer ( พื้นที่ทำงาน → พร้อมตัวเลือก → ประตูคุก )
ขยายต้นไม้และเลือกวัตถุ ประตู
วางคําแนะนําบน Attachment ให้คุณมีการควบคุมมากขึ้นเกี่ยวกับสถานที่ที่จุดการโต้ตอบเกิดขึ้น เมื่อเทียบกับการวางโดยตรงบนชิ้นส่วน/โมเดลใส่ส่วนแนบใหม่ และเปลี่ยนชื่อเป็น PromptAttachment
ค้นหาคุณสมบัติตำแหน่งใหม่ของไฟล์แนบ **** และตั้งค่าเป็น -2.25 , -0.5 , - 0.5 นี้จะย้ายไปข้างหน้ารูกุญแจของประตู
เลื่อนเหนือ แนบไฟล์โปรแมชัน และใส่วัตถุใหม่ แจ้งเตือนความใกล้ชิด
รูปลักษณ์
คำแนะนำประกอบด้วยสามองค์ประกอบหลักซึ่งแต่ละองค์ประกอบสามารถควบคุมได้โดยคุณสมบัติต่อไปนี้:

- ข้อความวัตถุ — ชื่อทางเลือกสำหรับวัตถุที่โต้ตอบด้วย
- ชื่อการกระทํา — ชื่อการกระทําที่ไม่บังคับใช้ที่แสดงให้กับผู้ใช้
- รหัสแป้นพิมพ์ — แป้นพิมพ์ที่จะกระตุ้นคำเตือน
- GamepadKeyCode — ปุ่มเกมแพดที่จะกระตุ้นคำเตือน
เพื่อปรับแต่งรูปลักษณ์ของประตูคุกให้เหมาะสม ทำดังต่อไปนี้:
ในหน้าต่างคุณสมบัติ ค้นหาคุณสมบัติ ObjectText และพิมพ์ ประตู
สำหรับคุณสมบัติ ActionText ให้พิมพ์ Pick Lock
ระยะการเปิดใช้งาน
คําแนะนําจะปรากฏเมื่อผู้ใช้ ตัวละคร ของผู้ใช้ย้ายภายในระยะ MaxActivationDistance ที่กําหนดของตัววัตถุโปรโมท

ค่าเริ่มต้นทำงานได้ดีในกรณีส่วนใหญ่ แต่คุณสามารถผลักการโต้ตอบของผู้ใช้ใกล้กับการล็อคโดยเปลี่ยน ระยะการเปิดใช้งานสูงสุด เป็น 4

ระยะเวลาการถือ
ค่าคุณสมบัติ HoldDuration กำหนดว่าการดำเนินการของคําแนะนําจะเริ่มรวดเร็วแค่ไหนในเวลาแปดวินาทีเนื่องจากประตูนี้ต้องถูกเลือกเพื่อปลดล็อก เปลี่ยนคุณสมบัติ ระยะเวลาการถือ เป็น 4

แอ็คชัน
วิธีที่ดีที่สุดในการตรวจจับเหตุการณ์ทันทีคือผ่าน ProximityPromptService — ซึ่งช่วยให้คุณสามารถตรวจจับเหตุการณ์ได้จากศูนย์กลางโดยไม่ต้องแนบสคริปต์ให้กับแต่ละวัตถุโปรโมท
กรอบพื้นฐานมีดังนี้:
local ProximityPromptService = game:GetService("ProximityPromptService")
-- ตรวจจับเมื่อมีการกระตุ้นคําขอ
local function onPromptTriggered(promptObject, player)
end
-- ตรวจสอบเมื่อการจับค้างเริ่ม
local function onPromptHoldBegan(promptObject, player)
end
-- ตรวจจับเมื่อสิ้นสุดการกดปุ่มถาม
local function onPromptHoldEnded(promptObject, player)
end
-- เชื่อมต่ออีเวนต์คําสั่งให้กับฟังก์ชันการจัดการ
ProximityPromptService.PromptTriggered:Connect(onPromptTriggered)
ProximityPromptService.PromptButtonHoldBegan:Connect(onPromptHoldBegan)
ProximityPromptService.PromptButtonHoldEnded:Connect(onPromptHoldEnded)
อีเวนต์ | คําอธิบาย |
---|---|
PromptTriggered | เกิดไฟไหม้เมื่อผู้ใช้โต้ตอบกับคําแนะนํา ( หลังจาก ระยะเวลาสําหรับคําแนะนําที่ไม่เป็นศูนย์ HoldDuration ) |
PromptButtonHoldBegan | จะเกิดไฟไหม้เมื่อผู้ใช้เริ่มโต้ตอบกับคําแนะนําของไม่เป็นศูนย์ HoldDuration |
PromptButtonHoldEnded | จะเกิดไฟไหม้เมื่อผู้ใช้หยุดโต้ตอบกับคําแจ้งที่ไม่เป็นศูนย์ HoldDuration |
ในโครงการ Dungeon Delve เหตุการณ์เหล่านี้จะจัดการโดยสคริปต์ PromptEvents ภายใน ServerScriptService

ภายในสคริปต์กิจกรรมด้านบนเรียกฟังก์ชันภายใน การดำเนินการวัตถุ ModuleScript และตั้งอยู่ใน ServerScriptService เช่นกัน
local ProximityPromptService = game:GetService("ProximityPromptService")
local ServerScriptService = game:GetService("ServerScriptService")
local ObjectActions = require(ServerScriptService.ObjectActions)
-- ตรวจจับเมื่อมีการกระตุ้นคําขอ
local function onPromptTriggered(promptObject, player)
ObjectActions.promptTriggeredActions(promptObject, player)
end
-- ตรวจสอบเมื่อการจับค้างเริ่ม
local function onPromptHoldBegan(promptObject, player)
ObjectActions.promptHoldBeganActions(promptObject, player)
end
-- ตรวจจับเมื่อสิ้นสุดการกดปุ่มถาม
local function onPromptHoldEnded(promptObject, player)
ObjectActions.promptHoldEndedActions(promptObject, player)
end
-- เชื่อมต่ออีเวนต์คําสั่งให้กับฟังก์ชันการจัดการ
ProximityPromptService.PromptTriggered:Connect(onPromptTriggered)
ProximityPromptService.PromptButtonHoldBegan:Connect(onPromptHoldBegan)
ProximityPromptService.PromptButtonHoldEnded:Connect(onPromptHoldEnded)
คําเตือนความใกล้เคียงเป็นทางออกที่สะดวกและปรับแต่งได้สำหรับการโต้ตอบของวัตถุในเกมตรวจสอบหน้าอ้างอิง ProximityPrompt และ ProximityPromptService สำหรับวิธีการควบคุมพฤติกรรมของโปรมต์เพิ่มเติม และสำรวจวัตถุโต้ตอบอื่นๆ ใน Dungeon Delve สำหรับแรงบันดาลใจที่สร้างสรรค์