罗技鼠标宏

DefaultNum = 6 -- 默认的移动距离基数

FixedDistance = 400 -- 按下按键4时的固定移动距离

count = 0 -- 计数器,用于逐渐移动的逻辑

function OnEvent(event, arg)

    OutputLogMessage("event = %s, arg = %s\n", event, arg)

    EnablePrimaryMouseButtonEvents(true)

    -- 按下按键编号为4的按键时,逐渐移动鼠标

    if event == "MOUSE_BUTTON_PRESSED" and arg == 4 then

        PressMouseButton(1)  -- 按下鼠标左键

        Sleep(50)            -- 保持按下状态50毫秒

        ReleaseMouseButton(1)

        local steps = 10 -- 将移动分成10步

        local distancePerStep = FixedDistance / steps -- 每步移动的距离

        local delay = 10 / steps -- 每步之间的延迟时间(100毫秒内完成)

        for i = 1, steps do

            MoveMouseRelative(0, distancePerStep) -- 移动鼠标

            Sleep(delay) -- 控制移动速度

            OutputLogMessage("Moved down by " .. distancePerStep .. " units (step " .. i .. ")\n")

        end

    end

    -- 按下鼠标左键时,逐渐移动鼠标

    if event == "MOUSE_BUTTON_PRESSED" and arg == 1 then

        count = 0 -- 重置计数器

        while IsMouseButtonPressed(1) do -- 持续检测左键是否按下

            count = count + 1

            local j = count / 200 + DefaultNum -- 计算移动距离

            MoveMouseRelative(0, math.floor(j)) -- 移动鼠标

            Sleep(8) -- 控制移动速度

            OutputLogMessage("Moved down by " .. math.floor(j) .. " units (gradual)\n")

        end

    end

end



简介:适用罗技G502,长按鼠标左键持续压枪,按鼠标4号键,也就是侧边的G4键时单次压枪(适用连狙),按G5按键就是普通的鼠标左键

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容