Здравствуйте, гость ( Вход | Регистрация )

8 страниц V « < 3 4 5 6 7 > »   
Ответить в эту темуОткрыть новую тему
> Pilot + Arduino (Hardware clicker)
cirus
сообщение 25.11.2020, 2:12
Сообщение #81


**********

Elder
Сообщений: 3.480
Регистрация: 18.8.2014
Группа: Пользователи
Наличность: 26707
Пользователь №: 16.971
Возраст: 29



Цитата
Также меняются порты

Порты могут меняться при загрузке скетча, почему так не знаю.
Цитата
гораздо важнее понимать, когда железка окончила работу

С этого я и начал. Открыть порт и записать вообще не проблема, winapi CreateFile и WriteFile, открывает и записывает, ардуино читает и работает как положено. А вот прочитать потом что-либо, так и не получилось. Понятно что функция ReadFile, но она либо ничего не читает, либо весит пилот, типа ждёт когда что-то запишется в порт. Можно открывать порт в асинхронном режиме, открывает, записывает, но читать не хочет. В итоге пока так как есть, потом будет время попробую разобраться.
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 25.11.2020, 2:34
Сообщение #82


***********

Модератор UOPilot
Сообщений: 9.467
Регистрация: 2.12.2008
Группа: Супермодераторы
Наличность: 27722
Пользователь №: 11.279



Цитата
Порты могут меняться при загрузке скетча, почему так не знаю.

Потому что это юсб и ком порты там виртуальные. Выделяются динамически, а вот вниз не падают. Если есть жаление, то я даже как-то чистил нумерацию ибо совсем далеко ушли циферки.
Цитата
Открыть порт и записать вообще не проблема, winapi CreateFile и WriteFile, открывает и записывает, ардуино читает и работает как положено. А вот прочитать потом что-либо, так и не получилось. Понятно что функция ReadFile, но она либо ничего не читает, либо весит пилот, типа ждёт когда что-то запишется в порт. Можно открывать порт в асинхронном режиме, открывает, записывает, но читать не хочет. В итоге пока так как есть, потом будет время попробую разобраться.

Может поднять второй ком? Я понимаю, что не совсем есть правильно и ты вообще хочешь дллкой, но я сторонник лаушного обвеса просто потому, что его можно в любой момент переделать под свои нужды, а как луа отработает в rw я хз - на popen там целый цирк ибо оно не умеет и читать и писать одновременно. Кстати луа функции багованные ибо надо открывать в бинарном режиме - не 'w', а 'wb', а то он будет хлам досылать типа переводов строки по идее.

Crocotea, а дайка мне откомпиленный бинарник скетча cirus'а который ты используешь. Есть у меня идейка.

Cockney
Цитата
while (buff[*curPos] != '|') {
++*curPos;
}

Нет проверки на размер буфера. Вот отсюда возможно и выход за пределы и спам остатками бинарника cirus.
Цитата
// пока не встретили разделитель
while (buff[*curPos] != '|') {
// попытка распарсить управляющую клавишу

Аналогично.


--------------------
Скрипты UOPilot под заказ.
Консультации по UOpilot 15$/час.
Услуги Lua разработчика (не пилот, проекты, постоянка)
Disсоrd:
Kov____
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Cockney
сообщение 25.11.2020, 3:09
Сообщение #83


********

Master
Сообщений: 1.395
Регистрация: 22.6.2013
Группа: Пользователи
Наличность: 21061
Пользователь №: 16.156



В последней версии такого нет.
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 25.11.2020, 6:17
Сообщение #84


***********

Модератор UOPilot
Сообщений: 9.467
Регистрация: 2.12.2008
Группа: Супермодераторы
Наличность: 27722
Пользователь №: 11.279



Цитата
В последней версии такого нет.

Действительно...

Crocotea, а нафига старую версию то?) Пятая же последняя от Cockney. Отсюда походу и проблемы. В целом хотелось бы попросить протестить последнии версии обоих скетчей и мою обертку под скетч Cirus. Надо тему потихоньку в порядок приводить и править первый пост.


