版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、C語言彈彈彈樂產(chǎn)品計計劃報告告書設計名稱稱:彈彈彈樂專 業(yè):軟件工工程班 級:14118姓 名:XX學 號:1466214418XXX指導老師師:王若若慧目 錄選題背景景與意義義需求分析析開發(fā)環(huán)境境總體設計計源代碼心得體會會一、選題題背景與與意義隨著編程程語言的的不斷發(fā)發(fā)展,游游戲發(fā)展展速度越越來越快快,游戲戲已經(jīng)成成為現(xiàn)在在人生活活娛樂,打發(fā)時時間,緩緩解壓力力的一項項不可或或缺的項項目。而而一個優(yōu)優(yōu)秀的游游戲離不不開游戲戲畫面、程序腳腳本以及及后期音音效的共共同作用用。因此此,越來來越多有有著引人人入勝的的劇情,豐富有有趣的畫畫面,好好聽難忘忘的音樂樂的小游游戲在互互聯(lián)網(wǎng)上上被越來來越多的
2、的玩家喜喜愛和分分享。當當這些兼兼具藝術術性與流流行性的的元素都都由一個個游戲組組合到一一起,人人們可以以從中得得到娛樂樂和放松松,同時時有得到到一些對對生活對對人生的的啟發(fā),讓人會會心一笑笑。而創(chuàng)創(chuàng)作者也也可以選選擇不同同的風格格,不同同的手法法用計算算機的一一系列數(shù)數(shù)碼藝術術創(chuàng)作手手法實現(xiàn)現(xiàn)自己的的創(chuàng)意,然后在在一些交交流互動動網(wǎng)站上上發(fā)表,供他人人娛樂或或者借鑒鑒,同時時也可以以得到廣廣大互聯(lián)聯(lián)網(wǎng)用戶戶的意見見,從而而提高自自身的創(chuàng)創(chuàng)作水品品。由此此可見,游戲設設計的意意義就在在于:集集合不同同的藝術術門類,把藝術術與技術術相結(jié)合合。從而而讓人可可以在游游戲中的的到美的的享受。給廣大大的
3、互聯(lián)聯(lián)網(wǎng)用戶戶提供了了一個娛娛樂,休休閑,放放松身心心的地方方。讓設設計師之之與玩家家之間產(chǎn)產(chǎn)生交流流,從而而完善游游戲。操操作便捷捷,文件件攜帶方方便,無無需安裝裝,符合合了現(xiàn)在在很多快快餐式的的生活要要求便于于大眾隨隨時的下下載,游游戲。有有豐富的的圖像,畫面不不受軟件件的限制制。富有有創(chuàng)意,風格多多變。是是其他電電子游戲戲沒有的的。國內(nèi)內(nèi)外研究究現(xiàn)狀及及分析:目前利利用開發(fā)發(fā)出了許許多夸平平臺的網(wǎng)網(wǎng)絡游戲戲,甚至至可以匹匹敵大型型MMOOR,在在3G時時代到來來以后,我們很很快可以以在手機機上玩到到大型網(wǎng)網(wǎng)絡游戲戲,現(xiàn)有有的制作作網(wǎng)絡游游戲有:SLGG類(熱熱血三國國),體體育類(熱血球
4、球球),RPGG類(凡凡人修真真),桌桌面(德德州撲克克),TTD類(保衛(wèi)家家園)等等等.在在日本和和美國,動畫和和游戲這這一類的的技術超超出國內(nèi)內(nèi)比較多多,日本本的動漫漫位居世世界前列列是眾所所周知的的。二、需求求分析1:功能能的需求求彈彈樂游游戲是個個簡單的的小游戲戲能讓游游戲者的的身心得得到娛樂樂從而能能夠更好好地投入入到學習習或工作作當中雖雖然現(xiàn)在在市面上上出來這這各種各各樣的游游戲版本本可是彈彈彈樂這這類的小小游戲其其市場還還是相當當大的因因為它玩玩法簡單單易行不不論是手手機還是是小游戲戲機都能能很順利利的運行行對于在在外忙碌碌的人不不可能花花費大量量時間在在娛樂上上大型游游戲是行行
5、不通的的這樣的的小游戲戲剛好迎迎合了他他們的需需求。2:操作作方法2.1進進入游戲戲2.2游游戲界面面2.3游游戲操作作2.4游游戲結(jié)束束三、開發(fā)發(fā)環(huán)境1:設計計任務與與需要的的知識點點1)通過過編寫彈彈彈樂游游戲程序序掌握結(jié)結(jié)構(gòu)化模模塊塊化化程序設設計的思思想培養(yǎng)養(yǎng)解決實實際問題題的能力力2)有同同步播放放動畫聲聲音效果果2:具體體完成設設計內(nèi)容容本次課程程設計需需要掌握握和運用用如下的的知識點點:1數(shù)組的的應用2全局變變量的使使用3按鍵處處理4結(jié)構(gòu)體體的應用用5圖形音音樂和動動畫的有有關知識識四、總體體設計4.1 設計思思路這里我們們首先構(gòu)構(gòu)建一個個游戲框框架,然然后再編編寫各個個模塊,最
6、后組組成一個個完整的的游戲4.2 框架五、源代代碼#inccludde #inccludde #inccludde #inccludde #inccludde #inccludde #inccludde #praagmaa coommeent(libb,wwinmmm.llib)#deffinee LEEFT 1 #deffinee RIIGHTT 300#deffinee TOOP 11#deffinee BUUTTOON 222 /=/ 自自定義結(jié)結(jié)構(gòu)體typeedeff sttrucct PPOINNT/點int x;int y;Poiint;struuct BALLL/球int x;i
7、nt y;int x_SSpeeed;int y_SSpeeed;int modde;/0-普通通;1-實心心;2-冰霜霜;Balll33;struuct BORRD/板int x;int y;int lenngthh;/長度Borrd;struuct TREEASUURE/寶石石int x;int y;int typpe;Treeasuure;enumm coolorr ggreeen,bbluee,reed ;enumm moode ruun_GGamee,crreatt_Maap ;/=/ 自自定義函函數(shù)的聲聲明voidd gootoxxy(iint x, intt y);int mai
8、inGaame();/主函函數(shù)voidd innitGGamee(innt mmodee);/初始始化游戲戲voidd ruunGaame();/運行行游戲voidd crreattMapp();/制制作地圖圖voidd heelpGGamee();/游游戲幫助助voidd seelecctMaap();/選擇地地圖voidd pllayGGamee();/游游戲完成成時int cheeckCCompplette();/檢測游游戲是否否完成voidd PrrinttBorrd();/繪制木木板和小小球voidd PrrinttLevv();/初初始化相相關關卡卡voidd MooveBBord
9、d(innt oorieentaatioon);/移移動木板板voidd MooveBBalll(innt iindeex);/移移動小球球voidd reemovveDiiamoond(intt inndexx,innt ddireectiion);/移除方方塊voidd reemovveCoolorr(ennum collor,Poiint diaamonnd);/解解決顏色色voidd shhowTTreaasurre(iint inttRannd,PPoinnt ppoinnt_ddiammondd);/寶物物voidd moove_Treeasuure();/移動動寶石voidd g
10、eet_TTreaasurre();/獲得寶寶石voidd tiime_Treeasuure();/寶石石失效/=/自定定義全局局變量、全局常常量HANDDLE g_hhConnsolleOuutpuut; / 獲取取控制臺臺輸出句句柄shorrt ppotVVal40300;/0空白,111級方塊塊,22級方方塊,333級級方塊,4圍圍墻int livve=11;/生命int stoop=00;/0-不暫停停,1-暫停停int speeed=10000;/速度度int inttGraade=0;/分數(shù)數(shù)int inttTreeasuure=0;/寶石石數(shù)int gettTreeasuure=
11、0;/獲得得寶石int levvel_Noww=0;/當當前關卡卡int levvel_Maxx=0;/關關卡數(shù)量量charr fiileNNamee100020;/目前設設置最高高地圖容容量為1100個個charr gaame_Mapp200;/游戲戲地圖clocck_tt trreaTTimee_Laast,treeaTiime_Noww;/寶物持持續(xù)時間間stattic connst chaar* BALLL_SSHAPPE=,;/ =/ 主主菜單int maiin() g_hhConnsolleOuutpuut = GeetSttdHaandlle(SSTD_OUTTPUTT_HAAN
12、DLLE); / 獲獲取控制制臺輸出出句柄SetCConssoleeTittleAA(彈彈彈樂-By : sshw);/ ccharr chhVollumee2556;/ llongg lVVoluume;/ mmciSSenddStrringg(sstattus movvie vollumee,cchVoolumme,2255,0);/ llVollumee=sttrtool(cchVoolumme,NNULLL,100);mciSSenddStrringg(pplayy muusiccbbg_mmusiic.mmp3 reppeatt ,NULLL, 0,NNULLL);/背景景音樂mci
13、SSenddStrringg (settauddio mussicbgg_muusicc.mpp3 vvoluume to 1000,NNULLL,0,NULLL);/設設置音量量doCONSSOLEE_CUURSOOR_IINFOO cuursoorInnfo = 1, FAALSEE ; / 光光標信息息SetCConssoleeCurrsorrInffo(gg_hCConssoleeOuttputt, &currsorrInffo); / 設設置光標標隱藏swittch(maiinGaame()/游戲戲選項casee 0:playyGamme();breaak;casee 1:creaa
14、tMaap();breaak;casee 2:helppGamme();breaak;casee 3:seleectMMap();playyGamme();breaak;whiile(1);systtem(paauseenuul);retuurn 0;/ =/ 主主菜單int maiinGaame()FILEE *ffMapp;int ch,inddex=0;stattic connst chaar *moddeIttem=開開始游戲戲,制作作關卡,游戲幫幫助,選選擇關卡卡;systtem(clls);SetCConssoleeTexxtAtttriibutte(gg_hCConssoleeO
15、uttputt,FOOREGGROUUND_GREEEN|FORREGRROUNND_IINTEENSIITY); gottoxyy(155, 55); priintff(); gottoxyy(155, 66); priintff(%2ss%s%2s, , 彈彈樂樂, ); gottoxyy(155, 77); priintff();SetCConssoleeTexxtAtttriibutte(gg_hCConssoleeOuttputt, 00 xF00);gotooxy(16, 144);prinntf(%22s%ss%2ss, , moodeIItemm0, );SetCConssol
16、eeTexxtAtttriibutte(gg_hCConssoleeOuttputt, 00 x0FF);gotooxy(16, 166);prinntf(%22s%ss%2ss, , moodeIItemm1, );SetCConssoleeTexxtAtttriibutte(gg_hCConssoleeOuttputt, 00 x0FF);gotooxy(16, 188);prinntf(%22s%ss%2ss, , moodeIItemm2, );SetCConssoleeTexxtAtttriibutte(gg_hCConssoleeOuttputt, 00 x0FF);gotooxy
17、(16, 200);prinntf(%22s%ss%2ss, , moodeIItemm3, );if(fMaap=ffopeen(mappsMappInffo.ddat,rr)=NNULLL)gotooxy(LEFFT+44,TOOP+22);prinntf(打開開地圖信信息文件件發(fā)生錯錯誤!);gotooxy(LEFFT+44,TOOP+44);prinntf(請查查看MaapInnfo.datt文件是是否存在在!);exitt(0);whille(ffgetts(ffileeNammelleveel_MMax,200,fMMap)!=NNULLL)if(ffileeNammellevee
18、l_MMaxsttrleen(ffileeNammelleveel_MMax)-11=nn)fileeNammelleveel_MMaxsttrleen(ffileeNammelleveel_MMax)-11=00;leveel_MMax+;fcloose(fMaap);leveel_NNow=0;/默認認第一個個地圖do chh = gettch(); swwitcch (ch) caase s: ccasee SS: casse 2: caase 80: / 下下if(iindeex=0) inddex = 11; SettConnsolleTeextAAttrribuute(g_hhCo
19、nnsolleOuutpuut, 0 x00F); gottoxyy(166, 114); priintff(%2s%s%22s, , mmodeeIteem00, ); SettConnsolleTeextAAttrribuute(g_hhConnsolleOuutpuut, 0 xFF0); gottoxyy(166, 116); priintff(%2s%s%22s, , mmodeeIteem11, ); eelsee iff(inndexx = 1) inddex = 22; SettConnsolleTeextAAttrribuute(g_hhConnsolleOuutpuut,
20、0 x00F); gottoxyy(166, 116); priintff(%2s%s%22s, , mmodeeIteem11, ); SettConnsolleTeextAAttrribuute(g_hhConnsolleOuutpuut, 0 xFF0); gottoxyy(166, 118); priintff(%2s%s%22s, , mmodeeIteem22, ); elsee iff(inndexx=22)indeex = 3;SetCConssoleeTexxtAtttriibutte(gg_hCConssoleeOuttputt, 00 xF00);gotooxy(16,
21、200);prinntf(%22s%ss%2ss, , moodeIItemm3, );SetCConssoleeTexxtAtttriibutte(gg_hCConssoleeOuttputt, 00 x0FF);gotooxy(16, 188);prinntf(%22s%ss%2ss, , moodeIItemm2, );elsee iff(inndexx=33)indeex = 0;SetCConssoleeTexxtAtttriibutte(gg_hCConssoleeOuttputt, 00 xF00);gotooxy(16, 144);prinntf(%22s%ss%2ss, ,
22、moodeIItemm0, );SetCConssoleeTexxtAtttriibutte(gg_hCConssoleeOuttputt, 00 x0FF);gotooxy(16, 200);prinntf(%22s%ss%2ss, , moodeIItemm3, );breaak;casee ww: casse W: caase 8: ccasee 722: / 上if(iindeex=0) inddex = 33; SettConnsolleTeextAAttrribuute(g_hhConnsolleOuutpuut, 0 x00F); gottoxyy(166, 114); prii
23、ntff(%2s%s%22s, , mmodeeIteem00, ); SettConnsolleTeextAAttrribuute(g_hhConnsolleOuutpuut, 0 xFF0); gottoxyy(166, 220); priintff(%2s%s%22s, , mmodeeIteem33, ); eelsee iff(inndexx = 1) inddex = 00; SettConnsolleTeextAAttrribuute(g_hhConnsolleOuutpuut, 0 xFF0); gottoxyy(166, 114); priintff(%2s%s%22s, ,
24、 mmodeeIteem00, ); SettConnsolleTeextAAttrribuute(g_hhConnsolleOuutpuut, 0 x00F); gottoxyy(166, 116); priintff(%2s%s%22s, , mmodeeIteem11, ); elsee iff(inndexx=22)indeex = 1;SetCConssoleeTexxtAtttriibutte(gg_hCConssoleeOuttputt, 00 xF00);gotooxy(16, 166);prinntf(%22s%ss%2ss, , moodeIItemm1, );SetCCo
25、nssoleeTexxtAtttriibutte(gg_hCConssoleeOuttputt, 00 x0FF);gotooxy(16, 188);prinntf(%22s%ss%2ss, , moodeIItemm2, );elsee iff(inndexx=33)indeex = 2;SetCConssoleeTexxtAtttriibutte(gg_hCConssoleeOuttputt, 00 xF00);gotooxy(16, 188);prinntf(%22s%ss%2ss, , moodeIItemm2, );SetCConssoleeTexxtAtttriibutte(gg_
26、hCConssoleeOuttputt, 00 x0FF);gotooxy(16, 200);prinntf(%22s%ss%2ss, , moodeIItemm3, ); bbreaak; caase : ccasee 133: rretuurn inddex;breaak; whhilee(1);/=/ 以以全角定定位到某某點voidd gootoxxy(iint x, intt y) staaticc COOORDD cdd; cd.X = (iint)(x 1); cd.Y = y; SettConnsolleCuursoorPoosittionn(g_hCoonsooleOOutpp
27、ut, cdd);/=/ 運運行主程程序voidd pllayGGamee()/游戲戲完成時時charr chh;do runGGamee(fiileNNameeleevell_Noow);if(lleveel_NNowlevvel_Maxx & chheckkCommpleete()leveel_NNow+;gotooxy(LEFFT+22,BUUTTOON-33);prinntf(恭喜喜你已經(jīng)經(jīng)成功過過關!);gotooxy(LEFFT+22,BUUTTOON-22);prinntf(是否否繼續(xù)游游戲? );elseebreaak; whhilee(cch=_gettch()=133);/
28、=/ 開開始游戲戲voidd ruunGaame()int ch;clocck_tt cllockkLasst, cloockNNow;/游游戲主進進程clocck_tt trreassureeLasst,ttreaasurreNoow;/寶物物下落過過程 cloockLLastt = treeasuureLLastt =cclocck(); / 計時inittGamme(rrun_Gamme);PrinntLeev(); / 繪繪制游戲戲方塊whille(llivee)whille(!stoop & llivee)whille (_kbbhitt() / 有有鍵按下下ch = _ggetcc
29、h();swittch(ch)casee 277: retuurn;breaak;casee aa:ccasee AA:ccasee 44: casse 775:MoveeBorrd(11);breaak;casee dd: casse D: caase 6: ccasee 777:MoveeBorrd(22);breaak;casee 322:stopp=1;clocckNoow = cllockk(); / 計計時/ 兩兩次記時時的間隔隔超過00.455秒if (cloockNNow - cclocckLaast 00.2FF *sspeeed)clocckLaast = cclocckN
30、oow;MoveeBalll(00);if(iintTTreaasurre=1)treaasurreNoow=cclocck();if (treeasuureNNow - ttreaasurreLaast 00.5FF * CLOOCKSS_PEER_SSEC)treaasurreLaast = ttreaasurreNoow;movee_Trreassuree();if(ggetTTreaasurre=1)treaaTimme_NNow=cloock();if(ttreaaTimme_NNow-treeaTiime_Lasst 1.0F * CCLOCCKS_PERR_SEEC)if(ttr
31、eaaTimme_NNow-treeaTiime_Lasst 1.1F * CCLOCCKS_PERR_SEEC)SetCConssoleeTexxtAtttriibutte(gg_hCConssoleeOuttputt,0 xx0F);gotooxy(LEFFT+227,BBUTTTON-2);prinntf(%22s,);elsee iff(trreaTTimee_Noow-ttreaaTimme_LLastt 2.11F * CLLOCKKS_PPER_SECC)SetCConssoleeTexxtAtttriibutte(gg_hCConssoleeOuttputt,0 xx0F);g
32、otooxy(LEFFT+226,BBUTTTON-2);prinntf(%22s,);elsee iff(trreaTTimee_Noow-ttreaaTimme_LLastt 3.11F * CLLOCKKS_PPER_SECC)SetCConssoleeTexxtAtttriibutte(gg_hCConssoleeOuttputt,0 xx0F);gotooxy(LEFFT+225,BBUTTTON-2);prinntf(%22s,);elsee iff(trreaTTimee_Noow-ttreaaTimme_LLastt 4.11F * CLLOCKKS_PPER_SECC)Set
33、CConssoleeTexxtAtttriibutte(gg_hCConssoleeOuttputt,0 xx0F);gotooxy(LEFFT+224,BBUTTTON-2);prinntf(%22s,);elsee iff(trreaTTimee_Noow-ttreaaTimme_LLastt 5.11F * CLLOCKKS_PPER_SECC)SetCConssoleeTexxtAtttriibutte(gg_hCConssoleeOuttputt,0 xx0F);gotooxy(LEFFT+223,BBUTTTON-2);prinntf(%22s,);elsee iff(trreaT
34、Timee_Noow-ttreaaTimme_LLastt 6.11F * CLLOCKKS_PPER_SECC)SetCConssoleeTexxtAtttriibutte(gg_hCConssoleeOuttputt,0 xx0F);gotooxy(LEFFT+222,BBUTTTON-2);prinntf(%22s,);elsee iff(trreaTTimee_Noow-ttreaaTimme_LLastt 7.11F * CLLOCKKS_PPER_SECC)SetCConssoleeTexxtAtttriibutte(gg_hCConssoleeOuttputt,0 xx0F);g
35、otooxy(LEFFT+221,BBUTTTON-2);prinntf(%22s,);elsee iff(trreaTTimee_Noow-ttreaaTimme_LLastt 8.11F * CLLOCKKS_PPER_SECC)SetCConssoleeTexxtAtttriibutte(gg_hCConssoleeOuttputt,0 xx0F);gotooxy(LEFFT+220,BBUTTTON-2);prinntf(%22s,);elsee iff(trreaTTimee_Noow-ttreaaTimme_LLastt 9.11F * CLLOCKKS_PPER_SECC)Set
36、CConssoleeTexxtAtttriibutte(gg_hCConssoleeOuttputt,0 xx0F);gotooxy(LEFFT+119,BBUTTTON-2);prinntf(%22s,);elsee iff(trreaTTimee_Noow-ttreaaTimme_LLastt 10.1F * CCLOCCKS_PERR_SEEC)SetCConssoleeTexxtAtttriibutte(gg_hCConssoleeOuttputt,0 xx0F);gotooxy(LEFFT+118,BBUTTTON-2);prinntf(%22s,);elsee iff(trreaT
37、Timee_Noow-ttreaaTimme_LLastt 11.1F * CCLOCCKS_PERR_SEEC)SetCConssoleeTexxtAtttriibutte(gg_hCConssoleeOuttputt,0 xx0F);gotooxy(LEFFT+117,BBUTTTON-2);prinntf(%22s,);elsee iff(trreaTTimee_Noow-ttreaaTimme_LLastt 12.1F * CCLOCCKS_PERR_SEEC)SetCConssoleeTexxtAtttriibutte(gg_hCConssoleeOuttputt,0 xx0F);g
38、otooxy(LEFFT+116,BBUTTTON-2);prinntf(%22s,);elsee iff(trreaTTimee_Noow-ttreaaTimme_LLastt 13.1F * CCLOCCKS_PERR_SEEC)SetCConssoleeTexxtAtttriibutte(gg_hCConssoleeOuttputt,0 xx0F);gotooxy(LEFFT+115,BBUTTTON-2);prinntf(%22s,);elsee iff(trreaTTimee_Noow-ttreaaTimme_LLastt 14.1F * CCLOCCKS_PERR_SEEC)Set
39、CConssoleeTexxtAtttriibutte(gg_hCConssoleeOuttputt,0 xx0F);gotooxy(LEFFT+114,BBUTTTON-2);prinntf(%22s,);elsee iff(trreaTTimee_Noow-ttreaaTimme_LLastt 15.1F * CCLOCCKS_PERR_SEEC)SetCConssoleeTexxtAtttriibutte(gg_hCConssoleeOuttputt,0 xx0F);gotooxy(LEFFT+113,BBUTTTON-2);prinntf(%22s,);elsee iff(trreaT
40、Timee_Noow-ttreaaTimme_LLastt 16.1F * CCLOCCKS_PERR_SEEC)SetCConssoleeTexxtAtttriibutte(gg_hCConssoleeOuttputt,0 xx0F);gotooxy(LEFFT+112,BBUTTTON-2);prinntf(%22s,);elsee iff(trreaTTimee_Noow-ttreaaTimme_LLastt 17.1F * CCLOCCKS_PERR_SEEC)SetCConssoleeTexxtAtttriibutte(gg_hCConssoleeOuttputt,0 xx0F);g
41、otooxy(LEFFT+111,BBUTTTON-2);prinntf(%22s,);elsee iff(trreaTTimee_Noow-ttreaaTimme_LLastt 18.1F * CCLOCCKS_PERR_SEEC)SetCConssoleeTexxtAtttriibutte(gg_hCConssoleeOuttputt,0 xx0F);gotooxy(LEFFT+110,BBUTTTON-2);prinntf(%22s,);elsee iff(trreaTTimee_Noow-ttreaaTimme_LLastt 19.1F * CCLOCCKS_PERR_SEEC)Set
42、CConssoleeTexxtAtttriibutte(gg_hCConssoleeOuttputt,0 xx0F);gotooxy(LEFFT+99,BUUTTOON-22);prinntf(%22s,);elsee iff(trreaTTimee_Noow-ttreaaTimme_LLastt 20.1F * CCLOCCKS_PERR_SEEC)SetCConssoleeTexxtAtttriibutte(gg_hCConssoleeOuttputt,0 xx0F);gotooxy(LEFFT+88,BUUTTOON-22);prinntf(%22s,);elsee iff(trreaT
43、Timee_Noow-ttreaaTimme_LLastt nuul);/=/選擇擇關卡voidd seelecctMaap()FILEE *ffMapp;charr chh;leveel_MMax=0;SetCConssoleeTexxtAtttriibutte(gg_hCConssoleeOuttputt,0 xx0F);systtem(clls);if(fMaap=ffopeen(mappsMappInffo.ddat,rr)=NNULLL)gotooxy(LEFFT+44,TOOP+44);prinntf(打開開地圖信信息文件件發(fā)生錯錯誤!);gotooxy(LEFFT+44,TOOP
44、+66);prinntf(請查查看MaapInnfo.datt文件是是否存在在!);exitt(0);whille(ffgetts(ffileeNammelleveel_MMax,200,fMMap)!=NNULLL)if(ffileeNammelleveel_MMaxsttrleen(ffileeNammelleveel_MMax)-11=nn)fileeNammelleveel_MMaxsttrleen(ffileeNammelleveel_MMax)-11=00;leveel_MMax+;fcloose(fMaap);SetCConssoleeTexxtAtttriibutte(gg_h
45、CConssoleeOuttputt,0 xx0F);for (leevell_Noow=00;leevell_Noow0)SetCConssoleeTexxtAtttriibutte(gg_hCConssoleeOuttputt,0 xx0F);gotooxy(LEFFT+88,TOOP+22*leevell_Noow);prinntf(%ss,ffileeNammelleveel_NNow);SetCConssoleeTexxtAtttriibutte(gg_hCConssoleeOuttputt,0 xxF0);gotooxy(LEFFT+88,TOOP+22*(lleveel_NNow
46、-1);prinntf(%ss,ffileeNammelleveel_NNow-1);leveel_NNow-;breaak;casee ss: casse S: caase 2: ccasee 800: / 下if(lleveel_NNowTOOP+11)pot_mapp.y-=1;gotooxy(pott_maap.xx,poot_mmap.y);breaak;casee ss:ccasee SS:ccasee 800:/下if(ppot_mapp.yLEFFT+11)pot_mapp.x-=1;gotooxy(pott_maap.xx,poot_mmap.y);breaak;casee
47、dd:ccasee DD:ccasee 777:/右if(ppot_mapp.xRIGGHT-1)pot_mapp.x+=1;gotooxy(pott_maap.xx,poot_mmap.y);breaak;casee 00:SetCConssoleeTexxtAtttriibutte(gg_hCConssoleeOuttputt, 00 x0FF);gotooxy(pott_maap.xx,poot_mmap.y);prinntf(%22s,);potVValpott_maap.xxppot_mapp.y=0;breaak;casee 11:SetCConssoleeTexxtAtttrii
48、butte(gg_hCConssoleeOuttputt, FFOREEGROOUNDD_GRREENN|FOOREGGROUUND_INTTENSSITYY);gotooxy(pott_maap.xx,poot_mmap.y);prinntf();potVValpott_maap.xxppot_mapp.y=1;breaak;casee 22:SetCConssoleeTexxtAtttriibutte(gg_hCConssoleeOuttputt, FFOREEGROOUNDD_BLLUE|FORREGRROUNND_IINTEENSIITY);gotooxy(pott_maap.xx,p
49、oot_mmap.y);prinntf();potVValpott_maap.xxppot_mapp.y=2;breaak;casee 33:SetCConssoleeTexxtAtttriibutte(gg_hCConssoleeOuttputt, FFOREEGROOUNDD_REED|FFOREEGROOUNDD_INNTENNSITTY);gotooxy(pott_maap.xx,poot_mmap.y);prinntf();potVValpott_maap.xxppot_mapp.y=3;breaak;casee 322:/空格if (pottVallpoot_mmap.xpott_
50、maap.yy=0)SetCConssoleeTexxtAtttriibutte(gg_hCConssoleeOuttputt, FFOREEGROOUNDD_GRREENN|FOOREGGROUUND_INTTENSSITYY);gotooxy(pott_maap.xx,poot_mmap.y);prinntf();potVValpott_maap.xxppot_mapp.y=1;elsee iff(pootVaalppot_mapp.xpoot_mmap.y=1)SetCConssoleeTexxtAtttriibutte(gg_hCConssoleeOuttputt, FFOREEGRO
51、OUNDD_BLLUE|FORREGRROUNND_IINTEENSIITY);gotooxy(pott_maap.xx,poot_mmap.y);prinntf();potVValpott_maap.xxppot_mapp.y=2;elsee iff(pootVaalppot_mapp.xpoot_mmap.y=2)SetCConssoleeTexxtAtttriibutte(gg_hCConssoleeOuttputt, FFOREEGROOUNDD_REED|FFOREEGROOUNDD_INNTENNSITTY);gotooxy(pott_maap.xx,poot_mmap.y);pr
52、inntf();potVValpott_maap.xxppot_mapp.y=3;elsee iff(pootVaalppot_mapp.xpoot_mmap.y=3)SetCConssoleeTexxtAtttriibutte(gg_hCConssoleeOuttputt, 00 x0FF);gotooxy(pott_maap.xx,poot_mmap.y);prinntf(%22s,);potVValpott_maap.xxppot_mapp.y=0;breaak;casee 277:retuurn;if(cch=13)gotooxy(LEFFT+22,BUUTTOON-55);prinn
53、tf(你確確定保存存好了嗎嗎?);ch=_gettch();if(cch=13)gotooxy(LEFFT+55,BUUTTOON-33);prinntf(給你你的地圖圖取一個個牛掰的的名字吧吧!- );scannf(%s,teemp_Namme);gotooxy(LEFFT+55,BUUTTOON-22);prinntf(正在在保存.);Sleeep(1100);breaak;elseegotooxy(LEFFT+22,BUUTTOON-55);prinntf(%553s,);gotooxy(pott_maap.xx,poot_mmap.y);whiile(1);strccat(mapp_N
54、aame,temmp_NNamee);strccat(mapp_Naame,.mmap);if(fp=foppen(mapp_Naame,wbb)=NNULLL | (ffMapp=foopenn(mmapssMMapIInfoo.daat,a)=NUULL)gotooxy(LEFFT+112,BBUTTTON-3);prinntf(保存存失敗!);Sleeep(110000);exitt(0);for(i=TTOP+1;iiBUUTTOON-99;i+)for(j=LLEFTT+1;jRRIGHHT;jj+)fwriite(&pootVaaljjii,ssizeeof(shoort),1,f
55、p);strccat(temmp_NNamee,n);fputts(ttempp_Naame,fMaap);fcloose(fMaap);fcloose(fp);gotooxy(LEFFT+112,BBUTTTON-2);prinntf(保存存成功!);Sleeep(110000);/=/ 顯顯示關卡卡界面voidd PrrinttLevv()int i,jj;FILEE *ffp;/定義義讀關卡卡文件的的指針shorrt ffilee_teemp;/臨臨時讀出出的關卡卡文件charr urrl_MMap30=mmapss/;/地圖路路徑strccat(urll_Maap,ffileeNamm
56、elleveel_NNow);strccat(urll_Maap,.maap);if(fp=foppen(urll_Maap,rb)=NUULL)prinntf(關卡卡文件不不存在或或不能打打開關卡卡文件!);exitt(0);gotooxy(LEFFT+22,TOOP+22);for(i=TTOP+1;iiBUUTTOON-99;i+)for(j=LLEFTT+1;jLEFFT+11)Bordd.x=Borrd.xx-1;SetCConssoleeTexxtAtttriibutte(gg_hCConssoleeOuttputt, FFOREEGROOUNDD_GRREENN|FOOREGGR
57、OUUND_INTTENSSITYY);gotooxy(Borrd.xx,Boord.y);prinntf( );potVValBorrd.xxBBordd.y=4;potVValBorrd.xx+1Boord.y=0;elsee iff(Boord.lenngthh=33)if(BBordd.xLEFFT+11)Bordd.x=Borrd.xx-1;SetCConssoleeTexxtAtttriibutte(gg_hCConssoleeOuttputt, FFOREEGROOUNDD_GRREENN|FOOREGGROUUND_INTTENSSITYY);gotooxy(Borrd.xx,
58、Boord.y);prinntf( );potVValBorrd.xxBBordd.y=4;potVValBorrd.xx+3Boord.y=0;elsee iff(Boord.lenngthh=55)if(BBordd.xLEFFT+11)Bordd.x=Borrd.xx-1;SetCConssoleeTexxtAtttriibutte(gg_hCConssoleeOuttputt, FFOREEGROOUNDD_GRREENN|FOOREGGROUUND_INTTENSSITYY);gotooxy(Borrd.xx,Boord.y);prinntf( );potVValBorrd.xxBB
59、ordd.y=4;potVValBorrd.xx+5Boord.y=0;elseeif(BBordd.leengtth=1)if(Borrd.xx+1)RIIGHTT)SetCConssoleeTexxtAtttriibutte(gg_hCConssoleeOuttputt, FFOREEGROOUNDD_GRREENN|FOOREGGROUUND_INTTENSSITYY);gotooxy(Borrd.xx,Boord.y);prinntf( );Bordd.x=Borrd.xx+1;potVValBorrd.xxBBordd.y=4;potVValBorrd.xx-1Boord.y=0;e
60、lsee iff(Boord.lenngthh=33)if(Borrd.xx+3)RIIGHTT)SetCConssoleeTexxtAtttriibutte(gg_hCConssoleeOuttputt, FFOREEGROOUNDD_GRREENN|FOOREGGROUUND_INTTENSSITYY);gotooxy(Borrd.xx,Boord.y);prinntf( );Bordd.x=Borrd.xx+1;potVValBorrd.xx+2Boord.y=4;potVValBorrd.xx-1Boord.y=0;elsee iff(Boord.lenngthh=55)if(Borr
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024校服生產(chǎn)與校園文化衫銷售及售后維護服務合同2篇
- 2車輛租賃公司和個人之間的租車協(xié)議2024
- 2024物業(yè)寵物托管中心與寵物服務商合同
- 2024年網(wǎng)絡安全技術合作合同協(xié)議3篇
- 2024標準化房產(chǎn)居間業(yè)務協(xié)議一
- 2024年網(wǎng)絡游戲開發(fā)與運營合同:虛擬物品與玩家權益保護
- 鄭州師范學院《素描表現(xiàn)》2023-2024學年第一學期期末試卷
- 浙江旅游職業(yè)學院《專業(yè)外語(秘書)》2023-2024學年第一學期期末試卷
- 中南大學《生化工程》2023-2024學年第一學期期末試卷
- 《保護性拆除》課件
- 土壤肥料學(全套1292張課件)
- 一年級計算題連加連減
- 會計專業(yè)工作簡歷表(中級)
- 中國建筑史經(jīng)典題型
- 人民美術出版社三年級下冊書法教案
- 二年級豎式計算題720道(打印排版)
- 公路工程質(zhì)量檢驗評定標準(交安部分)
- 整式的乘法和因式分解純計算題100道
- Consent-Letter-for-Children-Travelling-Abroad
- 玻璃鱗片施工技術規(guī)范
- 操作規(guī)程管理制度的內(nèi)容及示例
評論
0/150
提交評論