Dialog
*เนื้อหานี้แปลโดยใช้ AI (เวอร์ชัน Beta) และอาจมีข้อผิดพลาด หากต้องการดูหน้านี้เป็นภาษาอังกฤษ ให้คลิกที่นี่
วัตถุกระทู้ช่วยให้ผู้ใช้สร้างตัวละครที่ไม่ใช่ผู้เล่นที่ผู้เล่นสามารถพูดคุยด้วยการใช้รายการตัวเลือกได้ วัตถุกระทู้สามารถถูกใส่ลงใน
สรุป
คุณสมบัติ
ตั้งค่าว่ากระบวนการสนทนาสามารถใช้ได้โดยผู้เล่นหลายคนพร้อมกันหรือไม่
ระยะทางที่ไกลที่สุดที่ผู้เล่นสามารถอยู่จากพ่อแม่ของบูรณาการเพื่อเริ่มการสนทนา
เปิด/ปิดตัวเลือกลาก่อน
ตั้งค่าประโยคที่กล่องสนทนาจะแสดงให้กับผู้เล่นเมื่อการแชทสิ้นสุด
ถ้าใช่ กระทู้นี้ถูกใช้โดยอย่างน้อยหนึ่งผู้เล่น
ตั้งค่าประโยคแรกที่บอกเล่าให้ผู้เล่นเห็นเมื่อการแชทเริ่มขึ้น
ตั้งค่าไอคอนที่ปรากฏในกล่องเริ่มต้น
ตั้งค่าสีของฟองคำของ NPC
ตั้งค่าระยะที่ไกลที่สุดที่สามารถเรียกไดอล็อกได้
ตั้งค่าความเป็นเกี่ยวของการแสดงผลโดยเฉลี่ยกับพ่อของการแสดงผล
วิธีการ
กลับรายชื่อผู้เล่นที่ใช้งานกล่องเปิดบน
อีเวนต์
จะได้รับการเรียกใช้เมื่อผู้เล่นเลือกสิ่งหนึ่งที่จะพูดผ่าน Dialog อินสแตนซ์
คุณสมบัติ
BehaviorType
ลักษณะทางการแสดงผลของกระทู้กำหนดว่าผู้เล่นหลายคนสามารถใช้กระทู้ได้พร้อมกันหรือไม่ มีค่าเริ่มต้นสำหรับสมบัตินี้คือ SinglePlayer
ผู้เล่นเดียว
เมื่อการแสดงผู้เล่นเดียวกำหนดไว้ให้เป็นเวลาเดียว ผู้เล่นเพียงคนเดียวสามารถใช้งานได้ เมื่อผู้เล่นใช้งานได้ ผู้เล่นอื่นจะไม่สามารถเริ่มการแสดงผู้เล่นได้จนกว่าผู้เล่นจะเสร็จสิ้น
ขณะที่ผู้เล่นกำลังมีส่วนร่วมกับการแสดงคุย ผู้เล่นอื่นจะเห็นตัวเลือกการแสดงคุยของผู้เล่นที่เริ่มการแสดงคุยนั้นด้วยคำตอบ
ผู้เล่นหลายคน
เมื่อการแสดงสนทนาถูกตั้งไว้เป็นหลายผู้เล่นใด ๆ ผู้เล่นสามารถเริ่มการแสดงสนทนาได้ตลอดเวลา แม้ว่าผู้เล่นอื่นจะได้เริ่มการแสดงสนทนาแล้วก็ตาม โดยไม่มีตัวเลือกและการตอบกลับ
local singlePlayerDialog = Instance.new("Dialog")local singlePlayerPart = workspace.SinglePlayerPartsinglePlayerDialog.BehaviorType = Enum.DialogBehaviorType.SinglePlayersinglePlayerDialog.InitialPrompt = "Only one person can interact with me at once."singlePlayerDialog.Parent = singlePlayerPartlocal multiplePlayersDialog = Instance.new("Dialog")local multiplePlayersPart = workspace.MultiplePlayersPartmultiplePlayersDialog.BehaviorType = Enum.DialogBehaviorType.MultiplePlayersmultiplePlayersDialog.InitialPrompt = "Any number of players can interact with me at once."multiplePlayersDialog.Parent = multiplePlayersPart
ConversationDistance
ระยะทางที่ไกลที่สุดที่ผู้เล่นสามารถอยู่จากพ่อแม่ของบูรณาการเพื่อเริ่มการสนทนา
GoodbyeChoiceActive
เปิด/ปิดตัวเลือกลาออก หากเป็นเช่นนั้น ก็จะแสดงเนื้อหาของ Dialog.GoodbyeDialog ในการเลือกตัวเลือกอื่นหลังจากตัวเลือกอื่น ๆ คลิกที่ตัวเลือกลาออกเพื่อออกจากการแสดงผล
วิธีการ
GetCurrentPlayers
ระบบ GetCurrentPlayers ของบ็อกซ์โกลด์จะสร้างรายการของ Player ที่กำลังใช้บ็อกซ์โกลด์อยู่ หากไม่มีผู้ใช้บ็อกซ์โกลด์ก็จะไม่สร้างรายการใด ๆ ได้
ส่งค่ากลับ
ตัวอย่างโค้ด
local dialog = script.Parent
local function onChoiceSelected(_player, _choice)
local currentPlayers = dialog:GetCurrentPlayers()
print("The current players in the dialog:")
for _, player in ipairs(currentPlayers) do
print(player)
end
end
dialog.DialogChoiceSelected:Connect(onChoiceSelected)
อีเวนต์
DialogChoiceSelected
จะได้รับการเรียกใช้เมื่อผู้เล่นเลือกสิ่งหนึ่งที่จะพูดผ่าน Dialog อินสแตนซ์
เหตุการณ์นี้เฉพาะกับเครื่องเท่านั้นและจะไม่ได้เปิดให้บริการในเซิร์ฟเวอร์ มันควรจะเชื่อมต่อกับใน LocalScript หรือ ModuleScript ที่ต้องการโดย LocalScript