--------------------
Скрипты UOPilot под заказ.
Консультации по UOpilot 15$/час.
Услуги Lua разработчика (не пилот, проекты, постоянка)
Disсоrd:
Kov____
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
cirus
сообщение 25.11.2020, 15:09
Сообщение #85


**********

Elder
Сообщений: 3.480
Регистрация: 18.8.2014
Группа: Пользователи
Наличность: 26707
Пользователь №: 16.971
Возраст: 29



Цитата
и мою обертку

В ней надо небольшие правки вносить, т. к. осталась переменная DELAY_KEY, которая переименована, и ещё некоторые мелочи. В целом работает, как будет время исправлю и выложу.
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Crocotea
сообщение 25.11.2020, 15:20
Сообщение #86


***

Novice
Сообщений: 51
Регистрация: 30.10.2020
Группа: Пользователи
Наличность: 0
Пользователь №: 19.787



Цитата(DarkMaster @ 25.11.2020, 6:17) *
Действительно...
Crocotea, а нафига старую версию то?) Пятая же последняя от Cockney. Отсюда походу и проблемы. В целом хотелось бы попросить протестить последнии версии обоих скетчей и мою обертку под скетч Cirus. Надо тему потихоньку в порядок приводить и править первый пост.

Протестил скетч Cockney №5 после Cirus стала работать... Странно но в последний раз не работали все 3.

Цитата(DarkMaster @ 23.11.2020, 17:55) *

а text не работает что ли?
Не выдержала душа)
Убран режим блондинки(капс), все функции и объявления перенесены в локальные, использование через require.
Arduino.lua
Код
local export_array = {}

export_array.com = 5          -- номер порта
export_array.delay_key = 20   -- пауза между нажатиями клавиш. Только чтение, изменение через set_delay_key.
export_array.delay_mouse = 20 -- пауза между нажатием и отпусканием кнопок мыши. Только чтение, изменение через set_delay_mouse.

export_array.mouse_left_button = 1
export_array.mouse_right_button = 2
export_array.mouse_middle_button = 4

export_array.left_ctrl = 0x80
export_array.left_shift = 0x81
export_array.left_alt = 0x82
export_array.left_gui = 0x83
export_array.right_ctrl = 0x84
export_array.right_shift = 0x85
export_array.right_alt = 0x86
export_array.right_gui = 0x87
export_array.up_arrow = 0xDA
export_array.down_arrow = 0xD9
export_array.left_arrow = 0xD8
export_array.right_arrow = 0xD7
export_array.backspace = 0xB2
export_array.tab = 0xB3
export_array["return"] = 0xB0
export_array.esc = 0xB1
export_array.insert = 0xD1
export_array.delete = 0xD4
export_array.page_up = 0xD3
export_array.page_down = 0xD6
export_array.home = 0xD2
export_array["end"] = 0xD5
export_array.caps_lock = 0xC1
export_array.f1 = 0xC2
export_array.f2 = 0xC3
export_array.f3 = 0xC4
export_array.f4 = 0xC5
export_array.f5 = 0xC6
export_array.f6 = 0xC7
export_array.f7 = 0xC8
export_array.f8 = 0xC9
export_array.f9 = 0xCA
export_array.f10 = 0xCB
export_array.f11 = 0xCC
export_array.f12 = 0xCD
export_array.F1 = 0xC2
export_array.F2 = 0xC3
export_array.F3 = 0xC4
export_array.F4 = 0xC5
export_array.F5 = 0xC6
export_array.F6 = 0xC7
export_array.F7 = 0xC8
export_array.F8 = 0xC9
export_array.F9 = 0xCA
export_array.F10 = 0xCB
export_array.F11 = 0xCC
export_array.F12 = 0xCD

