🔓 Открой весь функционал!









Обновление Форума  
alextre1993
Новый сталкер: alextre1993 
Сталкеров: 12746 🛸
Привет, сталкер! Добро пожаловать на форум STALKER-WORLD — место общения, помощи и обмена опытом. Здесь всегда подскажут, поддержат и помогут разобраться в любой ситуации. Новички найдут советы от ветеранов, а опытные сталкеры — интересные обсуждения. Чувствуй себя как дома.
 📌 Популярные темы
 📌 Топ сталкеров
Anubis Anubis  ⭐️Репутация: 280
Гудвин Гудвин  ⭐️Репутация: 143
СергейПахомов1999 СергейПахомов1999  ⭐️Репутация: 88
ENEWAY ENEWAY  ⭐️Репутация: 74
s-stalk s-stalk  ⭐️Репутация: 60
 📌 Новые сталкеры на форуме
alextre1993 alextre1993  ⏳Среда
artemmalcikov84 artemmalcikov84  ⏳Среда
vovkasvb vovkasvb  ⏳Среда
0-0-0-7 0-0-0-7  ⏳Вторник
likadera likadera  ⏳Вторник


  • Страница 1 из 1
  • 1
Добавляем проводника в игре сталкер
Anubis

Anubis

Офлайн  

Титул: Хранитель Зоны

 

1135

70

280


Сообщение 1 03:00:32, 2024-09-21
Сталкерское уважение +1 Сталкерское уважение +2 Сталкерское уважение +3 Постоянный житель портала Постоянный житель портала + Постоянный житель портала +2 Постоянный житель портала +2 Постоянный житель портала +2
Добавляем проводника

Теория

В ТЧ есть единственный момент, когда в результате диалога с НПС, ГГ перемещается. Это диалог с "О-Сознанием". После отказа от вступления, ГГ перемещается на АЭС2. Если использовать эту функцию, можно создать в ТЧ проводника.
Примечание: Проводник не будет перемещаться вместе с вами, как в ЗП. Вы будете перемещаться в одиночку, как в ЧН.

Практика

Для этого:
1). Для этого в gamedata\scripts находим файл dialogs_aes.script. В нём имеется следующая функция:

function osoznanie_decline(npc, actor)
db.actor:disable_info_portion("oso_init_dialog")
npc:stop_talk()
actor:stop_talk()
xr_effects.enable_ui(db.actor, nil)
local point = patrol("mon_jump_aes2_walk")
local look = patrol("mon_jump_aes2_look")

db.actor:set_actor_position(point:point(0))
local dir = look:point(0):sub(point:point(0))
db.actor:set_actor_direction(-dir:getH())

end

2). Копируем эту функцию, допустим, в escape_dialog из директории gamedata\scripts
3). Обратите внимание на вот этот фрагмент из функции: db.actor:disable_info_portion("oso_init_dialog"). Здесь функция ссылается на инфопоршень, но на Кордоне данный инфопоршень не прописан.
4). Тогда переименовываем данный инфопоршень так, как вам удобно, например db.actor:disable_info_portion("esc_init_dialog"). Примечание: Название инфопоршня это "esc_init_dialog" (то ,что за скобками, переименовывать не надо). Затем добавляем инфопоршень в файл info_101escape.xml из директории gamedata\config\gameplay. В этом файле добавляем следующее:
5). Итак, функция есть, инфопоршень тоже есть. Теперь нужны координаты. Обратите внимание на следующий фрагмент функции:

local point = patrol("mon_jump_aes2_walk")
local look = patrol("mon_jump_aes2_look")

Здесь функция ссылается на определённые координаты на АЭС2. Но нам нужны координаты на Кордоне. Для этого открываем way_101_escape.ltx и там дописываем пути. Например вот так:

[mon_jump_esc8_look]
points = p0
p0:name = wp00
p0:position = -239.110947,-19.788391,-134.999161
p0:game_vertex_id = 8
p0:level_vertex_id = 16191

[mon_jump_esc8_walk]
points = p0
p0:name = wp00
p0:position = -238.017761,-19.888292,-140.161987
p0:game_vertex_id = 47
p0:level_vertex_id = 17468

Всё пути есть. Только теперь в функции, переименуйте фрагмент:

local point = patrol("mon_jump_aes2_walk")
local look = patrol("mon_jump_aes2_look")

На фрагмент:

local point = patrol("mon_jump_esc8_walk")
local look = patrol("mon_jump_esc8_look")

Теперь осталось только привязать всё это к диалогу. Я взял диалог с Кузнецовым.
Открываем файл dialogs_escape.xml и находим следующие строки:


Код
<dialog id="esc_bridge_soldiers_start">
<precondition>dialogs.is_not_wounded</precondition>
<phrase_list>
<phrase id="12">
<text>esc_bridge_soldiers_start_12</text>
<next>13</next>
</phrase>


Это фраза "Мне надо дальше". Сюда вставляем активизацию нашей функции. Получется следующее:

Код
<dialog id="esc_bridge_soldiers_start">
<precondition>dialogs.is_not_wounded</precondition>
<phrase_list>
<phrase id="12">
<text>esc_bridge_soldiers_start_12</text>
<action>escape_dialog.osoznanie_decline</action> Здесь следующая структура: <action>Название_скрипта. Название_функции</action>
<next>13</next>
</phrase>


Вот, собственно и всё. Теперь после фразы "Мне надо дальше" вы переместитесь к бункеру Сидоровича.







  • Страница 1 из 1
  • 1
Поиск:

Совет по выживанию
Загрузка…
Совет № 1




Заходили сегодня: | Anubis, stalkercom, vitalyabirzul2109, valiksuper12, SVD1995, pigont71, goshabogdanow2014, yur4ik, Spic3, ddanilov220, dimnik747, aldi7, smirkin1970, coco-zaza, med406083, srzmelnik, lesij5459, samsitovmarat, voidRETURN, danilakorneev689408, v6878118, JDQwierten, viktorsahachij46, infvasya, Fifa2012, СоциопаТ, BlackMax, Ganpzz, karnauhihaleksei, Kot_Samuray, Weles, stalker546456, skxwalker, antreg, prs2374, timiflow8566, Призрак3163, kerenskeiiwanov2014, Буч, vladgarin2017, штурм, mene44e, armaturasergej59, Прапор0657, NIKTO, DuMoH_KOTuKO, vovkasvb, artemmalcikov84, alextre1993