我在Lua为这个游戏写了一个自动点击宏。每件事都正常工作,但有时即使他已经完成了工作,他也会继续工作。我搞不懂wrong.According到底是什么意思,脚本应该在打开Caps的同时按下左右鼠标按钮(瞄准和射击),当鼠标左键松开时停止工作。我没有编程经验,我刚刚开始训练,所以也许我没有看到明显的错误,请帮助。下面是脚本的一部分:
EnablePrimaryMouseButtonEvents(true);
function OnEvent(event, arg)
if IsKeyLockOn("capslock") then
if IsMouseButtonPressed(3) then
repeat
Sleep(40)
MoveMouseRelative(0, 1)
Sleep(40)
MoveMouseRelative(0, 1)
Sleep(40)
MoveMouseRelative(0, 1)
Sleep(40)
MoveMouseRelative(0, 0)
Sleep(40)
MoveMouseRelative(0, 0)
if not IsMouseButtonPressed(1) then break end
ReleaseMouseButton(1)
Sleep(10)
MoveMouseRelative(0, 2)
Sleep(10)
MoveMouseRelative(0, 2)
Sleep(10)
MoveMouseRelative(0, 1)
Sleep(10)
MoveMouseRelative(0, 1)
Sleep(10)
MoveMouseRelative(0, 1)
PressMouseButton(1)
Sleep(40)
MoveMouseRelative(0, 1)
Sleep(40)
MoveMouseRelative(0, 1)
Sleep(40)
MoveMouseRelative(0, 1)
Sleep(40)
MoveMouseRelative(0, 1)
Sleep(40)
MoveMouseRelative(0, 1)
if not IsMouseButtonPressed(1) then break end
ReleaseMouseButton(1)
Sleep(10)
MoveMouseRelative(0, 1)
Sleep(10)
MoveMouseRelative(0, 1)
Sleep(10)
MoveMouseRelative(0, 1)
Sleep(10)
MoveMouseRelative(0, 1)
Sleep(10)
MoveMouseRelative(0, 1)
PressMouseButton(1)
until not IsMouseButtonPressed(1)
end
end
end
发布于 2022-09-26 13:39:34
reapeat until
块中的最后一条语句是PressmouseButton(1)
,停止循环的条件是not IsMouseButtonPressed(1)
。
所以在一个理想的世界里,你的循环不会因为这种情况而停止。如果你只按了鼠标按钮,怎么可能不按呢?只有一个原因:
从手册中:
PressMouseButton()函数用于模拟鼠标按下按钮。注意:之后立即调用IsMouseButtonPressed,很可能会返回以前的状态。操作需要几毫秒才能完成.
这种“很可能”的拖延使它有时停止。
https://stackoverflow.com/questions/73853914
复制相似问题