local command = function (text)
    local file = io.open("COM" .. tostring(COM),"w")
    if file then
        file:write(text)
        file:close()
        wait(#text * (DELAY_KEY + DELAY_KEY * 0.2))    -- количество символов * пауза + 20%
    else
    log('Порт не открылся, скрипт остановлен')
    end_script()
    end
end
export_array.set_delay_key = function (ms)
    if type(tonumber(ms)) ~= 'number' then return end
    command ('00' .. tostring(ms))
    export_array.delay_key = ms
end

export_array.set_delay_mouse = function (ms)
    if type(tonumber(ms)) ~= 'number' then return end
    command ('01' .. tostring(ms))
    export_array.delay_mouse = ms
end

export_array.key = function (code)
     if type(code) == 'number' then command ('1' .. tostring(tonumber(code)))
     else command ('1' .. tostring(code:byte()))
     end
end
export_array.text = function (text)
     command ('2' .. text)
end
export_array.key_down = function (code)
     if type(code) == 'number' then command ('3' .. tostring(tonumber(code)))
     else command ('3' .. tostring(code:byte()))
     end
end

export_array.key_up = function (code)
     if type(code) == 'number' then command ('4' .. tostring(tonumber(code)))
     else command ('4' .. tostring(code:byte()))
     end
end
export_array.mouse = {}
export_array.mouse.move = function (x, y)
    local mouseX, mouseY = mouse_pos('abs')
    local znakX, znakY = '+', '+'
    if mouseX - x > 0 then znakX = '-' end
    if mouseY - y > 0 then znakY = '-' end
    command ('5' .. znakX .. znakY .. tostring(math.abs(mouseX - x) * 0xFFFF + math.abs(mouseY - y)))
end
export_array.mouse.click = function (x, y, button)
    if button == nil then button = export_array.mouse_left_button end
    export_array.mouse.move(x, y)
    command ('6' .. tostring(button))
end

export_array.mouse.left = function (x, y)
    export_array.mouse.move(x, y)
    command ('6' .. tostring(export_array.mouse_left_button))
end

export_array.mouse.right = function (x, y)
    export_array.mouse.move(x, y)
    command ('6' .. tostring(export_array.mouse_right_button))
end

export_array.mouse.middle = function (x, y)
    export_array.mouse.move(x, y)
    command ('6' .. tostring(export_array.mouse_middle_button))
end
export_array.mouse.dbl = function (x, y, button)
    if button == nil then button = export_array.mouse_left_button end
    export_array.mouse.move(x, y)
    command ('6' .. tostring(button))
    wait(100)
    command ('6' .. tostring(button))
end

export_array.mouse.left_dbl = function (x, y)
    export_array.mouse.move(x, y)
    command ('6' .. tostring(export_array.mouse_left_button))
    wait(100)
    command ('6' .. tostring(export_array.mouse_left_button))
end

export_array.mouse.right_dbl = function (x, y)
    export_array.mouse.move(x, y)
    command ('6' .. tostring(export_array.mouse_right_button))
    wait(100)
    command ('6' .. tostring(export_array.mouse_right_button))
end

export_array.mouse.middle_dbl = function (x, y)
    export_array.mouse.move(x, y)
    command ('6' .. tostring(export_array.mouse_middle_button))
    wait(100)
    command ('6' .. tostring(export_array.mouse_middle_button))
end
export_array.mouse.down = function (x, y, button)
    if button == nil then button = export_array.mouse_left_button end
    export_array.mouse.move(x, y)
    command ('7' .. tostring(button))
end

export_array.mouse.left_down = function (x, y)
    export_array.mouse.move(x, y)
    command ('7' .. tostring(export_array.mouse_left_button))
end

export_array.mouse.right_down = function (x, y)
    export_array.mouse.move(x, y)
    command ('7' .. tostring(export_array.mouse_right_button))
end

export_array.mouse.middle_down = function (x, y)
    export_array.mouse.move(x, y)
    command ('7' .. tostring(export_array.mouse_middle_button))
end
export_array.mouse.up = function (x, y, button)
    if button == nil then button = export_array.mouse_left_button end
    command ('8' .. tostring(button))
end

export_array.mouse.left_up = function (x, y)
    command ('8' .. tostring(export_array.mouse_left_button))
end

export_array.mouse.right_up = function (x, y)
    command ('8' .. tostring(export_array.mouse_right_button))
end

export_array.mouse.middle_up = function (x, y)
    command ('8' .. tostring(export_array.mouse_middle_button))
end
return export_array
Настройки
Код
-- Номер порта
com = 5
-- Пауза между нажатиями клавиш.
-- Только чтение, изменение через set_delay_key.
delay_key = 20
-- Пауза между нажатием и отпусканием кнопок мыши.
-- Только чтение, изменение через set_delay_mouse.
delay_mouse = 20
Список многосимвольных клавиш
Код
mouse_left_button = 1
mouse_right_button = 2
mouse_middle_button = 4

left_ctrl = 0x80
left_shift = 0x81
left_alt = 0x82
left_gui = 0x83
right_ctrl = 0x84
right_shift = 0x85
right_alt = 0x86
right_gui = 0x87
up_arrow = 0xDA
down_arrow = 0xD9
left_arrow = 0xD8
right_arrow = 0xD7
backspace = 0xB2
tab = 0xB3
return = 0xB0
_return = 0xB0
enter= 0xB0
esc = 0xB1
insert = 0xD1
delete = 0xD4
page_up = 0xD3
page_down = 0xD6
home = 0xD2
end = 0xD5
_end = 0xD5
caps_lock = 0xC1
f1 = 0xC2
f2 = 0xC3
f3 = 0xC4
f4 = 0xC5
f5 = 0xC6
f6 = 0xC7
f7 = 0xC8
f8 = 0xC9
f9 = 0xCA
f10 = 0xCB
f11 = 0xCC
f12 = 0xCD
F1 = 0xC2
F2 = 0xC3
F3 = 0xC4
F4 = 0xC5
F5 = 0xC6
F6 = 0xC7
F7 = 0xC8
F8 = 0xC9
F9 = 0xCA
F10 = 0xCB
F11 = 0xCC
F12 = 0xCD
Список доступных функций
Код
set_delay_key (ms) -- установить задержку нажатий клавиатуры
set_delay_mouse (ms) -- установить задержку нажатий мыши
key (code) -- нажать клавишу клавиатуры
text (text) -- отослать текст
key_down (code) -- зажать (не отжимая) клавишу клавиатуры
key_up (code) -- отжать клавишу клавиатуры
mouse.move (x, y) -- переместить мышь
mouse.click (x, y, button) -- кликнуть мышью, button должен содержать код клавиши мыши
mouse.left (x, y) -- кликунть левой кнопкой
mouse.right (x, y) -- кликнуть правой кнопкой
mouse.middle (x, y) -- кликнуть средней кнопкой
mouse.dbl (x, y, button) -- двойной клик, button должен содержать код клавиши мыши
mouse.left_dbl (x, y) -- двойной клик левой кнопкой мыши
mouse.right_dbl (x, y) -- двойной клик правой кнопкой мыши
mouse.middle_dbl (x, y) -- двойной клик средней кнопкой мыши
mouse.down (x, y, button) -- зажать (не отжимая) кнопку мыши, button должен содержать код клавиши мыши
mouse.left_down (x, y) -- зажать (не отжимая) левую кнопку мыши
mouse.right_down (x, y) -- зажать (не отжимая) правую кнопку мыши
mouse.middle_down (x, y) -- зажать (не отжимая) среднюю кнопку мыши
mouse.up (x, y, button) -- отжать кнопку мыши, button должен содержать код клавиши мыши
mouse.left_up (x, y) -- отжать левую кнопку мыши
mouse.right_up (x, y) -- отжать правую кнопку мыши
mouse.middle_up (x, y) -- отжать среднюю кнопку мыши
Использование
Код
local hw = require'arduino'
hw.key("a")



не понял как пользоваться
Код
--lua
local hw = require'arduino'
hw.key("a")
com = 8
set_delay_key = 20
set_delay_mouse = 20

wait(1000)

выдает ошибку
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 25.11.2020, 17:14
Сообщение #87


***********

Модератор UOPilot
Сообщений: 9.467
Регистрация: 2.12.2008
Группа: Супермодераторы
Наличность: 27722
Пользователь №: 11.279



все обращения через
hw.
какую ошибку?


--------------------
Скрипты UOPilot под заказ.
Консультации по UOpilot 15$/час.
Услуги Lua разработчика (не пилот, проекты, постоянка)
Disсоrd:
Kov____
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Crocotea
сообщение 25.11.2020, 17:24
Сообщение #88


***

Novice
Сообщений: 51
Регистрация: 30.10.2020
Группа: Пользователи
Наличность: 0
Пользователь №: 19.787



Цитата(DarkMaster @ 25.11.2020, 17:14) *

все обращения через
hw.
какую ошибку?


Код
17:23:53 12 (autosaved_12.txt, 0): a runtime error.
3: attempt to index local 'hw' (a boolean value)
--lua
local hw = require'arduino'
hw.key("a")
com = 8
set_delay_key = 20

Такая
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 25.11.2020, 18:23
Сообщение #89


***********

Модератор UOPilot
Сообщений: 9.467
Регистрация: 2.12.2008
Группа: Супермодераторы
Наличность: 27722
Пользователь №: 11.279



Цитата
3: attempt to index local 'hw' (a boolean value)

чего? файл arduino точно мой и на месте лежит? так не бывает)
попробуйте сделать
log(type(hw))
сразу после загрузки через require


