> For the complete documentation index, see [llms.txt](https://lahmeneffa.gitbook.io/dopolnitelnaya-realnost/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://lahmeneffa.gitbook.io/dopolnitelnaya-realnost/roblox-studio/kak-sozdat-dialogi-v-roblox-studio.md).

# Как создать диалоги в Roblox Studio

В этой статье вы узнаете как можно сделать диалог в Roblox Studio с любым НПС. С помощью диалогов можно будет создать настоящий сюжет со своей историей или использовать диалоги для объяснения правил, заданий и квестов. Создать сюжет можно при помощи базовых функций которые встроены в Roblox Studio.

В первую очередь пишем в поиск npc и выбираем подходящего

<img src="https://893838923-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3htulpKUKJLOii7ZPbV1%2Fuploads%2F8OE3AH5mDnyBnAqSLo3F%2Fimage.png?alt=media&#x26;token=70fd6815-ab73-4b76-8544-ca8c503f55c0" alt="" width="100%">

Кликните по НПС и выберите Head в меню справа

<img src="https://893838923-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3htulpKUKJLOii7ZPbV1%2Fuploads%2FcbabtCtlMdyMu6abMmPt%2Fimage.png?alt=media&#x26;token=a94ebf91-0d98-4c65-84c4-54dbad465e03" alt="" width="100%">

Раскройте Head персонажа и если в нем не будет файла Dialog нажмите на и добавьте его сами.

<img src="https://893838923-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3htulpKUKJLOii7ZPbV1%2Fuploads%2FrqBzAws3VrpIVuKA9C3k%2Fimage.png?alt=media&#x26;token=bb870e2c-5da3-42a2-ac0b-866057a85ae2" alt="" width="100%">

В нашем случае в Head лежит сразу два фала Dialog. Удаляем один из них.

<img src="https://893838923-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3htulpKUKJLOii7ZPbV1%2Fuploads%2FvXm3B6nozfQXRRqx1rwJ%2Fimage.png?alt=media&#x26;token=b93b7c47-c225-4bf7-b05e-43c6794b6e70" alt="" width="100%">

Выберите файл Dialog и напишите в строке InitialPrompt приветственное сообщение от НПС (то что он скажет если вы начнете с ним диалог)

<img src="https://893838923-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3htulpKUKJLOii7ZPbV1%2Fuploads%2FQlzwCRiRWv2GoklJAfE4%2Fimage.png?alt=media&#x26;token=332238a5-37a8-4e5c-be67-1ba6ed98c482" alt="" width="100%">

Нажмите кнопку сразу после Dialog и добавьте DialogChoice для того что бы продолжить диалог с НПС и создать фразы которыми вы будите отвечать

<img src="https://893838923-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3htulpKUKJLOii7ZPbV1%2Fuploads%2FdVT7y67nKsufrz2nNQUK%2Fimage.png?alt=media&#x26;token=8f7fb7ea-492d-4abb-9afd-0f075df358e4" alt="" width="100%">

Выберите DialogChoice и напишите фразу которую должен будет ответить игрок в строке UserDialog, а в строке ResponseDialog напишите фразу которую должен будет сказать НПС

<img src="https://893838923-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3htulpKUKJLOii7ZPbV1%2Fuploads%2FzfFHVHvBVpsbYNJ1biU4%2Fimage.png?alt=media&#x26;token=cd5149c6-aa7e-41ff-b202-db4944fcbe7c" alt="" width="100%">

Далее можете прикрепить к DialogChoice еще один DialogChoice и прописать следующие фразы для того что бы продолжить диалог до бесконечности

<img src="https://893838923-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3htulpKUKJLOii7ZPbV1%2Fuploads%2FL5ACyyYnCIpmR5P1Z3zi%2Fimage.png?alt=media&#x26;token=89756091-46ce-480f-a44b-665dfc0d7d13" alt="" width="100%">

А вот как это будет выглядеть

​

<img src="https://893838923-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3htulpKUKJLOii7ZPbV1%2Fuploads%2FLeFnZwGTPh2p6iM7q3TH%2Fimage.png?alt=media&#x26;token=1e9fad18-23a9-4c3d-b8a8-88b80d19a2e7" alt="" width="100%">

​

<img src="https://893838923-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3htulpKUKJLOii7ZPbV1%2Fuploads%2FPyfvTqOtzHxeHloHpFWL%2Fimage.png?alt=media&#x26;token=6bb64830-8c5d-4605-acad-a8e96abb6f71" alt="" width="100%">

​

**Дополнительные свойства диалогов**

*Dialog.ConversationDistance* : Установите максимальное расстояние, с которого вы можете разговаривать с НПС. Если вы начнете на расстоянии, а затем выйдете из него, разговор закончится.

*Dialog.Purpose :* это различные значки, которые появляются над НПС, по которым вы можете щелкнуть. Квест это ! , Помощь ? и магазин $.

*Dialog.Tone :* Это цвет разговора — речевой пузырь и выбор графического интерфейса. Дружественный — зеленый, нейтральный — синий, а враг — красный.

Вы можете добавить несколько DialogChoice к Dialog (на одном уровне вложенности) для того что бы у игрока было несколько вариантов ответа. Вот как это работает:

Так же вы можете добавить еще больше функциональности если хорошо разбираетесь в Roblox Lua. С помощью функций и скриптов вы сможете выводить имена Игроков в диалогах, отображать какие то характеристики и многое другое. Так например этот скрипт отобразит имя игрока и название его выбора в диалоге.

<img src="https://893838923-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F3htulpKUKJLOii7ZPbV1%2Fuploads%2FiU5npnv4arjx5Atb3iKc%2Fimage.png?alt=media&#x26;token=8c485f16-27fa-4126-bcf8-a8ff162d2c3a" alt="" width="100%">

workspace.Dialog.DialogChoiceSelected:connect(function(player,choice)

if choice.Name == "No" then

player.Character.Humanoid.Health = 0

elseif choice.Name == "Yes" then

player.Character.Humanoid.Health = 1000

Более подробную информацию по диалогам можете найти на сайте разработчиков Роблокс Студио.
