Dialog

Artık kullanılmayanları göster

*Bu içerik, yapay zekâ (beta) kullanılarak çevrildi ve hatalar içerebilir. Sayfayı İngilizce görüntülemek için buraya tıkla.

Diyalog nesnesi, kullanıcıların oyuncularla konuşabilen seçenekler listesi kullanarak oluşturdukları oyuncu olmayan karakterleri (NPC'leri) oluşturmalarına izin verir.Diyalog nesnesi, bir Insanoid'in kafası gibi bir parçaya yerleştirilebilir ve ardından bir oyuncu, konuşma başlatmak için tıklayabilecekleri parçanın üzerinde bir konuşma balonu görür.Bir yerin yaratıcısı, diyaloğa DialogChoice nesneler yerleştirerek oyuncunun söyleyebileceği seçenekleri seçebilir.

Özet

Özellikler

Etkinlikler

Özellikler

Paralel oku

Bir diyaloğun Davranış Türü, birden fazla oyuncunun bir diyaloğa aynı anda etkileşebileceğini belirler.Bu özellik için varsayılan değer SinglePlayer'dır.

Tek Oyuncu

Bir Diyalog Tek Oyuncuya yapılandırıldığında, aynı anda yalnızca bir oyuncu ile etkileşime girebilir.Bir oyuncu bir diyaloğa bağlandığında, diğer oyuncular ilk oyuncu bitene kadar diyaloğu başlatamayacaktır.

Bir oyuncu bir diyaloğa dahil olduğunda, diğer oyuncular diyaloğu başlatan oyuncunun diyalog seçeneklerini ve yanıtlarını görür.

Çok Oyuncu

Bir Diyalog çok oyunculu olarak ayarlanırsa, başka bir oyuncu zaten diyaloğu başlattıysa bile, herhangi bir oyuncu istediği zaman diyaloğu başlatabilir.Ancak, Tek Oyuncu'dan farklı olarak, Diyaloglar çoklu oyunculara ayarlanmış olsa da, konuşmadaki oyuncunun dışında diyalog seçeneklerini ve yanıtlarını göstermeyecektir.


local Workspace = game:GetService("Workspace")
local singlePlayerDialog = Instance.new("Dialog")
local singlePlayerPart = Workspace.SinglePlayerPart
singlePlayerDialog.BehaviorType = Enum.DialogBehaviorType.SinglePlayer
singlePlayerDialog.InitialPrompt = "Only one person can interact with me at once."
singlePlayerDialog.Parent = singlePlayerPart
local multiplePlayersDialog = Instance.new("Dialog")
local multiplePlayersPart = Workspace.MultiplePlayersPart
multiplePlayersDialog.BehaviorType = Enum.DialogBehaviorType.MultiplePlayers
multiplePlayersDialog.InitialPrompt = "Any number of players can interact with me at once."
multiplePlayersDialog.Parent = multiplePlayersPart

ConversationDistance

Paralel oku

Bir oyuncunun bir konuşmayı başlatmak için Diyalog'un ebeveyninden uzaklaşabileceği en uzak mesafe.

GoodbyeChoiceActive

Paralel oku

Veda seçeneğinin görüntülenip görüntülenmeyeceği arasında geçiş yapar.Eğer doğruysa, diyalog diğer diyalog seçeneklerinin ardından son seçenek olarak Dialog.GoodbyeDialog içeriğini gösterir.Veda seçeneğine tıklamak diyaloğu çıkaracaktır.

GoodbyeDialog

Paralel oku

Sohbet sona erdiğinde oyuncuya gösterilecek cümleyi ayarlar

InUse

Paralel oku

Eğer doğruysa, bu diyalog en az bir oyuncu tarafından kullanılıyor.

InitialPrompt

Paralel oku

Diyalogun oyuncuya göstereceği ilk cümleyi ayarlar, bir sohbet başladıktan sonra.

Paralel oku

Başlangıç diyaloğu gösteren simgeyi ayarlar.

Paralel oku

NPC'nin konuşma balonunun rengini ayarlar.

TriggerDistance

Paralel oku

Bir diyaloğun tetiklenebileceği maksimum mesafeyi ayarlar.

TriggerOffset

Paralel oku

Diyaloğun ebeveynine göre diyaloğun ofsetini ayarlar.

Yöntemler

GetCurrentPlayers

Instances

Bir Diyalog'un GetCurrentPlayers işlevi, şu anda Dialog kullanan bir liste döndürecektir Player .Diyalog kullanan oyuncu yoksa, döndürülen liste boş olacaktır.


Dönüşler

Instances

Kod Örnekleri

Dialog:GetCurrentPlayers

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)

Etkinlikler

DialogChoiceSelected

Bir oyuncu bir şey söylemek için bir Dialog durumseçtiğinde ateş edilir.

Bu etkinlik yalnızca istemci tarafında ve sunucuda ateşlenmeyecektir.Bir LocalScript veya bir ModuleScript tarafından gerekli olan bir LocalScript 'e bağlanmalıdır.

Parametreler

player: Instance
dialogChoice: Instance