尽管 Paul 的回答是一种选择,但您可以采用不同的方法来解决这个问题:您正在以一种会让您非常痛苦的方式思考这个问题,因为在 Lua 和许多其他语言中,加载文件并不是一种在以下位置运行代码的方式可变时间。尽管这可能会使您更改比您想要的更多的代码,但请考虑为 GUI 状态创建一个变量,并且仅在该变量具有特定值时才绘制您想要的内容。例如:
添加到你的 love.load 函数:
function love.load()
-- Set the gui state to the defualt ( the main menu )
guistate = "menu" -- You probably should use an integer, am using a string for the purpose of clarity.
end
这在同一个地方:
function love.mousepressed( x, y)
if x > 275 and x < 320 and y > 305 and y < 325 then
-- The back button is pressed, change the state to the menu.
guistate = "menu"
end
end
添加到你的 love.draw 函数:
function love.draw()
if guistate = "menu" then
-- Draw the stuff for your main menu
elseif guistate = "options" then
-- Draw the stuff for your options menu.
end
end
附加功能
如果您有兴趣,还可以看看这些 GUI 库:
Love Frames和Quickie