1

Тема: AHK:Создание макроса-процедуры с зависимостью от горячих клавиш

Макрос для игрушки Guilty Gear XX#Reload (сам создал).Длинный макрос тут не означает сложную и запутанную проблему (ибо примитивен ).

*<+g::                                     ;g одна из пяти клавиш запуска
send {vk53 down}{vk44 up}{vk41 up}{vk57 up};во время выполнения скрипта отрубаются {Практически клавиши a s d w}
sleep 1
send {vk44 down}
sleep 1
send {vk53 up}{vk47 down} ;vk 47 клавиша запуска
sleep 1
send {vk44 up}{vk47 up}
sleep 1
getkeystate, state, vk44, p;а тут естественно они врубаются Т К время выполнения - мизер,то можно считать,что a s d w возвращаются значения на момент активации скрипта.Крититески важно,чтобы только эти клавиши отключались во время его выполнения
if state = D
send {vk44 down}
getkeystate, state, vk41, p
if state = D
send {vk41 down}
getkeystate, state, vk53, p
if state = D
send {vk53 down}
getkeystate, state, vk57, p
if state = D
send {vk57 down}
return
*<+h:: ;другая клавиша запуска(скрипты фактически идентичны)
send {vk53 down}{vk44 up}{vk41 up}{vk57 up}
sleep 1
send {vk44 down}
sleep 1
send {vk53 up}{vk48 down}
sleep 1
send {vk44 up}{vk48 up}
sleep 1
getkeystate, state, vk44, p
if state = D
send {vk44 down}
getkeystate, state, vk41, p
if state = D
send {vk41 down}
getkeystate, state, vk53, p
if state = D
send {vk53 down}
getkeystate, state, vk57, p
if state = D
send {vk57 down}
return
*<+j::
send {vk53 down}{vk44 up}{vk41 up}{vk57 up}
sleep 1
send {vk44 down}
sleep 1
send {vk53 up}{vk4A down}
sleep 1
send {vk44 up}{vk4A up}
sleep 1
getkeystate, state, vk44, p
if state = D
send {vk44 down}
getkeystate, state, vk41, p
if state = D
send {vk41 down}
getkeystate, state, vk53, p
if state = D
send {vk53 down}
getkeystate, state, vk57, p
if state = D
send {vk57 down}
return

Ваша задача-минимум - создать РАЦИОНАЛЬНЫЙ макрос (в данном случае макрос в котором вместо отдельных комманд запуска есть одна строка которая включает в себя все их возможные варианты, а именно:*g h j k и пробел которые комбинируется с LShift и выдают процедуры по принципу проведенному выше, и с LAlt ,но с заменой в процедурах vk44 на vk 41 и объяснить как это работает. Задача минимум минус 1 - дать ссылки на похожие случаи.
   Просьба дать ответ до среды (следующей). Sorry for bad syntaxis.

НАД МЕЙЛОМ НЕ РЖАТЬ !!!!!!! KRISOSVIN@YANDEX.RU

2

Re: AHK:Создание макроса-процедуры с зависимостью от горячих клавиш

Что же тогда — задача-максимум?

3 (изменено: Parkinson, 2012-12-17 13:31:38)

Re: AHK:Создание макроса-процедуры с зависимостью от горячих клавиш

Задача-минимум подразумевает не посылать код не выполняющий ее требований, а максимум  включает в себя этот минимум + допольнительные функции, ограниченные лишь вашей фантазией, (к примеру графический интерфейс, автоматическая подстройка макроса в случае смены управления в игре и т.д.) опять же объяснение работы скрипта, при просьбе дополнительно прислать скрипт-минимум. Не встраивать в скрипт некие скрытые функции без предупреждения. Опять же просьба прислать скрипт до среды, несмотря на вашу возможно безграничную фантазию. Мог ответить кратко , что совершенство безгранично, но строго до среды 01.00 ,но решил разъяснить подробно. Если вас устраивают краткие сообщения наподобие предыдущего предложения, включите это в ваш ответ. Вроде бы все ясно. Sorry for bad syntaxis, but Im 100 years old.

НАД МЕЙЛОМ НЕ РЖАТЬ !!!!!!! KRISOSVIN@YANDEX.RU

4

Re: AHK:Создание макроса-процедуры с зависимостью от горячих клавиш

Я  бы тебе помог, но не очень понимаю что макрос делает, но понимаю что нужно - могу дать архив файлов своего унифицированного кода (AHK_L).
Устроит?

"На каждое действие есть равная ему противодействующая критика." Постулат Харриссона
Для NotePad++(подсветка синтаксиса, автозавершение и плагины(AutoSave и RunMe).
OS Windows 10 x64 Pro

5 (изменено: Parkinson, 2012-12-17 15:02:21)

Re: AHK:Создание макроса-процедуры с зависимостью от горячих клавиш

Хорошо Indomito давай архив, когда разберу отправлю сообщение, остальные - пока не прибудет сообщение о решении проблемы , ищите его.
Полный макрос делает следующее -  w a s d клавиши управления персонажем , при нажатии  LShift и g делает следующее ( обычно значится в файтингах как четв круга + кн атаки) отпускаются все клавиши движения (не дай бог исказить последовательность кнопок движения 1-го игрока потому же и используется send а не sendinput or event т к у нас еще и 2 игрок) и нажимается s 2 добавляется d  3 отпускается  s  и нажимается g  4 отпускаются d и g Так как в итоге все клавиши движения отпущены ,нам надо вернуть физическое состояние клавиш (используются комманды getkeystate.)

НАД МЕЙЛОМ НЕ РЖАТЬ !!!!!!! KRISOSVIN@YANDEX.RU

6

Re: AHK:Создание макроса-процедуры с зависимостью от горячих клавиш

остальные - пока не прибудет сообщение о решении проблемы , ищите его.

Да, учитель! ))

