xCYNICx, я уже года 2-3 не писал на папирусе, но, вроде, это же язык со строгой типизацией. То есть, надо объявлять тип переменной: float direction = ...
Изменение репутации для пользователя Dsion
DsionOffline
Сообщение №1264
| Тема: Вопросы по скриптам Papyrus
написано: 12 июня 2020, 18:24
| Отредактировано: Dsion - 12 июня 2020, 18:31
xCYNICx, Если длительность анимаций известна, то без проблем... Добавляешь в конце каждого блока RegisterForSingleUpdate(время), а в OnUpdate() - продолжение. А если длительность не известна, то фигово. Ждать наступления какого-то события - рискованно. Мало ли, что произойдет. Ждать по времени - надежнее.
Добавлено (12 Июня 2020, 21:29) --------------------------------------------- Можно еще рассмотреть вариант с заменой pa_0Х пропертей на один массив. Чтоб было что-то типа
Код
Idle[] Property pa Auto; Float[] Property pa_time Auto;
Event ... Int button = ...; If (button != -1) akCaster.PlayIdleWithTarget(pa[button], akTarget); RegisterForSingleUpdate(pa_time[button]); EndIf EndEvent
Event OnUpdate() ... EndEvent
Изменение репутации для пользователя Dsion
DsionOffline
Сообщение №1265
| Тема: Вопросы по скриптам Papyrus
написано: 1 июля 2020, 19:55
| Отредактировано: Dsion - 1 июля 2020, 19:55
yakor77, не вижу в идее никакой ценности. Все-равно дерево диалогов придется строить "классическим" способом и на реплики придется вешать отдельные скрипты. А потом уж как удобнее: либо сразу писать команды в скрипте реплики, либо вызывать из неё функцию на другом большом скрипте. Так все квесты работают.
Вот мне интересно, чо будет, если непешка реально во всех подробностях расскажет якорю, чего хочет от мода. Якор-то ничего сделать не может. Либо притворится, что ушел, либо задвинет длинную бесполезную философскую речь, в которой между любой парой строк будет видно, что он нифига не шарит в вопросе.
Изменение репутации для пользователя Dsion
DsionOffline
Сообщение №1268
| Тема: Вопросы по скриптам Papyrus
написано: 5 августа 2020, 08:08
| Отредактировано: Dsion - 5 августа 2020, 08:58
DOOM2004, хрень в том, что нормального (не костыльного) способа повесить скрипт на ВСЕХ НИП нет вообще. Когда об этом заходит речь, обычно единственное, что могут посоветовать, - это либо дать игроку огромную магическую ауру, которая будет вешать магический эффект на всех НИП, а на эффекте скрипт. Либо дать пассивное умение всем расам. Либо установить everynpcability в defaultobjects. Но решать проблему такими способами реально противно. Можно, но противно. В общем, сам скрипт - не проблема. Проблема в том, как его на всех повесить. А без скрипта мы ограничены в управлении одеждой НИП. Без скрипта они точно не сменят её "после сна", как вы хотите. Я делал похожий мод, но он управлял не всеми НИП, а только ограниченным количеством.
Добавлено (17 Октября 2020, 15:00) --------------------------------------------- Если без скриптов, то НИП тупо надевают свой outfit в момент загрузки модели и всё. С этим, вроде, даже баг связан. Можно взять талантик, позволяющий красть у НИП одежду, обокрасть НИП, а потом перезайти в локацию и он снова одет.
Изменение репутации для пользователя Dsion
DsionOffline
Сообщение №1270
| Тема: Вопросы по скриптам Papyrus
написано: 21 октября 2020, 19:58
| Отредактировано: Dsion - 21 октября 2020, 19:58
CYNIC78, вроде, у перков есть entry point, позволяющая усилить или ослабить силу входящих заклинаний. Можно попробовать умножить силу заклинаний с кевордом хила на ноль. Хотя это я так - сам не проверял. Но менять эффекты - точно лажа.
Изменение репутации для пользователя Dsion
DsionOffline
Сообщение №1274
| Тема: Вопросы по скриптам Papyrus
написано: 5 марта 2021, 09:57
| Отредактировано: Dsion - 5 марта 2021, 09:58
Evelyn, (абсолютно бесполезный пост, просто ради флуда) я когда-то давно тоже пробовал реализовать полёты (без skse). Первый вариант был - это тупо постоянно перемещать объект вперёд (туда, куда он смотрит). Для неживых объектов можно отключить физику и "падение" функцией SetMotionType() и работало нормально. А с живыми - уже и не помню. Падение точно мешало. Можно попробовать либо SetMotionType(), либо покопаться в nif файлах, где настраиваются коллизии. А второй вариант был вообще полным бредом. Я сделал куб воды и постоянно перемещал его туда, где находится игрок. То есть, игрок как-бы всегда был в воде и плавал. Было весело, но куб задевал и других акторов + неживые объекты вокруг и они вели себя странно.
nodtrial, должно работать... А на чистом сейве или на новой игре не пробовали? Может, у вас сейв, в котором проперти в скрипте не была заполнена или была константой.