--------------------
Скрипты UOPilot под заказ.
Консультации по UOpilot 15$/час.
Услуги Lua разработчика (не пилот, проекты, постоянка)
Disсоrd:
Kov____
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Crocotea
сообщение 25.11.2020, 18:47
Сообщение #90


***

Novice
Сообщений: 51
Регистрация: 30.10.2020
Группа: Пользователи
Наличность: 0
Пользователь №: 19.787



Цитата(DarkMaster @ 25.11.2020, 18:23) *

чего? файл arduino точно мой и на месте лежит? так не бывает)
попробуйте сделать
log(type(hw))
сразу после загрузки через require

перепроверил луа, именно тот, пишет:
Код
18:46:30 12 (autosaved_12.txt, 0): table
18:46:30 12 (autosaved_12.txt, 0): a runtime error.
.\arduino.lua:64: attempt to perform arithmetic on global 'DELAY_KEY' (a nil value)
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Cockney
сообщение 25.11.2020, 18:50
Сообщение #91


********

Master
Сообщений: 1.395
Регистрация: 22.6.2013
Группа: Пользователи
Наличность: 21061
Пользователь №: 16.156



Цитата(cirus @ 22.11.2020, 18:37) *

Архив распаковать, файл Arduino.lua положить в папку с пилотом
Скетч в архиве.



