版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、2048 游戲項(xiàng)目需求分析一、項(xiàng)目概述 2二、需求分析 21 .游戲開(kāi)發(fā)的趨勢(shì)和特色22 .游戲操作需求 23 .開(kāi)發(fā)環(huán)境 3三、概要設(shè)計(jì) 3四、程序流程圖 4五、詳細(xì)設(shè)計(jì) 54 .顏色如下: 65 .光標(biāo)位置等的格式控制 76 .終端控制 7六、游戲運(yùn)行說(shuō)明 101.游戲運(yùn)行流程圖 10七、擴(kuò)展說(shuō)明 101.擴(kuò)展功能框圖 10精選范本、項(xiàng)目概述2048是一款簡(jiǎn)單小巧的益智類(lèi)游戲,挑戰(zhàn)您的智力極限,借鑒1024和小 3傳奇游戲開(kāi)發(fā)而成,難度相對(duì)有所下降,是一款讓您根本停不下來(lái)的游戲。游戲規(guī)則: 滑動(dòng)屏幕或者方向鍵來(lái)移動(dòng)小方塊, 兩個(gè)數(shù)字一樣的小方塊相撞時(shí)就會(huì)相加合成一個(gè)方塊, 每次操作之后會(huì)在
2、空白的方格處隨機(jī)生成一個(gè)2 或 4 的方塊,最終得到一個(gè)2048 的方塊就算勝利了,如果 16 個(gè)格子全部填滿且無(wú)法移動(dòng)的話 GAMEOVER 。、需求分析1 .游戲開(kāi)發(fā)的趨勢(shì)和特色Linux 特點(diǎn)就是代碼開(kāi)源。開(kāi)放的平臺(tái)使更多的開(kāi)發(fā)者參與到游戲代碼的優(yōu)化和完善當(dāng)中,一個(gè)嶄新的游戲也很快走向成熟。隨著計(jì)算機(jī)技術(shù)的不斷發(fā)展, 硬件已經(jīng)不在是游戲發(fā)展的瓶頸。 游戲的規(guī)劃更加向?qū)I(yè)化方向發(fā)展。1. 將向網(wǎng)絡(luò)化方向發(fā)展,隨著各平臺(tái)對(duì)無(wú)線通信網(wǎng)絡(luò)、 WIFI 網(wǎng)絡(luò)、藍(lán)牙網(wǎng)絡(luò)的良好支持,游戲?qū)?chuàng)新出更好的游戲性和用戶本驗(yàn)。網(wǎng)絡(luò)游戲, 多人游戲, 聯(lián)機(jī)對(duì)戰(zhàn)等將進(jìn)一步強(qiáng)化玩家對(duì)游戲的粘著度, 并且容易通過(guò)對(duì)道
3、具等的控制產(chǎn)生營(yíng)利模式。玩家之間對(duì)交互能力的需求也會(huì)促成未來(lái)的游戲向網(wǎng)絡(luò)化發(fā)展進(jìn)程的加快。2 .將向休閑化、時(shí)間片化方向發(fā)展,移動(dòng)設(shè)備的隨身性使是休閑小游戲?qū)⒌玫娇焖俚陌l(fā)展。 移動(dòng)設(shè)備對(duì)分散時(shí)間的利用促進(jìn)了游戲向時(shí)間片化發(fā)展, 即一個(gè)游戲可以隨時(shí)開(kāi)始,隨時(shí)結(jié)束,充分利用用戶分散的時(shí)間片來(lái)運(yùn)行。所以 2048 這個(gè)休閑益智的手機(jī)游戲就應(yīng)運(yùn)而生,一經(jīng)發(fā)布就占據(jù)各大手機(jī)游戲下載的排行榜的前列, 這是一款老少皆宜的手機(jī)游戲, 在空閑時(shí)間你可以拿出手機(jī)來(lái)玩, 上班、 下班、 坐公交、 等地鐵, 你隨心隨意的快樂(lè)玩耍。 它簡(jiǎn)單易上手,只需滑動(dòng)手指就可以操作,但卻有難精通,要打通關(guān)卡卻不是一件容易的事情通過(guò)
4、 C 語(yǔ)言控制臺(tái)仿寫(xiě)這個(gè)游戲,可以鍛煉編程框架思想以及技巧,同時(shí)將所學(xué)到的數(shù)據(jù)結(jié)構(gòu)等知識(shí)靈活的運(yùn)用。2.游戲操作需求W 、 X 、 A 、 D 鍵進(jìn)行操作;1、可使用鼠標(biāo)或32、 ESC 退出游戲三、概要設(shè)計(jì)3.開(kāi)發(fā)環(huán)境運(yùn)行環(huán)境:開(kāi)發(fā)環(huán)境:編寫(xiě)語(yǔ)言:centos6.2vim 編輯器c 語(yǔ)言1、游戲開(kāi)始時(shí)隨機(jī)的產(chǎn)生2 個(gè)數(shù)值為 2/4 的方格,其中 1 個(gè)方格置于4個(gè)角中的一個(gè)位置,另一個(gè)方格隨機(jī)的置于其它位置,其余方格值為0。2、每次移動(dòng)鼠標(biāo)或按方向鍵后,逐行計(jì)算移動(dòng)后的方格值。每行移動(dòng)的算法是: 先將所有值為 0 的數(shù)移至行首。 能后從行尾開(kāi)始逐一和前一個(gè)數(shù)比較,如果相等則合并這2 個(gè)格子。
5、3、每合并一次格子,將其值累計(jì)到游戲總分中。4、一次移動(dòng)結(jié)束后,在所有值為0 的方格中隨機(jī)的分配一個(gè)2/4 的值。5、所有方格值不為0 且上下、左右相鄰的方格都不相等,則游戲結(jié)束。6、 2 出現(xiàn)的概率為 90%, 4 出現(xiàn)的概率為為10%。四、程序流程圖五、詳細(xì)設(shè)計(jì)1.控制Linux 終端打印字符顏色和位置Linux 終端控制臺(tái)字體顏色,用到一個(gè)轉(zhuǎn)義序列eF;B;Ome 轉(zhuǎn)義字符開(kāi)始, ESC 的 ASCII 碼用十進(jìn)制表示就是27,等于用八進(jìn)制表示的033。e 或 033 聲明了轉(zhuǎn)義序列的開(kāi)始(經(jīng)過(guò)測(cè)試, F、 B 的順序可以互換,也可 省略) 開(kāi)始定義顏色。'F' 為字體顏
6、色,編號(hào)3037;'B' 為背景色,編號(hào)4047。'O' 為特殊意義代碼它們的順序沒(méi)有關(guān)系。m 是標(biāo)記m 后面不用跟空格,是所定義的彩色字和背景 使用方法一:格式 printf("033 字體顏色 ; 字背景顏色m 輸出字符串 0330m" );例子: printf("03331; 47;1mhello world0335mn");說(shuō)明: 31 是字體的顏色, 47 是字背景顏色, , hello world 是字符串 . ,1m 表示高亮顯示,后面的 0335m 是控制碼使用方法二:格式 : echo -e "
7、033 字體顏色;字背景顏色;1m 字符串 0330m"例子 : echo -e "03336;41;1m something here 0330m"說(shuō)明:其中 41 的位置代表底色, 36 的位置是代表字的顏色033 ; m 0330m-這些ascii code是對(duì)顏色調(diào)用的始末2.字體顏色和背景色字背景顏色范圍 : 40-49字顏色 : 30-3940: 黑30: 黑41:紅31: 紅42:綠32: 綠43:黃33: 黃44:藍(lán)34: 藍(lán)45:紫35: 紫46:深綠36: 深綠47:白色37: 白色3.輸由特效格式控制(特殊意義碼)=ANSI 控制碼的說(shuō)明=0
8、330m關(guān)閉所有屬性0331m設(shè)置高亮度0334m下劃線0335m 閃爍0337m 反顯,反白顯示0338m消隱,不可見(jiàn)03330m - 03337m 設(shè)置前景色03340m - 03347m 設(shè)置背景色033nA光標(biāo)上移n行033nB光標(biāo)下移n行033nC 光標(biāo)右移n行033nD光標(biāo)左移n行033y;xH設(shè)置光標(biāo)位置0332J 清屏033K清除從光標(biāo)到行尾的內(nèi)容033s保存光標(biāo)位置033u恢復(fù)光標(biāo)位置033?25l隱藏光標(biāo)033?25h顯示光標(biāo)4.顏色如下:noneblackdark_gray blue="0330m”="0330;30m"="0331
9、;30m"="0330;34m"light_bluegreen="0331;34m"="0330;32m"light_green -= "0331;32m"cyan light_cyan red="0330;36m"="0331;36m"light_red purple="0330;31m"="0331;31m"="0330;35m"light_purple = "0331;35m"br
10、own="0330;33m"精選范本yellow light_gray white="0331;33m"="0330;37m"="0331;37m"5.光標(biāo)位置等的格式控制033nA光標(biāo)上移n 行03nB光標(biāo)下移n 行033nC光標(biāo)右移n 行033nD光標(biāo)左移n 行033y;xH 設(shè)置光標(biāo)位置0332J 清屏033K 清除從光標(biāo)到行尾的內(nèi)容033s 保存光標(biāo)位置033u 恢復(fù)光標(biāo)位置033?25l隱藏光標(biāo)33?25h顯示光標(biāo)代碼實(shí)例:color.c6.終端控制struct termiosstruct termios
11、 org, new; 終端的狀態(tài)tcgetattr() 獲取狀態(tài) org STDIN_FILENO : 終端相關(guān)宏 memcpy() 內(nèi)存拷貝函數(shù) struct stu a,b;a = b; xxxxxmemcpy(&a, &b, sizeof(struct stu);24 行 ,&= 位運(yùn)算設(shè)置終端新的狀態(tài)tcsetattr(new_opts)修改當(dāng)前狀態(tài) c=getchar();tcsetattr(old_opts), 恢復(fù)之前的狀態(tài)鍵盤(pán)輸入-方向鍵- 由三個(gè)字符表示:上下右左27 91 6527 91 6627 91 6727 91 68終端控制文檔說(shuō)明代碼實(shí)例
12、termios_control.c7. 數(shù)據(jù)結(jié)構(gòu)、繪圖相關(guān)數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)類(lèi)型定義 相關(guān)頭文件定義中游戲狀態(tài)、按鍵方向、 4x4 方格數(shù)據(jù)值(使用二維數(shù)據(jù)存儲(chǔ))、執(zhí)行步數(shù)、獲得分?jǐn)?shù)繪制界面-4x4 方格并顯示數(shù)據(jù)值、執(zhí)行步數(shù)、獲得分?jǐn)?shù)根據(jù) color.c , 打印方格及數(shù)值, 代碼實(shí)例 draw.c draw_box()鍵盤(pán)控制數(shù)據(jù)方塊移動(dòng)繪制圖形、方向控制、更新畫(huà)面代碼實(shí)例 draw.c main 函數(shù)執(zhí)行流程step 5 位運(yùn)算-5 :原碼10000101反碼11111010補(bǔ)碼111110119 :0000 1001-5 & 90000 100100000011 300001100 121<<11*2A11<<21*2A21<<31*2A3x = 1100 10100000 00010010 00001110 10101110 1010x = (1<<5) | xx |= (1<<5)0100 00001011 11111010 1010x = x & ( 1<<6)x &= (1<<6)step9:合并算法將一維數(shù)組轉(zhuǎn)換為二維RIGHT:對(duì)每行處理: i=0; i<4; i+從右邊開(kāi)始計(jì)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 節(jié)能減排綜合方案范文(10篇)
- 二零二五年度消防安全設(shè)施安裝與維護(hù)協(xié)議3篇
- 二零二五年度綠色建筑保證與擔(dān)保合同示范文本3篇
- 二零二五年度第三方代付業(yè)務(wù)賬戶認(rèn)證服務(wù)合同2篇
- 小學(xué)階段科學(xué)與藝術(shù)的融合教學(xué)探索
- 二零二五年度建筑工程施工質(zhì)量整改協(xié)議3篇
- 二零二五年度能源項(xiàng)目委托代建管理協(xié)議范本3篇
- 二零二五年度網(wǎng)絡(luò)安全技術(shù)服務(wù)合同范本共2篇
- 二零二五年度網(wǎng)絡(luò)安全防護(hù)服務(wù)續(xù)費(fèi)協(xié)議
- 2025年度透水混凝土透水性檢測(cè)與改善承包合同3篇
- 遼寧醫(yī)院明細(xì).xls
- 200立方矩形鋼筋混凝土清水池標(biāo)準(zhǔn)圖集(共7頁(yè))
- 熱處理變形基礎(chǔ)知識(shí)
- 29個(gè)API技術(shù)規(guī)范
- 6x37 FC鋼絲繩破斷拉力
- 軸承(1)(公開(kāi)課)
- 催化氧化合成4-氯-2-硝基苯甲酸_圖文
- 金屬鍍覆和化學(xué)處理表示方法
- 同濟(jì)大學(xué)本科生學(xué)籍管理規(guī)定
- 三年級(jí)數(shù)學(xué)寒假每日一練
- 最新宜昌市中考數(shù)學(xué)21題圓訓(xùn)練(1)教師版有答案
評(píng)論
0/150
提交評(píng)論