点击进入lua零基础启蒙第二节课
Lua 数据类型入门:搞懂这些,你写的脚本再也不报错!
想给 NPC 加段对话却总提示 "错误"?想算个怪物血量却得到一串乱码?别急!这节课带你吃透 Lua 的 "8 大法宝"—— 数据类型和变量,就像学会给游戏里的道具分类,知道哪个是装备、哪个是药水,才能玩得转!
一、变量:Lua 里的 "储物箱",想装啥全由你定
1. 全局变量 vs 局部变量:就像公共仓库和私人背包
- 全局变量:整个游戏都能用!比如定义
gold = 1000
,不管在哪个脚本里,都能读到这 1000 金币(但记得少用,占内存哦)。
- 局部变量:只在自己的 "小房间" 里生效!用
local
开头,比如local hp = 500
,出了这个脚本就自动消失,轻便又高效。
一句话总结:临时用的变量(比如算伤害)用局部变量,全游戏通用的配置(比如初始等级)用全局变量,不容易乱!
二、8 大数据类型:给 Lua 里的 "万物" 贴标签
1. 最常用的 3 种,今天必须拿下!
- **nil(空)**:没赋值的变量就是它!比如你定义了
local name
但没给值,打印出来就是nil
,相当于 "空位"。
- **number(数字)**:游戏里的血量、攻击力、坐标全靠它!不管是整数(100)还是小数(3.14),都叫 number。算个
3×6
,立马给你出 18,比计算器还快~
- **string(字符串)**:NPC 说的话、装备名字都用它!用双引号或单引号包起来,比如
"屠龙刀"
、'欢迎来到沙巴克'
,写错引号可就不认啦~
2. 剩下 5 种,先混个脸熟
- **boolean(布尔)**:只有
true
(真)和false
(假),比如判断 "玩家是否活着",活着就是true
,死了就是false
。
- **function(函数)**:相当于 "快捷指令",比如
print()
就是个函数,专门负责打印内容,以后你还能自己写函数让 NPC 自动发任务~
- **table(表)**:Lua 里的 "万能容器"!既能当数组存一堆怪物 ID,又能当字典存 NPC 的属性(比如
{name="商人", money=10000}
),超灵活!
- **userdata(用户数据)、thread(线程)**:暂时用不上,等你进阶后再解锁,现在先记着前面 6 个就够啦~