我在这里的代码是lua
function onMouseDown(event)
print(event.x, event.y)
if event.x>160 then
print("what")
return 1
print("whatwhat")
else
return 0
print("WhatWhatWhat")
end
fruit:setX(event.x)
fruit:setY(event.y)
end
但是正在呻吟the main.lua:59:'结束'预期(关闭'如果'在第56行)靠近'print'所以它期待在我的结尾处结束如果低于打印(“whatwhat” )。 但是我在那里结束了,如果我这样做,它仍然会嘲笑我。
我对lua很新,我有点困惑,我通常用c#编程
答案 0 :(得分:8)
请参阅Lua手册§3.3.4:
return 语句只能写为块的最后一个语句。如果确实需要在块的中间返回,则可以使用显式内部块,如习语
do return end
,因为现在返回是(内部)块中的最后一个语句。
您的代码在print
语句后调用return
,因此无效。
答案 1 :(得分:0)
我怀疑你的问题是返回后的打印。这是死代码; Lua希望在一个区块结束时返回。