![]() |
#1
![]() |
|||
|
Девайсы Logitech и Скрипты Lua
В этом посте собираюсь собрать ссылки и готовые функции
по работе скриптов Lua с девайсами от Logitech. Работа на других девайсах, даже если они поддерживают Lua, может отличаться. Это тема не будет затрагивать написание ботов (эмуляция присутствия игрока в игре на многих проектах карается бессрочным баном) Основы G-series Lua API Работа с Lua Разработчики девайсов ограничивают функционал Lua, но вы можете посмотреть работу циклов, условий, вид переменных и пр. SDK Удобный запуск функций МАСТХЭВ Делаем удобней написание скриптов (советую первым делом, после подключения своего нового девайса, удалить все содержимое и вставить этот код) Перемещение курсора через MoveMouseRelative на любое расстояние Можно выставлять скорость и задержку(стандартная функция позволяет переместить курсор только от 127 до -127 пикселей). Фрост блокирует обычное перемещение, но оставляет относительное, геймгуард блокирует любые. Polling in Lua Lua однопоточный язык программирования, но если вам необходим долгий сценарий с возможностью прерываний без ручных точек выхода, то можете использовать этот SDK ///Logitech сделали новую совершенно неудобную базу знаний, все ссылки потерены. Внутренним поиском не находит, ждем нормальную индексацию гуглом Готовые функции Все протестировано. (мой род деятельности далек от программирования, поэтому на идеальную чистоту кода не претендую) Код:
while not IsModifierPressed("shift") do OutputLogMessage("A \n") Sleep (500) if IsModifierPressed("shift") then break end OutputLogMessage("B \n") Sleep (500) if IsModifierPressed("shift") then break end OutputLogMessage("C \n") Sleep (500) if IsModifierPressed("shift") then break end OutputLogMessage("D \n") Sleep (500) end Код:
function Tab (WindowNumber) PressKey("rgui") Sleep (100) PressKey(tostring(WindowNumber)) OutputLogMessage("Tab okna "..WindowNumber.."\n") ReleaseKey(tostring(WindowNumber)) ReleaseKey("rgui") Sleep (300) end У Logitech есть стандартная функция, но из-за пинга и разных мощностей компьютеров ее срабатывание может глючить. А если каждый раз нажатие кнопки расписывать на три строки (Press/Sleep/Release), то это очень захламляет код. Вы можете самостоятельно протестировать и подобрать нужную задержку Код:
function hPress(Key) PressKey(tostring(Key)) Sleep (100) ReleaseKey(tostring(Key)) end Знаю, уже не актуально, но можете переделать под заходку в любой инстанс. Работает, пока горит капс. Задержки выставляются в зависимости от пинга. Требования:
Код:
function kartia95() while IsKeyLockOn("capslock") do PressKey("lshift") PressMouseButton(1) ReleaseMouseButton(1) Sleep(1000) MoveMouseRelative( 0, 105) PressMouseButton(1) ReleaseMouseButton(1) Sleep(1000) MoveMouseRelative( 0, -105) hPress("F1") Sleep(1000) ReleaseKey("lshift") end end Пост будет обновляться
__________________
x37
Последний раз редактировалось Translate_renamed_781891_01122020; 21.01.2017 в 19:03.
4 пользователя оценили это сообщение: Показать
|
![]() |
#3
![]() |
|||
|
Re: Девайсы Logitech и Скрипты Lua
угу, респект человеку за труды
![]()
__________________
Чтобы оставаться богатым- иногда нужно грабить (с)
Зачем Вам знать как устроены часы? Просто иногда поглядывайте на время(с) У каждого из нас есть своя цена. Даже для того, что Вы не собирались продавать (с) Ashran... Как много в этом звуке для сердца Horde`ского слилось! Как много в нём отозвалось! |
![]() |
#4
![]() |
|||
|
Re: Девайсы Logitech и Скрипты Lua
Было чуть времени, решил написать скрипт бегущей строки.
От лагов лучше выключить чат с enter и включить таб группового чата. Код:
function RunWord () x1 = "PVP Kamni Dorogo" x_len=string.len(x1) for i=0, x_len do x2 =string.sub(x1,x_len-i+1,x_len)..' '..string.sub(x1,1,x_len-i..' ') Sleep(100) PressAndReleaseMouseButton("1"); Sleep(100) PressAndReleaseMouseButton("1"); Sleep(100) for k=1, string.len(x2) do xChar=string.sub(x2,k,k) if xChar==" " then xChar="spacebar" else end PressAndReleaseKey (xChar) end PressAndReleaseKey ("enter") end end Код:
function test() while IsKeyLockOn("capslock") do RunWord() end end
__________________
x37
|
![]() |
#9
![]() |
|||
|
Re: Девайсы Logitech и Скрипты Lua
Из форума понял что люди тут умные разбираются в языке Lua
Если несложно подскажите, есть такой код я его нашел на форуме EnablePrimaryMouseButtonEvents(true); local recoil = false function OnEvent(event, arg) if (event == "G_PRESSED" and arg == 4) then recoil = not recoil end if IsMouseButtonPressed(1) and recoil then while IsMouseButtonPressed(1) do Sleep(45) if not IsMouseButtonPressed(1) then break end MoveMouseRelative(-10,17) Sleep(95) if not IsMouseButtonPressed(1) then break end MoveMouseRelative(0,1) Sleep(95) if not IsMouseButtonPressed(1) then break end ReleaseMouseButton(1) end end end Этот скрипт работает я еще добавил один блок такой же после последнего оператора end изменил параметры и на включение поставил макрос клавишу 5 Но второй вариант не запускается а если и запускается то только при нажатой правой клавише мыши. Можете подсказать как сделать код работоспособным что бы при нажатии G4 включался один вариант а при нажатии G5 второй вариант EnablePrimaryMouseButtonEvents(true); local recoil = false function OnEvent(event, arg) if (event == "G_PRESSED" and arg == 4) then recoil = not recoil end if IsMouseButtonPressed(1) and recoil then while IsMouseButtonPressed(1) do Sleep(45) if not IsMouseButtonPressed(1) then break end MoveMouseRelative(-10,17) Sleep(95) if not IsMouseButtonPressed(1) then break end MoveMouseRelative(0,1) Sleep(95) if not IsMouseButtonPressed(1) then break end ReleaseMouseButton(1) end end EnablePrimaryMouseButtonEvents(true); local recoil = false function OnEvent(event, arg) if (event == "G_PRESSED" and arg == 5) then recoil = not recoil end if IsMouseButtonPressed(1) and recoil then while IsMouseButtonPressed(1) do Sleep(35) if not IsMouseButtonPressed(1) then break end MoveMouseRelative(0,10) Sleep(65) if not IsMouseButtonPressed(1) then break end MoveMouseRelative(0,1) Sleep(65) if not IsMouseButtonPressed(1) then break end ReleaseMouseButton(1) end end end |
![]() |
#10
![]() |
|||
|
Re: Девайсы Logitech и Скрипты Lua
Всем привет..помогите плз написать макрос Lua на проюз скилов в Lineage2 мэйн версии.. к примеру на луке... чтоб юзались сначала Туча Стрел после Скоростной Выстрел после Точечный выстрел...максимально быстро один за одним с повтором...заранее спс)
|