红蓝大战街机小游戏
taotianyi0103 · · 休闲·娱乐
红蓝大战街机小游戏 全版本源代码
1.0 原始版
#include<bits/stdc++.h>
#include<windows.h>
using namespace std;
int x[3],h[3],i,cc[5]={0,3,7,4,5};
string p[3];
void c(int q)
{
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),q);
}
void w(int f)
{
system("cls");
cout<<setw(50);
if(!f)
{
c(2);
cout<<"平局\n双方同时死亡";
}
if(f==1)
{
cout<<"P1";
c(4);
cout<<p[1];
c(7);
cout<<"获胜";
}
if(f==2)
{
cout<<"P2";
c(3);
cout<<p[2];
c(7);
cout<<"获胜";
}
exit(0);
}
int main()
{
srand(time(0));
c(3);
cout<<setw(57)<<"街机小游戏之红蓝大作战 1.0 \n";
c(4);
cout<<"P1:";
cin>>p[1];
c(3);
cout<<"P2:";
cin>>p[2];
c(7);
x[1]=x[2]=20;
cout<<"-----------------------------------\n"<<setw(15)<<"加载中...";
Sleep(4000);
system("cls");
cout<<setw(20)<<"加载成功!";
Sleep(500);
system("cls");
i=1;
while(1)
{
int a=rand()%20+1,b=rand()%20+1,ccc=rand()%20+1,j1,j2,j3;
int df=(i%2)+1;
for(int j=1;j<=20;++j)
{
system("cls");
c(7);
cout<<"第"<<i<<"回合"<<" ";
c((i%2)+3);
cout<<p[2-i%2];
c(7);
if(a>=i)
j1=rand()%4+1;
if(b>=i)
j2=rand()%4+1;
if(ccc>=i)
j3=rand()%4+1;
cout<<"回合\n发动技能:";
c(cc[j1]);
cout<<"技能";
c(cc[j2]);
cout<<"技能";
c(cc[j3]);
cout<<"技能";
Sleep(500);
}
system("cls");
c(7);
cout<<"本轮结果:";
c(cc[j1]);
cout<<"技能";
c(cc[j2]);
cout<<"技能";
c(cc[j3]);
cout<<"技能";
Sleep(3000);
if(j1==2&&j2==2&&j3==2)
{
cout<<"恭喜3连防御!获得10点防御";
h[df]=10;
Sleep(3000);
c(7);
system("cls");
cout<<"现状:\n";
c(4);
cout<<"P1 "<<p[1]<<":血量"<<x[1]<<" "<<"防御"<<h[1]<<'\n';
c(3);
cout<<"P2 "<<p[2]<<":血量"<<x[2]<<" "<<"防御"<<h[2]<<'\n';
Sleep(2500);
system("cls");
}else
if(j1==4&&j2==4&&j3==4)
{
cout<<"¹§Ï²3Á¬»Ø¸´£¡»Ö¸´20µãѪÁ¿";
x[df]=20;
Sleep(3000);
c(7);
system("cls");
cout<<"ÏÖ×´£º\n";
c(4);
cout<<"P1 "<<p[1]<<":ѪÁ¿"<<x[1]<<" "<<"·ÀÓù"<<h[1]<<'\n';
c(3);
cout<<"P2 "<<p[2]<<":ѪÁ¿"<<x[2]<<" "<<"·ÀÓù"<<h[2]<<'\n';
Sleep(2500);
system("cls");
}else
{
switch(j1)
{
case 1:
{
if(h[df]>=6)
h[df]-=6;else
h[df]=0,x[df]-=(6-h[df]);
break;
}
case 2:
{
h[2-(i%2)]=min(10,h[2-(i%2)]+3);
break;
}
case 3:
{
if(h[2-(i%2)]>=3)
h[2-(i%2)]-=3;else
h[2-(i%2)]=0,x[2-(i%2)]-=(3-h[2-(i%2)]);
if(h[df]>=3)
h[df]-=3;else
h[df]=0,x[df]-=(3-h[df]);
break;
}
case 4:
{
x[2-(i%2)]=min(20,x[2-(i%2)]+6);
break;
}
}
if(x[1]<1&&x[2]<1)
w(0);
if(x[2]<1)
w(1);
if(x[1]<1)
w(2);
c(7);
system("cls");
cout<<"现状:\n";
c(4);
cout<<"P1 "<<p[1]<<":血量"<<x[1]<<" "<<"防御"<<h[1]<<'\n';
c(3);
cout<<"P2 "<<p[2]<<":血量"<<x[2]<<" "<<"防御"<<h[2]<<'\n';
Sleep(2500);
system("cls");
switch(j2)
{
case 1:
{
if(h[df]>=6)
h[df]-=6;else
h[df]=0,x[df]-=(6-h[df]);
break;
}
case 2:
{
h[2-(i%2)]=min(10,h[2-(i%2)]+3);
break;
}
case 3:
{
if(h[2-(i%2)]>=3)
h[2-(i%2)]-=3;else
h[2-(i%2)]=0,x[2-(i%2)]-=(3-h[2-(i%2)]);
if(h[df]>=3)
h[df]-=3;else
h[df]=0,x[df]-=(3-h[df]);
break;
}
case 4:
{
x[2-(i%2)]=min(20,x[2-(i%2)]+6);
break;
}
}
if(x[1]<1&&x[2]<1)
w(0);
if(x[2]<1)
w(1);
if(x[1]<1)
w(2);
system("cls");
c(7);
cout<<"现状:\n";
c(4);
cout<<"P1 "<<p[1]<<":血量"<<x[1]<<" "<<"防御"<<h[1]<<'\n';
c(3);
cout<<"P2 "<<p[2]<<":血量"<<x[2]<<" "<<"防御"<<h[2]<<'\n';
Sleep(2500);
system("cls");
switch(j3)
{
case 1:
{
if(h[df]>=6)
h[df]-=6;else
h[df]=0,x[df]-=(6-h[df]);
break;
}
case 2:
{
h[2-(i%2)]=min(10,h[2-(i%2)]+3);
break;
}
case 3:
{
if(h[2-(i%2)]>=3)
h[2-(i%2)]-=3;else
h[2-(i%2)]=0,x[2-(i%2)]-=(3-h[2-(i%2)]);
if(h[df]>=3)
h[df]-=3;else
h[df]=0,x[df]-=(3-h[df]);
break;
}
case 4:
{
x[2-(i%2)]=min(20,x[2-(i%2)]+6);
break;
}
}
if(x[1]<1&&x[2]<1)
w(0);
if(x[2]<1)
w(1);
if(x[1]<1)
w(2);
system("cls");
c(7);
cout<<"现状:\n";
c(4);
cout<<"P1 "<<p[1]<<":血量"<<x[1]<<" "<<"防御"<<h[1]<<'\n';
c(3);
cout<<"P2 "<<p[2]<<":血量"<<x[2]<<" "<<"防御"<<h[2]<<'\n';
Sleep(3500);
}
++i;
}
}
2.0 焕新版
#include<bits/stdc++.h>
#include<windows.h>
using namespace std;
string name[3];
int jf,df,ls,sz[7],cl[4]={2,3,4,6},xl[3],hd[3],x,y,z;
void c(int q)
{
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),q);
}
void pj()
{
c(2);
cout<<"双方平局,游戏结束";
}
void hs(int r)
{
c(5-r);
cout<<name[r];
c(7);
cout<<"获胜,游戏结束";
}
void d(int cz)
{
switch(cz)
{
case 0:{
xl[df]-=max(1,50-hd[df]);
break;
}
case 1:{
xl[df]-=30;
break;
}
case 2:{
xl[jf]=min(xl[jf]+40,600);
break;
}
case 3:{
hd[jf]+=8;
break;
}
}
}
int main()
{
srand(time(0));
while(1)
{
cout<<setw(40)<<"街机小游戏之红蓝大战 2.0\n";
c(4);
cout<<"红方:";
cin>>name[1];
c(3);
cout<<"蓝方:";
cin>>name[2];
ls=0;
xl[1]=xl[2]=600;
hd[1]=hd[2]=0;
while(1)
{
++ls;
system("cls");
df=(ls%2)+1,jf=3-df;
for(int i=1;i<=6;++i)
sz[i]=rand()%4;
c(7);
cout<<"第"<<ls<<"轮:";
c(5-jf);
cout<<name[jf];
c(7);
cout<<"发动攻击\n";
bool ttt=true;
for(int i=1;i<=6;++i)
{
c(cl[sz[i]]);
cout<<"技能 ";
if(i%3==0)
cout<<'\n';
if(i>1)
ttt=ttt&&(sz[i]==sz[i-1]);
}
Sleep(2000);
c(7);
if(!ttt)
cin>>x>>y>>z;else
{
switch(sz[1])
{
case 0:{
xl[df]-=max(1,300-hd[df]);
break;
}
case 1:{
xl[df]-=180;
break;
}
case 2:{
xl[jf]=min(xl[jf]+240,600);
break;
}
case 3:{
hd[jf]+=48;
break;
}
}
}
if(!ttt)
{
if(sz[x]==sz[y]&&sz[y]==sz[z])
{
switch(sz[x])
{
case 0:{
xl[df]-=max(1,180-hd[df]);
break;
}
case 1:{
xl[df]-=108;
break;
}
case 2:{
xl[jf]=min(xl[jf]+120,600);
break;
}
case 3:{
hd[jf]+=24;
break;
}
}
}else
{
int k=min(sz[x],min(sz[y],sz[z]));
int l=max(sz[x],max(sz[y],sz[z]));
sz[y]=sz[x]+sz[y]+sz[z]-k-l;
sz[x]=k;
sz[z]=l;
if(sz[x]==sz[y]||sz[y]==sz[z])
{
switch(sz[y])
{
case 0:{
xl[df]-=max(1,110-hd[df]);
break;
}
case 1:{
xl[df]-=66;
break;
}
case 2:{
xl[jf]=min(xl[jf]+80,600);
break;
}
case 3:{
hd[jf]+=16;
break;
}
}
if(sz[x]==sz[y])
d(sz[z]);
if(sz[y]==sz[z])
d(sz[x]);
}else
{
d(sz[x]);
d(sz[y]);
d(sz[z]);
}
}
c(4);
cout<<name[1]<<" 血量"<<xl[1]<<" 防御"<<hd[1]<<'\n';
c(3);
cout<<name[2]<<" 血量"<<xl[2]<<" 防御"<<hd[2]<<'\n';
c(7);
Sleep(5000);
if(xl[1]==0&&xl[2]==0)
pj();
if(xl[1]==0)
hs(2);
if(xl[2]==0)
hs(1);
}
}
}
}
2.1增元版
#include<bits/stdc++.h>
#include<windows.h>
using namespace std;
string name[3],xg[6]={"剑 55","刀 50","斧 45","电 30","心 40","盾 8"};
int jf,df,ls,sz[7],cl[6]={2,5,7,3,4,6},xl[3],hd[3],x,y,z,sj[7]={55,50,45,30,40,8},bl[7]={0,100,220,360,0,0,600};
void c(int q)
{
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),q);
}
void pj()
{
system("cls");
c(2);
cout<<"双方平局,游戏结束";
Sleep(5000);
}
void hs(int r)
{
system("cls");
c(5-r);
cout<<name[r];
c(7);
cout<<"获胜,游戏结束";
Sleep(5000);
}
void d(int cz,int sl)
{
int xg=sj[cz]*bl[sl];
if(xg%100>=50)
xg=xg/100+1;else
xg=xg/100;
switch(cz)
{
case 0:{
xl[df]-=max(1,xg-hd[df]);
break;
}
case 1:{
xl[df]-=max(1,xg-hd[df]);
break;
}
case 2:{
xl[df]-=max(1,xg-hd[df]);
break;
}
case 3:{
xl[df]-=xg;
break;
}
case 4:{
xl[jf]=min(xl[jf]+xg,600);
break;
}
case 5:{
hd[jf]+=xg;
break;
}
}
}
int main()
{
srand(time(0));
while(1)
{
system("cls");
cout<<setw(40)<<"街机小游戏之红蓝大战 2.1\n";
c(4);
cout<<"红方:";
cin>>name[1];
c(3);
cout<<"蓝方:";
cin>>name[2];
ls=0;
xl[1]=xl[2]=600;
hd[1]=hd[2]=0;
while(1)
{
++ls;
system("cls");
df=(ls%2)+1,jf=3-df;
int md=rand()%25;
bool ttt;
c(7);
cout<<"第"<<ls<<"轮:";
c(5-jf);
cout<<name[jf];
c(7);
cout<<"发动攻击\n";
if(md<3)
{
sz[1]=rand()%6;
sz[2]=sz[3]=sz[4]=sz[5]=sz[6]=sz[1];
}else
{
for(int i=1;i<=6;++i)
sz[i]=rand()%6;
}
ttt=true;
for(int i=1;i<=6;++i)
{
c(cl[sz[i]]);
cout<<xg[sz[i]]<<" ";
if(i%3==0)
cout<<'\n';
if(i>1)
ttt=ttt&&(sz[i]==sz[i-1]);
}
Sleep(2000);
c(7);
if(!ttt)
cin>>x>>y>>z;else
d(sz[1],6);
if(!ttt)
{
if(sz[x]==sz[y]&&sz[y]==sz[z])
d(sz[x],3);else
{
int k=min(sz[x],min(sz[y],sz[z]));
int l=max(sz[x],max(sz[y],sz[z]));
sz[y]=sz[x]+sz[y]+sz[z]-k-l;
sz[x]=k;
sz[z]=l;
if(sz[x]==sz[y]||sz[y]==sz[z])
{
d(sz[y],2);
if(sz[x]==sz[y])
d(sz[z],1);
if(sz[y]==sz[z])
d(sz[x],1);
}else
{
d(sz[x],1);
d(sz[y],1);
d(sz[z],1);
}
}
}
c(4);
cout<<name[1]<<" 血量"<<xl[1]<<" 防御"<<hd[1]<<'\n';
c(3);
cout<<name[2]<<" 血量"<<xl[2]<<" 防御"<<hd[2]<<'\n';
c(7);
Sleep(5000);
if(xl[1]<=0&&xl[2]<=0)
pj();
if(xl[1]<=0)
hs(2);
if(xl[2]<=0)
hs(1);
if(xl[1]*xl[2]<0)
break;
}
}
}
2.2 UI升级版
#include<bits/stdc++.h>
#include<windows.h>
using namespace std;
char ch;
bool sjj;
string s,name[3],xg[6]={"剑 55","刀 50","斧 45","电 30","心 40","盾 8"};
int xxl,jf,df,ls,sz[7],cl[6]={2,5,7,3,4,6},xl[3],hd[3],x,y,z,sj[7]={55,50,45,30,40,8},bl[7]={0,100,220,360,0,0,600};
void c(int q)
{
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),q);
}
void pj()
{
system("cls");
if(xl[1]!=xl[2])
{
cout<<"游戏超时,玩家";
c(4-(xl[2]>xl[1]));
cout<<name[1+(xl[2]>xl[1])];
c(7);
cout<<"血量更高,获得胜利";
}else
{
c(2);
cout<<"双方平局,游戏结束";
}
Sleep(5000);
}
void hs(int r)
{
system("cls");
c(5-r);
cout<<name[r];
c(7);
cout<<"获胜,游戏结束";
Sleep(5000);
}
void d(int cz,int sl)
{
int xg=sj[cz]*bl[sl];
if(xg%100>=50)
xg=xg/100+1;else
xg=xg/100;
switch(cz)
{
case 0:{
xl[df]-=max(1,xg-hd[df]);
break;
}
case 1:{
xl[df]-=max(1,xg-hd[df]);
break;
}
case 2:{
xl[df]-=max(1,xg-hd[df]);
break;
}
case 3:{
xl[df]-=xg;
break;
}
case 4:{
xl[jf]=min(xl[jf]+xg,xxl);
break;
}
case 5:{
hd[jf]+=xg;
break;
}
}
}
void yx()
{
system("cls");
cout<<setw(40)<<"街机小游戏之红蓝大战 2.2\n";
c(4);
cout<<"红方:";
cin>>name[1];
c(3);
cout<<"蓝方:";
cin>>name[2];
ls=0;
xl[1]=xl[2]=xxl;
hd[1]=hd[2]=0;
jf=1;
while(1)
{
++ls;
system("cls");
df=jf;
if(ls%2==1&&sjj)
df=rand()%2+1;
jf=3-df;
int md=rand()%25;
bool ttt;
c(7);
cout<<"第"<<ls<<"轮:";
c(5-jf);
cout<<name[jf];
c(7);
cout<<"发动攻击\n";
if(md<3)
{
sz[1]=rand()%6;
sz[2]=sz[3]=sz[4]=sz[5]=sz[6]=sz[1];
}else
{
for(int i=1;i<=6;++i)
sz[i]=rand()%6;
}
ttt=true;
for(int i=1;i<=6;++i)
{
c(cl[sz[i]]);
cout<<xg[sz[i]]<<" ";
if(i%3==0)
cout<<'\n';
if(i>1)
ttt=ttt&&(sz[i]==sz[i-1]);
}
Sleep(2000);
c(7);
if(!ttt)
cin>>x>>y>>z;else
d(sz[1],6);
if(!ttt)
{
if(sz[x]==sz[y]&&sz[y]==sz[z])
d(sz[x],3);else
{
int k=min(sz[x],min(sz[y],sz[z]));
int l=max(sz[x],max(sz[y],sz[z]));
sz[y]=sz[x]+sz[y]+sz[z]-k-l;
sz[x]=k;
sz[z]=l;
if(sz[x]==sz[y]||sz[y]==sz[z])
{
d(sz[y],2);
if(sz[x]==sz[y])
d(sz[z],1);
if(sz[y]==sz[z])
d(sz[x],1);
}else
{
d(sz[x],1);
d(sz[y],1);
d(sz[z],1);
}
}
}
c(4);
cout<<name[1]<<" 血量"<<xl[1]<<" 防御"<<hd[1]<<'\n';
c(3);
cout<<name[2]<<" 血量"<<xl[2]<<" 防御"<<hd[2]<<'\n';
c(7);
Sleep(5000);
if(ls==50)
pj();
if(xl[1]<=0)
hs(2);
if(xl[2]<=0)
hs(1);
if(xl[1]*xl[2]<0)
break;
}
}
void gz()
{
system("cls");
c(7);
cout<<" 规则\n";
c(4);
cout<<"1.每种攻击/防御/回血方式都有基础数值,2个相同产生220%效果,3个相同产生360%效果,6个相同产生600%效果。\n";
c(6);
cout<<"2.防御值可以抵消剑、刀、斧对应数值的伤害(因为它们是物理性质的)。\n";
c(2);
cout<<"3.电的魔法攻击不会受到敌方防御的影响。\n";
c(3);
cout<<"4.血量上限是固定的,物理伤害保底打出1点。\n";
c(1);
cout<<"5.50轮后游戏未结束,血量高者获胜,否则血量先低于1点的人失败。\n";
c(5);
cout<<"输入任意字符串以关闭...";
c(7);
cin>>s;
}
void shz()
{
system("cls");
c(7);
cout<<"设置界面\n";
cout<<"初始血量:";
cin>>xxl;
cout<<"是否每两回合随机先行动玩家(若随机出蓝,则这两回合先行动者为蓝、红)(是t否f):";
cin>>ch;
if(ch=='t')
sjj=true;else
sjj=false;
}
int main()
{
srand(time(0));
while(1)
{
system("cls");
cout<<setw(40)<<"街机小游戏之红蓝大战 2.2\n";
cout<<"A.规则 B.游戏开始 C.设置 D.关闭\n";
cin>>ch;
while(ch<'A'&&ch>'C')
{
system("cls");
cout<<setw(40)<<"街机小游戏之红蓝大战 2.2\n";
cout<<"A.规则 B.游戏开始 C.设置 D.关闭\n";
cin>>ch;
}
switch(ch)
{
case 'A':{
gz();
break;
}
case 'B':{
yx();
break;
}
case 'C':{
shz();
break;
}
case 'D': return 0;
}
}
}
2.2.1 色彩进阶版
#include<bits/stdc++.h>
#include<windows.h>
using namespace std;
char ch;
bool sjj;
string s,name[3],xg[6]={"剑 55","刀 50","斧 45","电 30","心 40","盾 8"};
int xxl=600,jf,df,ls,sz[7],cl[6]={2,5,0,3,4,6},xl[3],hd[3],x,y,z,sj[7]={55,50,45,30,40,8},bl[7]={0,100,220,360,0,0,600};
void c(int q)
{
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),(15<<4)|q);
}
void pj()
{
system("cls");
system("color f0");
if(xl[1]!=xl[2])
{
cout<<"游戏超时,玩家";
c(4-(xl[2]>xl[1]));
cout<<name[1+(xl[2]>xl[1])];
c(0);
cout<<"血量更高,获得胜利";
}else
{
c(2);
cout<<"双方平局,游戏结束";
}
Sleep(5000);
}
void hs(int r)
{
system("cls");
system("color f0");
c(5-r);
cout<<name[r];
c(0);
cout<<"获胜,游戏结束";
Sleep(5000);
}
void d(int cz,int sl)
{
int xg=sj[cz]*bl[sl];
if(xg%100>=50)
xg=xg/100+1;else
xg=xg/100;
switch(cz)
{
case 0:{
xl[df]-=max(1,xg-hd[df]);
break;
}
case 1:{
xl[df]-=max(1,xg-hd[df]);
break;
}
case 2:{
xl[df]-=max(1,xg-hd[df]);
break;
}
case 3:{
xl[df]-=xg;
break;
}
case 4:{
xl[jf]=min(xl[jf]+xg,xxl);
break;
}
case 5:{
hd[jf]+=xg;
break;
}
}
}
void yx()
{
system("cls");
system("color f0");
cout<<setw(40)<<"街机小游戏之红蓝大战 2.2.1\n";
c(4);
cout<<"红方:";
cin>>name[1];
c(3);
cout<<"蓝方:";
cin>>name[2];
ls=0;
xl[1]=xl[2]=xxl;
hd[1]=hd[2]=0;
jf=1;
while(1)
{
++ls;
system("cls");
system("color f0");
df=jf;
if(ls%4==1&&sjj)
df=rand()%2+1;
jf=3-df;
int md=rand()%25;
bool ttt;
c(0);
cout<<"第"<<ls<<"轮:";
c(5-jf);
cout<<name[jf];
c(0);
cout<<"发动攻击\n";
if(md<2)
{
sz[1]=rand()%6;
sz[2]=sz[3]=sz[4]=sz[5]=sz[6]=sz[1];
}else
{
for(int i=1;i<=6;++i)
sz[i]=rand()%6;
}
ttt=true;
for(int i=1;i<=6;++i)
{
c(cl[sz[i]]);
cout<<xg[sz[i]]<<" ";
if(i%3==0)
cout<<'\n';
if(i>1)
ttt=ttt&&(sz[i]==sz[i-1]);
}
Sleep(2000);
c(0);
if(!ttt)
cin>>x>>y>>z;else
d(sz[1],6);
if(!ttt)
{
if(sz[x]==sz[y]&&sz[y]==sz[z])
d(sz[x],3);else
{
int k=min(sz[x],min(sz[y],sz[z]));
int l=max(sz[x],max(sz[y],sz[z]));
sz[y]=sz[x]+sz[y]+sz[z]-k-l;
sz[x]=k;
sz[z]=l;
if(sz[x]==sz[y]||sz[y]==sz[z])
{
d(sz[y],2);
if(sz[x]==sz[y])
d(sz[z],1);
if(sz[y]==sz[z])
d(sz[x],1);
}else
{
d(sz[x],1);
d(sz[y],1);
d(sz[z],1);
}
}
}
c(4);
cout<<name[1]<<" 血量"<<xl[1]<<" 防御"<<hd[1]<<'\n';
c(3);
cout<<name[2]<<" 血量"<<xl[2]<<" 防御"<<hd[2]<<'\n';
c(0);
Sleep(5000);
if(ls==50)
pj();
if(xl[1]<=0)
hs(2);
if(xl[2]<=0)
hs(1);
if(xl[1]*xl[2]<0)
break;
}
}
void gz()
{
system("cls");
system("color f0");
c(0);
cout<<" 规则\n";
c(4);
cout<<"1.每种攻击/防御/回血方式都有基础数值,2个相同产生220%效果,3个相同产生360%效果,6个相同产生600%效果。\n";
c(6);
cout<<"2.防御值可以抵消剑、刀、斧对应数值的伤害(因为它们是物理性质的)。\n";
c(2);
cout<<"3.电的魔法攻击不会受到敌方防御的影响。\n";
c(3);
cout<<"4.血量上限是固定的,物理伤害保底打出1点。\n";
c(1);
cout<<"5.50轮后游戏未结束,血量高者获胜,否则血量先低于1点的人失败。\n";
c(5);
cout<<"输入任意字符串以关闭...";
c(0);
cin>>s;
}
void shz()
{
system("cls");
system("color f0");
c(0);
cout<<"设置界面\n";
cout<<"初始血量:";
cin>>xxl;
cout<<"是否每两回合随机先行动玩家(若随机出蓝,则这两回合先行动者为蓝、红)(是t否f):";
cin>>ch;
if(ch=='t')
sjj=true;else
sjj=false;
}
int main()
{
srand(time(0));
while(1)
{
system("cls");
system("color f0");
cout<<setw(40)<<"街机小游戏之红蓝大战 2.2.1\n";
cout<<"A.规则 B.游戏开始 C.设置 D.关闭\n";
cin>>ch;
while(ch<'A'&&ch>'C')
{
system("cls");
system("color f0");
cout<<setw(40)<<"街机小游戏之红蓝大战 2.2.1\n";
cout<<"A.规则 B.游戏开始 C.设置 D.关闭\n";
cin>>ch;
}
switch(ch)
{
case 'A':{
gz();
break;
}
case 'B':{
yx();
break;
}
case 'C':{
shz();
break;
}
case 'D': return 0;
}
}
}
程序猿小T全速更新中......