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

Logitech Lua脚本故障:Caps Lock切换双功能失效及侧键替换需求

解决方案

首先,重构脚本逻辑,用鼠标侧键(4/5键)直接切换后坐力控制模式,同时修复原脚本中分支无法触发的问题。以下是修改后的完整代码:

EnablePrimaryMouseButtonEvents(true);
local active_mode = nil  -- 1=第一种后坐力控制, 2=第二种后坐力控制, nil=关闭

function OnEvent(event, arg)
    -- 鼠标侧键切换模式
    if event == "MOUSE_BUTTON_PRESSED" then
        if arg == 4 then
            active_mode = active_mode ~= 1 and 1 or nil  -- 按鼠标4键切换模式1(开/关)
        elseif arg == 5 then
            active_mode = active_mode ~= 2 and 2 or nil  -- 按鼠标5键切换模式2(开/关)
        end
    end

    -- 执行后坐力控制逻辑
    if EnableRCS ~= false and active_mode then
        if IsMouseButtonPressed(3) then
            repeat
                if IsMouseButtonPressed(1) then
                    repeat
                        if active_mode == 1 then
                            -- 原Caps Lock开启时的后坐力补偿逻辑
                            MoveMouseRelative(-1, RecoilControlStrength)
                            Sleep(DelayRate)
                            MoveMouseRelative(0, RecoilControlStrength)
                            Sleep(DelayRate)
                            MoveMouseRelative(-2, RecoilControlStrength)
                            Sleep(DelayRate)
                            MoveMouseRelative(0, RecoilControlStrength)
                            Sleep(DelayRate)
                        elseif active_mode == 2 then
                            -- 原Caps Lock关闭时的后坐力补偿逻辑
                            MoveMouseRelative(0, RecoilControlStrength)
                            Sleep(DelayRate)
                        end
                    until not IsMouseButtonPressed(1)
                end
            until not IsMouseButtonPressed(3)
        end
    end
end

关键改动说明

  • 模式切换逻辑:新增active_mode变量跟踪当前激活的控制模式,按下鼠标4键切换到模式1(对应原Caps Lock开启的逻辑),按下鼠标5键切换到模式2(对应原Caps Lock关闭的逻辑),再次按下同一侧键可关闭对应模式。
  • 逻辑结构优化:移除了原脚本中RequireToggle的分支判断,将两种后坐力控制逻辑合并到同一分支下,通过active_mode变量选择执行代码,彻底解决原脚本中else分支无法触发的问题。
  • 冗余代码消除:合并了重复的右键、左键按下判断,让代码结构更清晰,减少维护成本。

使用方式

  1. 按鼠标4键:激活第一种后坐力控制模式,再次按下关闭该模式。
  2. 按鼠标5键:激活第二种后坐力控制模式,再次按下关闭该模式。
  3. 按住鼠标右键(键3)+ 左键(键1):根据当前激活的模式执行对应的后坐力补偿操作。

内容的提问来源于stack exchange,提问作者Work Mail DataAnalysisBiz

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.27 06:22:36