您好,登錄后才能下訂單哦!
本文只做個(gè)人學(xué)習(xí)筆記!
Lua腳本語(yǔ)言的優(yōu)點(diǎn):免費(fèi)、小巧、快速和易移植。
游戲項(xiàng)目中的Lua,可以完成以下工作
編輯游戲用戶界面(玩家和你的游戲進(jìn)行交互的媒介)
定義、存儲(chǔ)和管理游戲數(shù)據(jù)(Lua本人并沒(méi)有直接訪問(wèn)外部數(shù)據(jù)庫(kù)的能力,但可以使用C++組件)
管理游戲?qū)崟r(shí)事件
創(chuàng)建和維護(hù)開發(fā)者有好的游戲存儲(chǔ)和載入系統(tǒng)
編寫游戲的人工智能(AI)
創(chuàng)建功能原型,可以之后用高性能語(yǔ)言移植
Lua入門
Lua控制臺(tái)
lua腳本(擴(kuò)展名為.lua的文本文本)
代碼塊(Chunk):?jiǎn)蝹€(gè)命令或者一系列命令組成腳本文件
dofile:用來(lái)立即執(zhí)行腳本
“\\”代替單斜線,單斜線是用來(lái)告訴lua運(yùn)行環(huán)境他后面的特殊符號(hào)
Lua基礎(chǔ)
1優(yōu)勢(shì):可以整合C++模塊來(lái)擴(kuò)展自身功能
2語(yǔ)言定義:不能以數(shù)字作為起始符,也要避免下劃線(_)接大寫字母
3lua保留關(guān)鍵字:
and | local | break | nil |
do | not | else | or |
elseif | repeat | end | return |
false | then | for | true |
function | until | if | while |
in |
4變量:變量不需要在使用前聲明,類型取決人用戶給它賦的值
5種變量類型:nil、Boolean、string、Number和table
nil:用來(lái)表示這個(gè)變量還沒(méi)有被賦值。例如:myValue = nil
Boolean:變量只有兩種true和false。例如:myValue = true
string(字符串):Lua中字符串可以小到一個(gè)字符,也可以包含百萬(wàn)字符以上
Number(雙精度浮點(diǎn)數(shù))
table(數(shù)據(jù)類型)
5局部變量和全局變量
默認(rèn)是全局的
變量的有效范圍取決于聲明變量的位置,例:
function Myfun()
local myX = 7
if myX < 10 then
local myY = "hello world"
print(myY)
end
print(myY)
end
執(zhí)行結(jié)果:
hello world
nil
運(yùn)算符(特殊符號(hào)):可以讓兩個(gè)值得出運(yùn)算結(jié)果
算術(shù)運(yùn)算符:+-*/(a+b=c)
關(guān)系運(yùn)算符:==、~=、<、>、<=、>=(if(a == b)特殊:table,只有兩個(gè)table是同一個(gè)對(duì)象的時(shí)候才能得到預(yù)期結(jié)果)
邏輯運(yùn)算符:and、or、not
and | 比較兩個(gè)參數(shù)時(shí),如果第一個(gè)是false,就返回false否則返回第二個(gè)參數(shù)值 | ||
or | 與and正好相反 | ||
not | 返回true和false,false和nil會(huì)被當(dāng)成false,其它為true |
6控制結(jié)構(gòu)
所有控制結(jié)構(gòu)都以end作為結(jié)束標(biāo)記
if:如果是true程序塊就會(huì)被執(zhí)行,例如:
function Myfun()
a = 7
if a<10 then
print("<10")
end
if a>5 then
print(">5")
end
end
結(jié)果:
<10
>5
while 和 repeat:都可以循環(huán)執(zhí)行一段腳本(while先判斷,repeat后判斷(保證程序至少執(zhí)行一次))
for:可以讓用戶根據(jù)表達(dá)式的值有限次地執(zhí)行一段腳本
for index=1,10 do
print(index)
end
for后需要提供變量值范圍,遍歷這個(gè)范圍的每個(gè)值的同時(shí)程序塊被執(zhí)行,end結(jié)束
break:可以從循環(huán)控制結(jié)構(gòu)中強(qiáng)制退出
今天就總結(jié)這里吧......
小編不僅僅是只是在抄總結(jié)哦,里面的所有案例都有上機(jī),沒(méi)有案例的,也會(huì)自己寫一個(gè)測(cè)試的哦,做程序猿是很累的,不要手懶哦
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。