Спавн через скрипт
Отшель[НИК] 07 июня 2009
В этой статье мы разберем как заспавнить НПС с помощью скриптовой функции. Для одиночных спавнов гораздо удобней использовать скрипт, а не редактировать all.spawn.
Для начала нам понадобятся координаты. Для их снятия есть очень полезный скрипт от камрада singapur22, который отображает координаты положения ГГ, а так же имеет еще несколько полезных функций, о которых написано в ридми к нему.
Итак запускаем игру с данным скриптом, встаем в точку, где бы нам хотелось создать НПС и делаем скрин. Или можете взять уже снятые мной координаты, которые будут прописаны ниже (НПС в этих координатах появится в деревне новичков в домике, сбоку которого стоит Волк.
Функций для спавна не мало. Мне известны минимум три, но использую я всегда эту:
Для начала нам понадобятся координаты. Для их снятия есть очень полезный скрипт от камрада singapur22, который отображает координаты положения ГГ, а так же имеет еще несколько полезных функций, о которых написано в ридми к нему.
Итак запускаем игру с данным скриптом, встаем в точку, где бы нам хотелось создать НПС и делаем скрин. Или можете взять уже снятые мной координаты, которые будут прописаны ниже (НПС в этих координатах появится в деревне новичков в домике, сбоку которого стоит Волк.
Функций для спавна не мало. Мне известны минимум три, но использую я всегда эту:
function spawn_girl() local x= координаты Х local y= координаты У local z= координаты Z local level_vertex= lvid local game_vertex_id= gvid alife():create("название_нпс_из_spawn_sections",vector():set(x,y,z),level_vertex,game_vertex_id) end
Координаты у нас есть, функцию мы знаем. Приступим к спавну (в качестве примера буду разбирать спавн НПС из статьи "Создание и редактирование НПС").
Открываем файл к примеру escape_dialog.script и пропишем сюда нашу функцию с уже прописанными координатами (можете создать свой скриптовый файл если вам так удобней):function spawn_viking() local x= -187.171 local y= -19.491 local z= -132.909 local level_vertex= 64301 local game_vertex_id= 56 alife():create("escape_viking",vector():set(x,y,z),level_vertex,game_vertex_id) endОтлично. Теперь нужно активировать эту функцию из какого-нибудь диалога или инфопоршня. Я возьму диалог из статьи по созданию диалогов и пропишу в любое место свою функцию:
<phrase id="3"> <text>prinesi_vodky_3</text> <action>escape_dialog.spawn_viking</action> <next>4</next> </phrase>Вот и все. Запускаем игру, проводим диалог с Сидором, и идем в дом, возле которого стоит Волк. Там будет стоять наш новый НПС.
Atioz 20 авг. 2009
сократим..
таким образом...
Только у некоторых глючит, у большинства работает нормально.
Скрытый текст
таким образом...
function spawn_viking() local x, y, z = -187.171, -19.491, -132.909 local LVid, GVid = 64301, 56 alife():create("escape_viking",vector():set(x,y,z),LVid,GVid) end
Только у некоторых глючит, у большинства работает нормально.
Тифлон 27 июля 2010
РЕБЯТ ПОДСКАЖИТЕ ПОЖАЛУЙСТА КАК СДЕЛАТЬ НОВОГО НПС(СКРИПТ) КВЕСТОДАТЕЛЕМ? НУ НИ КАК НЕ ПОЛУЧАЕТСЯ((((((((((
Капс залип? Али как?
Сообщение изменено: Lisaa (27 Июль 2010 - 14:34)
Капс залип? Али как?
Сообщение изменено: Lisaa (27 Июль 2010 - 14:34)
strelok200 03 апр. 2011
Как сделать чтобы НПС спавнился не после диалога а в самом начале игры.Просто я создал новую локацию и мне нужно заспавнить там неписей
Larry76 03 апр. 2011
strelok200,
Примерно начиная с этого поста. https://forum.stalke...ndpost&p=118660
Основная задача внести изменения в bind_stalker.script
Примерно начиная с этого поста. https://forum.stalke...ndpost&p=118660
Основная задача внести изменения в bind_stalker.script