Код

// скопировать строку в массив
text.substring(1).toCharArray(key, text.length());


А вот это не может ничего сломать ? длина key может быть меньше text.length(), мб что-то затирает между вызовами.

Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 25.11.2020, 20:21
Сообщение #92


***********

Модератор UOPilot
Сообщений: 9.467
Регистрация: 2.12.2008
Группа: Супермодераторы
Наличность: 27722
Пользователь №: 11.279



Crocotea, Поправил. https://forum.uokit.com/index.php?s=&sh...st&p=438986

Cockney, откуда этот кусок кода?


--------------------
Скрипты UOPilot под заказ.
Консультации по UOpilot 15$/час.
Услуги Lua разработчика (не пилот, проекты, постоянка)
Disсоrd:
Kov____
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Cockney
сообщение 25.11.2020, 21:31
Сообщение #93


********

Master
Сообщений: 1.395
Регистрация: 22.6.2013
Группа: Пользователи
Наличность: 21061
Пользователь №: 16.156



Цитата(DarkMaster @ 25.11.2020, 20:21) *

Cockney, откуда этот кусок кода?



скетч cirus. там ссылка вроде на пост указана, откуда я взял это
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Crocotea
сообщение 25.11.2020, 22:51
Сообщение #94


***

Novice
Сообщений: 51
Регистрация: 30.10.2020
Группа: Пользователи
Наличность: 0
Пользователь №: 19.787



