×
Меню
Индекс

MSFD Добавление темы для диалога

[no fix] AddTopic, "Topic"
 
     AddTopic, "Topic_ID"
 
Даже когда вы поставите тему для диалога в TESCS, вы можете обнаружить, что все еще не можете говорить об этом с NPC, которым вы назначили этот диалог, так как вы еще не знаете эту конкретную тему. Есть два способа поправить положение: либо вы представляете тему в другой, объясняющей теме (например, в своем приветствии) или вы можете дать ее игроку через скрипт, что имеет значение, когда игрок должен говорить на эту тему без представления ему этого в объясняющем диалоге (например, если вы видите NPC, стоящего под водопадом, вы можете захотеть спросить его: "тебе не мокро?", даже если NPC не давал эту тему).
 
Чтобы сделать это, просто добавьте NPC маленький скрипт:
 
Begin AddSpecialDialogue
 
;добавить возможность спросить об этом
AddTopic, "тебе не мокро?"
 
End AddSpecialDialogue
 
 
Примечание: Вы не можете удалить тему через скрипт, тем не менее, можно использовать условия, которые соотносятся с локальными переменными в скрипте, как условия для говорящего в редакторе диалогов, чтобы достичь нужного эффекта.
 
AddTopic добавляет тему в список известных тем игрока.
Так что это не верно:
"Actor_ID"->AddTopic "blabla".
 
Примечание.
Т.е. самое простое добавлять новые топики в окно Result уже существующего топика (например Свежие Сплетни - создав там новую реплику и добавив оную некому НПС).
Либо, использовать стартовые скрипты. В случае если топик должен быть добавлен сразу, без дополнительных бесед.
См. как это сделано в Бладмуне чтобы сообщить игроку о появлении новой локации.
Такой вариант гарантирует появление топика в диалогах.
Еще вариант, добавлять темы через активации каких-то предметов.
 
begin ashStatueTopic
 
if ( OnActivate == 1 )
     AddTopic "пепельная статуя"
     Activate
endif
 
end ashStatueTopic
 
Хотя вешать локальный скрипт на предмет не лучший вариант, особенно если предметов много.
Такие предметы не "стекуются" в инвентаре.
С другой стороны, в ванили, скриптованный Алмаз и Алмаз обычный это разные ID, что позволяет сварить зелье используя 2 разных алмаза.
Т.е. локальный скрипт это не только неудобство с кучей одинаковых предметов в рюкзаке, но и способ создавать особо продвинутые зелья.