Dialog
*Este conteúdo é traduzido por IA (Beta) e pode conter erros. Para ver a página em inglês, clique aqui.
O objeto Diálogo permite que os usuários criem personagens não jogáveis (NPCs) que os jogadores possam conversar usando uma lista de opções.O objeto Diálogo pode ser inserido em uma parte, como a cabeça de um Humanoide, e então um jogador verá uma bolha de fala acima da parte que ele pode clicar para iniciar uma conversa.O criador de um local pode escolher quais escolhas o jogador pode dizer inserindo DialogChoice objetos no diálogo.
Resumo
Propriedades
Define se o Diálogo pode ser usado por vários jogadores de uma só vez.
A distância mais longa que um jogador pode estar do pai do Diálogo para iniciar uma conversa.
Alterna se a opção de despedida será exibida.
Define a sentença que o diálogo mostrará ao jogador quando o bate-papo terminar.
Se for verdadeiro, este diálogo está sendo usado por pelo menos um jogador.
Define a primeira frase que o diálogo mostrará ao jogador, uma vez que o bate-papo for iniciado.
Define o ícone que o diálogo inicial exibe.
Define a cor da bolha de fala do NPC.
Define a distância máxima a partir da qual um diálogo pode ser acionado.
Define o deslocamento do diálogo em relação ao pai do diálogo.
Métodos
Retorna uma lista de jogadores que estão usando o Diálogo atualmente.
Eventos
Dispedido quando um jogador escolhe algo a dizer, através de uma instância Dialog.
Propriedades
BehaviorType
O tipo de comportamento de um diálogo determina se vários jogadores podem interagir com um diálogo de uma só vez.O valor padrão para esta propriedade é SinglePlayer.
Jogador Único
Quando um Diálogo é configurado para um único jogador, apenas um jogador pode interagir com ele de cada vez.Assim que um jogador interage com um diálogo, outros jogadores não poderão iniciar o diálogo até que o primeiro jogador termine.
Enquanto um jogador está envolvido com um diálogo, os outros jogadores verão as escolhas de diálogo do jogador que iniciou o diálogo, além das respostas.
Múltiplos Jogadores
Quando um Diálogo é definido para Múltiplos Jogadores, qualquer jogador pode iniciar um diálogo a qualquer momento, mesmo que outro jogador já tenha iniciado o diálogo.Ao contrário do SinglePlayer, no entanto, Diálogos definidos para Múltiplos Jogadores não mostrarão as escolhas de diálogo e as respostas para ninguém além do jogador na conversa.
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
A distância mais longa que um jogador pode estar do pai do Diálogo para iniciar uma conversa.
GoodbyeChoiceActive
Alterna se a opção de despedida será exibida.Se verdadeiro, o diálogo exibirá o conteúdo de Dialog.GoodbyeDialog como a última opção após outras escolhas de diálogo.Clicar na opção de despedida sairá do diálogo.
InitialPrompt
Define a primeira frase que o diálogo mostrará ao jogador, uma vez que o bate-papo for iniciado.
Métodos
GetCurrentPlayers
A função GetCurrentPlayers de um Diálogo retornará uma lista de Player atualmente usando o Diálogo.Se não houver jogadores usando o diálogo, então a lista retornada será vazia.
Devolução
Amostras de código
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)
Eventos
DialogChoiceSelected
Dispedido quando um jogador escolhe algo a dizer, através de uma instância Dialog.
Este evento é apenas do lado do cliente e não disparará no servidor.Deve ser conectado em um LocalScript ou em um ModuleScript exigido por um LocalScript .