|
|
Модератор форума: Slon |
Форум РЕДАКТОР - ArmA 2 Скрипты displaySetEventHandler (Можно так-если нет-просветите) |
displaySetEventHandler |
› Вторник
› 15.06.2010
› 19:45
› Сообщение #
для миссии нужно штоб игрок управляя мотоциклом мог еще одновременно и стрелять из ружья.так как модов подходящих не нашел а сам делать не умею то решил просто имитировать езду на мотоцикле-когда игрок приатаченный в сидячем положении с ружьем наперевес к мотоциклу со стороны создает как бы видимость што он едет на этом самом мотике-так вот штоб не терять управление мотоциклом-я пытался вызвать скрипт движения вперед
через нажатие кнопки "E" на клаве вот так-(FindDisplay 46) displayAddEventHandler ["KeyDown","["E",_this exec "vpered.sqs"]"]-почему именна KeyDown а не KeyUp-потому штоб при нажатии на кнопку активировалось.штоб поворачивать-(FindDisplay 46) displayAddEventHandler ["KeyDown","["D",_this exec "pravo.sqs"]"]- влево соответственно клавиша "A".прыжок на мотике делаю через пробел. ВНИМАНИЕ вопрос:как вы смогли догадаться уже неудивительно што у меня ниче не вышло-просьба просветить меня в этом вопросе.и еще переход из мовеиндривер в аттаченное положение я пытался тоже замутить через нажатие onMouseButtonClick-нажал и отпустил в итоге даже при нормальном пешем положении не стреляет.версия игры 1.04
Умные люди никогда не обижаются-они просто сразу начинают планировать месть
Я, конечно, презираю отечество мое с головы до ног - но мне досадно, если иностранец разделяет со мной это чувство. -Александр Пушкин- Надо любить свою страну, как бы этому ни мешало государство. -Михаил Мамчич- |
› Вторник
› 15.06.2010
› 20:29
› Сообщение #
Ну нагородил, чёрт ногу сломит.
Для начала следовало посмотреть как это работает, какие цифры появляются, что обрабатывать придётся (FindDisplay 46) displayAddEventHandler ["KeyDown","hint format [""Нажата - %1"",_this]"]; потом запускай файлы |
› Вторник
› 15.06.2010
› 20:44
› Сообщение #
(FindDisplay 46) displayAddEventHandler ["KeyDown","hint format [""E - %1"",_this exec "vpered.sqs"]"]-это вот так навернае,да?
а как тогда сделать так штоб при отпускании клавиши скрипт прекращался?вместо KeyDown писать KeyUp?я сунул это в сгс у меня по сюжету игрок летит на мотоцикле(из танка растреливать негуманно и слишком просто) через город отстреливая мирных безоружных американских солдат-лавируя между препятствиями-заезжает на скорости на поставленный под углом трап и перелетает на крышу высокого здания-при этом у него есть возможность бросить в воздухе мотик и раскрыть парашут-который я раскрываю через-"\ca\air2\Halo\data\Scripts\HALO_init.sqs" а можно записать строку-(FindDisplay 46) displayAddEventHandler ["KeyDown","hint format [""E - %1"",_this exec "vpered.sqs"]"]-как условие а то я пытаюсь из одного скрипта вызвать другой Сообщение отредактировал rusik - Вторник, 15.06.2010, 21:01
Умные люди никогда не обижаются-они просто сразу начинают планировать месть
Я, конечно, презираю отечество мое с головы до ног - но мне досадно, если иностранец разделяет со мной это чувство. -Александр Пушкин- Надо любить свою страну, как бы этому ни мешало государство. -Михаил Мамчич- |
› Вторник
› 15.06.2010
› 21:01
› Сообщение #
правильно будет
(FindDisplay 46) displayAddEventHandler ["KeyDown","_this exec ""vpered.sqs"" "] Сообщение отредактировал Slon - Вторник, 15.06.2010, 21:03
|
› Вторник
› 15.06.2010
› 21:11
› Сообщение #
Quote (Slon) те. все клавиши. -а как же тогда другие скрипты которые в свою очередь будут тоже активироваться тоже любой клавишей-мне надо же не тока вперед ехать но и повороты делать-они теперь будут одновременно вызываться-поподробнее можно :).на аддактион вешать игрок сразу же запутается потому што на скорости больше 100 км в час он не успеет даже вызвать это меню и по ошибке нажмет как у меня было пункт пересесть на место пассажира или т.п. которые в меню бисами заложенно Сообщение отредактировал rusik - Вторник, 15.06.2010, 21:15
Умные люди никогда не обижаются-они просто сразу начинают планировать месть
Я, конечно, презираю отечество мое с головы до ног - но мне досадно, если иностранец разделяет со мной это чувство. -Александр Пушкин- Надо любить свою страну, как бы этому ни мешало государство. -Михаил Мамчич- |
› Среда
› 16.06.2010
› 08:24
› Сообщение #
rusik,
файл управления запускается обработчиком текст для файла EH_Key.sqf
Code disableSerialization; _dis = findDisplay 46; _ED = _dis displayAddEventHandler ["KeyDown", " if (_this select 1 == 0x11 && !key_W) then {key_W = true}; if (_this select 1 == 0x1F && !key_S ) then {key_S = true}; if (_this select 1 == 0x39 && !key_P ) then {key_P = true}; "]; _EU = _dis displayAddEventHandler ["KeyUp", " if (_this select 1 == 0x11) then {key_W = false}; if (_this select 1 == 0x1F) then {key_S = false}; if (_this select 1 == 0x39) then {key_P = false}; "]; _ob = _this select 0; WaitUntil {sleep 1; vehicle Player != _ob}; _dis displayRemoveEventHandler ["KeyDown", _ED]; _dis displayRemoveEventHandler ["KeyUp", _EU]; ето пример обработки клавы, подгоняй для своих нужд |
› Четверг
› 17.06.2010
› 21:50
› Сообщение #
Я так понял тут команды, привязывающие действие для клавишей ? Я просто спросить хотел, можно ли сделать так, что бы по нажатию клавиши срабатывал скрипт? Он очень простой- всего лишь проигрывает анимацию ( для игрока).Но действует постоянно, как действия для других клавиш. Зашел, например, в сетевую, нажал клавишу и корчишься раненый (просто анимация).
Я думаю есть где-то в игре что-то подобное (ведь в меню управления можно задать клавиши для действий, значит эти действия где-то прописаны). Я поковыряю саму игру, но не уверен что найду хоть что-нибудь. Сообщение отредактировал SAN444EZ - Четверг, 17.06.2010, 21:52
Si vis pacem para bellum
|
› Четверг
› 27.10.2011
› 08:28
› Сообщение #
rusik,
Если не трудно, выложи миссию-пример по этой статье !
Солнце воздух и вода не помогут никогда, только кекс и пофигизм укрепляют организм!
|
| |||
| |||
Чат сайта |