Berserker,
daemon_n, так-с,
т-ц-ц, расфлудились, дайте интересную тему толкну
Я смотрю отчасти про "это" знают и практикуют, но для
ERM-help пожалуй актуально будет, ибо там информация не верная, точнее даже сказать - вводящая в заблуждение. Настолько вводящее, что мне этот момент указали в теме
Zur13, про комбо-арты, если не путаю темы, но где-то точно говорили...
В основном напишу дополнение к справке, но у меня всегда в таких случаях за одним моментом следуют вопросы, хочется прояснить моменты, что сложно потом определить куда писать. Надеюсь в рамках темы можно поспрашивать, если ответят - будет здорово, объяснение также в
help можно будет впихнуть.
Итак. Длинно пост, готовьтесь
Сначала ссылка на первоисточник
ERM-help'a, который:
Что возможно было актуально на года выпуска
ERM'a, но в
Эре (
Вечная Слава Эре) с новой командой
SN:L,
SN:A,
SN:E, данная проблема решаема достаточно простым способом. И даже в моей пухлой сборке модов целых 5 использования имеются: Два в оф.релизе. Один сторонний мод. Ещё 2 я сам прикрутил...
Суть использования везде одна. Вызов команды
^GetKeyState^ из библиотеки
user32.dll, проверка клавиши.
Ибо командой
!!SN:E можно
любую клавишу(вроде бы) назначить. По крайней мере у меня получилось реализовать комбинацию "
Z + ПКМ", а также "
TAB + ПКМ" и "
CAPS + ПКМ" просто подставляя нужное число из таблицы.
Также работает в любом окне игры. В бою, в городе, в окне героя.
С вводной думаю всё, дальше
Bes разберётся, что вписать, как оформить. Ниже хочу пару вопросов по выше написанному прояснить, потому что разбираясь, не всё понял. База в программировании слишком низкая, но желание есть.
Вообщем с командой разобрался, таблицу нашёл, даже с
65535 прояснилось:
Quote:KeyCode 65535 Битовая маска для извлечения кода клавиши из значения клавиши.
Но выполняя
!!IF:L я получаю значения, которые не могу понять, откуда берутся. Надеюсь помогут с пониманием, ибо это база, которая всегда важна.
Где мне выдаются такие значения:
Lib 1963261952 getkey 1963403159 -
с этим худо-бедно понятно, но не отказался бы узнать конкретно, что за числа.
%Y1 выдаёт
65408 иногда
65409 (наверно в момент нажатия/отпускания клавиши разница), но вообщем это значение больше, чем 32768,
соответственно код продолжается и скрипт выполняется.
Но что за число такое
65408? Я сначала думал это числовое обозначение
Сtrl'a, но сменив на
Z получаю такое же число... Может я просто не могу получить некоторые промежуточные значения, поэтому так?
И почему в качестве указателя/проверки установлено
<32768, почему, если меньше этого значения, то выход из скрипта, а если больше - то ок?
Понимания хочется, тем более в
monolith locator более строгая проверка на
<>32768, с тем же
Ctrl+ПКМ и она выполняется, а в окне боя - нет. И там почему-то:
Нипанятно
Я пытался это всё дело погуглить, чтобы разобраться, но слишком много информации, нагромождение целое из разных программных языков. Адресный ответ бы узнать или ссылку на документ/книгу, где про этот случай,
для интерпретирования данных значений выше подходящий.