Нажатие клавиш в свернутом режиме

bereg101

Участник
Автор темы
55
0
Версия MoonLoader
Другое
Написал бота для сервера, работающий по типу: подбегает к точке, жмет ALT, бежит к чекпоинту и так по кругу.
Проблема в том, что если свернуть игру, то нажатие клавиш в игре не происходит, но кнопка ALT, которая должна нажиматься в игре, нажимается вне игры.

Можно ли решить эту проблему? Хочется просто свернуть игру и пусть бот сам работает, но пока что нужно держать игру открытой чтоб кнопки могли нажиматься.
Мб какой то специальный антиафк нужен?


Варианты которые использовал для нажатии клавиш:
local ffi = require "ffi"
ffi.cdef[[
     void keybd_event(int keycode, int scancode, int flags, int extra);
]]


function EmulateKey(key, isDown)
    if not isDown then
        ffi.C.keybd_event(key, 0, 2, 0)
    else
        ffi.C.keybd_event(key, 0, 0, 0)
    end
end


function PresVirtualKey(key, isDown)
    if not isDown then
        setVirtualKeyDown(key, true)
    else
        setVirtualKeyDown(key, false)
    end
end
 

YarikVL

Известный
Проверенный
4,767
1,819
Написал бота для сервера, работающий по типу: подбегает к точке, жмет ALT, бежит к чекпоинту и так по кругу.
Проблема в том, что если свернуть игру, то нажатие клавиш в игре не происходит, но кнопка ALT, которая должна нажиматься в игре, нажимается вне игры.

Можно ли решить эту проблему? Хочется просто свернуть игру и пусть бот сам работает, но пока что нужно держать игру открытой чтоб кнопки могли нажиматься.
Мб какой то специальный антиафк нужен?


Варианты которые использовал для нажатии клавиш:
local ffi = require "ffi"
ffi.cdef[[
     void keybd_event(int keycode, int scancode, int flags, int extra);
]]


function EmulateKey(key, isDown)
    if not isDown then
        ffi.C.keybd_event(key, 0, 2, 0)
    else
        ffi.C.keybd_event(key, 0, 0, 0)
    end
end


function PresVirtualKey(key, isDown)
    if not isDown then
        setVirtualKeyDown(key, true)
    else
        setVirtualKeyDown(key, false)
    end
end
setGameKeyState не пробовал?