Syntax '=';预期接近var_y

Syntax '=';预期接近var_y,syntax,lua,Syntax,Lua,我有以下代码: function var_leafdrop(var_inc, var_restpos) If var_y >= var_restpos then var_y = var_restpos else var_y = var_y + var_inc end return var_y end 我得到一个错误: 错误18:“=”应在“变量y”附近 18作为一行: 如果var\u y>=var\u rest

我有以下代码:

function var_leafdrop(var_inc, var_restpos)

     If var_y >= var_restpos then
        var_y = var_restpos
     else
        var_y = var_y + var_inc
     end

     return var_y

end
我得到一个错误:

错误18:“=”应在“变量y”附近

18作为一行:

如果var\u y>=var\u restpos,则

我试过:

  • 更改变量名
  • 更改其声明
  • 删除if-then块
  • 将整个函数移动到脚本文件的开头
这是使用Watchmaker的内置脚本编辑器


我看不出有什么错误!?我就是不明白。这是Watchmaker的愚蠢特质吗?

如评论中所述,Lua区分大小写。
因此,请使用
if
而不是
if

不幸的是,Lua不像Pascal(或SQL或任何其他不区分大小写的语法语言)。在Lua中,
If
If
不同。我经常想用Lua编写
函数
,就像我在Pascal中所做的那样,但是Lua要求关键字小写。这意味着您可以在Lua中使用名为
的变量,但谁需要这样的变量呢?谢谢。我现在明白了。现在我在理解Lua的变量持久性和它如何处理全局变量方面遇到了问题…啊