我对lua不太有经验,我刚刚编辑了一个朋友发给我的脚本,目前当大写锁定打开时,脚本启用,当大写锁定关闭时,脚本禁用。相当简单,我想做的是当 caps 打开时,启用 else 语句上方的所有代码,当 caps 关闭时,启用 else 语句下方的代码。这是代码,您可以看到我有一个 else 语句,当第一个块的条件不满足时,应该将其打开,但是这不会发生。我希望在关闭 CapsLock 时使用“else”语句下面的代码。另外,当我讨论这个主题时,如果有人知道如何将切换键从 CapsLock 更改为鼠标侧面的鼠标按钮,那就太好了,因为在这种情况下,我可以只使用鼠标按钮 4 来执行上面的代码else 语句和其下面的代码的鼠标按钮 5 将会有很大的帮助。预先感谢。
EnablePrimaryMouseButtonEvents (true);
function OnEvent(event,arg)
if EnableRCS ~= false then
if RequireToggle ~= false then
if IsKeyLockOn(ToggleKey)then
if IsMouseButtonPressed(3)then
repeat
if IsMouseButtonPressed(1) then
repeat
MoveMouseRelative(-1,RecoilControlStrength)
Sleep(DelayRate)
MoveMouseRelative(0,RecoilControlStrength)
Sleep(DelayRate)
MoveMouseRelative(-2,RecoilControlStrength)
Sleep(DelayRate)
MoveMouseRelative(0,RecoilControlStrength)
Sleep(DelayRate)
until not IsMouseButtonPressed(1)
end
until not IsMouseButtonPressed(3)
end
end
else
if IsMouseButtonPressed(3)then
repeat
if IsMouseButtonPressed(1) then
repeat
MoveMouseRelative(0,RecoilControlStrength)
Sleep(DelayRate)
until not IsMouseButtonPressed(1)
end
until not IsMouseButtonPressed(3)
end
end
else
end
end
代码的顶部部分(在 else 语句之前)按预期工作,当大写锁定打开时,该代码正在运行,但是我打算让 else 语句后面的代码在大写锁定关闭时生效,但事实并非如此。请帮忙<3
状态机:
sum = function (a, b) return a + b end
sub = function (a, b) return a - b end
States = {sum=sum, sub=sub}
State = States.sum
c1 = State (5, 4) -- 9
State = States.sub
c2 = State (5, 4) -- 1
只需切换状态,不需要检查条件,状态已经存在了。