Lua 为 While 循环中的 G13 语法错误编写脚本

Lua Scripting for G13 Syntax Error on While Loop

我正在尝试为 Terraria 编写一个自动钓鱼脚本,它不仅仅是按预定的时间间隔点击。在这一点上,它在 while fishing do.

这行给我一个语法错误

我试过将 while 和 do 分开到不同的行,将钓鱼放在括号中,在之前的行和 while 循环之间放置其他内容,以防它是实际导致问题之前的行。其中任何一个完成的唯一一件事是当我把 do 放在下一行时。当我这样做时,它抱怨 just do 行。

我是 Lua 脚本编写的新手,但它看起来与我在文档中看到的完全相同的 while 循环。

fishing = false

function goFish()
    PressAndReleaseKey("d")
    Sleep(5)
    PressAndReleaseKey("d")
    PressAndReleaseKey("1")
    local x = GetRunningTime()
    while fishing do
        if(GetRunningTime() % 180000) == 0) then PressAndReleaseKey("b") end
        PressAndReleaseMouseButton(1)
        Sleep(4500)
        if(GetRunningTime()-x > 6000000) then
            x = getBait()
        end
    end
end

错误在这一行:

if(GetRunningTime() % 180000) == 0) then PressAndReleaseKey("b") end

应该是

if(GetRunningTime() % 180000) == 0 then PressAndReleaseKey("b") end

if((GetRunningTime() % 180000) == 0) then PressAndReleaseKey("b") end

在Lua中IF条件不需要用括号括起来。