




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
#include<stdio.h>#include<string.h>#include<stdlib.h>#include<time.h>#include<conio.h>^include"windows.IT'charPlayer![10];charPlayer2[10];charNamel[10]=l,charNamel[10]=l,SunH;charName2[10]=MLunM;charName3[10]=MRunn;charName4[10]=MAunM;〃町選擇的玩家姓名mtPlaverlX=ll;mtPlaverlY=O;mtPlaver2X=ll;mtPlaver2Y=0;〃玩家mtPlaverlX=ll;mtPlaverlY=O;mtPlaver2X=ll;mtPlaver2Y=0;〃玩家1,X的坐標(biāo)〃玩家1,Y的坐標(biāo)〃玩家2,X的坐標(biāo)〃玩家2,Y的坐標(biāo)iiitn=0;〃記錄擲骰子的局?jǐn)?shù)iiitn=0;mtMap[13][3O]={1,1,1,5,1,1,1,3,1,1,1,1,1,5,1,1,1,1,1,1,1,4,1,1,1,1,1,1,3,1,OQOOOOOQOOOQOgOQOOOQOOOQOQQOJ、OQOOOOOQOOOQOgOQOOOQOOOQOQQOJ、0,0O0g0Q0O0Q0g0Q0O0Q0O0,0O0Q04OQOOOOOQOOOQOgOQOOOQOOOQOQQOJ、OQOOOOOQOOOQOgOQOOOQOOOQOQQOJ、1,1,1,2,1,1,3,1,1,1,1,1,2,1,1,1,13,5,1,1,1,1,1,4,1,1,1,5,1,4Q0O0O0Q0Q0Q0Q0O0Q0O0O0Q0O0Q0O1QOOOOOQOOOQOgOQOOOQOOOQOQQOO1QOOOOOQOOOQOQOOOQOQOOOQOOOQOO5Q0O0O0Q0Q0Q0Q0O0Q0O0O0Q0O0Q0O1QOOOOOQOOOQOgOQOOOQOOOQOQQOO1,1丄4」丄5丄1,1丄4丄1,3丄1,1丄1丄4丄1丄3」丄1」};//地圖的數(shù)組〃使走過的關(guān)卡變成道路voidGoToXYSpace(intx,inty)COORDpos={x,y};HANDLEhOut=GetStdHaiidle(STD_OUTPUT_HANDLE);SetConsoleCuisoiPosition(hOut5pos);pnnW);
〃闖關(guān)完成的提示voidGoToXYEnd(intx,inty.iiiti){COORDpos={x,y};HANDLEhOut=GetStdHaiidle(STD_OUTPUT_HANDLE);SetConsoleCmsorPosition(hOut,pos);printf("玩^%d闖關(guān)成功!?。?!”,i);}〃抹掉幸運(yùn)輪盤底部的提示voidGOToK(intx,inty){COORDpos={x,y};HANDLEhOut=GetStdHaiidle(STD_OUTPUT_HANDLE);SetConsoleCmsorPosition(hOut,pos);}〃地圖底部的提示voidGoToPiompt(iiitx、mty.iiitnumLiiitnuni2jnti){COORDpos={x,y};HANDLEhOut=GetStdHaiidle(STD_OUTPUT_HANDLE);SetConsoleCmsorPosition(hOut,pos);fflush(stdm);回合玩家%01擲骰子pnntf(”玩家%<1擲出了%<回合玩家%01擲骰子,\nuin24.n,numl);}〃停止關(guān)卡的提示voidGoToStop(iiitx、inty.iiitnum){COORDpos={x,y};HANDLEhOut=GetStdHaiidle(STD_OUTPUT_HANDLE);SetConsoleCmsorPosition(hOut,pos);fflush(stdm);prmtf("按回車鍵繼續(xù).第%d回合玩家%4此回合停止}〃玩家1的打印voidGoToXYPl(iiitx,mty)〃玩家1COORDpos={x,y};HANDLEhOut=GetStdHaiidle(STD_OUTPUT_HANDLE);SetConsoleCmsorPosition(hOut,pos);prmtf(n%c%c,\Playerl[O],Player![0]);}〃玩家2的打印voidGoToXYP2(iiitx,mty)〃玩家2{COORDpos={x,y};HANDLEhOut=GetStdHaiidle(STD_OUTPUT_HANDLE);SetConsoleCmsorPosition(hOut,pos);prmtftn%c%cnTlayer2[0],Player2[0]);}〃幸運(yùn)輪盤的提示voidGoToLuck(intx,iiity){COORDpos={x,y};HANDLEhOut=GetStdHaiidle(STD_OUTPUT_HANDLE);SetConsoleCmsorPosition(hOut,pos);fflush(stdm);pnntf(”恭喜你可以實(shí)現(xiàn)一個(gè)愿望,請選擇:1.與對方交換位置\n”);pmitfC' 2.轟炸對方使其退后6步?”);請選擇:”);}〃游戲開始的提示voidGoToStart(mtx.inty)//開始{COORDpos={x,y};HANDLEhOut=GetStdHaiidle(STD_OUTPUT_HANDLE);SetConsoleCmsorPosition(hOut,pos);fflush(stdm);pnntf(”按回車鍵開始.玩家1開始擲骰子”);}〃產(chǎn)生隨機(jī)數(shù)iiitRandoniQsrand(time(NULL));retuin(iaiid()%6+l);〃對玩家1的各種判斷voidDicel(iiiti){if(PlayeilX==Player2X&&Player1Y==Player2Y)GoToXYP2(Player1X,Player1Y);elseGoToXYSpace(Player1X.Player1Y);〃打印道路Map[Player1Y][(Player1X-U)/2]=1;if(PlayeilX<69&&Player1Y==0)〃第一橫行{PlayerlX+=i*2;if(PlayerlX>69){PlayerlY+=(PlayedX-69)/2;PlayeilX=69;}G0T0XYP1(PlayeilX,PlayerlY);}elseif(Player1X==69&&Player1Y<=6)〃第一豎行{PlayeilY+=i;if(Player!Y>6){PlayerlX-=(Player1Y-6)*2;Player1Y=6;}G0T0XYP1(PlayeilX,PlaverlY);}elseif(PlayerlX<69&&Player1Y==6)//逆行{PlayerlX-=i*2;if(PlayerlX<ll){PlayerlY+=(ll-PlaverlX)/2;PlayeilX=ll;}G0T0XYP1(PlayeilX,PlaverlY);}elseif(PlayeilX==ll&&Player1Y>=6)//第二豎行PlayerlY+=i;if(PlayerlY>12)PlayeilX4-=(PlaverlY-12)*2;PlayerlY=12;GoToXYP1(PlayeilX,PlayerlY);}elseif(Player1X<=69&&Player1Y=12)//最后一行{PlayerlX+=i*2;if(PlayeilX>69)Player1X=69;GoToXYPl(PlayerlX,PlayerlY);}}〃對玩家2的各種打印,步驟如玩家1voidDice2(iiiti){if(PlayeilX==Player2X&&Player1Y==Player2Y)GoToXYPl(Player2X,Player2Y);elseGoToXYSpace(Player2X.Player2Y);Map[Player2Y][(Player2X-ll)/2]=l;if<Player2X<69&&Player2Y—0){Player2X+=i*2;if(Player2X>69){Player2Y4-=(Plaver2X-69)/2;Player2X=69;}GoToXYP2(Player2X,Player2Y);}elseif(Player2X==69&&Player2Y<=6){Playei-2Y+=i;if(Player2Y>6){Player2X-=(Player2Y-6)*2;Player2Y=6;}GoToXYP2(Player2X,Player2Y);elseif(Player2X<69&&Plaver2Y==6)//逆行{Player2X-=i*2;if(Playei-2X<ll){Player2Y+=(ll-Plaver2X)/2;Playei2X=ll;}GoToXYP2(Player2X,Player2Y);}elseif(Player2X==ll&&Player2Y>=6){Playei2Y+=i;if(Player2Y>12){Player2X4-=(Plaver2Y-12)*2;Player2Y=12;}GoToXYP2(Player2X,Player2Y);}elseif(Player2X<=69&&Player2Y=12){Player2X+=i*2;if(Playei-2X>69)Playei2X=69;GoToXYP2(Player2X,Player2Y);}}〃地圖的打印voidPrmtMap(iiitMap[][30]){intij;fbi(i=O;i<13;i++)for(j=0j<30j++){if(j==O)pnntfC H);switch(Map[i][j]){case0:pnntffM);break;case1:printf(H::");bieak;case2:printf(Han);break;case3:p】intfC*”);beak;case4:pruitf(HHM);break;case5:printf(H=M);break:}if(j==29)pnntW);}〃開始界面的打印何);棋險(xiǎn)”);何);棋險(xiǎn)”);何);voidPrmtstan(){pnntf(Mpnntf(Mpnntf(Mpnntf(Mpnntf(H\npnntf(M請選擇角色:l.Sun
I ,I騎 士 飛 行I|cs3C83C83C82ammmma|\iiH);兩人對戰(zhàn)\n\n”);\n”);〃游戲說明的打印〃游戲說明的打印voidPrmtEx(){pnntf(M
pnntf(M
pnntf(M
pnntf(M
pnntf(M
pnntf(M
pnntf(M
pnntf(M
pnntf(MS');pnntf(M
pnntf(M
pnntf(MprintfC 2?Lim\n”);printfC 3.Run\ir);printfC 4.AunJ;}|cs3C83C83C82ammmaaa|\iiH);I M);|游 戲 說 明血”);I M);|cs3C83C83C82ammmma|\iiH);玩家選擇的角色以兩個(gè)首字母為代表如Saber(SS)\iT);\ii圖標(biāo)::代表普通道路\11”);\ii圖標(biāo)■代表暫停一回合擲骰子\1T);\ii圖標(biāo)★代表地雷踩中退后6步\1T);\n圖標(biāo)Q代表幸運(yùn)輪盤町選擇與對方互換或轟炸對方\ii圖標(biāo)=代表時(shí)空隧道前進(jìn)10步\n”);\n地圖共100步,誰率先到達(dá)終點(diǎn)則勝利5”);按回車鍵開始游戲:”);〃角色的選擇voidSelectQ{inti;printfC'^請玩家1選擇角色:”);scanff%d”,&i);if(i==l)strcpv(Playeil.Nainel);elseif(i==2)strcpv(Playeil,Naine2);elseif(i==3)strcpv(Playeil,Naine3);elseif(i==4)strcpv(Playeil,Naine4);printfC'^請玩家2選擇角色:”);scanff%d”,&i);if(i==l)strcpy(Player2,Naine1);elseif(i==2)strcpy(Player2,Naine2);elseif(i==3)strcpy(Player2,Naine3);elseif(i==4)strcpy(Player2,Naine4);}〃主函數(shù)iiitmain(){system(HcolofaH);〃打印開始〃角色〃清屏charch;〃打印開始〃角色〃清屏Pnntstart();SelectQ;system(nclsM);PnntExQ;ch=getch();system(nclsM);PrintMap(Map);//打印地圖while(l)D++;//記錄局?jǐn)?shù)mtij.a;if(PlayeilX=ll&&Player1Y==O)//開始提示的條件{GoToStan(ll?15);ch=getch();}if(Map[Player1Y][(PlayerlX-11)/2]=4)〃是否暫停{Map[PlaverlY][(Player1X-11)/2]=1;GoToStop(ll,15,1);getcharQ;GoToPrompt(11,15,2,1j);getcharQ;}else{i=Random();Dicel(i);if(Player1X—69&&Player!Y=12)//是否到終點(diǎn){GoToXYEnd(24,20,l);getchar();return0;}GoToPrompt(11?15,2?1j);if(Map[PlaverlY][(PlayerlX-11)/2]==5)〃是否時(shí)空隧道{i=10;Dicel(i);}if(Map[PlaverlY][(PlayerlX-11)/2]==3)〃炸彈{i=-6;Dicel(i);}if(Map[PlaverlY][(PlayerlX-11)/2]==2)〃幸運(yùn)輪盤{GoToLuck(ll,16);scanf(”%d氣&j);getchar();a=PlaverlX;J zPlayerlX=Playei-2X;Plaver2X=a;Ja=PlaverlY;J 7PlayerlY=Playei-2Y;Plaver2Y=a;GoToXYP1(Player!X.PlayerlY);GoToXYP2(Player2X.Player2Y);}if(J==2){i=-6;Dice2(i);}G
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年中國易分散級氧化鐵數(shù)據(jù)監(jiān)測報(bào)告
- 2025年中國無線滾球鼠標(biāo)市場調(diào)查研究報(bào)告
- 2025年中國新型木制防火門市場調(diào)查研究報(bào)告
- 2025年中國數(shù)字測振儀數(shù)據(jù)監(jiān)測研究報(bào)告
- 2025至2031年中國網(wǎng)盤行業(yè)投資前景及策略咨詢研究報(bào)告
- 2025至2031年中國紅外線防水型彩色攝像機(jī)行業(yè)投資前景及策略咨詢研究報(bào)告
- 肇慶市實(shí)驗(yàn)中學(xué)高中歷史三:第課孫中山的民主追求高效課堂教學(xué)設(shè)計(jì)
- 2025至2031年中國維氏顯微硬度計(jì)行業(yè)投資前景及策略咨詢研究報(bào)告
- 新疆生產(chǎn)建設(shè)兵團(tuán)二中學(xué)2025年初三下學(xué)期月考(一)英語試題試卷含答案
- 新疆維吾爾自治區(qū)烏魯木齊地區(qū)2025屆高三下學(xué)期第一次高考模擬歷史試題含解析
- 《花生膜下滴灌技術(shù)》課件
- 名片設(shè)計(jì)教程
- 《內(nèi)科常見病的診治》課件
- 《我的家鄉(xiāng)日喀則》課件
- 大學(xué)生勞動教育:勞動關(guān)系與勞動保障
- 專業(yè)合作社財(cái)務(wù)報(bào)表EXCEL三表
- 車輛租賃合同(無中介-非租車公司)(標(biāo)準(zhǔn)版)
- 物業(yè)業(yè)主見面會方案
- 油氣集輸管線工程施工組織設(shè)計(jì)方案
- 勞動保障協(xié)理員試題
- 安徽中等專業(yè)學(xué)校畢業(yè)生登記表
評論
0/150
提交評論