Dialog
*Konten ini diterjemahkan menggunakan AI (Beta) dan mungkin mengandung kesalahan. Untuk melihat halaman ini dalam bahasa Inggris, klik di sini.
Objek Dialog memungkinkan pengguna untuk membuat karakter non-pemain (NPC) yang dapat dibicarakan pemain menggunakan daftar pilihan.Objek Dialog dapat disisipkan ke bagian seperti kepala Humanoid, dan kemudian pemain akan melihat gelembung ucapan di atas bagian yang dapat mereka klik untuk memulai percakapan.Pembuat tempat dapat memilih pilihan apa yang dapat dikatakan pemain dengan menyisipkan objek DialogChoice ke dalam dialog.
Rangkuman
Properti
Mengatur apakah Dialog dapat digunakan oleh beberapa pemain sekaligus.
Jarak terjauh yang bisa dicapai pemain dari orangtua Dialog untuk memulai percakapan.
Mengubah apakah opsi selamat tinggal akan ditampilkan.
Mengatur kalimat yang akan ditampilkan dialog kepada pemain saat obrolan berakhir.
Jika benar, dialog ini digunakan oleh setidaknya satu pemain.
Mengatur kalimat pertama yang akan ditampilkan dialog kepada pemain, setelah obrolan dimulai.
Tetapkan ikon yang ditampilkan dialog awal.
Mengatur warna gelembung ucapan NPC.
Tetapkan jarak maksimum yang dapat dipicu oleh dialog.
Tetapkan offset dialog terhadap orangtua dialog.
Metode
Kembalikan daftar pemain yang saat ini menggunakan Dialog.
Acara
Ditembak ketika pemain memilih sesuatu untuk dikatakan, melalui kejadianDialog .
Properti
BehaviorType
Tipe Perilaku dialog menentukan apakah beberapa pemain dapat berinteraksi dengan dialog sekaligus.Nilai default untuk properti ini adalah SinglePlayer.
Pemain Tunggal
Ketika Dialog dikonfigurasi ke SinglePlayer, hanya satu pemain yang dapat berinteraksi dengannya sekaligus.Saat seorang pemain terlibat dengan dialog, pemain lain tidak akan dapat memulai dialog sampai pemain pertama selesai.
Sementara pemain terlibat dengan dialog, pemain lain akan melihat pilihan dialog pemain yang memulai dialog, bersama dengan respons.
Pemain Banyak
Ketika Dialog diatur ke MultiplePlayers, pemain mana pun dapat memulai dialog kapan saja, bahkan jika pemain lain sudah memulai dialog.Namun tidak seperti SinglePlayer, Dialog yang disetel ke MultiplePlayers tidak akan menampilkan pilihan dialog dan respons kepada siapa pun selain pemain dalam percakapan.
local Workspace = game:GetService("Workspace")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
Jarak terjauh yang bisa dicapai pemain dari orangtua Dialog untuk memulai percakapan.
GoodbyeChoiceActive
Mengubah apakah opsi selamat tinggal akan ditampilkan.Jika benar, dialog akan menampilkan konten dari Dialog.GoodbyeDialog sebagai pilihan terakhir setelah pilihan dialog lainnya.Mengklik opsi selamat tinggal akan keluar dari dialog.
GoodbyeDialog
Tetapkan kalimat yang akan ditampilkan dialog kepada pemain saat obrolan berakhir
InitialPrompt
Mengatur kalimat pertama yang akan ditampilkan dialog kepada pemain, setelah obrolan dimulai.
Metode
GetCurrentPlayers
Fungsi GetCurrentPlayers dari Dialog akan mengembalikan daftar Player saat ini yang menggunakan Dialog.Jika tidak ada pemain yang menggunakan dialog maka daftar yang dikembalikan akan kosong.
Memberikan nilai
Contoh Kode
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)
Acara
DialogChoiceSelected
Ditembak ketika pemain memilih sesuatu untuk dikatakan, melalui kejadianDialog .
Acara ini hanya sisi klien dan tidak akan menembak di server.Ini harus terhubung ke dalam entah LocalScript atau ModuleScript yang diperlukan oleh LocalScript .