Цитата(DarkMaster @ 25.11.2020, 20:21) *

Crocotea, Поправил. https://forum.uokit.com/index.php?s=&sh...st&p=438986

Cockney, откуда этот кусок кода?

Та же самая ошибка
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 25.11.2020, 23:01
Сообщение #95


***********

Модератор UOPilot
Сообщений: 9.467
Регистрация: 2.12.2008
Группа: Супермодераторы
Наличность: 27722
Пользователь №: 11.279



Цитата
Та же самая ошибка

Текст ошибки. Не может быть той же - там в этой строке более нет подобных упоминаний.
Код брал с моего поста? Цитаты все я не правил.


--------------------
Скрипты UOPilot под заказ.
Консультации по UOpilot 15$/час.
Услуги Lua разработчика (не пилот, проекты, постоянка)
Disсоrd:
Kov____
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Crocotea
сообщение 25.11.2020, 23:07
Сообщение #96


***

Novice
Сообщений: 51
Регистрация: 30.10.2020
Группа: Пользователи
Наличность: 0
Пользователь №: 19.787



Цитата(DarkMaster @ 25.11.2020, 23:01) *

Текст ошибки. Не может быть той же - там в этой строке более нет подобных упоминаний.
Код брал с моего поста? Цитаты все я не правил.

файл луа
https://yadi.sk/d/50YO-gi0qppIfw
ошибки
Код
22:59:20 12 (autosaved_12.txt, 0): table
22:59:20 12 (autosaved_12.txt, 0): a runtime error.
.\arduino.lua:64: attempt to perform arithmetic on global 'DELAY_KEY' (a nil value)
23:00:05 12 (autosaved_12.txt, 0): table
23:00:05 12 (autosaved_12.txt, 0): a runtime error.
.\arduino.lua:64: attempt to perform arithmetic on global 'DELAY_KEY' (a nil value)
23:00:34 12 (autosaved_12.txt, 0): table
23:06:15 12 (autosaved_12.txt, 0): table
23:06:21 12 (autosaved_12.txt, 0): table
23:07:00 12 (autosaved_12.txt, 0): table

ноль реакции
Код
--lua
local hw = require'arduino'
hw.key("a")
com = 8
set_delay_key = 20
set_delay_mouse = 20

wait(1000)
hw.key(6)
hw.key("a")
hw.key('a')
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 26.11.2020, 0:01
Сообщение #97


***********

Модератор UOPilot
Сообщений: 9.467
Регистрация: 2.12.2008
Группа: Супермодераторы
Наличность: 27722
Пользователь №: 11.279



все через hw.
hw.com = 8
hw.set_delay_key = 20
hw.set_delay_mouse = 20
Цитата
.\arduino.lua:64: attempt to perform arithmetic on global 'DELAY_KEY' (a nil value)

