【发布时间】:2019-01-11 14:12:40
【问题描述】:
我有这个代码:
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:“var_y”附近应为“=”
18 号线:
If var_y >= var_restpos then
我试过了:
- 更改变量名
- 更改其声明
- 删除 if then 块
- 将整个函数移到脚本文件的开头
这是使用 Watchmaker 的内置脚本编辑器。
我看不到任何错误!?我只是不明白。这是制表师的一些愚蠢特质吗...?
【问题讨论】:
-
不幸的是,Lua 不像 Pascal(或 SQL 或任何其他不区分大小写的语法语言)。在 Lua 中,
If与if不同。我经常想在 Lua 中写Function,就像我在 Pascal 中所做的那样,但是 Lua 要求关键字是小写的。这意味着你可以在 Lua 中使用名称为If的变量,但是谁需要这样的变量呢? -
谢谢。我现在明白了。现在我在理解 Lua 的变量持久性以及它如何处理全局变量时遇到了问题...arrrghhhh