Показать сообщение отдельно
Старый 13.01.2009, 14:51   #2137
alex_ryz

AGFC
Гость
 
Сообщений: n/a

По умолчанию Re: М: Скриптинг в Готике

Думаю, я понял, в чём ваша загвоздка. Дело в том, что надо внимательно изучить ZS_функции распорядков. Обычно структура их следующая:

- проверка поблизости наличия фрипоинта (в том числе с идентификатором- об этом ниже)
- проверка условий наличия объектов, над которыми совершается действие- котлы, сковородки и прочее (не обязательно)
- переход на фрипоинт (если он найден, иначе или тупое топтание на месте или включение альтернативных действий, например, будет есть стоя)
- включение выполнения расписания
- выключение выполнения расписания (по истечении времени)

Так вот, проблема возникает тогда, когда в функции указывается некий идентификатор на фрипоинт. Например, "campfire", "sit", "smoke", "smalltalk" и.т.д.
Т.е. если я, скажем, хочу посадить перса у костра, но у меня нет точки с названием типа FP_campfire_sitnight01, а есть что-то вроде FP_ROAM_OW_SCAVENGER_AL_ORC4, то NPC не сядет, а будет тупо стоять на вейпоинте. То же и с игрой на гитаре, курением. Короче, надо смотреть типовые названия точек (для типовых расписаний) на карте и делать свои аналогично.
Для животных схоже.
Если в игре включить консоль, как я указал, вы можете видеть всю сетку и точки: как монстры или люди переходят по ним и они красятся в красный цвет (занято) или жёлтый (свободно). Обычно, я делаю количество фрипоинтов равным количеству монстров (людей) в данной точке респауна.
Ответить с цитированием