Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
OSFM v1.2.0.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
4.49 Mб
Скачать

3.3 Назначение и главная цель вашего скрипта

Приняв решение написать скрипт, вы должны четко представлять себе, какие функции он должен выполнять и нельзя ли обойтись без него. Дело в том, что любой скрипт занимает драгоценные миллисекунды вашего процессорного времени, понижая таким образом fps. Особенно это заметно, когда в сцене находится много персонажей или, например, деревьев. Много скриптов в такой сцене могут резко понизить производительность вашего процессора, сделав из игры “слайд-шоу”. Есть разумный предел, переступать через который нежелательно. Приняв решение о необходимости данного скрипта и убедившись, что никакими другими более простыми средствами добиться желаемого не удастся, необходимо четко сформулировать задачу с ясными и понятными целями. Когда цель ясна, нужно выбрать оптимальный вариант решения вашей задачи. Основные требования достаточно просты – скрипт должен быть как можно короче и, если нет обязательного выполнения в каждом фрейме, то выбрать оптимальный временной режим выполнения данного скрипта. Иногда задачу можно решить множеством способов. Среди них нужно найти наиболее оптимальный.

3.4 Ваш первый скрипт

Надеемся, вы уже знаете, как запустить редактор TES CS и что там делать, так что перейдём непосредственно к скриптам. В панели инструментов наверху найдите кнопку с карандашом (крайняя справа) – эта кнопка открывает редактор скриптов. Нажали? Значит, вы уже видите этот самый редактор. В нём сейчас пусто и основное его поле, где вам предстоит набирать будущий текст скрипта, имеет серый цвет. Теперь перейдём к скриптам. Для начала можете посмотреть, как они вообще выглядят. Для этого нажмите на красную стрелку “вправо” и перед вами откроется первый в списке скрипт - AbandonedMineTrap02Script. Судя по названию, он отвечает за работу какой-то ловушки в заброшенной шахте. Всегда старайтесь давать своим скриптам понятные названия! В этом скрипте есть все основные элементы скрипта: В самой первой строке пишется название скрипта:

  1. ScriptName AbandonedMineTrap02Script – эта строка обязательна, в ней пишется имя скрипта.

  2. Чуть ниже идёт объявление переменных: short triggered – создание короткой целочисленной переменной. В скрипте может не быть вообще переменных, а может быть несколько десятков и разных типов.

Далее идут рабочие блоки:

Begin [тип блока]    ….   End

Именно в этих блоках и будет описываться работа скрипта.

А теперь создадим свой собственный, самый первый скрипт!

  1. В Object Window (окне объектов конструктора) отыщите отмычки. Вы найдете их в списке Items → Misc Item. Вместо отмычки подойдет любой обычный предмет - яблоко или что-нибудь подобное. Сделайте двойной щелчок на предмете.

  2. Откроется диалоговое окно со свойствами предмета. Там, где написано "Script: NONE", кликните на кнопку с тремя точками, находящуюся справа. Это откроет редактор скриптов.

  3. Выберите ScriptNew, чтобы создать новый скрипт.

Скопируйте приведенный ниже программный код комбинацией клавиш Ctrl + C и вставьте его в окно редактора с помощью комбинации Ctrl + V:

ScriptName HelloWorld   Begin OnAdd             Message "Hello World!", 10     End

Информация о данном скрипте:

  • Первая строка – это имя скрипта (Scriptname). Убедитесь, что оно уникально. В противном случае вам придётся его изменить, т.к. редактор не позволит скомпилировать скрипт.

  • "Begin OnAdd" означает, что код внутри данного блока будет исполняться всякий раз, когда вы подберете нужный предмет. "OnAdd" – это тип данного блока. Команда “end” закрывает секцию скрипта, которая связана с “OnAdd”. У вас может быть несколько отдельных блоков begin/end, имеющие одинаковые или различные типы блоков (blocktype).

  • Между begin и end находится исполняемый программный код. В нашем случае это всего лишь одна функция – Message, которая выведет на экран сообщение "Hello World!".

  • И последнее – временной контроль за строкой сообщения. В данном случае она имеет параметр «10», который означает, что строка будет отображаться на экране в течение 10 сек.

  1. Сохраните скрипт и закройте Редактор скриптов.

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

  3. Щелкните ОК, чтобы сохранить изменения, и закройте окно.

  4. На панели инструментов выберите File -> Save; в окне сохранения введите имя файла HelloWorld (это будет ваш первый *.esp файл плагина - HelloWorld.esp !).

  5. Откройте Oblivion_Launcher и щелкните Data Files.

  6. Двойным щелчком мыши подключите свой HelloWorld.esp, щелкните OK и закройте окно.

  7. Теперь все должно работать! Запустите игру, бросьте отмычку (или предмет, который вы использовали) на землю и подберите ее. При этом должно появиться сообщение "Hello World!".

И с этим первым результатом добро пожаловать в увлекательный мир скриптинга!

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]