1、Lua语言定义
标识符不能以数字作为起始符,也要避免下划线(_)接大写字母,因为这是Lua自身保留的,如_Start。
常量:全大写和下划线,如MY_CONSTANT
变量:第一个字母小写,如myValue
全局变量:第一个字母用小写g表示,如gMyGlobal
函数名:第一个字母大写,如function MyFunction()
Lua中,两个减号--表示该行为注释,整段注释则用 --[[...--]]
2、变量
在Lua中,变量默认是全局的,不需要在使用前声明,可以在任何地方引入需要的变量。同样,不需要指定变量的类型,变量类型取决于用户赋给它的值,所以通过简单的赋值就可以更改变量的类型。可以使用type函数来判断变量的类型。Lua有5种变量类型:nil、Boolean、string、Number和table。①nil 表示这个变量还没有被赋值,如果给一个变量赋值为nil,那么实际上表示删除该变量的意思。②Boolean 只有两个值:true和false③string Lua字符串可以小到一个字符,也可以包含百万字符以上。特殊的字符串:\a响铃 \b退格 \f换页符 \n换行符 \r换行符 \t制表符 \v垂直制表符 \\反斜杠 \"双引号 \'单引号 \[左方括号 \]右方括号 Lua会在合理情况下自动转换数字和字符。④Number 双精度浮点数,Lua没有整数类型。⑤table 按大牛的话说,table是Lua中最强大也是最容易造成困扰的数据类型,以后会详细讨论到。现在我们把它当成数组来用先。
3、运算符
算术运算符,+-*/ 关系运算符,==等于,~=不等于,如果使用==比较两个table,只有他们是同一个对象时才true,因为变量只是table对象的引用,不能直接比较里面的值。 逻辑运算符,小写,and、or、not(返回参数相反值)。在Lua中,false和nil会被逻辑运算符都当成false,其他值为true。
4、控制结构
①if if 条件 then ... end 还可以使用elseif关键字来添加一系列条件,在AI脚本中,很有用,因为Lua不支持case句式。 ②while和repeat while 条件 do ... end repeat控制结构程序至少会被执行一次。 repeat ... until 条件 ③for for 变量值范围 do ... end ④break 从循环结构中强制退出