亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        休閑游戲大白版泡泡堂的設(shè)計與實現(xiàn)

        2017-04-27 14:11:59武思齊
        電子技術(shù)與軟件工程 2016年15期

        武思齊

        摘 要 大白版泡泡堂游戲使用Visual C++和MFC開發(fā),游戲畫面精美,用戶體驗良好,達到Q版泡泡堂的基本功能,并且在原有游戲界面上進行一定改進。但是“關(guān)于如何判斷玩家當(dāng)前是否應(yīng)該運動、當(dāng)前往哪個方向運動、當(dāng)前是已經(jīng)到達目標(biāo)單元格只需要修正到中間,還是尚未到達目標(biāo)單元格需要走到目標(biāo)單元格”的問題未解決。這篇文章針對存在的這些問題,進行了分析,提出了通過設(shè)定多個標(biāo)記變量,像素推導(dǎo)所在單元格的方法的解決問題。最終實現(xiàn)了自動生成地圖、武器數(shù)量限制、背景音樂、網(wǎng)格吸附、敵人尋找建筑安放炸彈、敵人遇見我方自動安放炸彈,分數(shù)自動累加的功能。游戲推出后,用戶體驗良好。

        【關(guān)鍵詞】泡泡堂游戲 C++ MFC 炸彈游戲

        1 背景

        《泡泡堂》是由韓國游戲公司Nexon開發(fā)的一款休閑游戲。游戲講述了在哈巴森林的一個村落的村民們利用神奇的水泡來打獵和采集寶石,故事由為拯救村民和奪回被海盜搶去的寶石而展開。游戲畫面精美,功能友好,得到了很多人的歡迎和喜愛,并且風(fēng)靡一時。我們根據(jù)Q版泡泡堂為靈感,以《泡泡堂》為原型,以大白(Baymax)--迪士尼動畫《超能陸戰(zhàn)隊》中的健康機器人為角色,設(shè)計開發(fā)一款大白版泡泡堂游戲,講述大白通過采集寶石攻擊敵人,摧毀邪惡勢力的故事。游戲更加生動有趣,容易上手,可以滿足玩家的娛樂需求。

        2 游戲需求

        2.1 功能需求

        (1)游戲需要設(shè)定游戲元素,擺闊建筑物、人物、地圖、炸彈均為自己構(gòu)造的類對象;

        (2)游戲初始化:以一個二維vector存儲建筑物地圖并繪制,生成電腦玩家和用戶玩家角色的類對象;

        (3)安置炸彈:在釋放處生成一個炸彈類對象并根據(jù)釋放者角色配置炸彈和顏色等;

        (4)炸建筑、敵人:炸彈以所在位置為原點,向上下左右搜索相應(yīng)的地圖方塊,根據(jù)地圖數(shù)組判斷攻擊范圍內(nèi)有無可炸元素,如有,摧毀之,自己的炸彈傷不到自己;

        (5)電腦玩家移動:電腦玩家隨機選擇一個方向,在該方向前方無障礙的情況下朝該方向移動,遇障礙物則轉(zhuǎn)方向,若任意時刻四周有可炸的建筑物或者敵人,則自動安放炸彈;

        (6)分數(shù)統(tǒng)計:每個人物對象有數(shù)據(jù)成員記錄分數(shù),炸開一個建筑物+10分,炸死敵人+1000分;

        (7)死路規(guī)避:生成地圖時,若人物被包圍在不可炸的建筑物中,則人物處于死路里。解決方案:生成人物時,清空以人物為中心的九宮格內(nèi)的建筑。

        2.2 存在難點及解決方式

        在制作游戲的過程中,存在著以下六個較難實現(xiàn)的問題,針對這些問題提出了簡單的解決方法。

        (1)屏幕上同時需要管理的對象實例很多,比如說有人,建筑物,炸彈等等,但是只要程序邏輯清晰,可以解決;

        (2)對象間關(guān)系緊密復(fù)雜,如炸彈-建筑關(guān)系、建筑-人物關(guān)系,人物-人物關(guān)系,所以要設(shè)計好對象之間關(guān)聯(lián)方式;

        (3)電腦用戶需要一定的智能以自己行動,需要簡化行動規(guī)律,用簡單代碼寫出活動的算法;

        (4)敵我判斷,防止誤傷:可以炸彈記錄主人信息,若是主人則不摧毀;

        (5)元素吸附網(wǎng)格、多鍵響應(yīng)問題:需要多個標(biāo)記變量解決問題,通過像素推導(dǎo)所在單元格;

        (6)電腦玩家遇見我方知道襲擊:通過把我方當(dāng)做建筑來判斷來解決。

        3 游戲設(shè)計及實現(xiàn)

        3.1 游戲設(shè)計

        游戲以Flash上 Q版泡泡堂為原型復(fù)刻一個BayMax版泡泡堂,開發(fā)環(huán)境使用Visual C++ 6.0,MFC工程;達到Q版泡泡堂的基本功能,包括安置炸彈、炸開建筑、炸死敵人、敵人自動移動等;大致復(fù)制Q版泡泡堂的功能:自動生成地圖、武器數(shù)量限制、背景音樂、網(wǎng)格吸附、敵人尋找建筑安放炸彈、敵人遇見我方自動安放炸彈,分數(shù)自動累加等功能。

        3.2 游戲?qū)崿F(xiàn)

        大白版泡泡堂要實現(xiàn)游戲角色在自動生成的地圖中活動,玩家通過方向鍵控制角色上下左右移動,空格鍵釋放炸彈,炸彈沿上下左右方向釋放爆炸威力,以炸開一些建筑或者炸死敵人。下面介紹游戲主要部分的實現(xiàn)方法。

        3.2.1 類及成員

        游戲中設(shè)置Game、Player、Building、MapOfBuilding、Bomb類,類之間相互聯(lián)系、相互制約。

        Game類中包括drawScore,getcomputerPlayerPointer,getPlayerPointer,theBomb等成員。

        Player類中包括moveToNextUnit,getScore,getXpos,getYpos等成員。

        MapOfBuilding類中包括drawMap,theVectorMap等成員。

        3.2.2 運行流程圖

        如圖1所示。

        3.2.3 重點類,函數(shù)實現(xiàn)

        (1)View類OnDraw函數(shù)。為了使貼圖思路清晰,所有會改變畫面的操作都不立即重新貼圖,而是只改變類對象的屬性,當(dāng)Timer事件觸發(fā),OnDraw函數(shù)根據(jù)當(dāng)前所有存在的類對象的屬性值重繪整個畫面。這樣做可以使凡是與繪圖有關(guān)的代碼改變,只要改OnDraw函數(shù)里的內(nèi)容就行,不用到處找按鍵消息響應(yīng)的地方,思路清晰,易于維護。下面介紹函數(shù)的實現(xiàn)方法:

        Draw Map:

        if (玩家用戶存活|| 電腦用戶存活){

        if (玩家的炸彈攻擊到電腦){

        if (玩家用戶存活)-----顯示玩家勝利

        else顯示玩家失敗

        Draw Bomb:

        如圖2所示。

        (2)解決網(wǎng)格吸附的問題。游戲人物每次必定停在10*10的網(wǎng)格中某一個的正中間,這要求人物在一次按鍵響應(yīng)之后的每次Timer激發(fā)移動一定像素,而在到達預(yù)定單元格中間位置時停止運動。所以,在Timer激發(fā)時,如何判斷當(dāng)前是否應(yīng)該運動、當(dāng)前往哪個方向運動、當(dāng)前是已經(jīng)到達目標(biāo)單元格只需要修正到中間,還是尚未到達目標(biāo)單元格需要走到目標(biāo)單元格,就成了很重要的問題。我們可以通過Player類MoveToNextUnit函數(shù)解決網(wǎng)格吸附的問題,函數(shù)流程圖如圖3所示。

        4 總結(jié)

        泡泡堂游戲的風(fēng)靡全球不僅因為其游戲充滿故事性,畫面制作精良,還得力于游戲成熟的技術(shù)和易于操作的界面。我們開發(fā)的大白版泡泡堂借鑒了之中的優(yōu)點,實現(xiàn)了Q版泡泡堂中的大部分功能,解決了諸如元素網(wǎng)格吸附,多鍵相應(yīng),電腦用戶智能運動,以及地圖生成等難題,可以為其他愛好者拿來借鑒。但是在游戲界面的制作上,由于我們的繪圖能力不夠強,在界面的制作上仍有許多改進和完善的地方,我們會繼續(xù)改進界面,完善功能。

        參考文獻

        [1]劉變蓮,劉東波.MFC與Windows程序[J].電腦知識與技術(shù),2015(32).

        [2]朱全銀,章慧,孫文杰.基于J2ME及J2EE的移動網(wǎng)絡(luò)游戲關(guān)鍵技術(shù)研究[J].計算機工程與設(shè)計,2008(20).

        [3]趙麗娟,朱全銀.基于J2ME的移動網(wǎng)絡(luò)游戲設(shè)計與實現(xiàn)[J].網(wǎng)絡(luò)與通信技術(shù),2010(12).

        [4]馬棟,邱燁.泡泡堂游戲開發(fā)技術(shù)淺析[J].硅谷,Silicon Valley,2009(20).

        作者單位

        四川大學(xué)計算機學(xué)院 四川省成都市 610225

        精品亚洲一区二区三区四| 妺妺窝人体色www在线直播| 久九九久视频精品网站| 综合久久精品亚洲天堂| 欧美伦费免费全部午夜最新 | 无码粉嫩虎白一线天在线观看| 成黄色片视频日本秘书丝袜| 狼人狠狠干首页综合网| 久久精品国产亚洲av超清| 男女车车的车车网站w98免费| 日本亚洲欧美在线观看| 日日噜噜夜夜久久密挑| 亚洲综合极品美女av| 国产精品无码av天天爽| 欧美日韩中文字幕久久伊人| 国产精品久久三级精品| 久久亚洲精品国产亚洲老地址| 亚洲人成无码www久久久| av无码一区二区三| 熟女人妻一区二区三区| 精品国产三级a∨在线| 亚洲熟妇无码av不卡在线播放| 国产青青草视频在线播放| 日本男人精品一区二区| 久久无码专区国产精品s| 久久AV中文综合一区二区| 亚洲一区域二区域三区域四| 中文字幕在线观看| 天堂网在线最新版www中文网| 国产精品香蕉网页在线播放| 亚洲一区二区三区高清在线观看| 桃花影院理论片在线| 色窝窝无码一区二区三区2022| 亚洲女人天堂成人av在线| 精品av熟女一区二区偷窥海滩| 国产欧美日韩视频一区二区三区| 色偷偷亚洲av男人的天堂| 国产精品久久免费中文字幕| 久久九九国产精品怡红院| 成人无码网www在线观看| 亚洲一区二区三区免费网站 |