Модератор форума: GUNNER161, Panikaha |
Форум РЕДАКТОР - ArmA 3 Скрипты Скриптовые команды (всякая всячина) |
Скриптовые команды |
› Вторник
› 12.11.2013
› 00:48
› Сообщение #
|
› Вторник
› 12.11.2013
› 05:12
› Сообщение #
Al_Hakam, я был не внимательным! этот скрипт на арма 2, а тебе нужно для А3. но в целом думаю понятно, где искать.
скриптовые команды http://community.bistudio.com/wiki/Category:Scripting_Commands_Arma2 |
› Четверг
› 14.11.2013
› 15:11
› Сообщение #
|
› Четверг
› 14.11.2013
› 15:31
› Сообщение #
|
› Четверг
› 14.11.2013
› 16:41
› Сообщение #
Вообще, я пытаюсь добиться того, что бы пока игрок вне машины, работает один скрипт, а когда внутри (можно даже облегчить это и поставить условием место водителя) другой.
На ум приходит что-то вроде if player indriver car exec "x"; if player not indriver car exec "y"; Добавлено (14.11.2013, 16:41) Цитата if player indriver car then {"[] execVM "friend.sqf";"} else {"[] execVM "unfriend.sqf"}; Этот вариант так же не работает... |
› Четверг
› 14.11.2013
› 16:47
› Сообщение #
Пферц, можно прерывать нужный скрипт по условию.
Скажем, в начале запускается два скрипта, scr1=[] execVM "incar.sqf" scr2=[] execVM "not_incar.sqf" Проверку запустить в отдельной функции Код [] spawn { while {alive player} do { waituntil {player in car}; terminate scr1; scr2=[] execVM "not_incar.sqf" }; }; Код [] spawn { while {alive player} do { waituntil {!(player in car)}; terminate scr2; scr1=[] execVM "incar.sqf" }; }; Сообщение отредактировал andrucio - Четверг, 14.11.2013, 16:54
|
› Четверг
› 14.11.2013
› 16:52
› Сообщение #
|
› Четверг
› 14.11.2013
› 16:54
› Сообщение #
Пферц, Набил на скорую руку, кривовато, но работать должно.
Код private["_h1","_h2"]; _h1= [] execVM "script1.sqf"; waitUntil { waitUntil {(vehicle player == player)};//Ждем, пока игрок будет вне машины terminate _h1; _h2= [] execVM "script2.sqf"; waitUntil {(vehicle player != player)};//Ждем, пока игрок не сядет в машину terminate _h2; _h1= [] execVM "script1.sqf"; false };
Arma 3
Студент МТУСИ |
› Четверг
› 14.11.2013
› 16:55
› Сообщение #
Да хоть в init.sqf
|
› Четверг
› 14.11.2013
› 17:05
› Сообщение #
|
› Четверг
› 14.11.2013
› 17:09
› Сообщение #
А зачем совмещать?
Скрипт работает сам по себе, проверка - сама по себе. Как только условие проверки не выполняется, скрипт прерывается командой terminate (у которой в качестве параметра - имя этого скрипта). Вообще нужны дополнительные подробности.. с какого момента должны действовать скрипты, постоянно или нет, да и с позицией определиться - водитель или просто в машине. От этого что-то в командах может поменяться. А сам принцип я уже озвучил |
› Четверг
› 14.11.2013
› 17:12
› Сообщение #
andrucio, всё ок, это я тупил))
Тут другая проблема - эти два скрипта противоположны друг другу. Если более конкретно, то пока игрок вне машины, он враг для одной из сторон, но оказавшись внутри становиться другом. Включение дружественного режима проходит как надо, но вот возвращение назад не происходит. |
› Четверг
› 14.11.2013
› 17:13
› Сообщение #
Пферц, Проверил, все работает. Вот пример.
Прикрепления:
scr.Stratis.rar
(1.2 Kb)
Arma 3
Студент МТУСИ |
› Четверг
› 14.11.2013
› 17:47
› Сообщение #
Пферц, а обязательна дружба?
Может, попробовать set captive true\false? или пауз добавить в скрипт, на случай, если не успевает переключиться |
| |||
Чат сайта |