国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于lua和corona框架的趣味手機(jī)游戲的設(shè)計(jì)與實(shí)現(xiàn)

2015-12-08 12:02許燕
電腦知識(shí)與技術(shù) 2015年25期
關(guān)鍵詞:手機(jī)游戲

許燕

摘要:該文設(shè)計(jì)的進(jìn)階版俄羅斯方塊手機(jī)游戲,開發(fā)語(yǔ)言是lua,開發(fā)框架是corona。所開發(fā)的游戲基于俄羅斯方塊的玩法之上,融入了屬于自己的創(chuàng)新元素和玩法,讓原本黑白的俄羅斯方塊變得鮮活有趣了起來(lái)。

關(guān)鍵詞:lua;corona;手機(jī)游戲

中圖分類號(hào):TP311 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2015)25-0047-03

隨著現(xiàn)代生活節(jié)奏的加快,人們需要隨時(shí)隨地獲取與處理信息,由于移動(dòng)通信技術(shù)的發(fā)展,現(xiàn)在的手機(jī)等嵌入式設(shè)備的計(jì)算處理能力得到極大的增強(qiáng),因此手機(jī)成為了最佳的終端工具。目前很多大型游戲、手機(jī)游戲和應(yīng)用項(xiàng)目都用lua作為腳本來(lái)完成,在南美家庭中幾乎每天都在使用的互動(dòng)電視是由lua驅(qū)動(dòng)的。一些大學(xué)在他們的研究中使用lua來(lái)進(jìn)行快速處理并獲得結(jié)果。而且在游戲開發(fā)團(tuán)隊(duì)中的不同角色的人員使用中都起到重要作用?;谑謾C(jī)的移動(dòng)應(yīng)用開發(fā)成為未來(lái)軟件開發(fā)的發(fā)展方向。

1 手機(jī)游戲開發(fā)環(huán)境

1.1 移動(dòng)開發(fā)跨平臺(tái)工具Corona SDK簡(jiǎn)介

Corona SDK是Corona Labs旗下的一款專門用于跨平臺(tái)移動(dòng)應(yīng)用開發(fā)的Lua語(yǔ)言SDK庫(kù),不僅容易入手,無(wú)門檻,而且效率也相當(dāng)高。Corona SDK提供了跨平臺(tái)能力,所以開發(fā)者的應(yīng)用或游戲可兼容iOS、Android、Kindle Fire和Nook平臺(tái)。Corona支持硬件加速、GPS、照相機(jī)等,并集成了Box2D物理引擎。

1.2 腳本語(yǔ)言Lua介紹

lua小巧高效,作為C的擴(kuò)展,能與C自然的結(jié)合與交互,所以常被用于寫游戲邏輯。以快速小巧著稱的Lua擁有在目前所有腳本引擎中最快的運(yùn)行速度,這樣的特性讓Lua成為用作嵌入式腳本的最佳選擇。在當(dāng)前的游戲開發(fā)行業(yè)中,除了《魔獸世界》和網(wǎng)易經(jīng)典“西游系列”都使用了腳本外,現(xiàn)在大多數(shù)比較流行的程序也都使用了腳本,如騰訊的(QQgame))和搜狐的《天龍八部》等。不僅如此,現(xiàn)今的游戲引擎也都提供了腳本接口,無(wú)論是商業(yè)的unreal引擎還是開源的0一GRE,無(wú)一例外。但是,Lua語(yǔ)言被人們所熟知還要追述到2010年喬布斯的蘋果將Lua語(yǔ)言引進(jìn)iOS平臺(tái),直到現(xiàn)在已經(jīng)有很多iPhone的應(yīng)用寫入到Lua中。而Lua語(yǔ)言憑借其代碼幾乎能在所有操作系統(tǒng)和移動(dòng)終端上編譯運(yùn)行的這一特性,不但可以在iOS這一移動(dòng)平臺(tái)開發(fā),同樣也可以在Android等其它平臺(tái)上開發(fā)。有了Corona SDK以后Lua語(yǔ)言不但可以支持iOS,還可以支持Android平臺(tái)。

2 趣味手機(jī)游戲的設(shè)計(jì)

本文設(shè)計(jì)的進(jìn)階版俄羅斯方塊手機(jī)游戲,開發(fā)語(yǔ)言是lua,開發(fā)框架是corona。所開發(fā)的游戲基于俄羅斯方塊的玩法之上,融入了屬于自己的創(chuàng)新元素和玩法,讓原本黑白的俄羅斯方塊變得鮮活有趣了起來(lái)。

1)游戲界面設(shè)計(jì)

該游戲畫面走著輕松、愉快的小清新路線,采用色彩明快的七彩方塊組合而成,讓人眼前一亮的同時(shí),色彩艷麗的界面也容易令人心情不禁跟著愉悅起來(lái),Q版的小方塊們,設(shè)計(jì)感強(qiáng)烈,看起來(lái)并不平面,非常具有質(zhì)感。游戲開始界面如圖1所示,游戲運(yùn)行效果如圖2所示。

實(shí)現(xiàn)界面初始化的函數(shù):

function kian()

bj=display.newRect(160,240,480,580)

ks=display.newImage("im/b.png",160,240)

ksan=display.newImage("im/an.png",160,240)

ksan:addEventListener("tap",dong)

end

開始游戲函數(shù):

function kais()

display.remove(bj)

display.remove(ks)

display.remove(ksan)

chu()

for i=1,10 do

for k=1,10 do

t[i][k]:addEventListener("touch",ss)

end

end

Runtime:addEventListener("touch",ww)

display.remove()

end

