Задача 6: Почувствуй себя богом :) (заклинания и анимация)
Автор: Visman
Задача:
Нужно заставить НПС молиться игроку :)
Решение:
Введем новое условие-анимацию в массив
Idle Animations отвечающий за различные анимационные движение актеров, а для его активации напишем заклинание-скрипт.
Сначала создадим новый предмет
svaMiscTestQ6 в
MiscItem, который будет являться флагом включения новой анимации. Я его создал из золота.
Далее зададим условие-анимацию в меню
Gameplay -
Idle Animations.
Для наших целей подойдет анимация
PrayatGrave в ветке
Characters\_Male\IdleAnims - AnimObjectAnims, так как она воспроизводит моление на коленях и в игре не используется (кроме тестовых целей).
С помощью кнопки
MoveUp поднимите
PrayatGrave в начало ветки для большего приоритета.
В таблице условий выполнения вместо имеющеегося пропишите два условия:
GetItemCount svaMiscTestQ6 > 0 (т.е. в инвентаре есть предмет svaMiscTestQ6) и
GetDistance PlayerRef < 300 (т.е. расстояние до игрока меньше 300 пунктов)
Создаем и сохраняем новый скрипт
svaScriptTestQ6. Тип скрипта
Magic Effect (задаем в поле
Script Type).
scn svaScriptTestQ6
; выполняется при начале действия заклинания
Begin ScriptEffectStart
if ( GetItemCount svaMiscTestQ6 == 0 ) ; если у объекта нет вещи svaMiscTestQ6
Additem svaMiscTestQ6 1 ; добавим ее
endif
PlayGroup Idle 1 ; заставим объект проигрывать анимацию Idle
PickIdle ; для верности, чтобы точно началась воспроизводиться новая анимация
End
; выполняется каждый фрейм пока действует заклинание
Begin ScriptEffectUpdate
End
; выполняется при окончании действия заклинания
Begin ScriptEffectFinish
End
Теперь в
Spell создадим новое заклинание
svaSpellTestQ6.
Имя - Молиться, тип - Spell, установить галку Disallow Spell Absorb/Reflect.
В магических эффектах добавим новый: Effect - Script Effect, Range - Torch, Script - svaScriptTestQ6, Effect name - Молиться, убрать галку Effect is Hostile.
Создайте квест и скрипт автодобавления игроку заклинания
svaSpellTestQ6 при старте плагина и вперед на завоевание паствы.
Задания:
1. Измените заклинание и скрипт так, чтобы НПС после 10 секунд прекращали свою молитву.
2. Измените условия в анимации
PrayatGrave так, чтобы при диалоге с игроком НПС не молился.
3. Измените заклинание и скрипт так, чтобы при приближении игрока к НПС подвергшимся воздействию заклинания ближе, чем на 300 пунктов, эти НПС сразу начинали молиться, а при удалении игрока от них - сразу прекращали (
смотрите ф-ию GetDistance).
P.S. Ординатор молится на Дремору :)
Оглавление