|
Re: М: Скриптинг в Готике
Готика 1, персонаж - Чани, по расписанию находится в состоянии ZS_Babe_SitAround. Написал диалог с important = 1.
Диалог отрабатывает так, как если бы он был с important = 0. Т. е. начинается только по инициативе ГГ. Однако, если поймать Чани на переходе из одного состояния в другое (т. е. при смене функции расписания), она диалог инициирует.
Пробовал по-разному "подкрутить" ZS_Babe_SitAround. Пробовал добавлять *B_SetBabeDefaultPerceptions(), пробовал прописывать Perc_SetRange в самой функции. Пробовал завершать loop-функцию по return LOOP_END; Убирал из функции AI_UseMob.
Ничего не помогает.
Сработало только явное указание B_AssessTalk в теле функции, но, понятно, независимо от каких-либо условий (даже от фактического расстояния и расстояния восприятия) и со страшными побочными эфектами (зацикливание вхождения в диалог). Попробовал "обернуть" B_AssessTalk в if с проверкой расстояния между персонажами - диалога нет.
Куда копать и что подкрутить?
|