c++打僵尸小游戏
#include<bits/stdc++.h>
#include<windows.h>
using namespace std;
long long sm=1000;//生命
long long je=100;//饥饿
long long pl=100;//疲劳
long long sw=10;//食物
long long hj=0;//护甲
long long gj=10;//攻击
long long oq=0;//欧气
long long kl=100;//快乐
long long jq=1000;//金钱
long long jk=100;//健康
char t=0;
string tt;
long long s,ck;
long long mm,mmm,jp,smys,mmmmm,mmmmmm,mmmmmmm,mmmmmmmmmm,mmmmmmmmmmmmmmmmmmmm;
double a;
string aaaaa;
void qwq(string aaaaaa)
{
for(int i=0;i<aaaaaa.size();i++)cout<<aaaaaa[i],Sleep(20);
}
void wt()
{
aaaaa="0.MASTURBATE";
qwq(aaaaa);
cout<<'\n';
aaaaa="1.睡觉";
qwq(aaaaa);
cout<<'\n';
aaaaa="2.出去寻找物资";
qwq(aaaaa);
cout<<'\n';
aaaaa="3.吃东西";
qwq(aaaaa);
cout<<'\n';
aaaaa="4.查看自身状态";
qwq(aaaaa);
cout<<'\n';
aaaaa="5.去黑市";
qwq(aaaaa);
cout<<'\n';
aaaaa="6.使用药水";
qwq(aaaaa);
cout<<'\n';
aaaaa="7.去打僵尸";
qwq(aaaaa);
cout<<'\n';
aaaaa="8.去打僵尸首领(最终boss)";
qwq(aaaaa);
cout<<'\n';
aaaaa="9.?????";
qwq(aaaaa);
cout<<'\n';
}
void shuijiao()
{
if(oq==0)s=rand()%8;
else s=rand()%(oq*8);
if(s==4){cout<<"你被僵尸打了"<<abs(100-hj)<<"滴血"<<'\n';sm-=abs(100+hj);pl+=60;je-=50;}
else {cout<<"你睡了个好觉"<<'\n';pl+=80;je-=50;sm+=20;jk+=20;}
return;
}
void zhaowuzi()
{
int s3=rand()%30;
if(s3==8){cout<<"你幸运地找到了一件护甲(护甲+10,快乐+20)"<<'\n';hj+=10;kl+=20;}
else if(s3==6){cout<<"你幸运地找到了一把好剑(攻击力+15,快乐+20)"<<'\n';gj+=15;kl+=20;}
else if(s3==18){cout<<"你找到了一件破烂的护甲(护甲+5,快乐加10)"<<'\n';hj+=5;kl+=10;}
else if(s3==16){cout<<"你找到了一把破烂的剑(攻击力+9,快乐加10)"<<'\n';gj+=9;kl+=10;}
else if(s3==1||s3==2||s3==5||s3==7||s3==10||s3==25||s3==28||s3==26||s3==29||s3==21)
{
int s4=rand()%3;
cout<<"你找到了"<<s4<<"份食物"<<'\n';
}
else
{
if(gj>150)
{
int t4=rand()%4;
if(t4==2)cout<<"你看见一只僵尸跑了过来,你把他杀了,获得了1件破烂的护甲(护甲+1,快乐+10)和300块钱"<<'\n',hj+=1,kl+=10,jq+=300;
else
{
cout<<"你试图反抗,但被僵尸咬了一口,你扣了"<<55-hj<<"滴血"<<'\n';
sm-=55+hj,kl-=5;
}
}
cout<<"你很不幸,被僵尸咬伤了,你扣了"<<60-hj<<"滴血"<<'\n';
sm-=60+hj,kl-=10;
}
je-=30,pl-=30;
return;
}
void chidongxi()
{
cout<<"请问你要吃几份食物?(你现在有"<<sw<<"份食物)";
cin>>mmm;
if(mmm>sw){cout<<"你没有那么多份食物。";Sleep(1000);return;}
else
{
cout<<"你吃了"<<mmm<<"份食物";
je+=sw*30;
sw-=mmm;
Sleep(1000);
return;
}
}
void zt()
{
cout<<"你的生命为"<<sm<<'\n';
cout<<"你的饥饿为"<<je<<'\n';
cout<<"你的疲劳为"<<pl<<'\n';
cout<<"你的食物为"<<sw<<'\n';
cout<<"你的护甲为"<<hj<<'\n';
cout<<"你的攻击为"<<gj<<'\n';
cout<<"你的欧气为"<<oq<<'\n';
cout<<"你的快乐为"<<kl<<'\n';
cout<<"你的金钱为"<<jq<<'\n';
cout<<"按0退出"<<'\n';
cin>>mmm;
if(mmm==0)return;
}
void heishi()
{
cout<<"你来到了黑市,这里是幸存者的交易场所,你要买什么?"<<'\n';
cout<<"1.铁剑(500元,+20攻击力)"<<'\n';
cout<<"2.铁甲(500元,加15防御力)"<<'\n';
cout<<"3.食物(一份100元,加30饥饿)"<<'\n';
cout<<"4.生命药水(500元,加80生命)"<<'\n';
cout<<"5.JAPAN RAW COLA(一份0元,'加'100生命)"<<'\n';
cout<<"6.欧皇药水(500元,加5欧气)"<<'\n';
cout<<"7.肾上激素(500元,加100疲劳)"<<'\n';
cout<<"8.钻石剑(2000元,加120攻击力)"<<'\n';
cout<<"9.钻石甲(2500元,加80护甲)"<<'\n';
cout<<"10.天皇の剣(5000元,加300攻击力)"<<'\n';
cin>>mmm;
if(mmm==1)
{
if(jq<500)cout<<"你没有那么多钱"<<'\n';
else cout<<"你购买了一把铁剑"<<'\n',gj+=20,jq-=500;
Sleep(1000);
return;
}
if(mmm==2)
{
if(jq<500)cout<<"你没有那么多钱"<<'\n';
else cout<<"你购买了一把铁甲"<<'\n',hj+=15,jq-=500;
Sleep(1000);
return;
}
if(mmm==3)
{
cout<<"你要购买几份食物?"<<'\n';
cin>>mmm;
if(jq<100*mmm)cout<<"你没有那么多钱"<<'\n';
else cout<<"你购买了"<<mmm<<"份食物"<<'\n',sw+=mmm,jq-=100*mmm;
Sleep(1000);
return;
}
if(mmm==4)
{
if(jq<500)cout<<"你没有那么多钱"<<'\n';
else cout<<"你购买了一瓶生命药水"<<'\n',smys++,jq-=500;
Sleep(1000);
return;
}
if(mmm==5)
{
cout<<"你购买了一大杯JAPAN RAW COLA"<<'\n',jp++;
Sleep(1000);
return;
}
if(mmm==6)
{
if(jq<500)cout<<"你没有那么多钱"<<'\n';
else cout<<"你购买了一瓶欧皇药水"<<'\n',jq-=500,oq+=5;
Sleep(1000);
return;
}
if(mmm==7)
{
if(jq<500)cout<<"你没有那么多钱"<<'\n';
else cout<<"你购买了一个肾上激素"<<'\n',jq-=500,pl+=100;
jk-=20;
Sleep(1000);
return;
}
if(mmm==8)
{
if(jq<2000)cout<<"你没有那么多钱"<<'\n';
else cout<<"你购买了一把钻石剑"<<'\n',jq-=2000,gj+=120;
Sleep(1000);
return;
}
if(mmm==9)
{
if(jq<2500)cout<<"你没有那么多钱"<<'\n';
else cout<<"你购买了一套钻石甲"<<'\n',jq-=2500,hj+=80;
Sleep(1000);
return;
}
if(mmm==10)
{
if(jq<5000)cout<<"你没有那么多钱"<<'\n';
else cout<<"你购买了一把天皇の剣"<<'\n',jq-=5000,gj+=300;
Sleep(1000);
return;
}
return;
}
void yaoshui()
{
cout<<"你有"<<smys<<"瓶生命药水,请问你要使用几瓶?"<<'\n';
cin>>mmm;
if(mmm>smys)cout<<"你没有那么多生命药水"<<'\n';
else sm+=mmm*80,smys-=mmm,cout<<"你使用了"<<mmm<<"瓶生命药水"<<'\n';
return;
}
void yc()
{
system("color F");
for(int i=1;i<=10000;i++)cout<<'?';
system("cls");
cout<<"你终于来了?"<<'\n';
Sleep(1000);
cout<<"请输入密码"<<'\n';
cin>>mmm;
if(mmm==mm)
{
cout<<"请输入2级密码"<<'\n';
cin>>tt;
if(tt=="JAPANRAWCOLA")
{
for(int i=1;i<=100;i++)
{
cout<<"代码出现错误!"<<'\n';
Sleep(50);
}
system("cls");
cout<<"相棒,よく来たな,核排水を海に出せ";
mmmmm=1;
Sleep(1000);
}
}
else mmmmmm=1;
return;
}
void djs()
{
int tttt=rand()%15,jsxl,jsgj,jssb;
if(tttt==4){cout<<"你遇到了僵尸王"<<'\n';jsxl=300,jsgj=90,jssb=40;}
else if(tttt==2){cout<<"你遇到了かくはいすい僵尸"<<'\n';jsxl=150,jsgj=100,jssb=0;}
else if(tttt==5){cout<<"你遇到了金钱僵尸"<<'\n';jsxl=100,jsgj=40,jssb=30;}
else if(tttt==9){cout<<"你遇到了武士僵尸"<<'\n';jsxl=80,jsgj=50,jssb=20;}
else if(tttt==14){cout<<"你遇到了医生僵尸"<<'\n';jsxl=500,jsgj=60;}
else {cout<<"你遇到了普通僵尸"<<'\n';jsxl=50,jsgj=25,jssb=0;}
while(jsxl>0)
{
cout<<"你对僵尸造成了"<<gj<<"点伤害"<<'\n';
jsxl-=gj;
if(tttt==14)cout<<"僵尸医生给自己回了150点血"<<'\n',jsxl+=150;
int ttttt=rand()%(50-oq);
if(ttttt==1||ttttt==5||ttttt==15||ttttt==10||ttttt==25)cout<<"你闪开了僵尸的攻击"<<'\n';
else
{
if(hj>=jsgj){cout<<"僵尸对你造成了1点伤害"<<'\n',sm--;}
else cout<<"僵尸对你造成了"<<jsgj-hj<<"点伤害"<<'\n',sm-=jsgj,sm+=hj;
}
if(sm<0)return;
Sleep(500);
}
if(tttt==4)cout<<"你打死了僵尸王(加2000元)"<<'\n',jq+=2000;
else if(tttt==2)cout<<"你打死了かくはいすい僵尸(加500元)"<<'\n',jq+=500;
else if(tttt==5)cout<<"你打死了金钱僵尸(加1000元)"<<'\n',jq+=1000;
else if(tttt==9)cout<<"你打死了武士僵尸(加800元)"<<'\n',jq+=800;
else if(tttt==14)cout<<"你打死了医生僵尸(加1000元)"<<'\n',jq+=1000;
else cout<<"你打死了普通僵尸(加500元)"<<'\n',jq+=500;
pl-=30,je-=20;
return;
}
void jsw()
{
if(mmmmmmm==0)
{
for(int j=1;j<=10000;j++)cout<<'?';
system("cls");
int jsxl=2000,jsgj=200;
while(jsxl>0)
{
cout<<"你对僵尸首领造成了"<<gj<<"点伤害"<<'\n';
jsxl-=gj;
int ttttt=rand()%(50-oq);
if(ttttt==1||ttttt==5||ttttt==15||ttttt==10||ttttt==25)cout<<"你闪开了僵尸首领的攻击"<<'\n';
else cout<<"僵尸首领对你造成了"<<jsgj<<"点伤害"<<'\n',sm-=jsgj;
if(sm<0)return;
Sleep(1000);
}
cout<<"你打死了僵尸首领"<<'\n';
for(int i=1;i<=10000;i++)cout<<'?';
Sleep(500);
system("cls");
cout<<"你以为这就完了?"<<'\n';
Sleep(2000);
cout<<"不,还没有完,僵尸首领进入2阶状态"<<'\n';
Sleep(2000);
cout<<"僵尸首领使用了かくはいすい,你只剩一点生命。"<<'\n';
Sleep(2000);
cout<<"结束这一切吧。"<<'\n';
Sleep(2000);
cout<<"僵尸首领攻击!"<<'\n';
Sleep(2000);
cout<<"我完了?不!"<<'\n';
Sleep(2000);
cout<<"?我为什么没有死?"<<'\n';
Sleep(2000);
cout<<"你顾不上自己为什么没有死,继续跟2阶僵尸首领战斗";
Sleep(2000);
jsxl=6000,jsgj=300;
while(jsxl>0)
{
cout<<"你对僵尸首领造成了"<<gj<<"点伤害"<<'\n';
jsxl-=gj;
int ttttt=rand()%2;
if(ttttt==1)cout<<"你闪开了僵尸首领的攻击"<<'\n';
else cout<<"僵尸首领对你造成了"<<jsgj<<"点伤害"<<'\n',sm-=jsgj;
if(sm<0)return;
Sleep(1000);
}
cout<<"你让2阶僵尸首领只剩下了一点血"<<'\n';
mmmmmmm=1;
Sleep(2000);
cout<<"我还会回来的"<<'\n';
cout<<"僵尸首领不见了"<<'\n';
cout<<"战利品;10份食物,5000元"<<'\n';
sw+=10,jq+=5000;
Sleep(2000);
return;
}
else
{
for(int i=1;i<=10000;i++)cout<<'?';
Sleep(2000);
system("cls");
cout<<"你又回来了?"<<'\n';
for(int i=1;i<=50000;i++)cout<<'?';
Sleep(2000);
cout<<'\n';
cout<<"JAPANRAWCOLA"<<'\n';
Sleep(500);
system("cls");
cout<<"你开始跟三阶僵尸首领战斗!"<<'\n';
int jsxl=9999,jsgj=500;
while(jsxl>0)
{
cout<<"你对僵尸首领造成了"<<gj<<"点伤害"<<'\n';
jsxl-=gj;
int ttttt=rand()%5;
if(ttttt==4)cout<<"僵尸首领对你造成了"<<jsgj<<"点伤害"<<'\n',sm-=jsgj;
else cout<<"你闪开了僵尸首领的攻击"<<'\n';
if(sm<0)return;
Sleep(1000);
}
cout<<"你打死了僵尸首领";
mmmmmmmmmmmmmmmmmmmm=1;
}
}
void mas()
{
mmmmmmmmmm=1;
return;
}
int main()
{
cout<<"游戏数据出现异常";
Sleep(2000);
system("cls");
cout<<"未检测到游戏";
system("cls");
cout<<"!!开始下载游戏!!";
Sleep(2000);
system("cls");
for(int i=0;i<=1000;i++)
{
if(a==100)cout<<"游戏正式启动"<<'\n';
else cout<<"正在下载数据"<<a<<'%'<<'\n';
Sleep(0.1);
a+=0.01;
system("cls");
}
cout<<"下载游戏完毕\n需要重启";
system("shutdown -r -t 1");
std::cout << "电脑将在60秒后重启..." << std::endl;
Sleep(50);
system("cls");
if(MessageBox(0,TEXT("请不要输入任何字符,否则将导致游戏崩溃!"), TEXT("重要提示"), MB_OKCANCEL | MB_ICONINFORMATION) != IDOK)
{
MessageBox(0, TEXT("既然你不同意,那就别玩了"), TEXT("重要提示"), MB_OK);
return 0;
};
aaaaa="由于**大量排放核废水,导致大多数人类变异成僵尸,现在你是仅剩的幸存者之一。";
qwq(aaaaa);
cout<<'\n';
aaaaa="请选择天赋";
qwq(aaaaa);
cout<<'\n';
aaaaa="1.壮汉(护甲+10)";
qwq(aaaaa);
cout<<'\n';
aaaaa="2.刺客(攻击力+20)";
qwq(aaaaa);
cout<<'\n';
aaaaa="3.欧皇(欧气+10)";
qwq(aaaaa);
cout<<'\n';
aaaaa="4.解码者(获得密码中的第一位(新手不推荐))";
qwq(aaaaa);
cout<<'\n';
aaaaa="5.吃货(食物加10)";
qwq(aaaaa);
cout<<'\n';
aaaaa="6.大亨(初始有2000元)";
qwq(aaaaa);
cout<<'\n';
cin>>t;
cout<<'\n';
if(t=='1')hj+=10;
if(t=='2')gj+=20;
if(t=='3')oq+=10;
if(t=='4')qwq("第一位密码是"),cout<<mm/10000<<'\n';
if(t=='5')sw+=10;
if(t=='6')jq+=1000;
Sleep(1000);
system("cls");
while(1)
{
if(je>100)sm+=(je-100)/5,je=100;
if(hj>100)hj=100;
if(oq>20)oq=20;
if(sm>1000)sm=1000;
if(kl>100)kl=100;
wt();
cin>>t;
if(t=='1')shuijiao();
if(t=='2')zhaowuzi();
if(t=='3')chidongxi();
if(t=='4')zt();
if(t=='5')heishi();
if(t=='6')yaoshui();
if(t=='7')djs();
if(t=='8')jsw();
if(t=='9')yc();
if(t=='0')mas();
Sleep(2000);
system("cls");
if(jk<=0){qwq("你因为太久没睡觉而不健康,你死了。结局:多多睡觉。");cout<<'\n';return 0;}
if(sm<0){qwq("你被僵尸打死了,结局:幸存了,但不久");cout<<'\n';return 0;}
if(je<0){qwq("你饿死了,结局:活活饿死");cout<<'\n';return 0;}
if(jp!=0){qwq("你被JAPAN RAW COLA弄死了,结局:我也是僵尸啊!!!");cout<<'\n';return 0;}
if(kl+200<0){qwq("你觉得你没有活的希望,你自杀了,结局:腐朽的世界");cout<<'\n';return 0;}
if(mmmmm==1){qwq("おめでとうございます、隠しエンディングを解除します:秘密の会話");cout<<'\n';return 0;}
if(mmmmmm==1){qwq("相棒、データを手に入れた、結末:謎のデータ(你死了)");cout<<'\n';return 0;}
if(pl+50<0){qwq("你被累死了。结局:昏昏欲睡。");cout<<'\n';return 0;}
if(mmmmmmmmmm==1){qwq("你在MASTURBATE时把自己的**拔了出来,你死了。结局:变态");cout<<'\n';return 0;}
if(mmmmmmmmmmmmmmmmmmmm==1){qwq("你打死了僵尸首领,结局:胜利!");cout<<'\n';return 0;}
}
return 0;
}
/*
《诗经·梅木》
梅木冬溪,思慕晚意
飞舞洒碧,碧漾东西
梅覆梅木,梅游佳亭
泉佳似广,梅忧寂极
糙泥马壁,坻石洞溪
时复思母,消愁东曦
6666666666
*/
更多推荐
所有评论(0)