대화 개체는 플레이어가 목록을 사용하여 대화할 수 있는 비플레이어 캐릭터(NPC)를 만들 수 있습니다. 대화 개체는 인간형의 머리, 그리고 플레이어가 클릭할 수 있는 부분 위에 음성 버블을 표시하는 등의 부분에 삽입될 수
요약
속성
다중 플레이어가 대화 상자를 동시에 사용할 수 있는지 여부를 설정합니다.
플레이어가 대화 상자의 부모에서 가장 멀리 떨어질 수 있는 거리.
작별 옵션이 표시되는지 여부를 토글합니다.
대화 상자가 끝나면 플레이어에게 표시할 문장을 설정합니다.
이 대화 상자가 하나 이상의 플레이어가 사용하고 있습니다.
대화 상자가 시작되면 플레이어에게 표시할 첫 번째 문장을 설정합니다.
초기 대화 상자에 표시되는 아이콘을 설정합니다.
NPC 음성 버블의 색을 설정합니다.
대화 상자가 발생할 수 있는 최대 거리를 설정합니다.
대화 상자의 부모에 대한 대화 상자의 오프셋을 설정합니다.
메서드
대화 상자를 사용하는 플레이어 목록을 반환합니다.
이벤트
플레이어가 말할 내용을 선택할 때, Dialog 인스턴스를 통해 발생합니다.
속성
BehaviorType
대화 상자에 여러 플레이어가 대화를 나눌 수 있는지 여부는 대화 유형의 기본값인 싱글 플레이어입니다. 이 속성의 기본 값은 단일 플레이어입니다.
싱글 플레이어
대화 상자를 단일 플레이어로 구성하면 플레이어는 한 번에 단일 플레이어와 대화를 할 수 있습니다. 플레이어가 대화 상자에 참여하면 다른 플레이어는 첫 번째 플레이어가 완료할 때까지 대화를 시작할 수 없습니다.
대화 상자에 참여 중인 플레이어와 대화를 나누는 동안, 다른 플레이어는 대화를 시작한 플레이어의 대화 선택 항목을 대화 상자에 표시합니다.
여러 플레이어
다중 플레이어가 대화를 설정하면 다른 플레이어가 대화를 시작했더라도 언제든지 다른 플레이어가 대화를 시작할 수 있습니다. 단일 플레이어는 대화를 다중 플레이어에 설정하면 대화 선택 및 응답을 다른 플레이어 이외의 모든 사람에 표시하지 않습니다.
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
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 에 연결되어야 합니다.