Lua:它什么时候调用函数?

Lua:它什么时候调用函数?,lua,love2d,Lua,Love2d,顺便说一下,使用爱的框架 好的,我想创建一个随机贴图生成。我显然只想画一次,所以我试着建立一个非常基本的结构。这不管用,我也不知道为什么 function love.load() testVar = 1 end function love.draw() if testVar == 1 then testFunction() love.graphics.print("Update", 20, 200) end love.graph

顺便说一下,使用爱的框架

好的,我想创建一个随机贴图生成。我显然只想画一次,所以我试着建立一个非常基本的结构。这不管用,我也不知道为什么

function love.load()
    testVar = 1
end

function love.draw()
    if testVar == 1 then
        testFunction()
        love.graphics.print("Update", 20, 200)
    end

    love.graphics.print(testVar, 100, 100)
end

function testFunction()
    love.graphics.print("Success", 20, 300)
    testVar = 0
end
由于draw函数中的print testVar up命令,它只打印“0”。因此,它似乎在更新testVar值,而没有实际运行testFunction。这和Lua有关吗


对于那些不熟悉Love的人,Love.draw被称为每一帧,Love.load只在开始时使用。

此代码按预期工作。它只是
love.draw
每帧调用一次(每秒多次),因此第一帧的输出很快就会被下一帧覆盖。当您需要更改状态(例如,基于用户输入)时,通常使用
love.update
,并使用
love.draw
在屏幕上(每帧)绘制该状态。

“love Framework”?:D第一次听到它…@ShashankKadne:从技术上讲,《恋爱》中的
o
有一个问题,可能是因为制造商希望,如果你不知道如何用键盘编写umlaut,就无法通过谷歌找到它……在调用draw之前,窗口会被清除。它正在打印
“Success”
,但您看不到它。试着打印到控制台。哦,我可能被误解了。谢谢我想这意味着我需要通过draw函数显示地图。