Добрый день. Я новичок в CoronaSDk, и я столкнулся с проблемой относительно timer.performWithDelay. Вот мой код:CoronaSDK timer.performWithDelay итерация путаницы
local time
function main()
display.setStatusBar(display.HiddenStatusBar)
time = 180
timelimiter()
timelimit = timer.performWithDelay(1000,decreaseTime,0)
end
function timelimiter()
timeNumber = display.newGroup()
timeNumber = display.newText("Time: "..tostring(time), 1, 0, native.systemFontBold, 14)
timeNumber.x = 330
timeNumber.y = 300
end
function decreaseTime()
time = time - 1
timeNumber.isVisible = false
timelimiter()
print(time)
if(tostring(time) == "0") then
print("Finish!")
timer.pause(timelimit)
end
end
main()
Этот код работает как ожидалось. Я даже пытался создать новый файл main.lua с этими кодами, и я смог запустить его без ошибок. Но моя проблема заключается в том, когда я реализовал ее в игре, которую я пытался сделать, цикл останавливается в 176. Может ли кто-нибудь помочь мне с этим? Весь код моего проекта здесь (конкретный файл lua, о котором я говорил).
Спасибо за вашу помощь. Извините за мой английский. :)
Возможно, это не связано, но почему вы устанавливаете 'timeNumber.isVisible = false', что скроет его, то вы никогда не сделаете его видимым снова? Кроме того, вам редко требуется 'tostring', Lua для htis, поэтому в' display.newText' нет необходимости, а в 'reduceTime' использовать' if time == 0 then'. – Schollii
Я установил timeNumber.isVisible = false, предшествующий timelimiter(), чтобы он не перекрывал текущий текст. Спасибо за ваш быстрый ответ. :) – kenkenXD