【Devc++】战斗1.0.2
生活随笔
收集整理的這篇文章主要介紹了
【Devc++】战斗1.0.2
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
繼續(xù)修BUG。。。
還是感謝【濕布】。。。
還是話不多說(shuō)。。。
上代碼!!!
#include<bits/stdc++.h> #include<windows.h> #include<conio.h> using namespace std; const long long wqs=11; string t; bool f=1; struct wj//玩家的結(jié)構(gòu)體 {string name,mm;bool awq[wqs+1];long long bwq[wqs+1];long long dj,jyz,xie,max_xie;long long gj,fy,wq,qian;long long sbl,zbbh[4];void csh(){max_xie=xie=100;gj=25;fy=5;sbl=5;qian=0;dj=0;jyz=0;for(long long i=1;i<=3;i++){zbbh[i]=0;}for(long long i=0;i<=wqs;i++){awq[i]=0;bwq[i]=0;}return ;} }wj; struct cd//存檔結(jié)構(gòu)體 {void out(){ofstream a("玩家屬性.binggan");a<<wj.name<<"\n";a<<wj.mm<<"\n";a<<wj.dj<<"\n";a<<wj.jyz<<"\n";a<<wj.max_xie<<"\n";a<<wj.xie<<"\n";a<<wj.gj<<"\n";a<<wj.fy<<"\n";a<<wj.sbl<<"\n";a<<wj.qian<<"\n";a.close();ofstream b("裝備.binggan");b<<wj.zbbh[1]<<"\n"<<wj.zbbh[2]<<"\n"<<wj.zbbh[3]<<"\n\n";for(long long i=1;i<=wqs;i++){b<<wj.awq[i]<<"\n";}b<<"\n";for(long long i=1;i<=wqs;i++){b<<wj.bwq[i]<<"\n";}b.close();return ;}void in(){ifstream a("玩家屬性.binggan");a>>wj.name;a>>wj.mm;a>>wj.dj;a>>wj.jyz;a>>wj.max_xie;a>>wj.xie;a>>wj.gj;a>>wj.fy;a>>wj.sbl;a>>wj.qian;a.close();ifstream b("裝備.binggan");b>>wj.zbbh[1]>>wj.zbbh[2]>>wj.zbbh[3];for(long long i=1;i<=wqs;i++){b>>wj.awq[i];}for(long long i=1;i<=wqs;i++){b>>wj.bwq[i];}b.close();return ;} }cd; struct wq//武器結(jié)構(gòu)體 {string name;long long gj;long long fy;long long sbl;long long qian; }wq[wqs+1]={{"無(wú)",0,0,0,0},{"匕首",10,0,20,0},{"鐵劍",30,5,5,100},{"盾",0,30,-5,20},{"鐵甲",-5,40,-10,200},{"大砍刀",45,0,5,0},{"鎖甲",5,35,10,0},{"矛",50,-3,-5,300},{"斧子",50,0,-10,300},{"流星錘",55,-15,-15,0},{"刺傘",40,30,0,0},{"刺扇",40,15,35,0} }; struct gw//怪物結(jié)構(gòu)體 {string name;long long xie;long long gj,fy,sbl;long long qian;long long zbl,zbbh;long long jy; }gw,kl[6]={{"\0",0,0,0,0,0,0,0,0},{"骷髏士兵",80,20,5,5,50,1,50,30},{"骷髏騎士",100,30,5,5,80,2,45,50},{"幽靈骷髏",90,25,0,30,150,wqs,30,60},{"骷髏暴君",180,70,10,5,300,6,55,100},{"骷髏巨人",300,100,20,0,1000,9,75,200} }; void kshm(); void zjm(); void zd(); void dz(long long); void sd(); void bb(); void qk(); void rqk(); void wqqk(); void zwq(); void xwq(); void mwq(); void mwq(long long); void sj(); void out(string,long long); long long sj(long long); int main() {kshm();while(1){system("cls");cout<<"1.存檔 2.新建\n";char n;n=getch();system("cls");if(n=='1'){cd.in();cout<<"用戶名:";cin>>t;if(t!=wj.name){cout<<"用戶名錯(cuò)誤!";Sleep(1000);system("cls");continue;}cout<<"密碼:";cin>>t;if(t!=wj.mm){cout<<"密碼錯(cuò)誤!";Sleep(1000);system("cls");continue;}cd.in();break;}elseif(n=='2'){cout<<"用戶名(0.退出):";cin>>wj.name;if(wj.name=="0"){continue;system("cls");}system("cls");cout<<"密碼(0.退出):";cin>>wj.mm;if(wj.mm=="0"){continue;system("cls");}system("cls");wj.csh();break;}else{cout<<"不要亂輸入!!!"; }system("cls");}system("cls");while(f){zjm();}cd.out();return 0; } void kshm() {system("color f0");cout<<"按任意鍵開始游戲";getch();system("cls"); for(long long i=1;i<=3;i++){system("color 07");system("color 10");system("color 20");system("color 30");system("color 40");system("color 50");system("color 60");system("color 70");system("color 80");system("color 90");system("color a0");system("color b0");system("color c0");system("color d0");system("color e0");system("color f0");}cout<<"\n\n\n\n\n\n\n\n\n\n\n ";out("戰(zhàn)斗",300);cout<<"\n";cout<<" ";out("出品:餅干",30);Sleep(1500);return ; } void out(string n,long long s) {for(long long i=0;i<n.size();i++){cout<<n[i];Sleep(s);}return ; } void zjm() {system("cls");cout<<"1.戰(zhàn)斗\n2.商店\n3.背包\n4.退出";char s;s=getch();switch(s){case '1':zd();break;case '2':sd();break;case '3':bb();break;case '4':f=0;break; default:system("cls");cout<<"不要亂輸入!!!";Sleep(1000); break;}return ; } void zd() {long long s=sj(100);if(s<=40)dz(1);elseif(s<=65)dz(2);elseif(s<=75)dz(3);elseif(s<=90)dz(4);elsedz(5);return ; } void dz(long long bh) {long long t=wj.sbl>80?80:wj.sbl;bool f=0;char s;system("cls");cout<<"你面對(duì)的是"<<kl[bh].name<<"\n";cout<<"血量:"<<kl[bh].xie<<"\n";cout<<"攻擊:"<<kl[bh].gj<<"\n";cout<<"防御:"<<kl[bh].fy<<"\n";cout<<"閃避率:"<<kl[bh].sbl<<"%\n";cout<<"1.迎戰(zhàn) 2.逃跑";s=getch();while(s!='1'&&s!='2')s=getch();if(s=='2'){if(sj(100)<=50){system("cls");cout<<"逃跑成功!";Sleep(1500);return ;}else{system("cls");cout<<"逃跑失敗!";Sleep(1500);}}gw=kl[bh];system("cls");for(long long i=1;1;i++){cout<<"第"<<i<<"回合\n\n\n"; cout<<"你的血量:"<<wj.xie<<"\n";cout<<gw.name<<"的血量"<<gw.xie<<"\n"; cout<<"1.攻擊 2.治療\n";s=getch();while(s!='1'&&s!='2')s=getch();if(s=='1'){if(gw.sbl>=sj(100)){cout<<gw.name<<"閃避了你的攻擊\n";}elseif(gw.fy>=wj.gj){cout<<gw.name<<"防御下了你的攻擊\n"; }else{cout<<gw.name<<"的血量-"<<wj.gj-gw.fy<<"\n";gw.xie-=wj.gj-gw.fy;}}else{if(wj.xie+20>=wj.max_xie){cout<<"已回滿!\n";wj.xie=wj.max_xie;}else{cout<<"你的血量+20\n";wj.xie+=20;}}if(gw.xie<=0){system("cls");cout<<"勝利!\n";cout<<"你獲得了"<<gw.qian<<"金幣\n";cout<<"你獲得了"<<gw.jy<<"經(jīng)驗(yàn)值\n\n";wj.qian+=gw.qian;wj.jyz+=gw.jy;cout<<"按空格鍵繼續(xù)";while(getch()!=' ');sj();return ;}if(t>=sj(100)){cout<<"你閃避了"<<gw.name<<"的攻擊\n";}elseif(wj.fy>=gw.gj){cout<<"你防御下了"<<gw.name<<"的攻擊\n";}else{cout<<"你的血量-"<<gw.gj-wj.fy<<"\n";wj.xie-=gw.gj-wj.fy;}if(wj.xie<=0){system("cls");cout<<"你戰(zhàn)死了!\n";wj.xie=0;Sleep(1000);return ;}Sleep(1000);system("cls");}return ; } void sj() {while(wj.jyz>=100&&wj.dj!=10){system("cls");wj.gj+=2;wj.fy+=1;wj.dj++;wj.jyz-=100;wj.max_xie+=10;wj.xie=wj.max_xie;wj.sbl+=1;out("你升級(jí)了!\n",30);out("血量上限+10\n",30);out("傷害+2\n",30);out("防御+1\n",30);out("閃避率+1\n\n",30);cout<<"按空格繼續(xù)";while(getch()!=' '); }return ; } void sd() {long long t;while(1){system("cls");cout<<"歡迎來(lái)到本【餅干】商店!\n\n";cout<<"你有"<<wj.qian<<"金幣\n";cout<<"1.武器 2.藥品(30元/個(gè),每個(gè)補(bǔ)50血量) 3.退出";char s;s=getch();while(s!='1'&&s!='2'&&s!='3')s=getch();if(s=='1'){mwq();}elseif(s=='2'){system("cls");cout<<"要不要幫你補(bǔ)滿血量?(y/n)";s=getch();while(s!='y'&&s!='n')s=getch();if(s=='y'){if((wj.max_xie-wj.xie)%50==0){if((wj.max_xie-wj.xie)/50*30<=wj.qian){system("cls");cout<<"已回滿!";wj.qian-=(wj.max_xie-wj.xie)/50*30;wj.xie=wj.max_xie;Sleep(1000);}else{system("cls");cout<<"錢不夠!";Sleep(1000);system("cls");}}else{if(((wj.max_xie-wj.xie)/50+1)*30<=wj.qian){system("cls");cout<<"已回滿!";wj.qian-=((wj.max_xie-wj.xie)/50+1)*30;wj.xie=wj.max_xie;Sleep(1000);}else{system("cls");cout<<"錢不夠!";Sleep(1000);system("cls");}}}else{system("cls");cout<<"金幣"<<wj.qian<<"\n";cout<<"血量:"<<wj.xie<<"/"<<wj.max_xie<<"\n";cout<<"你要買幾個(gè)?\n";cin>>t;if(t*30<=wj.qian){system("cls");wj.xie+=t*30;if(wj.xie>wj.max_xie)wj.xie=wj.max_xie;cout<<"夠買成功!";Sleep(1000);system("cls");}else{system("cls");cout<<"錢不夠!";Sleep(1000);system("cls");}}}else{system("cls"); cout<<"歡迎下次光臨!";Sleep(1000);system("cls");return ;}}return ; } void mwq() {system("cls");cout<<"金幣:"<<wj.qian<<"\n\n";cout<<"0.退出\n";cout<<"1.盾(20金幣)\n";cout<<"2.鐵劍(100金幣)\n";cout<<"3.矛(300金幣)\n";cout<<"4.斧子(300金幣)\n";cout<<"5.鐵甲(200金幣)\n";char s;s=getch();while(s!='1'&&s!='2'&&s!='3'&&s!='4'&&s!='5'&&s!='0')s=getch();if(s=='0'){system("cls");return ;}switch(s){case '1':mwq(3);break;case '2':mwq(2);break;case '3':mwq(7);break;case '4':mwq(8);break;case '5':mwq(4);}return ; } void mwq(long long n) {system("cls");if(wj.qian>=wq[n].qian){cout<<"購(gòu)買成功!\n";wj.bwq[n]++;wj.awq[n]=1;wj.qian-=wq[n].qian;Sleep(1000);system("cls");}else{cout<<"錢不夠!\n";Sleep(1000);system("cls");}return ; } void bb() {while(1){system("cls");cout<<"1.查看情況\n2.裝上裝備\n3.卸下裝備\n4.退出";char s;s=getch();while(s!='1'&&s!='2'&&s!='3'&&s!='4')s=getch();switch(s){case '1':qk();break;case '2':zwq();break;case '3':xwq();break;case '4':system("cls");return ;}}return ; } void qk() {while(1){system("cls");cout<<"1.玩家情況 2.武器情況 3.退出";char s;s=getch();while(s!='1'&&s!='2'&&s!='3')s=getch();switch(s){case '1':rqk();break;case '2':wqqk();break;case '3':system("cls");return ;}}return ; } void rqk() {system("cls");cout<<"用戶名:"<<wj.name<<"\n";cout<<"等級(jí):"<<wj.dj;if(wj.dj==10)cout<<"(max)";cout<<"\n";if(wj.dj!=10)cout<<"經(jīng)驗(yàn)值:"<<wj.jyz<<"/100";cout<<"\n";cout<<"血量:"<<wj.xie<<"/"<<wj.max_xie<<"\n";cout<<"攻擊:"<<wj.gj<<"\n";cout<<"防御:"<<wj.fy<<"\n";cout<<"閃避率:";if(wj.sbl>=80)cout<<"80";elseif(wj.sbl<=0)cout<<"0";elsecout<<wj.sbl;cout<<"%\n"; cout<<"金幣:"<<wj.qian<<"\n";cout<<"裝備:"<<"|"<<wq[wj.zbbh[1]].name<<"|"<<wq[wj.zbbh[2]].name<<"|"<<wq[wj.zbbh[3]].name<<"|"<<"\n";cout<<"其他裝備:\n";bool f=1;for(long long i=1;i<=wqs;i++){if(wj.bwq[i]>=1){f=0;cout<<wq[i].name<<"*"<<wj.bwq[i]<<"\n";}}if(f)cout<<"無(wú)";cout<<"\n\n按空格繼續(xù)...\n";char s;s=getch();while(s!=' ')s=getch();return ; } void wqqk() {while(1){system("cls");long long s;do{system("cls");cout<<"0.退出\n";for(long long i=1;i<=wqs;i++){cout<<i<<"."<<wq[i].name<<"\n";}cin>>s;}while(0>s||s>wqs);if(s==0)return ;system("cls");cout<<"裝備名:"<<wq[s].name<<"\n";cout<<"傷害:"<<wq[s].gj<<"\n";cout<<"防御:"<<wq[s].fy<<"\n";cout<<"閃避率:"<<wq[s].sbl<<"%\n";cout<<"\n\n按空格繼續(xù)\n";char t;t=getch();while(t!=' ')t=getch();}return ; } void zwq() {long long s,n;char t;while(1){system("cls");cout<<"0.退出\n";for(long long i=1;i<=wqs;i++){if(wj.bwq[i]>=1){cout<<i<<"."<<wq[i].name<<"*"<<wj.bwq[i]<<"\n";}}cin>>s;while(0>s||s>wqs){system("cls");cout<<"0.退出\n";for(long long i=1;i<=wqs;i++){if(wj.bwq[i]>=1){cout<<i<<"."<<wq[i].name<<"*"<<wj.bwq[i]<<"\n";}}cin>>s;}if(s==0)return ;n=s;if(wj.bwq[s]>=1){system("cls");cout<<"你要裝在哪個(gè)格子里?\n";cout<<"|"<<wq[wj.zbbh[1]].name<<"|"<<wq[wj.zbbh[2]].name<<"|"<<wq[wj.zbbh[3]].name<<"|";t=getch();while(t!='1'&&t!='2'&&t!='3')t=getch();s=t-'0';if(wq[wj.zbbh[s]].name!="無(wú)"){system("cls");cout<<"這個(gè)格子已經(jīng)有武器了!\n";cout<<"是否替換?(y/n)";t=getch();while(t!='y'&&t!='n')t=getch();if(t=='y'){wj.gj-=wq[wj.zbbh[s]].gj;wj.fy-=wq[wj.zbbh[s]].fy;wj.sbl-=wq[wj.zbbh[s]].sbl;wj.bwq[wj.zbbh[s]]++;wj.zbbh[s]=n;wj.bwq[n]--;wj.gj+=wq[n].gj;wj.fy+=wq[n].fy;wj.sbl+=wq[n].sbl;system("cls");out("成功替換!",30);Sleep(1000);}else{system("cls");continue;}}else{wj.gj+=wq[n].gj;wj.fy+=wq[n].fy;wj.sbl+=wq[n].sbl;wj.zbbh[s]=n;wj.bwq[n]--;system("cls");out("成功裝備!",30);Sleep(1000);}}else{system("cls");cout<<"你沒(méi)有這個(gè)裝備!";Sleep(1000);system("cls");}}return ; } void xwq() {long long t;char s;while(1){system("cls");cout<<"你要卸下哪個(gè)格子里的裝備?\n";cout<<"0.退出\n";cout<<"|"<<wq[wj.zbbh[1]].name<<"|"<<wq[wj.zbbh[2]].name<<"|"<<wq[wj.zbbh[3]].name<<"|";s=getch();while(s!='0'&&s!='1'&&s!='2'&&s!='3')s=getch();if(s=='0'){system("cls");return ;}t=s-'0';if(wj.zbbh[t]==0){system("cls");cout<<"此格子內(nèi)無(wú)裝備!";Sleep(1000);continue;}wj.gj-=wq[wj.zbbh[t]].gj;wj.fy-=wq[wj.zbbh[t]].fy;wj.sbl-=wq[wj.zbbh[t]].sbl;wj.bwq[wj.zbbh[t]]++;wj.zbbh[t]=0;system("cls");out("成功卸下!",30);Sleep(1000);}return ; } long long sj(long long s) {srand(time(0));return rand()%s+1; }這次不用刪存檔哦!
大家如果覺(jué)得我寫得好
請(qǐng)點(diǎn)贊、收藏、關(guān)注我哦!
聲明:
以上是我原創(chuàng)的代碼,請(qǐng)勿抄襲,轉(zhuǎn)載請(qǐng)標(biāo)明作者!!!
總結(jié)
以上是生活随笔為你收集整理的【Devc++】战斗1.0.2的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 2023-04-18_面试题复盘笔记(1
- 下一篇: 全球与中国单模连续光纤激光器市场现状及未