Один из важнейших аспектов создания модуля – создание снаряжения Геральта. К сожалению, это не такой простой процесс. Необходимо создать скрипт, который поможет описать снаряжение Геральта.
На этот раз мы создадим скрипт через меню Файл (File). Выберите Создать ‐> Скрипт Neverwinter (.nss) (New‐>Neverwinter Script (.nss)).
Откроется окно Новый скрипт neverwinter nights (new neverwinternights script).
Для начала создайте комментарий.
Для создания снаряжения Геральта используется функция CreateItemOnObject. Один из аргументов, который нам необходимо указать – объект, который будет присвоен предмету. В нашем случае это Геральт. Сделать это можно с помощью функции GetFirstPC.
Но сначала добавим еще один комментарий, чтобы описать назначение скрипта.
Затем введите следующий текст в строке функции GetFirstPC.
Значение этой строки: обратиться к объекту главного персонажа и присвоить его объекту oPC.
Теперь пора применить функцию создания снаряжения. В функции CreateItemOnObject необходимо указать имя шаблона предмета. Все шаблоны предметов хранятся в каталоге Data\Templates\Items. Например, давайте добавим в снаряжение Геральта пару оренов (валюта игры "Ведьмак") и серебряный меч (стальной меч добавляется по умолчанию, поэтому об этом можно не волноваться).
Шаблоны оренов – файлы с именами с it_gold_001.uti по it_gold_014.uti. Эти шаблоны хранятся в каталоге Data\Templates\Items\Valuables. Шаблон серебряного меча – файл it_svswd_004.uti, который находится в каталоге Data\Templates\Items\Weapons&Armor. Учтите, что в функции CreateItemOnObject имена шаблонов указываются без расширения .uti.
Вернемся к нашему скрипту. Для начала введите функцию CreateItemOnObject с открывающей скобкой.
Появится подсказка по аргументам функции. Помимо шаблона предмета и цели объекта в функции CreateItemOnObject нам необходимо задать аргумент, описывающий количество предметов. Это количество объектов с одним и тем же шаблоном, которые будут созданы. Введите следующую строку.
Не забудьте поставить в конце строки точку с запятой (;). Теперь добавим еще один комментарий, но на этот раз в другой части скрипта.
Как видите, комментарии можно добавлять в конце строки. Однако в начало строки добавлять комментарий нельзя. По крайней мере, используя символы //. Если вам действительно необходимо добавить комментарий в начале строки (что не рекомендуется, так как это может нарушить работу скрипта), можете это сделать с помощью символов /* и */.
Значение строки на скриншоте выше: добавить объекту oPC 50 оренов на основе шаблона it_gold_005.
Теперь добавим серебряный меч.
Вот и все. Наш скрипт готов. Сохраним его, выбрав в меню Файл (File) пункт Сохранить как... (Save As...).
Откроется стандартное окно Windows для сохранения файлов. Перейдите в каталог Data\Scripts (где хранятся все скрипты), введите имя файла snaryazhenie (ekwipunek) и нажмите кнопку Сохранить. Учтите, что имя файла должно содержать не более 16 символов. Убедитесь, что сохраняете файл в формате nss.
Если в окне указан другой тип файла, это, возможно, означает, что вы случайно пытаетесь сохранить содержимое другого открытого окна. Прежде, чем сохранять шаблон персонажа, убедитесь, что у вас активно окно Новый скрипт neverwinter nights (new neverwinternights script). Если оно не активно, его заголовок будет отображаться серым цветом.
Любой другой цвет заголовка означает, что данное окно является активным.
Звездочка перед текстом в заголовке окна означает, что последние изменения в этом файле не были сохранены. Помните, что скрипт можно сохранить напрямую в модуль. Для этого в меню Файл (File) выберите пункт Сохранить новый скрипт neverwinter nights (Save new neverwinternights scripts). Затем в окне сохранения файла нажмите кнопку Модуль (Module).
В этом руководстве мы этот способ не использовали. Мы сохраняли общие файлы и затем вручную добавляли их в модуль через окно обзора ресурсов (Resources Explorer). Более подробно этот способ описан в одной из предыдущих глав. Теперь перейдите в окно журнала Aurora (Aurora log), чтобы проверить, правильно ли прошла компиляция и сохранение скрипта.
Первая запись означает, что сохранение прошло успешно. Вторая запись означает, что компиляция также прошла без ошибок. Третья запись относится к последующему сохранению.
Теперь добавим наш скрипт в модуль. Для этого присвойте скрипт событию При входе клиента (On client enter) в окне свойств модуля. Таким образом, скрипт будет запущен, когда Геральт появится в модуле. Загрузите модуль, если он еще не загружен, и откройте окно обзора модуля (Module Explorer). Для этого в меню Вид (View) выберите Окна ‐> Обзор модуля (Utility Windows ‐> Module Explorer).
В окне обзора модуля (Module Explorer) дважды щелкните по пункту Свойства модуля (Module Properties).
В окне свойств (Properties) отображаются параметры модуля. Щелкните по желтой иконке в правой ячейке параметра При входе клиента (On client enter).
Откроется стандартное окно Windows для загрузки файлов. Перейдите в каталог Data\Scripts (где хранятся все скрипты), выберите файл snaryazhenie.nss (ekwipunek.nss) и нажмите кнопку Открыть. Скрипт snaryazhenie.nss (ekwipunek.nss) будет присвоен событию При входе клиента (On client enter).
Теперь осталось только сохранить весь модуль. Для этого в меню Модуль (Module) выберите пункт Сохранить модуль (Save Module).
При загрузке модуля у Геральта появятся 50 оренов и серебряный меч. Описанный выше способ добавления предметов в снаряжение Геральта может использоваться и для создания снаряжения других персонаей.
Шаблон:Общая информация о скриптах