Сценарий Lua для синтаксической ошибки G13 в цикле While

Я пытаюсь собрать скрипт автоматической рыбалки для Terraria, который будет делать больше, чем просто щелкать через запланированные промежутки времени. На данный момент это дает мне синтаксическую ошибку в строке, которая говорит while fishing do.

Я попытался разделить время и действие на разные строки, поместить рыбалку в круглые скобки, поместить что-то еще между строкой до и циклом while на случай, если это строка, прежде чем действительно вызвать проблему. Единственное, чего добился любой из них, это когда я поставил 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

person D. Kendall    schedule 11.04.2017    source источник


Ответы (1)


Ошибка в этой строке:

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

что должно быть

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

or

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

В Lua условия IF не нужно заключать в круглые скобки.

person lhf    schedule 11.04.2017
comment
Кстати, спасибо за супер быстрый ответ, исправили, и все сработало как по маслу. - person D. Kendall; 13.04.2017