7 (изменено: Indomito, 2012-12-22 11:19:22)

Re: AHK:Создание макроса-процедуры с зависимостью от горячих клавиш

Parkinson пишет:

Хорошо Indomito давай архив...

Отправил... не бойся основной размер это картинки для рестарта, т.е. 2.5 Мб это они "делают".

На будущее.
Пиши своё мыло, а то через форумную форму нельзя сделать аттач (или я не знаю как).
Пришлось искать файлообменник (тут как на зло мой FTP "упал").

P.S. E-Mail как у меня в подписи (сейчас он виден в профиле - ЛКМ на мой ник)

P.P.S. Тут даже тег есть [ email] [ /email]

"На каждое действие есть равная ему противодействующая критика." Постулат Харриссона
Для NotePad++(подсветка синтаксиса, автозавершение и плагины(AutoSave и RunMe).
OS Windows 10 x64 Pro

8

Re: AHK:Создание макроса-процедуры с зависимостью от горячих клавиш

Мейл в подписи, шли на нее архив.

НАД МЕЙЛОМ НЕ РЖАТЬ !!!!!!! KRISOSVIN@YANDEX.RU

9 (изменено: Indomito, 2012-12-17 17:31:06)

Re: AHK:Создание макроса-процедуры с зависимостью от горячих клавиш

Parkinson пишет:

Мейл в подписи, шли на нее архив.

мыло уже не нужно - разобрались. Вот линк - http://depositfiles.com/files/6qf99m7aw

Да, вводить "капчу" - это садизм
_________________________________
Аттач (убрал все картинки, но работать будет, если не перезапускать комп), а на мыло "в довесок" послал полный

Post's attachments

AHK.rar 39.07 kb, 5 downloads since 2012-12-17 

You don't have the permssions to download the attachments of this post.
"На каждое действие есть равная ему противодействующая критика." Постулат Харриссона
Для NotePad++(подсветка синтаксиса, автозавершение и плагины(AutoSave и RunMe).
OS Windows 10 x64 Pro

10

Re: AHK:Создание макроса-процедуры с зависимостью от горячих клавиш

В принципе проблема решена. Мне игрушка надоела))
А если серьезно то информации в архиве должно хватить для дальнейшей самостоятельной работы.

НАД МЕЙЛОМ НЕ РЖАТЬ !!!!!!! KRISOSVIN@YANDEX.RU

11 (изменено: Indomito, 2012-12-18 05:51:26)

Re: AHK:Создание макроса-процедуры с зависимостью от горячих клавиш

Parkinson пишет:

.... А если серьезно то информации в архиве должно хватить для дальнейшей самостоятельной работы.

обрати внимание на формирование массива, а также на метки - я не биндую клавиши напрямую.

"На каждое действие есть равная ему противодействующая критика." Постулат Харриссона
Для NotePad++(подсветка синтаксиса, автозавершение и плагины(AutoSave и RunMe).
OS Windows 10 x64 Pro