You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Logitech Gaming Software Lua脚本中实现左右键同按触发功能

修改后的Logitech Lua脚本(左右键同时按住激活)

以下是调整后的脚本,实现同时按住鼠标左右键时激活脚本,松开任意一键即停用的逻辑:

local function OutputLogs(s)
   OutputLogMessage(s.."\n")
   OutputDebugMessage(s.."\n")
end 

local Recoil_Activator = false
local last_state = false  -- 记录上一次激活状态,避免重复输出日志

function OnEvent(event, arg)
    if event == "PROFILE_ACTIVATED" then
        EnablePrimaryMouseButtonEvents(true)
    elseif event == "MOUSE_BUTTON_PRESSED" or event == "MOUSE_BUTTON_RELEASED" then
        -- 检查是否同时按住左右键
        local current_state = IsMouseButtonPressed(1) and IsMouseButtonPressed(2)
        if current_state ~= last_state then
            Recoil_Activator = current_state
            last_state = current_state
            OutputLogs(Recoil_Activator and "ON_Macro" or "OFF_Macro")
        end
    elseif event == "MOUSE_BUTTON_PRESSED" and arg == 1 and Recoil_Activator then 
        MoveMouseRelative(2, -2)
        repeat
            MoveMouseRelative(-4, 4)
            Sleep(3)
            MoveMouseRelative(4, -4)
            Sleep(3)
        until not IsMouseButtonPressed(1)
    end
end

关键修改说明

  • 移除滚轮激活逻辑:删除原代码中Macro_Activation_Key变量及滚轮键触发分支,不再通过点击滚轮切换状态。
  • 实时检测左右键状态:在鼠标按键按下/松开事件中,通过IsMouseButtonPressed(1)(左键)和IsMouseButtonPressed(2)(右键)判断是否同时按住,实时更新激活状态。
  • 避免重复日志输出:新增last_state变量记录上一次激活状态,仅当状态发生变化时才打印日志,防止频繁重复输出。
  • 保留原后坐力控制逻辑:原有的鼠标移动循环逻辑保持不变,仅在Recoil_Activator为true时触发。

内容的提问来源于stack exchange,提问作者Farrel Anelca

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.27 09:12:15