Bethesda Tutorial Papyrus Hello World/ru

From the CreationKit Wiki
Jump to navigation Jump to search
RoundRussianFlag.pngНа русском языке
Требуется помощь редактора
Bethesda Tutorial Papyrus Hello World/ru
Серия: Скрипты, глава 1
К другим учебникам
LeftArrow.png Предыдущая статья Следующая статьяRightArrow.png


Краткий обзор[edit | edit source]

Этот урок познакомит с основами Papyrus, скриптового языка Creation Kit.



Вы узнаете:

  • Как создать новый скрипт и приделать его к объекту.
  • Как заставить ваш скрипт реагировать на события.

Создание скрипта[edit | edit source]

Первое, что мы сделаем, это создадим новый скрипт и приделаем его к объекту в мире. Запустите Creation Kit и загрузите любую тестовую ячейку на ваш выбор. Я буду использовать MolagBalVoiceCell просто потому, что это хорошая пустая ячейка без каких-либо отвлекающих нас помех.

Давайте поставим объект в ячейку. Используйте WETempActivator из списка Activator. Это просто светящийся столб, который мы использовали в качестве временного объекта в процессе разработки.

Papyrus Tutorial1 Activator.jpg

Дважды щелкните на объекте, чтобы открыть окно Reference. Перейдите на вкладку Scripts. Здесь вы можете добавить скрипты на любой объект в игре.

Papyrus Tutorial1 Ref.jpg


Нажмите кнопку Add, чтобы открыть окно "Add Script".

Papyrus Tutorial1 AddScript.jpg

Дважды щелкните "[New Script]" в верхней части списка, чтобы создать новый скрипт. Измените поле Name на "HelloWorldScript" (это будет имя скрипта), и нажмите "OK".

Papyrus Tutorial1 NewScript.jpg

Теперь вы видите что ваш сценарий добавлен с список:

Papyrus Tutorial1 Ref WithScript.jpg

Нажмите "OK" для сохранения изменений. Поздравляем! Вы только что создали свой первый скрипт и прикрепили его к чему-то в мире

Добавление события[edit | edit source]

Конечно, ваш скрипт пока ничего не делает - это всего лишь пустая оболочка, ожидающая данных, чтобы что-то сделать.

Поскольку этот объект является Activator, он может реагировать на нажатие ("активацию") игроком. Поэтому давайте скажем нашему скрипту, чтобы он показал нам сообщение, когда игрок нажимает на столб.

Снова откройте окно Reference , и щелкните правой кнопкой мыши на HelloWorldScript в вкладе Script. Выберите "Edit Source",, которая вызовет окно редактирования скрипта.

Теперь мы должны сказать скрипту реагировать на активацию, это означает, что мы должны добавить OnActivate event в наш скрипт. Добавьте следующие строки в скрипт:

 Event OnActivate(ObjectReference akActionRef)

 endEvent

Пока не беспокойтесь о том, что это за событие: OnActivate. Мы рассмотрим его более подробно в следующем учебнике. А сейчас, давайте посмотрим, как с помощью скрипта можно что-нибудь сделать в игре.

На данный момент, наш скрипт готов ответить на событие OnActivate, так давайте скажем, чтобы он показал простое окно с сообщением:

 Event OnActivate(ObjectReference akActionRef)
    Debug.MessageBox("Hello, World!")
 endEvent

Разберем этот последний шаг немного больше, строка синтаксиса распределяется следующим образом:

Debug.MessageBox("Hello, World!"): Это говорит скрипту, что мы вызываем функцию по другому скрипту (в этом случае специальный по умолчанию Debug script object).
Debug.MessageBox("Hello, World!"): MessageBox это функция, которая показывает окно сообщения.
Debug.MessageBox("Hello, World!"): Скобки показывают что мы вызываем функцию, и все, что внутри скобок данных, мы передаем в функцию (в данном случае текст, который мы хотим отобрасить в окне сообщений.

Сохранить и скомпилировать скрипт, выбрав «Save» из меню file в окне редактирования скрипта (или CTRL-S). Если вы ввели все правильно, вы должны увидеть это:

Papyrus Tutorial1 CompiledScript.jpg

"Hello, World"[edit | edit source]

Теперь войдите в игру, чтобы попробовать его. (Убедитесь что: сохранили свой плагин, и он стоит в списке загрузки первым.)

Когда вы в игре, нажмите ~ чтобы вызвать консоль. Введите:

coc MolagBalVoiceCell

для перехода к ячейке. Подойдите к столбу и активируйте его. Вы должны увидеть ваше новое окно сообщений:

Papyrus Tutorial1 HelloWorld.jpg

Вот и все. Вы сделали объект, который может реагировать на действия игрока! Далее, вы можете узнать,как использовать переменные и условные операторы, чтобы сделать ваш сценарий немного более сложным.


LeftArrow.png Previous Tutorial Return to Tutorial Hub Next Tutorial RightArrow.png


Language: [[::Bethesda Tutorial Papyrus Hello World/ru|English]]