马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
×
本系列教程目的是让大家掌握Lua基本语法与按键精灵手机版的插件开发制作,丰富按键精灵生态环境,让按键精灵变得更加强大!
本教程中部分知识点参考《Lua程序设计》书籍,有兴趣可以自行购买→传送门←
按键精灵手机版插件的开发标准草案请阅读帖子:https://zimaoxy.com/b/t-3297-1-1.html
紫猫学院也有提供Lua插件开发的VIP教学服务,有兴趣请咨询紫猫老师QQ345911220或微信zimaoxy
调试代码
除了自己搭建Lua环境调试代码外,也可以直接用记事本或者vscode文本编辑器之类的软件,通过按键精灵手机助手直接调试插件,详见帖子https://zimaoxy.com/b/t-3297-1-1.html
数值:
数值型与按键精灵手机版中的类型一致,也是直接写变量名=数字,例如
[Lua] 纯文本查看 复制代码 1 2 3 | local a = 10
local b = 20 * 2
local pi = 3.14
|
字符串:
字符串与按键精灵手机版中类型稍有不同,除了可以用双引号外(""),还可以单引号('')和长文本的中括号([[]]),例如
[Lua] 纯文本查看 复制代码 01 02 03 04 05 06 07 08 09 10 11 12 13 | local a = "紫猫"
local b = '编程'
local c = "单引号与双引号没有区别,可能唯一区别就是双引号字符串里出现了单引号'是不需要转义处理的"
local d = '在单引号字符串中出现了双引号"也是不需要转义处理的'
local e = [[
这是一段换行内容
这里的数据都被保存到变量e中
包括这几个换行符
如果内容中也存在两个中括号之类的情况
那么可以给头尾中括号中间加一定数量的等号
例如都加一个等号即可解决这个冲突问题。
]]
|
字符串中的\表示转义符,例如\n是代表换行符,\"是代表一个双引号字符,\\代表一个斜杠字符,所以当你使用需要填写电脑路径时一定要注意转义!
布尔:
布尔与按键精灵手机版中类型稍有不同,在Lua中布尔值是两个小写的true和false,由于Lua是大小写敏感的,所以千万别手贱给首字母大写!其次要记住,在Lua中只有false与nil代表假,其他任何数据全部都是真,包括0与空字符串、空表等都是真。
表:
在Lua中表是最主要最强大的数据结构,它与按键精灵table类似,但是功能更加强大!详见下方代码例子
[Lua] 纯文本查看 复制代码 1 2 3 4 5 6 | local t = {}
t[ "键名" ] = "键值"
t[ 1 ] = 345911220
t.name = "紫猫"
t[ "name" ] = "紫猫"
t.add = function (a, b) return a + b end
|
函数:
function函数与按键类似,但是功能语法相差甚远,在Lua中函数定义语法格式有以下几种
[Lua] 纯文本查看 复制代码 01 02 03 04 05 06 07 08 09 10 11 12 13 14 | f( 123 )
local function f(x)
print (x)
return x
end
f( 123 )
local add = function (a, b)
return a + b
end
result = add( 10 + 20 )
|
function函数支持多个返回值,语法格式如下
[Lua] 纯文本查看 复制代码 1 2 3 4 5 6 | local function foo()
return "a" , "b" , "c"
end
local x, y, z
x, y, z = foo()
|
参数可以使用三个小数点(...)来表示可变长参数,也就是无论填写几个参数,例子如下:
[Lua] 纯文本查看 复制代码 1 2 3 4 5 6 7 8 9 | local function add(...)
local sum = 0
for _, v in ipairs {...} do
sum = sum + v
end
return sum
end
add( 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10 )
|
|