加載圖片,合成統(tǒng)一顏色不同形狀的方塊組合。有一個(gè)、兩個(gè)、多個(gè)方塊組成的形狀。

實(shí)現(xiàn)代碼如下:

function one()

ge2=display.newImage("im/3.png",0,0)

ge2.xScale=0.4

ge2.yScale=0.4

ge2.x=ddd

ge2.y=400

ge2:addEventListener("touch",xx2)

end

function two()

ge3=display.newGroup()

for i=1,2 do

ge1=display.newImage("im/4.png",i*28-28-28,0)

ge1.xScale=0.65

ge1.yScale=0.65

ge3:insert(ge1)

end

ge3.x=ddd

ge3.y=400

ge3.xScale=0.6

ge3.yScale=0.6

ge3:addEventListener("touch",xx3)

end

function three()

ge4=display.newGroup()

for i=1,2 do

ge1=display.newImage("im/5.png",i*28-28-28,0)

ge1.xScale=0.65

ge1.yScale=0.65

ge4:addEventListener("touch",xx4)

end

不同形狀的組合體,可防止的范圍不一樣,所以通過(guò)XX1~XX19函數(shù)來(lái)限制x,y軸的位置。如XX2函數(shù)代碼:

function xx2(event)

if event.phase=="began" then

l=2

if event.x<60+50 then

ddd=60

v=1

elseif event.x>=60+40 and event.x<=160+50 then

ddd=160

v=2

elseif event.x>160+50 then

ddd=260

v=3

end

end

end

function shuu()

if ls==1 then

sf=1

for i=1,10 do

for k=1,10 do

if di[i][k]==1 then

if shus[1]==1 then

if k<7 then

if di[i][k+1]==1 and di[i][k+2]==1 and di[i][k+3]==1 and di[i][k+4]==1 then

sf=2

end

end

elseif shus[1]==2 then

sf=2

end

本程序主要使用的Corona SDK API里的顯示圖片函數(shù)、群組函數(shù)、偵聽(tīng)函數(shù)、過(guò)渡函數(shù)等。相關(guān)函數(shù)的用法可以到https://docs.coronalabs.com/api/ 查找,如圖3所示。如過(guò)渡函數(shù)transition語(yǔ)法,如下圖4所示。

3 總結(jié)

游戲開發(fā)是一個(gè)創(chuàng)意性的工作,需要通過(guò)快速開發(fā)原型、測(cè)試和修改來(lái)驗(yàn)證游戲性。因此,需要一個(gè)具有良好兼容性、簡(jiǎn)單而高效的編程語(yǔ)言來(lái)幫助游戲設(shè)計(jì)師完成他們的工作。近年來(lái),許多大型游戲都采用了Lua作為自己的嵌入式腳本語(yǔ)言,以此來(lái)實(shí)現(xiàn)可配置性和可擴(kuò)展性。Lua改變了開發(fā)者為移動(dòng)設(shè)備編寫應(yīng)用的方式,目前蘋果App Store中已經(jīng)有很多用lua開發(fā)的應(yīng)用和游戲。

通過(guò)本文提供的基于lua和corona框架的趣味手機(jī)游戲的設(shè)計(jì)與實(shí)現(xiàn),可以看到通過(guò)緊跟技術(shù)發(fā)展腳步,運(yùn)用移動(dòng)應(yīng)用開發(fā)框架搭建適合游戲開發(fā)的環(huán)境設(shè)計(jì)一個(gè)游戲的過(guò)程,。

參考文獻(xiàn):

[1] 李廣松,陳蓉征.基于Lua的網(wǎng)絡(luò)游戲腳本系統(tǒng)設(shè)計(jì)[J].現(xiàn)代計(jì)算機(jī),2009(12).

[2] 楊 杰.Lua——以總統(tǒng)為名的移動(dòng)開發(fā)語(yǔ)言新貴[J].軟件技術(shù)與研究,2014(4).

[3] 張德富,鄭捷敏.人機(jī)丈棋游戲算法研[J].科技情報(bào)開發(fā)與經(jīng)濟(jì),2008(11).

猜你喜歡
手機(jī)游戲
關(guān)于“移動(dòng)互聯(lián)網(wǎng)時(shí)代青少年手機(jī)游戲沉迷問(wèn)題研究”的文獻(xiàn)綜述
引導(dǎo)小學(xué)生理性對(duì)待手機(jī)游戲的策略
基于手機(jī)游戲中UI界面的交互設(shè)計(jì)研究
手機(jī)游戲用戶體驗(yàn)研究
陜西省大學(xué)生手機(jī)游戲迷戀度實(shí)證分析
讓手機(jī)游戲成為傳統(tǒng)文化的傳播新渠道
手機(jī)游戲?qū)Υ髮W(xué)生的負(fù)面影響及對(duì)策分析
在干什么
淺談手機(jī)游戲業(yè)務(wù)發(fā)展策略
在路上:手機(jī)游戲的2010:引爆點(diǎn):手機(jī)游戲新機(jī)遇
肇庆市| 鄂托克旗| 清徐县| 凭祥市| 南召县| 常熟市| 景泰县| 寿宁县| 清丰县| 石楼县| 城固县| 修水县| 察隅县| 搜索| 当涂县| 万州区| 交口县| 青州市| 独山县| 昭通市| 石嘴山市| 杭锦后旗| 沽源县| 明星| 永顺县| 麻城市| 晋江市| 敦化市| 阜宁县| SHOW| 沙洋县| 内丘县| 新宾| 安宁市| 浙江省| 福泉市| 北票市| 沂南县| 比如县| 剑阁县| 威远县|