Файл не соответсвует ошибке. Там просто нет DELAY_KEY в файле вообще нигде. В капсовом виде.
Ругается вот на эту строку:
Код
        wait(#text * (DELAY_KEY + DELAY_KEY * 0.2))    -- количество символов * пауза + 20%

но ее больше не существует, теперь она:
Код
        wait(#text * (export_array.delay_key + export_array.delay_key * 0.2))    -- количество символов * пауза + 20%

Где-то запутались в файлах и версиях.


--------------------
Скрипты UOPilot под заказ.
Консультации по UOpilot 15$/час.
Услуги Lua разработчика (не пилот, проекты, постоянка)
Disсоrd:
Kov____
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
cirus
сообщение 26.11.2020, 2:15
Сообщение #98


**********

Elder
Сообщений: 3.480
Регистрация: 18.8.2014
Группа: Пользователи
Наличность: 26707
Пользователь №: 16.971
Возраст: 29



Прикрепленный файл  arduino.zip ( 2,76 килобайт ) Кол-во скачиваний: 113

Пример использования:
Код
--lua
local hw = require'arduino'

hw.com = 7    -- Номер порта
-- установка пауз
hw.set_delay_key(30)
hw.set_delay_mouse(30)

wait(3000)

hw.key('A')   -- нажать кнопку
hw.key(hw["return"])           -- нажать Enter
hw.text('qwerty!')  -- отправить текст
hw.key(hw.tab)    -- нажать таб

wait(1000)
hw.mouse.left(422, 124)   -- клик левой кнопкой мыши
hw.mouse.right(422, 124)  -- клик правой
wait(500)
hw.mouse.left_dbl(422, 124)    -- двойной клик
wait(500)
hw.mouse.drag(420, 120, 654, 38)    -- переместить из одной точки в другую
-- паузы можно убрать
Пользователь в онлайне!Delete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
DarkMaster
сообщение 26.11.2020, 5:50
Сообщение #99


***********

Модератор UOPilot
Сообщений: 9.467
Регистрация: 2.12.2008
Группа: Супермодераторы
Наличность: 27722
Пользователь №: 11.279



я еще могу понять чем тебе не угодили _return и _end, но enter то за что?)


--------------------
Скрипты UOPilot под заказ.
Консультации по UOpilot 15$/час.
Услуги Lua разработчика (не пилот, проекты, постоянка)
Disсоrd:
Kov____
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Crocotea
сообщение 26.11.2020, 12:13
Сообщение #100


***

Novice
Сообщений: 51
Регистрация: 30.10.2020
Группа: Пользователи
Наличность: 0
Пользователь №: 19.787



Цитата(cirus @ 26.11.2020, 2:15) *

Прикрепленный файл  arduino.zip ( 2,76 килобайт ) Кол-во скачиваний: 113

Пример использования:
Код
--lua
local hw = require'arduino'

hw.com = 7    -- Номер порта
-- установка пауз
hw.set_delay_key(30)
hw.set_delay_mouse(30)

wait(3000)

hw.key('A')   -- нажать кнопку
hw.key(hw["return"])           -- нажать Enter
hw.text('qwerty!')  -- отправить текст
hw.key(hw.tab)    -- нажать таб

wait(1000)
hw.mouse.left(422, 124)   -- клик левой кнопкой мыши
hw.mouse.right(422, 124)  -- клик правой
wait(500)
hw.mouse.left_dbl(422, 124)    -- двойной клик
wait(500)
hw.mouse.drag(420, 120, 654, 38)    -- переместить из одной точки в другую
-- паузы можно убрать



Код
--lua
local hw = require'arduino'

hw.com = 8    -- Номер порта
-- установка пауз
hw.set_delay_key(30)
hw.set_delay_mouse(1000)

wait(3000)
local a,b,x,y = 248, 266, 497, 374

::mt1::
--hw.key('A')   -- нажать кнопку
hw.mouse.move(a, b)
hw.mouse.move(x, y)
log(a,b,x,y)
goto mt1

курсор также двигается в хаотичные места, а не по координатам
Есть ли вероятность какой-то ошибки изза оконных и и экранных координат?
в адруин читает экранные координаты, т.е получается относительные, а в окне пилота относительные координаты идут как 497, 374 abs
Пользователь в офлайнеDelete PostОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения

8 страниц V « < 3 4 5 6 7 > » 
Ответить в эту темуОткрыть новую тему
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 

- Текстовая версия | Версия для КПК Сейчас: 24.4.2024, 11:15
Designed by Nickostyle