Короткая лекция по созданию скриптов!!!
Здорово бойцы!!!
Если вы плохо разбираетесь, или вообще не разбираетесь в скриптах и лень лазить скачивать, конечно было бы лучше если бы вы сами всё искали, ну да ладно помогу.
Самое простое:вывод текста на экран
Hello.sqs
этот скрипт выводит на экран сообщение "Hello!"
TitleText ["Hello!", "plain down"]
Exit
Запуск скрипта: [] exec "Hello.sqs"
";"-позволяет делать комментарии(текст который не будет считываться игрой),главная цель у этого символа разделение команд.
Следующее
"TitleText" - позволяет выводить на экран разные сообщения.
TitleText [" текст ","Позиция текста на экране", скорость прокручивания]
"PlAIN" - в центре экрана
"PLAIN DOWN" - внизу экрана
Запуск cкрипта в игре:
Создадим миссию, назовём её Test полное название с островом смотря каким:
- Eden-имя миссии.eden
- Malden-имя миссии.abel
- Kolgujev-имя миссии.cain
- Desert Island-имя миссии.Intro
- Nogova-имя миссии.noe
Открываем блокнот,пишем:
TitleText ["Mupy mup", "plain down"]
Exit
Сохраняем в каталоге(папке) с миссией mup.sqs
В редакторе:
В строке Иницилизация(Initalization) пишем: [] exec "mup.sqs"
ВСЁ!!! МИРУ МИР
[] - сюда надо писать аргумент задаваемый в скрипт. В данной команде аргумент нам не нужен.
Теперь попробуем заставить вашего солдата говорить (махать рукой как при разговоре).
;получение аргумента(солдат)
_Unit = _this select 0
;прекратить выполнение скрипта до тех пор, пока дистанция между игроком и юнитом _unit не станет меньше 5 метров
@(_unit distance player < 5)
;устанавливает юниту _unit режим поведения SAFE (все спокойно, оружие за спину)
_unit setbehaviour "SAFE"
;заставляет юнит _unit следить за игроком
_unit doWatch player
;пауза в 5 секунд
~5
; Заставляет юнит _unit проиграть анимацию тоесть говорить "effectstandtalk"
_unit playmove "effectstandtalk"
; заставляет юнит _unit не за кем не следить(следить за отсутствием объекта)
_unit dowatch objnull
;выход
exit
Теперь рассмотрим:
distance - с помощью этой команды скрипт приостанавливает свое действие, пока расстояние между игроком и юнитом не сократится на 5метров.
UnitName
setbehaviour "{тип поведения}"
типы поведения:
- SAFE - все спокойно, можно идти не спеша, оружие за спину;
- AWARE - будь на чеку, передвигайся ползком (но не надо искать укрытие);
- COMBAT - к бою, враг наступает, передвигаться ползком или бегом;
- CARELESS - не обращать внимания ни на что, даже если рядом приземлиться граната;
- STEALTH - укрыться и передвигаться ползком.
и главное
UnitName playmove "{название анимации}"
НЕ ВСЕ! Скрипты работают с командой playmove, некоторые с switchmove.
UnitName switchmove "{название анимации}"
Вроде всё описание.
Теперь пример и запуск:
Пишем,сохраняем talk.sqs(ложим в папку с миссией)
_Unit = _this select 0
@(_unit distance player < 5)
_unit setbehaviour "SAFE"
_unit doWatch player
~5
_unit playmove "effectstandtalk"
_unit dowatch objnull
exit
В редакторе:
Ставим одного игрока player(без имени), и другого с именем Sold1, ставить солдат надо с расстоянием не меньше 5метров.
В строке Иницилизация (Initialization) юнита с именем Sold1(хотя без разницы можно и тому написать):[Sold1] exec "talk.sqs"
Запускаем и подходим к тому юниту.