Модератор форума: Slon |
Форум РЕДАКТОР - ArmA 2 Скрипты Вопросы по скриптописанию (Тонкости написания скриптов) |
Вопросы по скриптописанию |
› Воскресенье
› 02.06.2013
› 15:38
› Сообщение #
Как сделать скрипт, который активировался бы при нажатии на кнопку F4? (Если можно Alt+F4 - еще лучше)
community.bistudio.com/wiki/ListOfKeyCodes - тут значит я выделил 62 себе) (альт 56-ой) При активации, например, исполнять player switchmove "12ab"; |
› Воскресенье
› 02.06.2013
› 18:20
› Сообщение #
обработчик нажатия клавиши
http://community.bistudio.com/wiki/displayAddEventHandler _Id = (findDisplay 46) displayAddEventHandler ["KeyDown", "if ((_this select 4) && (_this select 1) == 62) then {player switchmove ""12ab""};"]; http://community.bistudio.com/wiki/DIK_KeyCodes _DisplayOrDialogOrControl = _this select 0;// Display, Dialog , or Control _DikCode= _this select 1; // integer _shiftState = _this select 2; // boolean _ctrlState = _this select 3; // boolean _altState = _this select 4; // boolean |
› Воскресенье
› 02.06.2013
› 21:35
› Сообщение #
Вот наваял скрипт взрыва. Радиус поражения - 200 м., разрушение зданий, ударная волна. Планировал для "SCUD". Получилось громоздко, но работает. Возможно кто-нибудь прикрутит доп. эффекты - на здоровье.
Прикрепления:
badabum.sqf
(19.0 Kb)
|
› Четверг
› 06.06.2013
› 16:41
› Сообщение #
В арме можно добавить свет с помощью _lightz = "#lightpoint" createVehicleLocal getpos player;
Но его не видно на расстоянии больше ~20 метров. Можно это как-то профиксить? Добавлено (06.06.2013, 16:41)
Spitfire
|
› Четверг
› 06.06.2013
› 17:14
› Сообщение #
artivad2, да, можно, в начале скрипта пиши:
Код _Unit = _this select 0; if (_Unit != player) exitWith {}; Сообщение отредактировал Dim@s535 - Четверг, 06.06.2013, 17:16
|
› Пятница
› 07.06.2013
› 00:26
› Сообщение #
Еще вопрос:
Есть несколько музык. Нужен скрипт, включающий одну из них на карте, затем, после ее завершения следующую, в рандомном порядке. Как включить свой звук я знаю. А как сделать проверку на его завершение?
Spitfire
|
› Пятница
› 07.06.2013
› 05:15
› Сообщение #
artivad2, сам задавался таким же вопросом. Проверки на завершение нет. Проверку на завершение и начало добавили в ArmA 3 Alpha 0.50.
Добавлено (07.06.2013, 05:15) --------------------------------------------- artivad2, я бы смог тебе помочь, но я никак не могу открыть модуль 'Музыкальный автомат' и посмотреть, что в нём. Но я сразу же предложу альтернативный способ (Если у тебя есть OA): Ставь модуль 'Музыкальный автомат' на карту, и в поле 'Инициализация' пиши: Код this setVariable ["TrackList", ["Твои треки в кавычках и через запятую"]]; Код this setVariable ["TrackList", ["EP1_Track01","EP1_Track02"]]; Или: Активация без модуля: Код ["Треки в кавычках и через запятую", *Время между воспроизведением треков*] spawn BIS_fnc_music; Код ["EP1_Track01","EP1_Track02", 5] spawn BIS_fnc_music; Сообщение отредактировал Dim@s535 - Пятница, 07.06.2013, 06:41
|
› Суббота
› 08.06.2013
› 02:41
› Сообщение #
Спасибо. Жаль и вправду коряво работает. Прерывается раньше времени. Видел в конфиге одного аддона такую опцию как duration. Может поможет. Либо же в скрипте тогда с помощью слипа.
Сообщение отредактировал artivad2 - Суббота, 08.06.2013, 02:42
Spitfire
|
› Суббота
› 08.06.2013
› 11:57
› Сообщение #
artivad2, ну, можно сделать такую штуку, но тебе понадобится программа Laza, или я сам могу сделать. Ну, в общем: В архиве music.pbo немножко подредактировать файл config,bin (В него к каждому треку добавить параметр 'duration'), и тогда музыкальный автомат сможет нормально воспроизводить оригинальные треки Армы.
Добавлено (08.06.2013, 11:57) Сообщение отредактировал Dim@s535 - Суббота, 08.06.2013, 11:25
|
› Суббота
› 08.06.2013
› 18:34
› Сообщение #
Дело в том, что у меня своя музыка. При ее добавлении в миссию и прописывании в дескрипшн, работает нормально. А попробовал запаковать - хрен там. То есть в редакторе имена отображаются, но при запуске не воспроизводится (что через триггер, что через автомат).
Вот config.bin: Ошибся где-то чтоли...
Spitfire
|
› Воскресенье
› 09.06.2013
› 04:20
› Сообщение #
А config.bin ты сам создавал или выдернул из армы?
Добавлено (09.06.2013, 04:11) Добавлено (09.06.2013, 04:20) |
› Воскресенье
› 09.06.2013
› 04:38
› Сообщение #
Вот, держи бинарник, написал всё в точности, как написано выше. Вот только рабочий.
Добавлено (09.06.2013, 04:38) Прикрепления:
2543860.bin
(0.8 Kb)
|
› Понедельник
› 10.06.2013
› 01:26
› Сообщение #
Перезапаковал в dzs_music.pbo
И таки заработало. Кажется, косяк был в названии pbo. А в твоем конфиге ошибка в названиях музык 4-7. Пришлось попотеть, но всё же теперь работает исправно. А бин распаковываю и запаковываю с помощью BI Tools 2 - BinMake. И это довольно запарно. У тебя нет ссылки на лазу эту? А то всё перерыл, так и не нашел... Спасибо за подробные ответы, кстати. Добавлено (10.06.2013, 01:26) Играем с другом. Я вызываю скрипт, а анимация запускается у обоих, и костры спаунятся тоже у обоих. Ну, насчет спауна костров, я вижу что накосячил с глобальной переменной fire. Но анимация то почему срабатывает у двоих? В активации триггера прописал nul = [player]execVM "fire.sqf"; Сообщение отредактировал artivad2 - Понедельник, 10.06.2013, 01:14
Spitfire
|
› Понедельник
› 10.06.2013
› 02:50
› Сообщение #
artivad2, ты забыл добавить в начало скрипта: if (!isServer) exitWith {}; - Запрещает всем игрокам (кроме сервера) выполнение скрипта.
Добавлено (10.06.2013, 02:46) --------------------------------------------- Цитата (artivad2) А в твоем конфиге ошибка в названиях музык 4-7. Цитата (artivad2) У тебя нет ссылки на лазу эту? А то всё перерыл, так и не нашел... Добавлено (10.06.2013, 02:50) --------------------------------------------- Вот программа: Laza Сообщение отредактировал Dim@s535 - Понедельник, 10.06.2013, 02:51
|
› Понедельник
› 10.06.2013
› 20:59
› Сообщение #
Скажи-те пожалуйста! Какая команда выдаёт ближайшего игрока (что-то типа nearestObject)
-_-_-_-_?Хочешь что-то спросить?_-_-_-_
-=-=-=-=!ЗАРЕГИСТРИРУЙСЯ!=-=-=-= |
| |||
Чат сайта |