c++game胎神
2、胎红胎蓝(单人或双人)
·

1.胎神之路
#include<bits/stdc++.h>
#include<windows.h>
#include<stdio.h>
#include<conio.h>
#include<time.h>
using namespace std;
int m[10001][21]={
{-1,0,0,0,0,18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{-1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1},
{-1,0,5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{-1,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{-1,19,0,0,0,0,0,1,1,1,0,0,12,0,0,0,0,0,0,0,0},
{-1,13,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0,0},
{-1,0,0,0,1,1,1,0,0,0,0,0,0,0,0,0,4,0,0,0,0},
{-1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{-1,0,0,0,11,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1},
{-1,0,0,0,2,2,0,0,3,3,0,0,6,6,0,0,0,0,0,0,0},
{-1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,0},
{-1,15,0,0,0,0,0,0,0,0,0,0,0,0,20,0,0,0,0,0,0},
{-1,0,0,0,0,0,0,0,0,0,0,0,0,16,17,0,0,0,0,0,0},
{-1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1},
{-1,0,0,0,0,0,14,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
{-1,0,0,0,1,1,0,0,2,2,0,0,0,1,1,1,0,0,0,0,0},
};
int X,Y,dx,dy,tX,zX,zY,Sstar,Sboom,Win;
int Ee,Fen,RR,Slep,K,S,Er,Ice,Fang,Can;
int Ta,Zha,Bai,Yin,Su,U,TT,Ty,sy;
void Color(int a)
{
a+=Bai*20;
if(a==0) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED|FOREGROUND_GREEN|FOREGROUND_BLUE);
if(a==1) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_GREEN|FOREGROUND_BLUE);
if(a==2) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_GREEN);
if(a==3) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED|FOREGROUND_BLUE);
if(a==4) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED);
if(a==5) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED|FOREGROUND_GREEN);
if(a==6) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_BLUE);
if(a==7) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_RED|FOREGROUND_GREEN|FOREGROUND_BLUE);
if(a==8) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),BACKGROUND_GREEN|BACKGROUND_BLUE|FOREGROUND_INTENSITY|FOREGROUND_RED|FOREGROUND_BLUE);
if(a%20==9) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),BACKGROUND_RED|FOREGROUND_INTENSITY|FOREGROUND_RED|FOREGROUND_GREEN);
if(a==10) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_RED);
else if(a>20) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED|FOREGROUND_GREEN|FOREGROUND_BLUE);
}
void SetPos(int x,int y)
{
COORD pos;
pos.X=y*2-1,pos.Y=26-x;
SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE),pos);
}
void Star();
void Wo(int x)
{
SetPos(X-K,Y),cout<<" "; //清除上一次残影
if(Can!=0) {SetPos(X-K,Y),Color(10),cout<<"●";int R=rand()%5;if(R==0&&Y<20000000) Y++;if(R==1&&Y>1) Y--;}//兴奋
if((m[X][Y]==1||m[X][Y]==7)&&Ta==0) X++; //跳上白块
if(X<=0) X=dx,Y=dy; //复活
if(X-K>23) tX=0,X=K+23; //高度上限
if(tX!=0&&Ta==0) tX--,X+=2; //上跳
if(Ta!=0) {tX=0;if(m[X-1][Y]==0||m[X-1][Y]==4||m[X-1][Y]==5||(m[X-1][Y]>=9&&m[X-1][Y]<=1800000000000000)) m[X-1][Y]=7;} //云鞋走路
if(m[X][Y]==6) X--; //隐形块
if(m[X+1][Y]==6){tX=0;m[X+1][Y]=7;if(m[X+1][Y-1]==6) m[X+1][Y-1]=7;if(m[X+1][Y+1]==6) m[X+1][Y+1]=7;Fen+=2;} //隐形块
if(m[X-1][Y]==6){tX=0;m[X-1][Y]=7;if(m[X-1][Y-1]==6) m[X-1][Y-1]=7;if(m[X-1][Y+1]==6) m[X+1][Y+1]=7;Fen+=2;} //隐形块
if(m[X][Y+1]==6){tX=0;m[X][Y+1]=m[X][Y+2]=7;Fen+=2;} if(m[X][Y-1]==6){tX=0;m[X][Y-1]=m[X][Y-2]=7;Fen+=2;} //隐形块
if(m[X-1][Y]==0||m[X-1][Y]==4||m[X-1][Y]==5||(m[X-1][Y]>=9&&m[X-1][Y]<=20)) {X--;} //掉落
if(m[X][Y]==4) Fen+=5,m[X][Y]=5,dx=X,dy=Y; //复活点
if(m[X][Y]==16) m[X][Y]=0,Sstar++,Star(),SetPos(X-K,Y),cout<<" ";if(m[X+1][Y]==16) m[X+1][Y]=0,Sstar++,Star(),SetPos(X-K+1,Y),cout<<" "; //星星
if(m[X-1][Y]==1||m[X-1][Y]==2||m[X-1][Y]==3||m[X-1][Y]==7) tX=Er=0; //跳跃次数清零
if(m[X-1][Y]==2||m[X][Y]==2||Ta!=0) tX+=5; //弹跳块
if(m[X-1][Y]==10) m[X-1][Y]=3,Sboom++;if(m[X][Y]==10) m[X][Y]=3,X++,Sboom++; //隐形炸弹块
if(m[X-1][Y]==3||m[X][Y]==3) //炸弹块
{
if(Zha==0)
{
Zha++;
SetPos(X+1-K,Y-1),Color(5),cout<<"■";SetPos(X+1-K,Y+1),Color(5),cout<<"■";SetPos(X+1-K,Y),Color(5),cout<<"■";SetPos(X-1-K,Y-1),Color(5),cout<<"■";
SetPos(X-1-K,Y+1),Color(5),cout<<"■";SetPos(X-1-K,Y),Color(5),cout<<"■";SetPos(X-K,Y-1),Color(5),cout<<"■";SetPos(X-K,Y+1),Color(5),cout<<"■";
SetPos(X-K,Y),Color(5),cout<<"■";Sleep(300);SetPos(X+1-K,Y-1),Color(5),cout<<" ";
SetPos(X+1-K,Y+1),Color(5),cout<<" ";SetPos(X+1-K,Y),Color(5),cout<<" ";SetPos(X-1-K,Y-1),Color(5),cout<<" ";SetPos(X-1-K,Y+1),Color(5),cout<<" ";
SetPos(X-1-K,Y),Color(5),cout<<" ";SetPos(X-K,Y-1),Color(5),cout<<" ";SetPos(X-K,Y+1),Color(5),cout<<" ";SetPos(X-K,Y),Color(5),cout<<" "; //动画
}if(m[X][Y]==3) X++;
if(Fang==0) X=dx,Y=dy,Fen-=5; //复活
}else Zha=0;
if(x==3) {int U=rand()%10;SetPos(X-K,Y);if(U==0) Color(6),cout<<"●";} //隐身
else if(Fang!=0) SetPos(X-K,Y),Color(2),cout<<"●"; //爆衣
else if(Can!=0) SetPos(X-K,Y),Color(4),cout<<"●"; //兴奋
else if(x==2) SetPos(X-K,Y),Color(5),cout<<"●"; //云鞋
else if(x==1) SetPos(X-K,Y),Color(1),cout<<"●"; //普通
}
void Cout(int i,int j,int a)
{
if(m[i][j]==1) SetPos(i-K,j),Color(0),cout<<"■";
if(m[i][j]==2) SetPos(i-K,j),Color(5),cout<<"■";
if(m[i][j]==3) SetPos(i-K,j),Color(4),cout<<"■";
if(m[i][j]==4) SetPos(i-K,j),Color(3),cout<<"▋";
if(m[i][j]==5&&(i!=X||j!=Y)) SetPos(i-K,j),Color(2),cout<<"▋";
if(m[i][j]==6&&a==1) SetPos(i-K,j),Color(7),cout<<"■",m[i][j]=7,Fen++;
if(m[i][j]==7&&a==4) SetPos(i-K,j),cout<<" ",m[i][j]=0;
if(m[i][j]==7&&a!=4) SetPos(i-K,j),Color(7),cout<<"■";
// if(m[i][j]==8) SetPos(i-K,j),cout<<" ";
if(m[i][j]==9) SetPos(i-K,j),Color(0),cout<<"←→左右移动";
if(m[i][j]==11&&Ee==0) SetPos(i-K,j),Color(0),cout<<"弹跳块 炸弹块 隐形块";
if(m[i][j]==11&&Ee==1) SetPos(i-K,j),Color(0),cout<<"弹跳块 ",Color(4),cout<<"隐形炸弹块",Color(0),cout<<" 隐形块";
if(m[i][j]==12&&Ee==0) SetPos(i-K,j),Color(0),cout<<" 激活复活点";
if(m[i][j]==12&&Ee==1) SetPos(i-K,j),Color(0),cout<<"出复活点",Color(3),cout<<"几率已增加";
if(m[i][j]==13) SetPos(i-K,j),Color(0),cout<<"按↑跳跃,可二段跳";
if(m[i][j]==14) SetPos(i-K,j),Color(0),cout<<"从现在开始随机出图啦";
if(m[i][j]==15&&Ee==0) SetPos(i-K,j),Color(5),cout<<"1000分通关!",Color(0),cout<<"空格暂停";
if(m[i][j]==15&&Ee==1) SetPos(i-K,j),Color(5),cout<<"探到40个通关!",Color(0),cout<<"空格暂停";
if(m[i][j]==15&&Ee==2) SetPos(i-K,j),Color(5),cout<<"捉到20个通关!",Color(0),cout<<"空格暂停";
if(m[i][j]==16) SetPos(i-K,j),Color(5),cout<<"★";
if(m[i][j]==17&&Ee==0) SetPos(i-K,j),Color(0),cout<<"里有神秘物品!";
if(m[i][j]==17&&Ee==1) SetPos(i-K,j),Color(0),cout<<"里有",Color(2),cout<<"防爆护罩!",Color(0);
if(m[i][j]==17&&Ee==2) SetPos(i-K,j),Color(2),cout<<"它会动啦!",Color(0);
if(m[i][j]==18) SetPos(i-K,j),Color(0),cout<<"不要让你的角色掉到视线以下!";
if(m[i][j]==19) SetPos(i-K,j),Color(0),cout<<"按↓下降";
if(m[i][j]==20&&Ee==2) SetPos(i-K,j),Color(3),cout<<"出现几率已增加",Color(0);
//这里若加字的话,需在前面改 (m[X-1][Y]>=9&&m[X-1][Y]<=20) 一下
Color(0);
}
void Map(int x1,int x2,int a)
{
SetPos(25,2);if(Bai!=0||Yin!=0||Can!=0) Color(9);else Color(1);
if(Ee==0) cout<<"分数:"<<Fen<<" ",Color(0);if(Ee==1) cout<<"已探测:"<<Sboom<<" ",Color(0);if(Ee==2) cout<<"已收集:"<<Sstar<<" ",Color(0);
SetPos(24,2);if(Ice!=0) Color(8);else Color(1);cout<<"速度:"<<Slep<<" ",Color(0);
bool Yan=0;
for(register int i=x1;i>=x2;i--)
for(register int j=1;j<=20;j++) Cout(i,j,a);
if(Yin!=0) Wo(3);
else if(Ta!=0) Wo(2);
else if(a==0) Wo(1);
else if(a==2) SetPos(X-K,Y),Color(1),cout<<"▲";
}
void MoveStar(int x1,int x2)
{
int n[30][21];memset(n,0,sizeof(n));
for(register int i=x1;i>=x2;i--)
for(register int j=1;j<=20;j++)
{
if(m[i][j]==16&&n[i-K][j]==0)
{
int kl=rand()%4;
if(kl==0&&i-K<22&&m[i+1][j]==0) m[i][j]=0,m[i+1][j]=16,n[i+1-K][j]=1,SetPos(i-K,j),cout<<" ",SetPos(i+1-K,j),cout<<"★";
if(kl==1&&i-1>K&&m[i-1][j]==0) m[i][j]=0,m[i-1][j]=16,n[i-1-K][j]=1,SetPos(i-K,j),cout<<" ",SetPos(i-1-K,j),cout<<"★";
if(kl==2&&j+1<20&&m[i][j+1]==0) m[i][j]=0,m[i][j+1]=16,n[i-K][j+1]=1,SetPos(i-K,j),cout<<" ",SetPos(i-K,j+1),cout<<"★";
if(kl==3&&j-1>1&&m[i][j-1]==0) m[i][j]=0,m[i][j-1]=16,n[i-K][j-1]=1,SetPos(i-K,j),cout<<" ",SetPos(i-K,j-1),cout<<"★";
}
}
}
void Sheng()
{
RR++;
if(K<-8) RR=5;
if(K==-8) RR=0;
if(RR==3) {int r=rand()%2;if(r==0) RR=0;}
if(RR==4) RR=0;
if(RR==0)
{
Ax: int Bx=0;
for(int i=1;i<=20;i++) m[K+22][0]=0;
for(int i=1;i<=20;i++)
{
int R=rand()%50;
if(R<=10) {int S=rand()%3+1; for(int j=i;j<=i+S;j++) if(j<=20) m[K+22][j]=1;i+=S+1;Bx=1;continue;}
if(R>10&&R<=12) {for(int j=i;j<=i+1;j++) if(j<=20) m[K+22][j]=2; i+=2;Bx=1;continue;}
if(R>12&&R<=14) {for(int j=i;j<=i+1;j++) if(j<=20) m[K+22][j]=3; i+=2;continue;}
if(R>14&&R<=16) {for(int j=i;j<=i+1;j++) if(j<=20) m[K+22][j]=6; i+=2;continue;}
if(R==17) {m[K+22][i]=m[K+22][i+1]=m[K+22][i+2]=1; m[K+23][i+1]=4; i+=2;continue;}
if(R>17&&R<=20&&Ee==1) {m[K+22][i]=m[K+22][i+1]=m[K+22][i+2]=1; m[K+23][i+1]=4; i+=2;continue;}
if(R>20&&R<=30&&Ee==1) m[K+22][i]=10; i++;
}if(Bx==0) goto Ax;
}
int Q=rand()%30; if(Q==0) {int QQ=rand()%20+1; if(m[K+22][QQ]==0) m[K+22][QQ]=16;}
else if(Q<=2&&Ee==2) {int QQ=rand()%20+1; if(m[K+22][QQ]==0) m[K+22][QQ]=16;}
}
void Star()
{
int W=rand()%10;if(K<20) W=rand()%7;if(Ee==1) W=3;
if(W==0) {Color(5);cout<<"火箭!";Sleep(1000);tX=0;for(int i=1;i<=15;i++) {if(X-K<20) X+=2; else X++; Sheng(),K++,Fen++,Map(K+22,K-3,2),system("cls");}m[X-2][Y]=m[X-2][Y-1]=6,S=1;Sleep(10);}
if(W==1) {Color(5);cout<<"透视眼!";Sleep(1000);system("color 3F");Sleep(100);if(X>2) m[X-2][Y]=m[X-2][Y-1]=6;Map(K+22,K-3,1);system("color 0F");}
if(W==2) {Color(5);cout<<"减速!";Sleep(1000);system("color 1F");Map(K+22,K-3,3);Ice=10;system("color 0F");if(X>2&&K>10) m[X-2][Y]=m[X-2][Y-1]=6;}
if(W==3) {Color(5);cout<<"防爆护罩!";Sleep(1000);Fang=15;if(X>2&&K>10) m[X-2][Y]=m[X-2][Y-1]=6;}
if(W==4) {Color(5);cout<<"白内障!";Sleep(1000);system("color 5F");Map(K+22,K-3,0);Bai=15;system("color 0F");if(X>2&&K>10) m[X-2][Y]=m[X-2][Y-1]=6;}
if(W==5) {Color(5);cout<<"隐身!";Sleep(1000);system("color 2F");Yin=15;if(X>2) m[X-2][Y]=m[X-2][Y-1]=6;Map(K+22,K-3,0);system("color 0F");}
if(W==6) {Color(5);cout<<"兴奋剂!";Sleep(1000);system("color 4F");Sleep(100);Can=15;if(X>2) m[X-2][Y]=m[X-2][Y-1]=6;Map(K+22,K-3,1);system("color 0F");}
if(W==7) {Color(5);cout<<"踏云靴!";Sleep(1000);system("color 6F");Sleep(100);Ta=10;}
if(W==8) {Color(5);cout<<"平台!";Sleep(1000);system("color 7F");Sleep(100);for(int i=1;i<=20;i++) m[X-1][i]=1;Map(K+22,K-3,1);system("color 0F");}
if(W==9) {Color(5);cout<<"炸弹陷阱!";Sleep(1000);system("color 4F");for(int i=0;i<=5;i++){int kX=rand()%9-4;int kY=rand()%9-4;if(Y+kY>0&&Y+kY<=20) m[X+kX][Y+kY]=3;}tX=0;if(X>1) m[X-1][Y]=6;Map(K+22,K-3,0);system("color 0F");}
}
void Start()
{
Color(5);
SetPos(25,2);cout<<" ■■■ ■ ";
SetPos(24,2);cout<<" ■ ■ ■ ";
SetPos(23,2);cout<<" ■■■ ■ ■ ";
SetPos(22,2);cout<<" ■ ■ ■■■■■ 注意!";
SetPos(21,2);cout<<" ■ ■ ";
SetPos(20,2);cout<<" ■■■ ■■■■ 按键模式已修改!";
SetPos(19,2);cout<<" ■ ■ ■ ■ ";
SetPos(18,2);cout<<" ■ ■ ■ ■ 现在需要同时按才";
SetPos(17,2);cout<<"■■ ■ ■■■■ 可左右跳!";
SetPos(14,2);cout<<" ■ ■ ";
SetPos(13,2);cout<<" ■ ■ ";
SetPos(12,2);cout<<" ■■■ ■■■■■";
SetPos(11,2);cout<<" ■ ■ ■ ■";
SetPos(10,2);cout<<" ■ ■■■■■";
SetPos(9,2); cout<<" ■ ■■ ■ ■ ■";
SetPos(8,2); cout<<" ■ ■ ■ ■■■■■";
SetPos(7,2); cout<<" ■ ■ ";
SetPos(6,2); cout<<" ■ ■ ";
SetPos(5,2); cout<<" ■ ■ 之 路";
SetPos(3,2);Color(0);cout<<"按 y 确定!";SetPos(3,10);Color(9);cout<<" 开始游戏! ";SetPos(2,10);Color(0);cout<<" 炸弹风暴! ";SetPos(1,10);Color(0);cout<<" 夺星之战! ";
SetPos(-1,1);Color(3);cout<<"注意!这里 绝对不能是拼音输入法!";
SetPos(-2,5);Color(3);cout<<"↓";Color(0);
char tt;Ee=0;
while(tt!='y')
{
tt=_getch();
if(tt==72&&Ee!=0) Ee--;
if(tt==80&&Ee!=2) Ee++;
SetPos(3,10);if(Ee==0) Color(9);else Color(0);cout<<" 开始游戏! ";Color(0);
SetPos(2,10);if(Ee==1) Color(9);else Color(0);cout<<" 炸弹风暴! ";Color(0);
SetPos(1,10);if(Ee==2) Color(9);else Color(0);cout<<" 夺星之战! ";Color(0);
}system("cls");
if(Ee==1) m[9][8]=m[9][9]=m[9][10]=m[9][11]=m[9][12]=10,m[9][14]=m[9][15]=6;
}
void Return()
{
for(int i=0;i<=5;i++)
{
system("color 1A");Sleep(10);
system("color 2B");Sleep(10);
system("color 3C");Sleep(10);
system("color 4D");Sleep(10);
system("color 5D");Sleep(10);
system("color 6E");Sleep(10);
system("color 7F");Sleep(10);
}system("color 0F");Map(K+22,K-3,4);system("cls");
while(K>-6) {for(int i=0;i<=20;i++) m[K+21][i]=0;K--;}
m[6][16]=4;m[12][13]=16;
m[9][12]=m[9][13]=6;system("cls");
}
int main()
{
system("mode con cols=42 lines=30");
CONSOLE_CURSOR_INFO cursor_info={1,0};
SetConsoleCursorInfo(GetStdHandle(STD_OUTPUT_HANDLE),&cursor_info);
srand((unsigned)time(NULL));
Start();
ST:
X=3,Y=2,dx=3,dy=2,K=-7;
tX=Fen=RR=S=Er=Sstar=Sboom=Win=0;
Ta=Fang=Ice=Bai=Yin=Can=0;
Map(K+22,K-3,0);
while(X>K-3||dx>K-3)
{
S++,U++;
if(Fen<0) Fen=0;
if(Ee==0&&Fen>1000) {Win=1;break;}if(Ee==1&&Sboom>=40) {Win=1;break;}if(Ee==2&&Sstar>=20) {Win=1;break;}
if(K<=5) Slep=20;if(K>5&&K<=10) Slep=15;if(K>10&&K<=20) Slep=10;if(K>20&&K<=30) Slep=8;if(K>30&&K<=70) Slep=7;if(K>70&&K<=150) Slep=6;if(K>150&&K<=250) Slep=5;if(K>250&&K<=400) Slep=4;if(K>400&&K<=600) Slep=3;if(K>600) Slep=2;
if(Sstar<=5) Su=5;if(Sstar>5&&Sstar<=10) Su=4;if(Sstar>10&&Sstar<=15) Su=3;if(Sstar>15&&Sstar<=20) Su=2;if(Sstar>20&&Sstar<=30) Su=1;
if(Ice!=0) Slep=20;
if(X<=K-3&&dx>K-3) X=dx,Y=dy;
if(S==Slep)
{
K++,S=0;
if(Bai!=0||Yin!=0||Can!=0) Fen+=2;else Fen++;
if(Ta>0) Ta--;if(Fang>0) Fang--;if(Bai>0) Bai--;if(Ice>0) Ice--;if(Yin>0) Yin--;if(Can>0) Can--;
if(Ta<0) Ta=0;if(Fang<0) Fang=0;if(Bai<0) Bai=0;if(Ice<0) Ice=0;if(Yin<0) Yin=0;if(Can<0) Can=0;
system("cls"),Sheng();
}
if(GetAsyncKeyState(VK_UP)&0x8000&&TT==0&&Ta==0&&Er<2) TT++,tX+=4,Er++;
else if(GetAsyncKeyState(VK_UP)&0x8000&&TT==0&&Can!=0) TT++,tX+=7,Er++;
else if(GetAsyncKeyState(VK_UP)&0x8000&&TT==0&&Ta!=0) SetPos(X-K,Y),cout<<" ",X++,tX=Er=0;
if(GetAsyncKeyState(VK_DOWN)&0x8000&&Ty==0) Ty++,SetPos(X-K,Y),cout<<" ",tX=0,X-=2;
if((GetAsyncKeyState(VK_UP) & 0x8000) ?0:1) TT=0;
if((GetAsyncKeyState(VK_DOWN) & 0x8000) ?0:1) Ty=0;
if(GetAsyncKeyState(VK_LEFT)&0x8000&&Y>1) SetPos(X-K,Y),cout<<" ",Y--;
if(GetAsyncKeyState(VK_RIGHT)&0x8000&&Y<20) SetPos(X-K,Y),cout<<" ",Y++;
if(kbhit()) {char g=_getch();if(g==' ') Sleep(100),SetPos(24,8),sy++,Color(0),system("pause");}
if(sy>=1) SetPos(24,8),cout<<" ",sy=0;
if(U>=Su) {U=0;if(Ee==2) MoveStar(K+22,K-3);}
Map(K+22,K-3,0); Sleep(50);
}
if(Win==0) {SetPos(25,8),system("color 7F"),Color(4),cout<<"You! Die!!!",Sleep(1000);}
else {SetPos(25,8),system("color 6E"),Color(3),cout<<"You! Win!!!",Sleep(1000);}
SetPos(24,5),cout<<"Please point 'y' to Play AGain.";Color(0);
A:char e=_getch();if(e=='y') Return();else goto A;goto ST;
return 0;
}
2、胎红胎蓝(单人或双人)
#include<bits/stdc++.h>
#include<windows.h>
#include<conio.h>
#include<time.h>
#define KEY_DOWN(VK_NONAME) ((GetAsyncKeyState(VK_NONAME) & 0x8000) ? 1:0)
using namespace std;
int m[20][20];
char a,b,c,d;
int xa=16,ya=4,xb=16,yb=15,fxa=20,fya=20;
int xShang,Tiao,Zuo,You,Quan,fang=1,blood=50,lan=20;
int yShang,Tiaob,Zuob,Youb,Quanb,fangb=-1,bloodb=50,lanb=20;
int Zhao,Fen,zou,zhao,Bao,baox,baoy,Di,diy,Bu;
int Lie,liey,lief,liefy,Ji,jiy,jif,Shun,r,R,s,S,M;
void Yan(int a)
{
if(a==1) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_GREEN|FOREGROUND_BLUE);
if(a==2) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_GREEN);
if(a==3) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED|FOREGROUND_BLUE);
if(a==4) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED);
if(a==5) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED|FOREGROUND_GREEN);
if(a==6) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_BLUE);
}
void Bai(){SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED|FOREGROUND_GREEN|FOREGROUND_BLUE);}
void SetPos(int x,int y)
{
COORD pos;
pos.X=2*y+8;
pos.Y=x;
SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE),pos);
}
void Xue()
{
SetPos(0,-4);for(int i=0;i<4;i++) {for(int j=0;j<38;j++)cout<<" ";cout<<endl;}SetPos(0,-4);if(lan>30) lan=30;
if(lanb>30) lanb=30;cout<<" ";Yan(5);if(lan==30) Yan(3);for(int i=1;i<=lan;i++) printf("▃");Yan(1);printf("\n1p :");for(int i=2;i<=blood;i+=2) printf("█");
if(blood%2==1) printf("▌");cout<<endl<<" ";Yan(5);if(lanb==30) Yan(3);for(int i=1;i<=lanb;i++) printf("▃");Yan(4);printf("\n2p :");for(int i=2;i<=bloodb;i+=2) printf("█");
if(bloodb%2==1) printf("▌");cout<<endl;SetPos(17,0);Yan(2);for(int j=0;j<20;j++) {cout<<"■";continue;} Bai();Yan(1);printf("\n\n 蓝方:A W D --控制\t\t");Yan(4);
printf("红方:←↑→--控制\n\n"); Yan(1);printf(" J-出拳");if(lan<1) Yan(6);printf(" K-前刺");if(lan<3) Yan(6);printf(" L-分身\t");Yan(4);printf("1-出拳");
if(lanb<1) Yan(6);printf(" 2-上挑");Yan(4);if(lanb<3) Yan(6);printf(" 3-瞬移\n\n");Yan(1);if(lan<3) Yan(6);printf(" U-回血");Yan(1);if(lan<5) Yan(6);printf(" I-裂地");Yan(1);
if(lan<10) Yan(6);printf(" O-炸地\t");Yan(4);if(lanb<3) Yan(6);printf("4-回血");Yan(4);if(lanb<5) Yan(6);printf(" 5-震爆");Yan(4);if(lanb<7) Yan(6);printf(" 6-激光");Bai();
}
void Wo(){Yan(1),SetPos(xa,ya),cout<<"●";Yan(4),SetPos(xb,yb),cout<<"●";if(Fen!=0) Bai(),SetPos(fxa,fya),cout<<"●";}
void Hong(){Wo();system("color 4F"),Sleep(10),system("color 0F"),Xue();}
void Lan(){Wo();system("color 1F"),Sleep(10),system("color 0F"),Xue();}
void Lv(){Wo();system("color 2F"),Sleep(10),system("color 0F"),Xue();}
void Zou()
{
zou=0;
SetPos(xa,ya),cout<<" ";SetPos(xb,yb),cout<<" ";
if(Fen>0) SetPos(fxa,fya),cout<<" ";SetPos(0,-4);
if(fxa<=5||xa<=5) xShang=0;
if(xa==xb&&ya==yb) xa--,zou=1;
if(fxa==xa&&fya==ya) fxa--,zou=1;
if(fxa==xb&&fya==yb) fxa--,zou=1;
if(Fen>0)
{
if(xa==fxa+1&&ya==fya&&fang==-1){if(fya>0) fya--;else fya+=2;}
if(xa==fxa+1&&ya==fya&&fang==1){if(fya<19) fya++;else fya-=2;}
if(fxa+1==xb&&fya==yb&&fang==-1){if(fya>0) fya--;else fya+=2;}
if(fxa+1==xb&&fya==yb&&fang==1){if(fya<19) fya++;else fya-=2;}
if(Tiao>0)
{
if(fang==-1&&fya>0&&(fxa!=xb||fya-1!=yb)&&(fxa!=xa||fya-1!=ya)) fya--;
if(fang==1&&fya<19&&(fxa!=xb||fya+1!=yb)&&(fxa!=xa||fya+1!=ya)) fya++;
}
if(xShang>0) m[fxa][fya]=0,fxa-=2;
if(fxa<16) m[fxa][fya]=0,fxa++;
}
if(xa+1==xb&&ya==yb&&fang==-1){if(ya>0) ya--;else ya+=2;}
if(xa+1==xb&&ya==yb&&fang==1){if(ya<19) ya++;else ya-=2;}
if(xa+1==fxa&&ya==fya&&fang==-1){if(ya>0) ya--;else ya+=2;}
if(xa+1==fxa&&ya==fya&&fang==1){if(ya<19) ya++;else ya-=2;}
if(Zuo>0&&ya>0&&Tiao==0&&(xa!=xb||ya-1!=yb)&&(fxa!=xa||fya!=ya-1)) m[xa][ya]=0,ya--;
if(Zuo>0&&fya>0&&Tiao==0&&(fxa!=xb||fya-1!=yb)&&(xa!=fxa||ya!=fya-1)) m[fxa][fya]=0,fya--;Zuo=0;
if(You>0&&ya<19&&Tiao==0&&(xa!=xb||ya+1!=yb)&&(fxa!=xa||fya!=ya+1)) m[xa][ya]=0,ya++;
if(You>0&&fya<19&&Tiao==0&&(fxa!=xb||fya+1!=yb)&&(xa!=fxa||ya!=fya+1)) m[fxa][fya]=0,fya++;You=0;
if(Tiao>0)
{
if(fang==-1&&ya>0&&(xa!=xb||ya-1!=yb)&&(fxa!=xa||fya!=ya-1)) ya--;
if(fang==1&&ya<19&&(xa!=xb||ya+1!=yb)&&(fxa!=xa||fya!=ya+1)) ya++;
}
if(xShang>0) m[xa][ya]=0,xShang--,xa-=2;
if(xa<16) m[xa][ya]=0,xa++;
if(xa==16) Tiao=0;
if(xb<=5) yShang=0;
if(xa==xb+1&&ya==yb&&fangb==-1){if(yb>0) yb--;else yb+=2;}
if(xa==xb+1&&ya==yb&&fangb==1){if(yb<19) yb++;else yb-=2;}
if(xb+1==fxa&&yb==fya&&fangb==-1){if(yb>0) yb--;else yb+=2;}
if(xb+1==fxa&&yb==fya&&fangb==1){if(yb<19) yb++;else yb-=2;}
if(Zuob>0&&yb>0&&Tiaob==0&&(xa!=xb||ya!=yb-1)&&(fxa!=xb||fya!=yb-1)) m[xb][yb]=0,Zuob=0,yb--;Zuob=0;
if(Youb>0&&yb<19&&Tiaob==0&&(xa!=xb||ya!=yb+1)&&(fxa!=xb||fya!=yb+1)) m[xb][yb]=0,Youb=0,yb++;Youb=0;
if(Tiaob>0&&Bu==0)
{
if(fangb==-1&&yb>0&&(xa!=xb||ya!=yb-1)&&(fxa!=xb||fya!=yb-1)) yb--;
if(fangb==1&&yb<19&&(xa!=xb||ya!=yb+1)&&(fxa!=xb||fya!=yb+1)) yb++;
}
if(yShang>0) m[xb][yb]=0,yShang--,xb-=2;
if(xb<16) m[xb][yb]=0,xb++;
if(xb==16) Tiaob=0;
SetPos(0,-4);if(zou==1) Zou();
Sleep(10);
}
void Xian()
{
zhao=0;s++;
if(M>=5) {Zhao=0;return;}
if(s==70) {s=0;if(lan<40)lan++;if(lanb<40)lanb++;Xue();}
SetPos(0,-4);
if(Bao!=0)
{
Bao--;Zhao--;
for(int i=baox-3;i<=baox+3;i++)
for(int j=baoy-3;j<=baoy+3;j++) if(i<=16&&j>=0&&j<=19) m[i][j]=9;
for(int i=baox-1;i<=baox+1;i++)
for(int j=baoy-1;j<=baoy+1;j++) if(i<=16&&j>=0&&j<=19) m[i][j]=0;
}if(Bao==0) baox=0,baoy=0;
if(Lie!=0)
{
Lie--;Zhao--;
if(lief==-1) for(int i=1;i<=7-Lie;i++) if(liey+Lie>=0) m[18-i][liey+Lie]=11;
if(lief==1) for(int i=1;i<=7-Lie;i++) if(liey-Lie<=19) m[18-i][liey-Lie]=10;
if(Fen>0)
{
if(lief==-1) for(int i=1;i<=7-Lie;i++) if(liefy+Lie>=0) m[18-i][liefy+Lie]=11;
if(lief==1) for(int i=1;i<=7-Lie;i++) if(liefy-Lie<=19) m[18-i][liefy-Lie]=10;
}
}if(Lie==0) liey=0,lief=0,liefy=0;
if(Ji!=0)
{
Ji--;Zhao--;
if(jif==-1) for(int i=jiy;i>=0;i--) m[xb][i]=14;
if(jif==1) for(int i=jiy;i<=19;i++) m[xb][i]=13;
}if(Ji==0) jiy=0,jif=0;
if(Di!=0)
{
Di--;Zhao--;
for(int i=2;i<=16;i++) m[i][diy]=19;
if(Fen>0&&yb!=0&&yb!=19) for(int i=2;i<=16;i++) m[i][diy+fangb]=19;
}if(Di==0) diy=0;
if(Shun!=0)
{
SetPos(Shun,-4);cout<<" ";
Shun=0;
}
Bu=0;
if(m[xa][ya]==3) {Shun=xa,Zuo+=1,xShang+=4,blood-=1,Zhao=0,m[xa][ya]=7,Lan(),lan++,zhao=1;Xue();}
else if(m[xa][ya]==4) {Shun=xa,You+=1,xShang+=4,blood-=1,Zhao=0,m[xa][ya]=7,Lan(),lan++,zhao=1;Xue();}
else if(m[xa][ya]==9) {Shun=xa,xShang=7,blood-=2,Zhao=0,m[xa][ya]=7,Lan(),lan+=2,zhao=1;Xue();}
else if(m[xa][ya]==13) {Shun=xa,You+=1,blood-=2,Zhao=0,m[xa][ya]=7,Lan(),lan+=2,zhao=1;Xue();}
else if(m[xa][ya]==14) {Shun=xa,Zuo+=1,blood-=2,Zhao=0,m[xa][ya]=7,Lan(),lan+=2,zhao=1;Xue();}
else if(m[xa][ya]==15) {Shun=xa,You+=1,blood-=1,Zhao=0,m[xa][ya]=7,Lan(),lan+=1,zhao=1;Xue();}
else if(m[xa][ya]==16) {Shun=xa,Zuo+=1,blood-=1,Zhao=0,m[xa][ya]=7,Lan(),lan+=1,zhao=1;Xue();}
else m[xa][ya]=1;
if(m[fxa][fya]==3||m[fxa][fya]==4||m[fxa][fya]==9||m[fxa][fya]==13||m[fxa][fya]==14||m[fxa][fya]==15||m[fxa][fya]==16)
{Zhao=0,m[fxa][fya]=7,fxa=20,fya=20,Fen=0,Lan(),zhao=1;Xue();}
if(m[xb][yb]==5) {Shun=xb,Zuob+=4,yShang+=1,bloodb-=1,Zhao=0,m[xb][yb]=7,Hong(),lanb++,zhao=1;Xue();}
else if(m[xb][yb]==6) {Shun=xb,Youb+=4,yShang+=1,bloodb-=1,Zhao=0,m[xb][yb]=7,Hong(),lanb++,zhao=1;Xue();}
else if(m[xb][yb]==10) {Shun=xb,Youb+=1,yShang+=1,bloodb-=2,Zhao=0,m[xb][yb]=7,Hong(),lanb+=2,zhao=1;Xue();}
else if(m[xb][yb]==11) {Shun=xb,Zuob+=1,yShang+=1,bloodb-=2,Zhao=0,m[xb][yb]=7,Hong(),lanb+=2,zhao=1;Xue();}
else if(m[xb][yb]==17) {Shun=xb,Youb+=1,bloodb-=1,Zhao=0,m[xb][yb]=7,Hong(),lanb+=1,zhao=1;Xue();}
else if(m[xb][yb]==18) {Shun=xb,Zuob+=1,bloodb-=1,Zhao=0,m[xb][yb]=7,Hong(),lanb+=1,zhao=1;Xue();}
else if(m[xb][yb]==19) {Shun=xb,Bu=1,yShang+=3,bloodb-=1,Zhao=0,m[xb][yb]=7,Hong(),lanb+=1,zhao=1;Xue();}
else m[xb][yb]=2;
if(Fen>0) m[fxa][fya]=8;
for(int i=5;i<=16;i++)
for(int j=0;j<20;j++)
{
if(m[i][j]==20) {SetPos(i,j);cout<<" ",m[i][j]=0;continue;}
if(m[i][j]==1) {Yan(1),SetPos(i,j);cout<<"●",m[i][j]=20,Bai();continue;}
if(m[i][j]==2) {Yan(4),SetPos(i,j);cout<<"●",m[i][j]=20,Bai();continue;}
if(m[i][j]==8) {Bai(),SetPos(i,j);cout<<"●",m[i][j]=20;continue;}
if(m[i][j]==7) {Yan(5),SetPos(i,j);cout<<"█",m[i][j]=20,zhao=1;Bai();continue;}
if(m[i][j]==12) {Bai(),SetPos(i,j);cout<<"●",Shun=xb;continue;}
if(m[i][j]>=3&&m[i][j]<=6||(m[i][j]>=9&&m[i][j]<=11)||(m[i][j]>=13))
{Bai(),SetPos(i,j);cout<<"■";m[i][j]=20,Zhao=0,zhao=1;continue;}
}
if(zhao>0) {M++,Zou(),Xian();M=0;return;}
memset(m,0,sizeof(m));M=0;
}
void Go(char a)
{
if(a=='j') Quan++; else Quan=0;
if(a=='w'&&Tiao==0) Tiao++,xShang+=3;
if(a=='a'&&Tiao==0) Zuo=1,You=0,fang=-1;
if(a=='d'&&Tiao==0) You=1,Zuo=0,fang=1;
if(a=='j'&&Quan<=3&&fang==-1&&ya-1>=0) {m[xa][ya-1]=18;if(Fen>0&&fya-1>=0) m[fxa][fya-1]=18;}
if(a=='j'&&Quan<=3&&fang==1&&ya+1<=19) {m[xa][ya+1]=17;if(Fen>0&&fya+1<=19) m[fxa][fya+1]=17;}
if(a=='k'&&fang==-1&&lan>=1&&ya!=0) {lan--,Xue();Zhao++;for(int i=1;i<=3;i++){if(ya-i>=0) m[xa][ya-i]=5;if(Fen>0&&fya-i>=0) m[fxa][fya-i]=5;}}
if(a=='k'&&fang==1&&lan>=1&&ya!=19) {lan--,Xue();Zhao++;for(int i=1;i<=3;i++){if(ya+i<=19) m[xa][ya+i]=6;if(Fen>0&&fya+i<=19) m[fxa][fya+i]=6;}}
if(a=='l'&&Fen==0&&lan>=3) lan-=3,Xue(),Lan(),fxa=xa-3,fya=rand()%19,Fen=1,Zou(),Xian();
if(a=='u'&&lan>=3) lan-=3,Xue(),Lv(),blood+=2;
if(a=='i'&&lan>=5) lan-=5,Xue(),Zhao+=3,Di+=3,diy=yb;
if(a=='o'&&fang==-1&&lan>=10) {lan-=10,Xue();Zhao+=6,Lie=6,liey=ya-6,lief=-1,liefy=0;if(Fen>0) liefy=fya-6;}
if(a=='o'&&fang==1&&lan>=10) {lan-=10,Xue();Zhao+=6,Lie=6,liey=ya+6,lief=1,liefy=0;if(Fen>0) liefy=fya+6;}
if(a=='1') Quanb++; else Quanb=0;
if(a==72&&Tiaob==0) Tiaob++,yShang+=3;
if(a==75&&Tiaob==0) Zuob=1,Youb=0,fangb=-1;
if(a==77&&Tiaob==0) Youb=1,Zuob=0,fangb=1;
if(a=='1'&&Quanb<=3&&fangb==-1&&yb-1>=0) m[xb][yb-1]=16;
if(a=='1'&&Quanb<=3&&fangb==1&&yb+1<=19) m[xb][yb+1]=15;
if(a=='2'&&fangb==-1&&lanb>=1&&yb!=0) {lanb--,Xue();Zhao++;for(int i=1;i<=3;i++){if(yb-i>=0) m[xb][yb-i]=3;}}
if(a=='2'&&fangb==1&&lanb>=1&&yb!=19) {lanb--,Xue();Zhao++;for(int i=1;i<=3;i++){if(yb+i<=19) m[xb][yb+i]=4;}}
if(a=='3'&&fangb==1&&lanb>=3&&yb!=19) {lanb-=3;Xue();for(int i=yb;i<=18;i++) m[xb][i]=12;yb=19;Xian();}
if(a=='3'&&fangb==-1&&lanb>=3&&yb!=0) {lanb-=3;Xue();for(int i=yb;i>0;i--) m[xb][i]=12;yb=0;Xian();}
if(a=='4'&&lanb>=3) lanb-=3,Xue(),Lv(),bloodb+=2;
if(a=='5'&&lanb>=5) lanb-=5,Xue(),Zhao+=3,Bao+=3,baox=xb,baoy=yb;
if(a=='6'&&lanb>=7) lanb-=7,Xue(),Zhao+=3,Ji+=3,jiy=yb,jif=fangb;
}
int main()
{
x:
system("cls");
srand((unsigned)time(NULL));Bai();
cout<<endl<<" -------------------胎红 VS 胎蓝---------------------"<<endl;
cout<<" ---------------------------作者:胎神---------------"<<endl<<endl;Yan(5);
cout<<" 2.0版本,憾世来袭!"<<endl<<endl;
cout<<" 2大更新:"<<endl<<endl;
cout<<" 1.完美解决“闪”的问题!"<<endl<<endl;
cout<<" 2.单人模式来了!完全电脑AI控制,比双人模式更难!"<<endl<<endl;
cout<<" 3.技能平衡性调整,更合理化的对战体验。"<<endl<<endl;Yan(1);
cout<<" 已开启 闪光功能:当蓝方挨血时,画面闪蓝光,反之闪红光;恢血时闪绿光。"<<endl<<endl;Bai();
cout<<" 请输入: 1.单人模式 2.双人模式"<<endl<<endl;A:a=_getch();
if(a=='1')
{
cout<<" 你要当谁? 1.小胎蓝 2.小胎红 3.老子不想打了,让他们自己打!"<<endl<<endl;b=_getch();
cout<<" 选择难度: 1.简单的像吃屎 2.一般的像垃圾 3.巨难的像变胎"<<endl<<endl;
cout<<" (难度越简单,对方动作越迟缓。)"<<endl<<endl;d=_getch();
if(d=='1') R=5;
if(d=='2') R=3;
if(d=='3') R=1;
system("cls");
Xue();Xian();
while(blood>0&&bloodb>0)
{
SetPos(0,-4);M=0;
Zou();Xian();
if(b=='1'||b=='3')
{
S++;
if(S>=R)
{
S=0;c=0;int xxa=xa,yya=ya;
if(lanb>=7) r=rand()%6;else if(lanb>=5) r=rand()%7-2;else if(lanb>=3) r=rand()%6-2;else if(lanb>=1) r=rand()%4-1;else r=rand()%3-1;
if(Fen>0) xxa=fxa,yya=fya;
if((xb==16&&yb==0)||(xb==16&&yb==19)) r=0;
if(r==5){if(fangb==-1&&xxa==xb&&yya<=yb) c='6';if(fangb==1&&xxa==xb&&yya>=yb) c='6';else r=0;}
if(r==4){if(xxa==xb&&abs(yya-yb)<=1) r=0;if(fangb==-1&&yb-3<=yya&&yya<=yb-1) c='5';if(fangb==1&&yb+3>=yya&&yya>=yb+1) c='5';else r=0;}
if(r==3&&bloodb<30&&lan>=3) c='4';
if(r==2){if(fangb==-1&&yb-3<=yya&&yya<=yb) c='2';if(fangb==1&&yb+3>=yya&&yya>=yb) c='2';else r=0;}
if(r==1){if(fangb==-1&&yb-1==yya) c='1';else if(fangb==1&&yb+1==yya) c='1';else r=0;}
if(yya<=yb&&r==0){int rr=rand()%5;if(fangb==-1&&rr==0) c=72;else if(fangb==-1&&rr==1&&abs(yya-yb)>=5) c='3';else c=75;}
if(yya>yb&&r==0){int rr=rand()%5;if(fangb==1&&rr==0) c=72;else if(fangb==1&&rr==1&&abs(yya-yb)>=5) c='3';else c=77;}
if(c!=0) Go(c);
}
}
if(b=='2'||b=='3')
{
S++;
if(S>=R)
{
S=0;c=0;
if(lanb>=10) r=rand()%10;else if(lanb>=5) r=rand()%9-3;else if(lanb>=3) r=rand()%8-3;else if(lanb>=1) r=rand()%6-2;else r=rand()%3-1;
if((xa==16&&ya==0)||(xa==16&&ya==19)) r=0;
if(r>=6){if(fang==-1&&ya>=yb&&abs(ya-yb)<=2) c='o';if(fang==1&&ya<=yb&&abs(ya-yb)<=2) c='o';else r=0;}
if(r==5) c='i';
if(r==4&&blood<30&&lan>=3) c='u';
if(r==3&&Fen==0) c='l';
if(r==2){if(fang==1&&yb-3<=ya&&ya<=yb) c='k';if(fang==-1&&yb+3>=ya&&ya>=yb) c='k';else r=0;}
if(r==1){if(fang==1&&yb-1==ya) c='j';else if(fang==-1&&yb+1==ya) c='j';else r=0;}
if(ya>=yb&&r==0){int rr=rand()%5;if(fang==-1&&rr==0) c='w';else c='a';}
if(ya<yb&&r==0){int rr=rand()%5;if(fang==1&&rr==0) c='w';else c='d';}
if(c!=0) Go(c);
}
}
if(kbhit())
{
SetPos(0,-4);
if(b=='1')
{
if(KEY_DOWN(87)) Go('w');if(KEY_DOWN(65)) Go('a');if(KEY_DOWN(68)) Go('d');
if(KEY_DOWN(74)) Go('j');if(KEY_DOWN(75)) Go('k');if(KEY_DOWN(76)) Go('l');
if(KEY_DOWN(85)) Go('u');if(KEY_DOWN(73)) Go('i');if(KEY_DOWN(79)) Go('o');
}
if(b=='2')
{
if(KEY_DOWN(38)) Go(72);if(KEY_DOWN(37)) Go(75);if(KEY_DOWN(39)) Go(77);
if(KEY_DOWN(97)) Go('1');if(KEY_DOWN(98)) Go('2');if(KEY_DOWN(99)) Go('3');
if(KEY_DOWN(100)) Go('4');if(KEY_DOWN(101)) Go('5');if(KEY_DOWN(102)) Go('6');
}
Zou(),Xian();
}
if(Zhao>0) Zou(),Xian();
Sleep(20);
}
}
else if(a=='2')
{
system("cls");
Xue();Xian();
while(blood>0&&bloodb>0)
{
SetPos(0,-4);
if(!kbhit()) Zou(),Xian();
if(kbhit())
{
SetPos(0,-4);
if(KEY_DOWN(87)) Go('w');if(KEY_DOWN(65)) Go('a');if(KEY_DOWN(68)) Go('d');
if(KEY_DOWN(74)) Go('j');if(KEY_DOWN(75)) Go('k');if(KEY_DOWN(76)) Go('l');
if(KEY_DOWN(85)) Go('u');if(KEY_DOWN(73)) Go('i');if(KEY_DOWN(79)) Go('o');
if(KEY_DOWN(38)) Go(72);if(KEY_DOWN(37)) Go(75);if(KEY_DOWN(39)) Go(77);
if(KEY_DOWN(97)) Go('1');if(KEY_DOWN(98)) Go('2');if(KEY_DOWN(99)) Go('3');
if(KEY_DOWN(100)) Go('4');if(KEY_DOWN(101)) Go('5');if(KEY_DOWN(102)) Go('6');
Zou(),Xian();
}
if(Zhao>0) Zou(),Xian();Sleep(20);
}
}
else goto A;
system("cls");
if(blood>0) Yan(1);
if(bloodb>0) Yan(4);
cout<<endl<<endl<<endl;
cout<<" ┌-------------┐"<<endl;
cout<<" ┆ ┆"<<endl;
if(blood>0) cout<<" ┆ 1p WIN!!! ┆"<<endl;
if(bloodb>0) cout<<" ┆ 2p WIN!!! ┆"<<endl;
cout<<" ┆ ┆"<<endl;
cout<<" └-------------┘"<<endl<<endl;
Sleep(2000);Bai();system("cls");
xa=16,ya=4,xb=16,yb=15,fxa=20,fya=20;
xShang=Tiao=Zuo=You,Quan=0,fang=1,blood=50,lan=20;
yShang=Tiaob=Zuob=Youb=Quanb=0,fangb=-1,bloodb=50,lanb=20;
Zhao=Fen=zou=zhao=Bao=baox=baoy=Di=diy=Bu=0;
Lie=liey=lief=liefy=Ji=jiy=jif=Shun=r=R=s=S=M=0;goto x;
return 0;
}
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐
所有评论(0)