Редактирование: Точки пути (Way Points)
Внимание! Вы не авторизовались на сайте. Ваш IP-адрес будет публично видимым, если вы будете вносить любые правки. Если вы войдёте или создадите учётную запись, правки вместо этого будут связаны с вашим именем пользователя, а также у вас появятся другие преимущества.
Правка может быть отменена. Пожалуйста, просмотрите сравнение версий, чтобы убедиться, что это именно те изменения, которые вас интересуют, и нажмите «Записать страницу», чтобы изменения вступили в силу.
Текущая версия | Ваш текст | ||
Строка 66: | Строка 66: | ||
== Более подробное описание путей на примере логики walker == | == Более подробное описание путей на примере логики walker == | ||
+ | [[Файл:logic-setup-walker.png]]<br /> | ||
На карту для каждого '''walker'''-а нужно поставить: | На карту для каждого '''walker'''-а нужно поставить: | ||
− | # Путь <span style="color: | + | # Путь <span style="color:#228b44;">'''path_walk'''</span>, по которому '''walker''' ходит. |
− | # Путь <span style="color: | + | # Путь <span style="color:#034c81;">'''path_look'''</span>, состоящий из точек, в которые '''walker''' смотрит. |
− | '''Walker'''-ов может быть 1 или больше. Они могут действовать независимо, или взаимодействовать друг с другом | + | '''Walker'''-ов может быть 1 или больше. Они могут действовать независимо, или взаимодействовать |
+ | друг с другом. | ||
'''[walker]''' | '''[walker]''' | ||
Строка 79: | Строка 81: | ||
Правила расстановки флажков в путях рассмотрим на нескольких примерах. | Правила расстановки флажков в путях рассмотрим на нескольких примерах. | ||
− | + | '''Пример 1''' | |
Персонаж патрулирует территорию вокруг двух домиков. Маршрут строится следующим образом: | Персонаж патрулирует территорию вокруг двух домиков. Маршрут строится следующим образом: | ||
− | + | КАРТИНКА1 | |
− | Как сделать, чтобы персонаж между определенными точками бежал или крался? Для этого в пути <span style="color: | + | Как сделать, чтобы персонаж между определенными точками бежал или крался? Для этого в |
+ | пути <span style="color:#228b44;">'''path_walk'''</span> существуют флажки. У каждого вейпоинта есть имя: '''wp00''', '''wp01''' и т.д. Флажки задаются в имени. Их нужно отделять от самого имени с помощью символа '''|'''. Пишется '''a=anim''', где '''anim''' – название анимации из пункта 2.4.4. настоящей документации. Если мы напишем '''a=threat''', то персонаж пойдет в состоянии '''danger''', если '''a=raid''', то побежит с оружием наизготовку и т.д. | ||
− | + | {| style="background-color: #fffdee;" width="100%" | |
+ | |<span style="color:#172172;">'''Заметка'''</span><br /> | ||
+ | ---- | ||
+ | В точках пути '''path_walk''' используются анимации только из раздела «Ходячие состояния»! | ||
+ | |} | ||
− | + | ---- | |
+ | Пример 2''' | ||
− | + | Чтобы персонаж говорил, перемещаясь по маршруту, нужно определить в каждой точке список тем, на которые он может говорить. Для этого существует поле '''s = имя_звуковой_схемы''' (по умолчанию звук отключен). Несколько тем можно перечислять через запятую. | |
− | + | ---- | |
− | + | '''Пример 3''' | |
− | |||
− | |||
− | |||
− | |||
− | + | КАРТИНКА 3 | |
− | + | В примере 3 используется только поле '''s''', чтобы задать тему разговора, и флажок '''sc''', чтобы показать, что звук проигрывается не разово, а периодически. Остальные параметры ('''sa''', '''sf''', '''sp''', '''st''') задавать не рекомендуется, значения по умолчанию приемлемы для большинства скриптов. Если нужно стартовать звук одновременно с анимацией, лучше воспользоваться полями пути <span style="color:#034c81;">'''path_look'''</span>, о котором будет написано ниже. Если персонаж не только ходит по маршруту, но должен также останавливаться и играть анимации, нужно задать ему путь <span style="color:#034c81;">'''path_look'''</span>. | |
− | + | ---- | |
− | + | '''Пример 4''' | |
− | |||
− | |||
− | |||
Усовершенствуем пример 1, чтобы персонаж, проходя мимо проема между домами, останавливался и заглядывал в него: | Усовершенствуем пример 1, чтобы персонаж, проходя мимо проема между домами, останавливался и заглядывал в него: | ||
− | + | КАРТИНКА 4 | |
− | Что добавилось в этом примере? Путь <span style="color:blue">'''path_look'''</span> с двумя точками. Связь между точками этого пути рекомендуется сразу же удалить в редакторе, поскольку она все равно не используется. Далее, в точках путей <span style="color: | + | Что добавилось в этом примере? Путь <span style="color:blue;"><span style="color:#034c81;">'''path_look'''</span></span> с двумя точками. Связь между точками этого пути рекомендуется сразу же удалить в редакторе, поскольку она все равно не используется. Далее, в точках путей <span style="color:green;"><span style="color:#228b44;">'''path_walk'''</span></span> и <span style="color:#034c81;">'''path_look'''</span>, которые обведены на рисунке пунктирной линией, в редакторе ставим общие флажки. Например, в верхней паре точек ставим флажок '''0''', а в |
+ | нижней паре точек — флажок '''1'''. | ||
− | Теперь персонаж будет останавливаться в точках <span style="color: | + | Теперь персонаж будет останавливаться в точках <span style="color:#228b44;">'''path_walk'''</span>, помеченных флажком, и смотреть в точку <span style="color:#034c81;">'''path_look'''</span>, помеченную тем же самым флажком. Если точка <span style="color:#228b44;">'''path_walk'''</span> не помечена флажком, персонаж проходит ее не останавливаясь. Одной точке <span style="color:#228b44;">'''path_walk'''</span> может соответствовать несколько точек <span style="color:#034c81;">'''path_look'''</span>. Тогда персонаж случайным образом выберет одну из подходящих точек. |
− | По аналогии с <span style="color: | + | По аналогии с <span style="color:#228b44;">'''path_walk'''</span>, в точках пути <span style="color:#034c81;">'''path_look'''</span> можно использовать различные флажки, меняющие поведение: |
* '''p = …''' — вероятность, с которой персонаж посмотрит именно в эту точку. Значения '''p''' всех подходящих точек суммируются, т.е. если у одной точки '''p = 100''', а у другой '''300''', то персонаж посмотрит в первую с вероятностью '''25%''' (т.е. 100 из 400).<br /> Во избежание путаницы, рекомендуется задавать '''p''' так, чтобы их сумма составляла '''100'''. По умолчанию у всех точек '''p = 100'''. | * '''p = …''' — вероятность, с которой персонаж посмотрит именно в эту точку. Значения '''p''' всех подходящих точек суммируются, т.е. если у одной точки '''p = 100''', а у другой '''300''', то персонаж посмотрит в первую с вероятностью '''25%''' (т.е. 100 из 400).<br /> Во избежание путаницы, рекомендуется задавать '''p''' так, чтобы их сумма составляла '''100'''. По умолчанию у всех точек '''p = 100'''. | ||
* '''t = …''' — время, на которое персонаж задержится в этой точке (по умолчанию 5000 мсек). | * '''t = …''' — время, на которое персонаж задержится в этой точке (по умолчанию 5000 мсек). | ||
− | + | ---- | |
− | + | '''Пример 5''' | |
В этом примере, проходя через точку '''wp00''', персонаж с вероятностью '''30%''' посмотрит в точку '''wp00''' в течение 5 секунд, и с вероятностью '''70%''' посмотрит в точку '''wp01''' в течении 10 секунд. | В этом примере, проходя через точку '''wp00''', персонаж с вероятностью '''30%''' посмотрит в точку '''wp00''' в течение 5 секунд, и с вероятностью '''70%''' посмотрит в точку '''wp01''' в течении 10 секунд. |