每天学一点点lua
Lua提供的库
条件判断
if( 布尔表达式 1)
then
--[ 在布尔表达式 1 为 true 时执行该语句块 --]
elseif( 布尔表达式 2)
then
--[ 在布尔表达式 2 为 true 时执行该语句块 --]
elseif( 布尔表达式 3)
then
--[ 在布尔表达式 3 为 true 时执行该语句块 --]
else
--[ 如果以上布尔表达式都不为 true 则执行该语句块 --]
end
循环
while循环
index = 1
while(index<=10) do
print(index)
index = index + 1
end
for循环
注意: lua的下标从 1 开始
for index = 1,10 do
print(index)
end
函数
关键字 function
function plus(num1,num2)
return num1+num2
end
-- 调用
num1 = 2
num2 = 3
num3 = plus(num1,num2)
print(num3)
-- 输出5
table表格
1 表格的定义
mytable={}
print(type(mytable))
-- 直接用[]添加
mytable[1]=24
mytable["name"]="kebo"
-- 直接初始化
mytable = {name = "jay",age=18,isMain=true}
-- 用pairs取值
for index,val in pairs(sources) do
print(index,val)
end
2 表格的相关函数
面向对象
!!! 使用table实现面向对象
-- 声明一个表格
Enemy={}
-- this指针
local this = Enemy
-- 成员变量
Enemy.hp = 100
Enemy.speed = 12.3
-- 成员函数
Enemy.Move = function ( ... )
-- body
print("敌人在移动")
end
Enemy.Attack = function ( ... )
-- body
print(this.hp,"attack")
this.Move()
end
-- 调用
Enemy.Attack()