//By 小跳蛙
#include<bits/stdc++.h>
#include<windows.h>
#define KEY_DOWN(VK_NONAME) ((GetAsyncKeyState(VK_NONAME)&0x8000)?1:0)
using namespace std;
int N=15,Numk=50,Numl=5,Numd=100,Nan=40,Hp=10,Bebc=15,Bebh=16,Bebb=10,squ=3;
struct node
{
int x,y,vf,bv;
inline void init() {x=rand()%N+1,y=rand()%N+1,bv=rand()%3+1;}
inline void move() {x++;if(x>N) init(),x=1;}
}k[10005],l[10005],d[10005];
int x,y,hp,score,mp[25][25],udf,numc,numh,numb,bulc,bulh,bulb,lanf;
inline void add(int &x,int y) {x+=y,x=max(x,1),x=min(x,N);}
void color(int a) {SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),a);}
inline int read()
{
int r=0;char c=getchar();
while(c>'9'||c<'0') c=getchar();
while(c>='0'&&c<='9') (r*=10)+=c-'0',c=getchar();
return r;
}
inline void print(int x,int y,string s)
{
HANDLE hOut;COORD pos;
hOut=GetStdHandle(STD_OUTPUT_HANDLE),pos.X=y,pos.Y=x;
SetConsoleCursorPosition(hOut,pos),cout<<s;
}
inline char check_press(int x)
{
Sleep(100);
for(int i=1;i<=10;i++) {if(KEY_DOWN(x)) return 1;Sleep(10);}
return 0;
}
inline void set_windows(int x1,int y1,int x2,int y2)
{
HANDLE hOut=GetStdHandle(STD_OUTPUT_HANDLE);SMALL_RECT rc;
rc.Left=x1,rc.Top=y1,rc.Right=x2,rc.Bottom=y2;
SetConsoleWindowInfo(hOut, TRUE, &rc);
}
inline void disap_mouse()
{
ShowCursor(false);
HANDLE hOut=GetStdHandle(STD_OUTPUT_HANDLE);
CONSOLE_CURSOR_INFO cci;
GetConsoleCursorInfo(hOut,&cci);
cci.bVisible=false;
SetConsoleCursorInfo(hOut,&cci);
}
inline char check_die()
{
for(int i=1;i<=Numk;i++) if(k[i].x==x&&k[i].y==y) return k[i].init(),k[i].x=1,0;
return 1;
}
inline char check_luck()
{
for(int i=1;i<=Numl;i++)
if(l[i].x==x&&l[i].y==y)
{
l[i].init(),l[i].x=1;
numc+=(rand()%10+5)*bulc;
numh+=(rand()%5+5)*bulh;
numb+=(rand()%5+5)*bulb;
return 0;
}
return 1;
}
inline char check_dowm()
{
for(int i=1;i<=Numd;i++)
if(d[i].x==x&&d[i].y==y)
{
d[i].init(),d[i].x=1;
numc+=(rand()%10+5)*bulc;
numh+=(rand()%5+5)*bulh;
numb+=(rand()%5+5)*bulb;
return 0;
}
return 1;
}
inline void move_thi()
{
for(int i=1;i<=Numk;i++) if(k[i].vf==0) k[i].move();
for(int i=1;i<=Numl;i++) if(l[i].vf==0) l[i].move();
for(int i=1;i<=Numd;i++) if(d[i].vf==0) d[i].move();
}
inline char move_peo()
{
char c=0;
if(KEY_DOWN(87)&&!udf) add(x,-1),c=1;
if(KEY_DOWN(38)&&!udf) add(x,-1),c=1;
if(KEY_DOWN(104)&&!udf) add(x,-1),c=1;
if(KEY_DOWN(87)||KEY_DOWN(38)||KEY_DOWN(104)) color(112),print(11,N+5,"↑"),color(7);else print(11,N+5,"↑");
if(KEY_DOWN(83)&&!udf) add(x,1),c=1;
if(KEY_DOWN(40)&&!udf) add(x,1),c=1;
if(KEY_DOWN(101)&&!udf) add(x,1),c=1;
if(KEY_DOWN(83)||KEY_DOWN(40)||KEY_DOWN(101)) color(112),print(15,N+5,"↓"),color(7);else print(15,N+5,"↓");
if(KEY_DOWN(65)) add(y,-1),c=1;
if(KEY_DOWN(37)) add(y,-1),c=1;
if(KEY_DOWN(100)) add(y,-1),c=1;
if(KEY_DOWN(65)||KEY_DOWN(37)||KEY_DOWN(100)) color(112),print(13,N+3,"←"),color(7);else print(13,N+3,"←");
if(KEY_DOWN(68)) add(y,1),c=1;
if(KEY_DOWN(39)) add(y,1),c=1;
if(KEY_DOWN(102)) add(y,1),c=1;
if(KEY_DOWN(68)||KEY_DOWN(39)||KEY_DOWN(102)) color(112),print(13,N+7,"→"),color(7);else print(13,N+7,"→");
return c;
}
inline void die()
{
system("cls"),print(0,0," ");
if(lanf==1)
{
puts("ZDT : HaHaHaaaaa! YOU DIED!!!\n"),Sleep(1000);
printf("YOU SCORE IS:%d\n\n",score),Sleep(1000);
}
if(lanf==0)
{
puts("ZDT:你终于知道 死 这个字怎么写了!!!\n"),Sleep(1000);
printf("你的分数是:%d\n\n",score),Sleep(1000);
}
if(lanf==1) puts("TRY AGAIN?\n");
if(lanf==0) puts("再来一局?\n");
}
inline void init()
{
system("cls"),srand(time(0)),printf(" ");
for(int i=1;i<=N;i++) printf("~");
puts("");
for(int i=1;i<=N;i++)
{
printf("|");
for(int i=1;i<=N;i++) printf(" ");
puts("|");
}
printf(" ");
for(int i=1;i<=N;i++) printf("~");
puts(""),x=N,y=N/2,hp=Hp,score=0,numc=Bebc*bulc,numh=Bebh*bulh,numb=Bebb*bulb;
for(int i=1;i<=Numk;i++) k[i].init(),k[i].y=N+1,k[i].vf=k[i].bv-1;
for(int i=1;i<=Numl;i++) l[i].init(),l[i].y=N+1,l[i].vf=l[i].bv-1;
for(int i=1;i<=Numd;i++) d[i].init(),d[i].y=N+1,d[i].vf=d[i].bv-1;
print(1,N+2," "),printf("The bloods you still have");
print(3,N+2," "),printf("The score you have now is");
print(5,N+2," "),printf("The normal bullet you have is");
print(7,N+2," "),printf("The high bullet you have is");
print(9,N+2," "),printf("The big bullet you have is");
for(int i=1;i<=Hp/30;i++)
{
print(16+i,N+2,"-");
for(int i=2;i<=30;i++) printf("-");
}
print(17+Hp/30,N+2,"-");
for(int i=2;i<=Hp%30;i++) printf("-");
print(x,y,"*");
}
inline void Begin()
{
disap_mouse(),set_windows(10,10,80,50),system("cls");
printf("\n"),printf("WELCOME TO THE GAME:\n"),color(14);
printf(
"\n"
"BBBBee U U L FFFFFF L Y Y \n"
"B B U U L F L Y Y \n"
"B B U U L F L Y Y \n"
"BBBBBB U U L FFFFFF L YY \n"
"B B U U L F L YY \n"
"B B U U L F L YY \n"
"BBBB^^ UUUU LLLLLL F LLLLLL YY \n"
"\n"
);
color(12),printf("烤蛙出品,侵权必究!QWQ\n\nBelieve_R_ 赞助开发\n\n");
color(7),Sleep(500),puts("PLEASE PRESS 'Enter' TO CONTINUE");
while(1) {if(KEY_DOWN(13)) break;}
Sleep(200),system("cls"),puts("Your Language?/你的语言?"),lanf=0;
while(1)
{
print(2,0," ");
if(lanf==1) puts(" 中文 ");else color(112),puts(" 中文 "),color(7);
print(3,0," ");
if(lanf==0) puts(" English ");else color(112),puts(" English"),color(7);
if(KEY_DOWN(13)||KEY_DOWN(108)) break;
if(KEY_DOWN(87)||KEY_DOWN(83)||KEY_DOWN(38)||KEY_DOWN(40)||KEY_DOWN(104)||KEY_DOWN(101)) lanf=1-lanf;
Sleep(100);
}
int t=0;
Sleep(200),system("cls");
if(lanf==1) puts("Do you know the rule of the game?");
if(lanf==0) puts("你知道此游戏的规则吗\n");
while(1)
{
if(lanf==1)
{
print(2,0," ");
if(t==1) puts(" Yes ");else color(112),puts(" Yes "),color(7);
print(3,0," ");
if(t==0) puts(" No ");else color(112),puts(" No "),color(7);
}
if(lanf==0)
{
print(2,0," ");
if(t==1) puts(" 是 ");else color(112),puts(" 是 "),color(7);
print(3,0," ");
if(t==0) puts(" 否 ");else color(112),puts(" 否 "),color(7);
}
if(KEY_DOWN(13)||KEY_DOWN(108)) break;
if(KEY_DOWN(87)||KEY_DOWN(83)||KEY_DOWN(38)||KEY_DOWN(40)||KEY_DOWN(104)||KEY_DOWN(101)) t=1-t;
Sleep(100);
}
if(t==1)
{
Sleep(200),system("cls");
if(lanf==1)
{
puts("Before playing this game please read these carefully:\n"),Sleep(500);
puts("\n1. You'll be asked to input 7 game parameters before the game starts.\n"),Sleep(500);
puts("\n2. The symbol '!' is the Upgrade Roadblock. If you didn't shut it off before it get to the botton, your bloods will -1!\n"),Sleep(500);
puts("\n3. The symbol '&' is the obstacle which means you cannot let '*' touch the '#'.\n"),Sleep(500);
puts("\n4. The symbol '+' is the midic which means you can recover by touching the '!'.\n"),Sleep(500);
puts("\n5. At first, you will have some bloods. You must go further before you died!\n"),Sleep(500);
puts("\n6. If you press 'Q', the bullets will be fired. But the bullets was limited, it only can be increased by touching '+'\n"),Sleep(500);
puts("\n7. If you press 'Space', the system will give you a sighting telescope. But it can't earse the Roadblock\n"),Sleep(500);
puts("\n\nHappy Games...... QwQ\n"),Sleep(500);
puts("PLEASE PRESS 'Enter' TO CONTINUE");
}
if(lanf==0)
{
puts("在玩之前,请认真阅读以下提示:\n"),Sleep(500);
puts("\n1. 你将输入7个游戏参数。\n"),Sleep(500);
puts("\n2. 符号'!'是恐怖障碍物。如果你没有在它到达底部之前射掉它,你将会扣一滴血!\n"),Sleep(500);
puts("\n3. 符号'&'是障碍物,一旦你自己('*')碰到障碍物,生命值将会掉1个单位!\n"),Sleep(500);
puts("\n4. 符号'+'可以给你补血,每次你自己('*')碰到'!'会恢复1个单位!\n"),Sleep(500);
puts("\n5. 一开始你会有n个单位的生命,你必须在生命值耗完之前获得最高的分数!\n"),Sleep(500);
puts("\n6. 如果你按下'Q',将会发射子弹。但是子弹的数量是有限的,你有你碰到了'+'才会回血!\n"),Sleep(500);
puts("\n7. 如果你按下'空格',将会调出瞄准镜。但是瞄准镜并不能清除障碍物!\n"),Sleep(500);
puts("\n\nHappy Games...... QwQ\n"),Sleep(500);
puts("请按回车键以继续!");
}
}
while(1) {if(KEY_DOWN(13)) break;}
system("cls");
}
inline void choose()
{
int t=5;
Sleep(200);
if(lanf==1) puts("Please choose the Difficulty: \n");
if(lanf==0) puts("请选择游戏难度:\n");
while(1)
{
if(lanf==1)
{
print(2,0," ");
if(t!=5) puts(" Quick: No bullets ");else color(112),puts(" Quick: No bullets "),color(7);
print(3,0," ");
if(t!=4) puts(" Peaceful: Please play within 'int'! ");else color(112),puts(" Peaceful: Please play within 'int'! "),color(7);
print(4,0," ");
if(t!=3) puts(" Easy: Suitable for the Freshmen ");else color(112),puts(" Easy: Suitable for the Freshmen! "),color(7);
print(5,0," ");
if(t!=2) puts(" Middle: Time to race! ");else color(112),puts(" Middle: Time to race! "),color(7);
print(6,0," ");
if(t!=1) puts(" Hard: Impossible to get 2500! ");else color(112),puts(" Hard: Impossible to get 2500! "),color(7);
print(7,0," ");
if(t!=0) puts(" User-Defined ");else color(112),puts(" User-Defined "),color(7);
}
if(lanf==0)
{
print(2,0," ");
if(t!=5) puts(" 手速 [没有子弹!] ");else color(112),puts(" 手速 [没有子弹!] "),color(7);
print(3,0," ");
if(t!=4) puts(" 和平 [不要把int玩爆呀!] ");else color(112),puts(" 和平 [不要把int玩爆呀!] "),color(7);
print(4,0," ");
if(t!=3) puts(" 简单 [新手建议!] ");else color(112),puts(" 简单 [新手建议!] "),color(7);
print(5,0," ");
if(t!=2) puts(" 普通 [是时候比速度了!] ");else color(112),puts(" 普通 [是时候比速度了!] "),color(7);
print(6,0," ");
if(t!=1) puts(" 困难 [2500? 不可能的!] ");else color(112),puts(" 困难 [2500? 不可能的!] "),color(7);
print(7,0," ");
if(t!=0) puts(" 用户自定义 ");else color(112),puts(" 用户自定义 "),color(7);
}
if(KEY_DOWN(13)||KEY_DOWN(108)) break;
if(KEY_DOWN(38)||KEY_DOWN(87)||KEY_DOWN(104)) t=(t+1)%6;
if(KEY_DOWN(40)||KEY_DOWN(83)||KEY_DOWN(98)) t=(t+5)%6;
Sleep(100);
}
Nan=40;
if(t==5) {N=30,Numk=75,Numl=0,Numd=1,Hp=1,Bebc=Bebh=Bebb=0,bulc=bulh=bulb=0,squ=14;return;}
if(t==4) {N=30,Numk=15,Numl=20,Numd=1,Hp=20,Bebc=500,Bebh=100,Bebb=100,bulc=bulh=bulb=1,squ=10;return;}
if(t==3) {N=30,Numk=25,Numl=10,Numd=1,Hp=15,Bebc=100,Bebh=20,Bebb=20,bulc=bulh=bulb=1,squ=7;return;}
if(t==2) {N=30,Numk=40,Numl=8,Numd=1,Hp=15,Bebc=20,Bebh=4,Bebb=2,bulc=bulh=bulb=1,squ=5;return;}
if(t==1) {N=30,Numk=40,Numl=5,Numd=2,Hp=20,Bebc=10,Bebh=Bebb=0,bulc=bulh=bulb=1,squ=3;return;}
system("cls"),t=0,Sleep(100);
if(lanf==1) puts("Do you want to be able to shoot the bullets?");
if(lanf==0) puts("请选择你能否发射狙击枪子弹!");
while(1)
{
if(lanf==1)
{
print(2,0," ");
if(t==1) puts(" Yes ");else color(112),puts(" Yes "),color(7);
print(3,0," ");
if(t==0) puts(" No ");else color(112),puts(" No "),color(7);
}
if(lanf==0)
{
print(2,0," ");
if(t==1) puts(" 是 ");else color(112),puts(" 是 "),color(7);
print(3,0," ");
if(t==0) puts(" 否 ");else color(112),puts(" 否 "),color(7);
}
if(KEY_DOWN(13)||KEY_DOWN(108)) break;
if(KEY_DOWN(87)||KEY_DOWN(83)||KEY_DOWN(38)||KEY_DOWN(40)||KEY_DOWN(104)||KEY_DOWN(101)) t=1-t;
Sleep(100);
}
bulc=1-t,t=0,system("cls"),Sleep(100);
if(lanf==1) puts("Do you want to be able to shoot the bullets?");
if(lanf==0) puts("请选择你能否发射高射炮子弹!");
while(1)
{
if(lanf==1)
{
print(2,0," ");
if(t==1) puts(" Yes ");else color(112),puts(" Yes "),color(7);
print(3,0," ");
if(t==0) puts(" No ");else color(112),puts(" No "),color(7);
}
if(lanf==0)
{
print(2,0," ");
if(t==1) puts(" 是 ");else color(112),puts(" 是 "),color(7);
print(3,0," ");
if(t==0) puts(" 否 ");else color(112),puts(" 否 "),color(7);
}
if(KEY_DOWN(13)||KEY_DOWN(108)) break;
if(KEY_DOWN(87)||KEY_DOWN(83)||KEY_DOWN(38)||KEY_DOWN(40)||KEY_DOWN(104)||KEY_DOWN(101)) t=1-t;
Sleep(100);
}
bulh=1-t,t=0,system("cls"),Sleep(100);
if(lanf==1) puts("Do you want to be able to shoot the bullets?");
if(lanf==0) puts("请选择你能否发射大炮子弹!");
while(1)
{
if(lanf==1)
{
print(2,0," ");
if(t==1) puts(" Yes ");else color(112),puts(" Yes "),color(7);
print(3,0," ");
if(t==0) puts(" No ");else color(112),puts(" No "),color(7);
}
if(lanf==0)
{
print(2,0," ");
if(t==1) puts(" 是 ");else color(112),puts(" 是 "),color(7);
print(3,0," ");
if(t==0) puts(" 否 ");else color(112),puts(" 否 "),color(7);
}
if(KEY_DOWN(13)||KEY_DOWN(108)) break;
if(KEY_DOWN(87)||KEY_DOWN(83)||KEY_DOWN(38)||KEY_DOWN(40)||KEY_DOWN(104)||KEY_DOWN(101)) t=1-t;
Sleep(100);
}
bulb=1-t,t=0,system("cls"),Sleep(100);
if(lanf==1) puts("Please choose your pattern\nIf you choose Pattern 1, you can go up and down, while Pattern 2 can't!\n");
if(lanf==0) puts("请选择你的模式:\n如果你选择了模式1,你可以上下左右移动;而模式2只能左右移动!\n");
while(1)
{
if(lanf==1)
{
print(3,0," ");
if(t==1) puts(" Pattern 1:←↑↓→ ");else color(112),puts(" Pattern 1:←↑↓→ "),color(7);
print(4,0," ");
if(t==0) puts(" Pattern 2:←→ ");else color(112),puts(" Pattern 2:←→ "),color(7);
}
if(lanf==0)
{
print(3,0," ");
if(t==1) puts(" 模式1:←↑↓→ ");else color(112),puts(" 模式1:←↑↓→ "),color(7);
print(4,0," ");
if(t==0) puts(" 模式2:←→ ");else color(112),puts(" 模式2:←→ "),color(7);
}
if(KEY_DOWN(13)||KEY_DOWN(108)) break;
if(KEY_DOWN(87)||KEY_DOWN(83)||KEY_DOWN(38)||KEY_DOWN(40)||KEY_DOWN(104)||KEY_DOWN(101)) t=1-t;
Sleep(100);
}
udf=t;
system("cls"),t=-1;
while(t<3||t>35)
{
if(lanf==1) puts("Please Input an Integer: The Size of the Game(from 3 to 35):\n");
if(lanf==0) puts("请输入一个整数:游戏界面的大小(3 ~ 35)\n");
print(2,0," "),t=read(),N=t,system("cls");
}
system("cls"),t=-1;
while(t<1||90<t)
{
if(lanf==1) puts("Please Input an Integer: The Number of Bullets(from 1 to 90):\n");
if(lanf==0) puts("请输入一个整数:障碍物的数量(1 ~ 90)\n");
print(2,0," "),t=read(),Numk=t,system("cls");
}
system("cls"),t=-1;
while(t<1||90<t)
{
if(lanf==1) puts("Please Input an Integer: The Number of Backpack(from 1 to 90):\n");
if(lanf==0) puts("请输入一个整数:回血包的数量(1 ~ 90)\n");
print(2,0," "),t=read(),Numl=t,system("cls");
}
system("cls"),t=-1;
while(t<1||90<t)
{
if(lanf==1) puts("Please Input an Integer: The Number of Upgrade Bullets(from 1 to 90):\n");
if(lanf==0) puts("请输入一个整数:恐怖障碍物的数量(1 ~ 90)\n");
print(2,0," "),t=read(),Numd=t,system("cls");
}
system("cls"),t=-1;
while(t<1||t>100)
{
if(lanf==1) puts("Please Imput an Integer: The Total HP of You(from 1 to 100):\n");
if(lanf==0) puts("请输入一个整数:初始生命值(1 ~ 100)\n");
print(2,0," "),t=read(),Hp=t,system("cls");
}
system("cls"),t=-1;
while(t<1||t>100)
{
if(lanf==1) puts("Please Input an Integer: The Bullet You Have at First(from 1 to 100):\n");
if(lanf==0) puts("请输入一个整数:初始狙击枪子弹数(1 ~ 100)\n");
print(2,0," "),t=read(),Bebc=t,system("cls");
}
system("cls"),t=-1;
while(t<1||t>100)
{
if(lanf==1) puts("Please Input an Integer: The Bullet You Have at First(from 1 to 100):\n");
if(lanf==0) puts("请输入一个整数:初始高射炮子弹数(1 ~ 100)\n");
print(2,0," "),t=read(),Bebh=t,system("cls");
}
system("cls"),t=-1;
while(t<1||t>100)
{
if(lanf==1) puts("Please Input an Integer: The Bullet You Have at First(from 1 to 100):\n");
if(lanf==0) puts("请输入一个整数:初始大炮子弹数(1 ~ 100)\n");
print(2,0," "),t=read(),Bebb=t,system("cls");
}
}
inline void work()
{
init();
int die=1,luck=1,dowm=1,t;
while(1)
{
for(int i=1;i<=Numk;i++) (k[i].vf+=1)%=k[i].bv;
for(int i=1;i<=Numl;i++) (l[i].vf+=1)%=l[i].bv;
for(int i=1;i<=Numd;i++) (d[i].vf+=1)%=d[i].bv;
for(int i=1;i<=Numk;i++) if(k[i].y<=N&&k[i].x>0&&k[i].vf==0) print(k[i].x,k[i].y," ");
for(int i=1;i<=Numl;i++) if(l[i].y<=N&&l[i].x>0&&l[i].vf==0) print(l[i].x,l[i].y," ");
for(int i=1;i<=Numd;i++) if(d[i].y<=N&&d[i].x>0&&d[i].vf==0) print(d[i].x,d[i].y," ");
t=0;
if(!udf&&(KEY_DOWN(87)||KEY_DOWN(38)||KEY_DOWN(104))) t=1;
if(!udf&&(KEY_DOWN(83)||KEY_DOWN(40)||KEY_DOWN(101))) t=1;
if(KEY_DOWN(65)||KEY_DOWN(37)||KEY_DOWN(100)) t=1;
if(KEY_DOWN(68)||KEY_DOWN(39)||KEY_DOWN(102)) t=1;
if(t) print(x,y," ");move_thi(),move_peo();
for(int i=1;i<=Numk;i++) if(k[i].y<=N&&k[i].x>0&&k[i].vf==0) color(4),print(k[i].x,k[i].y,"&"),color(7);
for(int i=1;i<=Numl;i++) if(l[i].y<=N&&l[i].x>0&&l[i].vf==0) color(2),print(l[i].x,l[i].y,"+"),color(7);
for(int i=1;i<=Numd;i++) if(d[i].y<=N&&d[i].x>0&&d[i].vf==0) color(14),print(d[i].x,d[i].y,"!"),color(7);
if(t) print(x,y,"*");
die=check_die(),luck=check_luck(),dowm=check_dowm();
if(!luck) print(hp/30+17,N+2+hp%30,"-"),hp++,score+=20,(numc+=rand()%10+5)*=bulc,(numh+=rand()%5+5)*=bulh,(numb+=rand()%5)*=bulb;
if(!die) print((hp-1)/30+17,N+2+(hp-1)%30," "),hp--,score--;
if(!dowm) score+=50;
if((!die||!luck||!dowm)&&!t) print(x,y,"*");
if(hp<=0) return;
int xx=0,xw=1,yy=0,_90=0,_88=0,_67=0,_32=0;
for(int i=1;i<=Numk;i++) if(k[i].y==y&&xx<k[i].x&&k[i].x<x) xx=k[i].x,yy=k[i].y,xw=i;
for(int i=1;i<=Numl;i++) if(l[i].y==y&&xx<l[i].x&&l[i].x<x) xx=l[i].x,yy=l[i].y,xw=i+Numk;
for(int i=1;i<=Numd;i++) if(d[i].y==y&&xx<d[i].x&&d[i].x<x) xx=d[i].x,yy=d[i].y,xw=i+Numk+Numl;
if(KEY_DOWN(32)) {for(int i=x-1;i>xx;i--) print(i,y,"|");_32=1,color(112),print(15,N+8," Space "),color(7);}else print(15,N+8," Space ");
if(KEY_DOWN(90)&&numc>0)
{
numc--,color(112),print(13,N+9," Z "),color(7),_90=1;
if(xx!=0&&numc>0) for(int i=x-1;i>=xx;i--) print(i,y,"|");
}
else print(13,N+9," Z ");
if(KEY_DOWN(88)&&numh>0)
{
numh--,color(112),print(13,N+12," X "),color(9),_88=1;
if(xx!=0&&numc>0) for(int i=x-1;i>=1;i--) print(i,y,"|");
color(7);
}
else print(13,N+12," X ");
if(KEY_DOWN(67)&&numb>0)
{
numb--,color(112),print(13,N+15," C "),color(12),_67=1;
if(xx!=0&&numc>0) for(int i=x-1;i>=xx;i--) print(i,y,"|");
color(7);
}
else print(13,N+15," C ");
for(int i=N+28;i<=N+35;i++) print(1,i," ");
for(int i=N+28;i<=N+35;i++) print(3,i," ");
for(int i=N+33;i<=N+38;i++) print(5,i," ");
for(int i=N+31;i<=N+36;i++) print(7,i," ");
for(int i=N+30;i<=N+36;i++) print(9,i," ");
print(1,N+29,":"),printf("%d",hp);
print(3,N+29,":"),printf("%d",score);
print(5,N+33,":"),printf("%d",numc);
print(7,N+31,":"),printf("%d",numh);
print(9,N+30,":"),printf("%d",numb);
Sleep(Nan);
if(_32==1) {for(int i=x-1;i>xx;i--) print(i,y," ");}
if(xx!=0&&_90)
{
for(int i=x;i>=xx;i--) print(i,y," ");
if(xw<=Numk) k[xw].init(),k[xw].x=0,score++;
else if(xw<=Numk+Numl) l[xw-Numk].init(),l[xw-Numk].x=0,score+=20;
else d[xw-Numk-Numl].init(),d[xw-Numk-Numl].x=0,score++,(numc+=rand()%10+5)*=bulc,(numh+=rand()%5+5)*=bulh,(numb+=rand()%5)*=bulb;
}
if(_88)
{
for(int i=x;i>=1;i--) print(i,y," ");
for(int i=1;i<=Numk;i++) if(k[i].y==y) k[i].init(),k[i].x=0,score++;
for(int i=1;i<=Numl;i++) if(l[i].y==y) l[i].init(),l[i].x=0,score+=20;
for(int i=1;i<=Numd;i++) if(d[i].y==y) d[i].init(),d[i].x=0,score++,(numc+=rand()%10+5)*=bulc,(numh+=rand()%5+5)*=bulh,(numb+=rand()%5)*=bulb;
}
if(xx!=0&&_67)
{
for(int i=x;i>=1;i--) print(i,y," ");
for(int i=1;i<=Numk;i++)
if(k[i].y>=yy-squ&&k[i].y<=yy+squ&&k[i].x>=xx-squ&&k[i].x<=xx+squ&&k[i].x>=1&&k[i].y<=N)
print(k[i].x,k[i].y," "),k[i].init(),k[i].x=0,score++;
for(int i=1;i<=Numl;i++)
if(l[i].y>=yy-squ&&l[i].y<=yy+squ&&l[i].x>=xx-squ&&l[i].x<=xx+squ&&l[i].x>=1&&k[i].y<=N)
print(l[i].x,l[i].y," "),l[i].init(),l[i].x=0,score++;
for(int i=1;i<=Numd;i++)
if(d[i].y>=yy-squ&&d[i].y<=yy+squ&&d[i].x>=xx-squ&&d[i].x<=xx+squ&&d[i].x>=1&&k[i].y<=N)
print(d[i].x,d[i].y," "),d[i].init(),d[i].x=0,score++,(numc+=rand()%10+5)*=bulc,(numh+=rand()%5+5)*=bulh,(numb+=rand()%5)*=bulb;
}
score++;
}
}
int main()
{
Begin();
while(1)
{
choose(),work(),die();int t=0;
while(1)
{
if(lanf==1)
{
print(5,0," ");
if(t==1) puts(" Yes ");else color(112),puts(" Yes "),color(7);
print(6,0," ");
if(t==0) puts(" No ");else color(112),puts(" No "),color(7);
}
if(lanf==0)
{
print(5,0," ");
if(t==1) puts(" 是 ");else color(112),puts(" 是 "),color(7);
print(6,0," ");
if(t==0) puts(" 否 ");else color(112),puts(" 否 "),color(7);
}
if(KEY_DOWN(13)||KEY_DOWN(108)) break;
if(KEY_DOWN(87)||KEY_DOWN(83)||KEY_DOWN(38)||KEY_DOWN(40)||KEY_DOWN(104)||KEY_DOWN(101)) t=1-t;
Sleep(100);
}
if(t==1) return 0;
system("cls");
}
}
相关推荐
MATLAB实战:利用扫频数据重构系统伯德图的关键步骤
本文详细介绍了如何利用MATLAB处理扫频数据并重构系统伯德图的完整实战流程。内容涵盖数据导入与清洗、增益与相位的精确计算、频率响应数据对象(frd)的构建、数据平滑与插值处理,以及最终生成专业伯德图并进行关键参数(如相位裕度)标注的方法。文章重点解决了从实测“黑盒子”系统数据出发,获取直观频率响应特性曲线的核心问题,为控制系统分析与设计提供了实用指南。
我的C++之旅---02
我的C++之旅—02 (原创) 以下是我编写的通讯录管理系统的源代码。 功能: 数字迷宫Digital Maze小游戏 #include<stdio.h> #include <iostream> #include<windows.h> #include<ctime> using namespace std; int x, y; int posit...
电路方案分析(十二)USB Type-C PD 移动电源参考设计方案
TPD8S300为USB Type-C连接器的CC1,CC2,SBU1和SBU2引脚集成了四个通道的20v短到vbus和过压保护。TPD8S300集成了八个IEC61000-4-2ESD保护通道,用于USB Type-C连接器的CC1、CC2、SBU1、SBU2、DP_T (顶侧D-) 、DM_T (顶侧D-) 、DP_B (底侧D-) 引脚。当电源组是接收器并为其自身的电池充电时,该芯片会对电池充电,而在电源模式期间,该芯片充当DC-DC转换器以生成VBUS。
wxpython手速测试程序
一个简单的手速测试程序
【100%通过率】华为OD机试真题 Python 实现【水库蓄水问题】【2022.11 Q4 新题】
给定一个长度为 n 的整数数组height。数组的元素表示山的高度,选择两个元素作为水库的边界,求蓄水量的最大值并输出蓄水量最大时的边界下标(蓄水量相同时输出下标较近的)。
人工智能混合编程实践:C++调用封装好的DLL进行异常检测推理
C++、Python、ONNX、人工智能、异常检测、Anomalib 2.1.0
c语言测试代码怎么写,初学C语言,写了一个测试手速的工具,代码发上来,存着。。...
该楼层疑似违规已被系统折叠隐藏此楼查看此楼RT有幸看到的可以去试一试。。。。#include"stdio.h"#include"time.h"#include"conio.h"voidmain(){clock_tstart,finish;charkey,k,g;inti,t;doubletime;start:printf("欢迎使用此手速测试器,首先你需要输入希望连击的次数。必须...
C++实现设计ATM机系统
这个示例实现了一个基本的ATM机系统,支持注册、登录、存款、取款、查询余额和保存数据等功能。当然,这只是一个简单的ATM机模拟,实际的ATM机系统需要更复杂的逻辑和更严格的安全措施。C++编写一个简单的ATM机系统,我将提供一个基本的实现示例,但由于ATM机系统的复杂性和安全性要求,这只是一个简单的模拟,不适合在实际环境中使用。试设计一简单模拟ATM机系统,系统以菜单方式工作,采用自定义函数设计各功能模块被主菜单调用,使之能提供以下基本选项。=========欢迎使用ATM=========
20行代码测手速
先上代码 #include <iostream> //复制↑ #include<windows.h> using namespace std; int main() { cout << "测手速!\n"; cout << "快速按下SHIFT然后松开,系统自动算出手速.\n\n"; int ss=0; while(true
YOLOv11改进策略【模型轻量化】| 使用 MoblieOne 模块,引入结构重参数化,提高模型检测效率
本文记录的是基于MobileOne的YOLOv11骨干网络改进方法研究。MobileOne的基础模块通过重参数化,。在将其替换YOLOv11的骨干网络后,实现模型轻量化。
【python基础】一文掌握 Jupyter Notebook 的使用(超级详细!)
是一个非营利组织,致力于为多种编程语言的交互式计算开发开源软件、开放标准和服务。Jupyter 于 2014 年由 Fernando Pérez 从IPython衍生出来,支持几十种编程语言的执行环境。Jupyter 项目主要开发并支持(.ipynb 文件格式)、JupyterHub和JupyterLab等交互式计算产品。
【题目讲解】c++怎么判断键盘按下?
define后面的名字是可以改的,根据自己喜好。
手把手教你学Simulink——基于通信协议与标准的场景实例:卫星通信中的网络安全协议(IPSec)仿真
随着卫星通信在国防、金融、应急指挥、能源管网等关键领域的广泛应用,其安全性已成为系统设计的核心要求。然而,卫星链路具有广播特性、长距离传输、地面站分布广等特点,极易遭受窃听、篡改、重放、中间人攻击等网络威胁。传统的“信任链路层安全”已不足以应对现代网络攻击。为此,国际标准组织(如IETF、ETSI、CCSDS)推荐在卫星通信中部署协议,实现端到端的数据机密性、完整性、身份认证和抗重放保护。本文将手把手教你如何在中构建一个符合标准的仿真系统,涵盖从明文传输到加密隧道的完整安全链路建模。本文完整实现了。
折磨人小游戏之《一个都不能死》html5网页小游戏源代码
介绍: 今天给大家分享一款相当折磨人的小游戏,玩这个小游戏简直可以让人抓狂,在下也是玩了几局,最多也就活到20多秒就撑不下去了,脑子和手都不够用。 这款《一个都不能死》小游戏html源码可以让我们锻炼反应能力和手速,玩家可以选择4种模式,这四种模式难度由高到低分别是:炼狱模式、地狱模式、噩梦模式和默认的普通模式,这几种模式分别对应了不同的需要进行的不同人物的数量,炼狱模式玩家需要操控5个火柴人进行躲避障碍物,地狱模式和噩梦模式是操控4个和3个火柴人进行游戏,默认就是操控两个啦,游戏整体模式有点像金庸武侠小说
Devexpress16.2.6破解工具
Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具
假人有限元模型
假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用
HTML5小游戏【让屋子飞-练手速游戏】游戏源码分享下载 --- flyhouse.zip
HTML5小游戏【让屋子飞-练手速游戏】游戏源码分享下载 --- flyhouse.zip
RU DOS版、EFI版32bit/64bit BIOS常用工具
DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。
c语言反应能力的手机游戏,40种聚会小游戏,锻炼大脑反应能力游戏,faker玩的练走位小游戏,提高手速和反应的游戏,faker练反应的手机游戏,训练反应力和手速的游戏,练大脑反应速度和手:有什么练反应...
广告推荐几个练反应的游戏节奏大师,别踩白块儿有什么练反应能力的游戏??手机app别踩白块有什么小游戏可以练反应速度。1、FPS游戏FPS游戏是见的一类锻炼反应能力游戏,游戏讲究快、准、稳三个特点。见人,需要玩家左脑迅速分析计算距离位置,然后以最快的速度向肢体下达命令,达到射杀目的。2、节奏大师?节奏大师是一个锻炼手速与反应的游戏,反应变快了之后,智商也就自然而然得有所提升。3、《现代战争3:堕落的...
迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)
迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)
JavaSE期末课程设计——弹球小游戏(IDEA、eclipse)
声明:该文章只是做技术分享,若侵权请联系我删除。!!使用技术:Java(JavaSE期末课程设计)主要内容:用java实现桌面版弹球小游戏具体的代码也在该链接下。
工会趣味线上小游戏——多彩活动,活力职工
在规定时间内击中敌机得分,考验反应与手眼协调,职工随时随地参与,积分排行激发竞争意识,大家钻研技巧提升水平。游戏中,职工需快速捕捉并记住图案位置,随着牌子增多,记忆负担加重,乐趣与挑战并存,成功配对带来喜悦,也促使职工思考策略。线上大赛要求职工在规定时间用普通话读绕口令,正确率达80%获积分,积分排行榜增添竞技性,职工为提升排名反复练习,锻炼语言运用能力,形成良性竞争。职工集中精力、快速滑动操作,精确数钱,不仅增添乐趣,还锻炼专注能力与手眼协调能力,提升反应速度。这些游戏各具特色,从多个维度满足职工需求。
游戏小程序源码 一起来找茬
介绍: 程序比较大,400多M,有需要的人下载试试 大家一起来找茬是一个拼手速的游戏小程序,是一个非常好玩的游戏,很适合宅在家的时候玩耍。是一个对战模式的游戏,进入游戏,系统会匹配一个对手,让后给出一堆物品图案与要求,让玩家找出需要的物品,谁先完成的迅速获得的分数就比较高,这是一个拼手速的小程序,同时有考验大家的观察力,因为这需要在一堆密密麻麻的物品中找出你想要的物品不容易,需要非常细心的观察。一个如此有挑战性,又能考验大家观察能力的小程序,你还在犹豫什么?赶紧和朋友一起来挑战吧! 网盘下载地址: htt
【六·一】就做个纯粹的小小游戏吧
本文关键字:六一、前端、小游戏。不知不觉,一年的时光已经流逝近半,又到了一个不再需要过的节日。还记得夕阳下的奔跑,那是我逝去的青春。。。咳咳咳!时光荏苒,甚至已经不记得自己少年模样,是以何种的心态看待这个世界。既然官方有虚拟勋章送,自然是不能错过的,那就写个锻炼手速的游戏吧。
android弹球游戏小球运动,球球跳一跳跳舞弹球
《球球跳一跳跳舞弹球安卓版》这是一款画风非常清新美丽的网红类休闲闯关小游戏,以弹球跳跃闯关为主要玩法趣味性十足,操控小球在各式各样环境优美的场景中跳跃冒险,发挥你敏捷的反应力获得更多的积分,并完成关卡挑战成功抵达终点。游戏介绍球球跳一跳跳舞弹球游戏是一款挑战玩家手速的魔性小游戏,游戏画面简洁,缤纷多彩,海量趣味关卡自由挑战,来球球跳一跳跳舞弹球可以锻炼你的手速和反应能力,灵活操控球球不断跳跃到各个...
C++测手速小游戏
失踪人口回归系列
HTML5小游戏【练手速--测桃花运游戏】游戏源码分享下载 --- flnu.zip
HTML5小游戏【练手速--测桃花运游戏】游戏源码分享下载 --- flnu.zip
这几个益智锻炼脑力的小游戏你知道吗?
除了加减乘除,软件还提供了删除数字的按钮,取反按钮,填数等。比如目标数是100,我通过加减乘除得到1001, 然后我单击按钮删除数字以获得目标数字 100。反转按钮就是号码的反转,比如1234这个号码点击反转按钮可以变成4321。这是一个在线网页游戏,在这个网站上,您可以从数千件艺术品中选择一件拆解成拼图游戏。它不仅仅是一款拼图游戏,也是一场艺术鉴赏的盛宴网页。使用非常简单,打开软件就知道怎么操作了。最后就是很可爱,整体是小清新风格,颜值非常高。软件在2048的基础上进行了创新升级,整体体验非常好。
制作类似aimlab的测试手速反应力的小游戏
摘要:本文介绍了一个基于前端技术(HTML+CSS+JS+Canvas)开发的网页版Aim训练小游戏。该项目复刻了AimLab的核心功能,包含5种训练模式(经典、极速、精准、动态、生成模式),适合不同水平的FPS玩家进行瞄准训练。项目亮点包括完整的数据统计系统、高颜值动画特效、便捷快捷键操作和响应式布局。无需安装,浏览器直接打开即可使用,既可作为前端练手项目,又能帮助玩家提升反应速度和瞄准精度。
反应力测试游戏软件,反应力测试小游戏合集
推荐理由:功夫拖鞋是一款考验反应力的趣味闯关游戏,拿起手中的拖鞋,用不同的技巧来消灭老鼠。游戏玩法很轻松,带来的玩法轻松解压,体验更丰富的游戏乐趣。推荐理由:千手英雄是一款一个人同时挑战多个游戏的趣味闯关游戏,充分考验反应力和手速,结合复活道具,还能带来策略选择和益智挑战,满满惊喜乐趣体验。推荐理由:我的属性是由搁浅工作室推出的一款丰富测试玩法元素的互动游戏,带玩家体验全新的游戏乐趣。玩家可以自由...
397



被折叠的 条评论
为什么被折叠?



