-
个人简介
语文老师一回头, 此地空余黄鹤楼;
数学老师一回头,二次函数对称轴;
英语老师一回头, Sorry加上三克油;
物理老师一回头, 一根杠杆撬地球;
化学老师一回头, 二氧化碳变汽油;
劳动老师一回头, 破铜烂铁来走秀;
体育老师一回头, 乔丹改打乒乓球;
政治老师一回头, 全班同学都梦游;
美术老师一回头, 蒙娜丽莎也风流;
音乐老师一回头, 贝多芬呀也不牛;
信息老师一回头, 带着学生玩网游;
地理老师一回头,校门前面泥石流。 神奇古诗 老师:大雄你这学期的诗都背完了没
大雄:是的
老师:那我得好好考考你
大雄:okok
老师:山穷水复疑无路
大雄:方天画戟捅义父
老师:垂死病中惊坐起
大雄:吃席麻烦先随礼
老师:但使龙城飞将在
大雄:Come on baby don't be shy.
老师:巴山楚水凄凉地
大雄:蜜雪冰城甜蜜蜜
老师:问君能有几多愁
大雄:累了困了喝红牛
老师:大风起兮云飞扬
大雄:意大利炮轰他娘
老师:清明时节雨纷纷
大雄:唱跳rap蔡徐坤
老师:远赴人间惊鸿宴
大雄:大声点我听不见
老师:少小离家老大回
大雄:菊花变成向日葵
老师:后宫佳丽三千人
大雄:铁杵也能磨成针
老师:老骥伏枥,志在千里
大雄:横扫饥饿,做回自己
老师:。。。
1.你不可能强迫自己用肥皂水洗眼睛
2.你不可能竖起耳朵
3.你不可能一边把舌头吐出来一边用鼻子呼吸
4.刚刚偷偷试第三项
6.你试了第三项之后发现明明就可以,只是看起来像条狗
7.你现在很生气, 因为你发现自己被整了
8.你刚没有读到第五项
9.你刚刚往上看了一眼
10.你会复制粘贴这段话拿去整别人
11.你还在看
12.你笑了
13.第八也没有,你信吗
14.你又往上看了
15.你打喷嚏时睁眼睛,眼珠子会掉下来
17.你现在并没有打喷嚏
18.你正在模仿打喷嚏
19.你的眼珠子并没有掉下来
20.你现在想搜一下:打喷嚏时睁眼睛,眼珠子会掉下来吗?
21.第16项也没有
22.你本不想往上看,但在好奇心的驱使下,你看了一下
附加:
1.你绝对不能考一亿个亿百分。
2.你可能是男的,也有可能是女的。
4.你好,hello!
5.没有第三条。
6.你刚刚回头看了。
8.你猜猜我为什么要写英文。
9.我喜欢!!!
10.你的心里十分无语。
11.没有第七条。
12.你本来不想回头看的,但好奇心作祟,你还是回头看了。
13.第十二条前面有个空格,不知道你发现了没有。
14.你又又又回头看了。
15.但是你没发现有空格。
木兰诗 唧唧复唧唧, 木兰开飞机, 开的什么机? 波音747! 问女何所思, 问女何所忆。 女亦有所思, 没钱买飞机。 昨夜见军帖, 要用轰炸机, 飞机十二架, 架架买不起。 阿爷无大钱, 木兰无金银, 愿去买钢铁, 从此造飞机。 东市买图纸, 西市买螺丝, 南市买玻璃, 北市买铁皮。 旦辞爷娘去, 暮宿旧机库, 不闻爹娘唤女声, 但闻铁皮摩擦滋啦声。 旦辞机库去, 暮至军营旁, 不闻爹娘唤女声, 但闻将军大呼哈哈哈。 万里开飞机, 关山一下没。 热气传机翼, 日光照玻璃。 将军被吓死, 壮士魂已飞。 飞来撞天子, 天子躺病床。 策勋十二转, 赏赐俩耳光。 可汗问所欲, 木兰不愿进牢房; 愿开747, 飞着回故乡。 爹娘闻女来, 端起机关枪; 阿姊闻妹来, 当户举手枪; 小弟闻姊来, 磨刀霍霍向爹娘。 开我机舱门, 进我飞机舱, 脱我战时袍, 换上飞行装, 多装手榴弹, 对外架机枪。 出门埋炸弹, 亲友皆惊忙: 离别十二年, 不知木兰变猖狂。 疯子脚蹬地, 呆子眼紧闭, 两人并排走, 谁能说我不正常?
《真·慈母手中剑》 慈母手中剑,游子身上劈。一秒十二剑,剑剑出暴击。父看子未凉,掏出七匹狼。子看七匹狼,瞬间透心凉。透心凉,心飞扬,果冻我要喜之郎。十年生死两茫茫,喜羊羊,灰太狼, 舒克贝塔 ,蓝猫话凄凉。纵使相逢应不识,圣斗士,美猴王。老夫聊发少年狂,治肾亏,不含糖。锦帽貂裘,洗衣用奇强。为报倾城随太守,三百年,九芝堂。夜来幽梦忽还乡,学外语,新东方。相顾无言,洗洗更健康。挖掘机,哪家强,中国山东找蓝翔 ···································································································· 数学上来先打表,DP一般看规律.
组合数学靠运气,计算几何瞎暴力;
图论强行套模板,数论只会GCD.
递归递推伤不起,搜索茫然TLE;
分治做得像枚举,暴力枚举数第一.
数据结构干瞪眼,怒刷水题找信心;
涨姿势也不容易,考试一来全懵逼!
附:神奇的歌
爱你提交while(1),
爱你去卡测评机,
爱你输出了样例,却还是爆 0 ,
爱你天天去卡常,却还是TLE ,
爱你和我那么像,变量名一样!
数学是火,点亮物理的灯;
物理是灯,照亮化学的路;
化学是路,通向生物的坑;
生物是坑,埋葬学理的人。
文言是火,点亮历史宫灯;
历史是灯,照亮社会之路;
社会是路,通向哲学大坑;
哲学是坑,埋葬文科生。
NOI满江红 怒发冲冠,凭栏处、潇潇雨歇。
抬望眼,满天UKE,怒火激烈。
三十WA尘与土,八千RE云和月。
莫抄袭,没了AC记录,空悲切!
CE耻,犹未雪。
蒟蒻恨,何时灭!
驾电脑,踏破题目列表。
闭眼不会Hello world,笑谈不懂头文件。
待从头、收拾A+B,还不会!
在小小的洛谷里挖呀挖呀挖,
埋小小的源代码,
开小小的 WA 听说津津为课程烦恼 金明一家住进了新房
听说丁丁玩数字游戏 火柴棒能搭出新天地
听说校门外正在砍树 大家一起做靶形数独
听说旅行者在赚差价 潜伏者正在破译着密码
只有无尽的代码知道 津津摆脱了学习的烦恼
金明开心地走进商店 挑选着书桌和电脑
总有一种算法能够让你成功拿到分
无论是贪心还是动规 或者将答案二分
思如泉涌掀起波涛 又汇成一个新的算法
让所有TLE 所有MLE 激励着我们前行写代码
听说同学们在玩推理 小Z的袜子总配不齐
听说两人在挑选客栈 火星上有条能量项链
听说陶陶在采摘苹果 一只青蛙要从河边过
听说推销员走入胡同 杰瑞爬进了奶酪的小洞
只有无尽的代码知道 同学们男女配对练起舞蹈
小Z把他的袜子找到 AK了无数机房
屏幕微微发亮 思想在虚树路径彷徨
平面的向量交错生长 织成忧伤的网
剪枝剪去我们的疯狂 SPFA告诉我前途何方
01背包装下了忧伤 笑颜洋溢脸庞
暴力出奇迹,骗分过样例。
数学先打表,DP看运气。
穷举TLE,递推UKE。
模拟MLE,贪心还CE。
要想拿A C ,必须先R E 。
想要骗到分,就要有方法。
图论背模板,数论背公式。
动规背方程,高精背代码。
如果都没背,干脆输样例。
如果想复制,直接Ctrl c。 季姬击鸡记 季姬寂,集鸡,鸡即棘鸡。棘鸡饥叽,季姬及箕稷济鸡。鸡既济,跻姬笈,季姬忌,急咭鸡,鸡急,继圾几,季姬急,即籍箕击鸡,箕疾击几伎,伎即齑,鸡叽集几基,季姬急极屐击鸡,鸡既殛,季姬激,即记《季姬击鸡记》 ···················································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································································· 我在背《古诗三首》的时候烧了《祖父的园子》,祖父罚我背《月是故乡明》,我因此染上了《梅花魂》,还去《草船借箭》了。我偷偷地跨过《景阳冈》,看见了《猴王出世》,体验了《红楼春趣》,写了《古诗三首》和《青山处埋忠骨》,当上了《军神》,过上了《清贫》的生活。我在大街上遇到了《人物描写一组》的《刷子李》,我就和他聊天。聊着聊着,他和我《自相矛盾》了,要和我《田忌赛马》,他输了,于是《跳水》了。我就坐上《威尼斯的小艇》去了《牧场之国》,看到了《金字塔》,里面竟然有《杨氏之子》的《手指》。这就是我《童年的发现》。 ······················我在背《古诗三首》的时候烧了《祖父的园子》,祖父罚我背《月是故乡明》,我因此染上了《梅花魂》,还去《草船借箭》了。
我偷偷地跨过《景阳冈》,看见了《猴王出世》,体验了《红楼春趣》,写了《古诗三首》和《青山处埋忠骨》,
当上了《军神》,过上了《清贫》的生活。我在大街上遇到了《人物描写一组》的《刷子李》,我就和他聊天。
聊着聊着,他和我《自相矛盾》了,要和我《田忌赛马》,他输了,于是《跳水》了。我就坐上《威尼斯的小艇》去了《牧场之国》,
看到了《金字塔》,里面竟然有《杨氏之子》的《手指》。这就是我《童年的发现》我在背《古诗三首》的时候烧了《祖父的园子》,祖父罚我背《月是故乡明》,我因此染上了《梅花魂》,还去《草船借箭》了。
我偷偷地跨过《景阳冈》,看见了《猴王出世》,体验了《红楼春趣》,写了《古诗三首》和《青山处埋忠骨》,
当上了《军神》,过上了《清贫》的生活。我在大街上遇到了《人物描写一组》的《刷子李》,我就和他聊天。
聊着聊着,他和我《自相矛盾》了,要和我《田忌赛马》,他输了,于是《跳水》了。我就坐上《威尼斯的小艇》去了《牧场之国》,
看到了《金字塔》,里面竟然有《杨氏之子》的《手指》。这就是我《童年的发现》 https://www.cnblogs.com/ggc114514/p/18565009
我是甜菜,大家都是甜菜。
#include<bits/stdc++.h> #include<windows.h> #include<stdio.h> #include<conio.h> #include<time.h> #define Nor if(B[b].x<5) B[b].x=5; #define Out1 Bx1-Bvx1<=6||Bx1-Bvx1>=28||By1-Bvy1<=7||By1-Bvy1>=27 #define Out2 Bx2-Bvx2<=6||Bx2-Bvx2>=28||By2-Bvy2<=7||By2-Bvy2>=27 #define Chang1 {Bwhat1=0;Bvx1=Bvy1=0;memset(Bgo1,0,sizeof(Bgo1));} #define Chang2 {Bwhat2=0;Bvx2=Bvy2=0;memset(Bgo2,0,sizeof(Bgo2));} #define Chang3 {Bwhat3=0;Bvx3=Bvy3=0;memset(Bgo3,0,sizeof(Bgo3));} using namespace std; int ti(float a) {return ((int)(a10+5))/10;} void Setpos(float x,float y){COORD pos;pos.X=ti(y4)/2;pos.Y=ti(x);SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE),pos);} void Color(int a){if(a0) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED|FOREGROUND_GREEN|FOREGROUND_BLUE);if(a1) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_GREEN|FOREGROUND_BLUE);if(a2) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_GREEN);if(a3) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED|FOREGROUND_BLUE);if(a4) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED);if(a5) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED|FOREGROUND_GREEN);if(a6) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_BLUE);if(a7) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_RED|FOREGROUND_GREEN|FOREGROUND_BLUE);if(a8) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_RED);if(a9) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),BACKGROUND_INTENSITY|BACKGROUND_GREEN|BACKGROUND_BLUE);if(a10) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),BACKGROUND_INTENSITY|BACKGROUND_RED|BACKGROUND_BLUE);if(a11) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_RED|FOREGROUND_BLUE);if(a12) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_RED|FOREGROUND_GREEN);if(a13) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY);if(a14) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_GREEN|FOREGROUND_BLUE);} int Blomax,Ren,Exp,Expmax,Lv,Lvl,Ice,Drug,ar1,ar2,Tar1,Tar2,bl,br,Win,T,Tb,Sy,Up,Upt,Down,u1,u2,Kill,Killb,L,Ll[4],Li,D,Gd[10],Biao,Fire,Fir,Water,Thun,Wind,Magne,I[20][2],ib,Dis,Disb,Dis1,Disb1,Boss,Bblo,Bblomax,Bwhat1,Bwhat2,Bwhat3,Bgo1[10],Bgo2[10],Bgo3[10],Bbr,Bbl,Bl[4]; float X,Y,Vx,Vy,Ding,Blo,Hui,Bx1,By1,Bx2,By2,Bx3,By3,Bvx1,Bvy1,Bvx2,Bvy2,Bvx3,Bvy3,Bway[1001][2]; struct bullet{float x,y,vx,vy;int what;int a,t,How;int life;bool kill;}B[100001]; void Map(int a,int b); void Pan(int a,float x,float y,int b){ float Nox[4],Noy[4];Nox[0]=X,Noy[0]=Y; if(Down1&&X22) Nox[1]=X+1,Noy[1]=Y-0.5,Nox[2]=X-1,Noy[2]=Y-0.5;else if(Down2) Nox[1]=X+1,Noy[1]=Y-0.5,Nox[2]=-10,Noy[2]=-10;else if(Down1||X<18) Nox[1]=X-1,Noy[1]=Y-0.5,Nox[2]=-10,Noy[2]=-10;else Nox[1]=X+1,Noy[1]=Y-0.5,Nox[2]=X-1,Noy[2]=Y-0.5; for(int i=0;i<3;i++){ if(a-1){if(abs(x-Nox[i])+abs(y-Noy[i])<1.5) {if(B[b].what==-10)Exp+=2;if(B[b].what==-11)Exp+=1;B[b].life=0;if(B[b].life0&&bbl) bl++;Map(3,b);break;}} if(a==-2){if(abs(x-Nox[i])+abs(y-Noy[i])<2.5) {if(B[b].what==-2)Exp+=5,Biao+=5;if(B[b].what==-3)Fire=300,Ice=0,Fir=3;if(B[b].what==-4)Water=200;if(B[b].what==-5){Wind=70;Ding=28.25;Ice=0;if(Y<Ding-1)Vy=5;else Vy=0;if(Up>=1) Vx=-5;if(Down2) Vx=5;}if(B[b].what-6){Thun=200;system("color 1F");Sleep(20);system("color 6F");Sleep(10);system("color 0F");}if(B[b].what==-7)Magne=300;if(B[b].what==-8)Ice=0,Drug=0,Blo=fmin((float)Blomax,Blo+20);if(B[b].what==-9)Exp=fmin((float)Expmax,Exp+20);B[b].life=0;if(B[b].life0&&bbl) bl++;Map(3,b);break;}} }if(Wind0&&Thun0&&(B[b].kill!=0||Killb>=15||Ren1&&Killb>0)) return; for(int i=0;i<3;i++){ if((Wind>=1||Thun>=1)&&abs(x-Nox[i])+abs(y-Noy[i])<2.5) {if(B[b].what<98)Exp+=2;B[b].life=0;Map(3,b);break;} if(a1) {if(abs(x-Nox[i])<0.5&&abs(y-Noy[i])<1) {if(B[b].what>=99)Blo-=10;if(B[b].what14)Blo-=15,Ice=100,B[b].life=0;else if(B[b].what15)Blo-=20,Ice=0,B[b].life=0;else if(B[b].what17)Blo-=5,Drug=100,B[b].life=0;else if(B[b].what>=13&&B[b].what<=17)Blo-=10,B[b].life=0;else Blo-=15;B[b].kill=1,Killb=20;Kill=1;Map(3,b);break;}} if (a2||a6||a8||a9||a10||a11||a12) { if(abs(x-Nox[i])+abs(y-Noy[i])<1.5) { if(a2)Blo-=20; else if(a8)Blo-=10; else Blo-=15;B[b].kill=1,Killb=20;Kill=1;if(a!=2){B[b].life=0;if(B[b].life0&&bbl) bl++;Map(3,b);break;}}} if(a4) {if((Wind>=1||Thun>=1)&&abs(x-Nox[i])<1.5&&Noy[i]-y<=0&&Noy[i]-y>=-8) {if(B[b].what<98)Exp+=2;B[b].life=0;Map(3,b);break;}if(abs(x-Nox[i])<1&&Noy[i]-y<=0&&Noy[i]-y>=-8) {Blo-=25,B[b].kill=1,Killb=20;Kill=1;Vy=-1;Y-=0.5;break;}} } } void Map(int a,int b){ Color(0); if(a-1){ if(Boss1||Boss6){if(Bwhat15){if(ti(Bx1)20)Setpos(Bx1,By1),cout<<"";else Setpos(Bx1,By1),cout<<" ";}else{Setpos(Bx1-1,By1-0.5),cout<<" ";Setpos(Bx1,By1-1),cout<<" ";Setpos(Bx1+1,By1-0.5),cout<<" ";if(abs(ti(Bx1)-20)<=1)Setpos(20,By1-1),cout<<"";}} if(Boss2||Boss6){Setpos(Bx2-1,By2-1);cout<<" ";Setpos(Bx2,By2-1);cout<<" ";Setpos(Bx2+1,By2-1),cout<<" ";Color(0);if(abs(ti(Bx2)-20)<=1)Setpos(20,By2-1),cout<<"";} if(Boss3||Boss6){Setpos(Bx3-1,By3-0.5);cout<<" ";Setpos(Bx3,By3);cout<<" ";Setpos(Bx3+1,By3-1),cout<<" ";Color(0);if(abs(ti(Bx3)-20)<=1)Setpos(20,By3-1),cout<<"=";} if(X<0)return;if(X>=17&&X<=19){Setpos(X-1,Y);cout<<" ";Setpos(X,Y-1);cout<<" ";Setpos(X+1,Y-1),cout<<" ";}else if(X<=23&&X>=21){Setpos(X+1,Y);cout<<" ";Setpos(X,Y-1);cout<<" ";Setpos(X-1,Y-1),cout<<" ";}else if(X>23){Setpos(X,Y-1);cout<<" ";Setpos(X-1,Y-0.5),cout<<" ";}else if(X<17&&Upt!=0){Setpos(X,Y-1);cout<<" ";Setpos(X+1,Y-1.5),cout<<" ";}else if(X<17){Setpos(X,Y-1);cout<<" ";Setpos(X+1,Y-0.5),cout<<" ";}if(Thun>0){Setpos(X-2,Y-1),cout<<" ";Setpos(X+2,Y-1),cout<<" ";Setpos(X,Y+2),cout<<" ";Setpos(X,Y-2.5),cout<<" ";Setpos(X-1,Y+1),cout<<" ";Setpos(X+1,Y+1),cout<<" ";Setpos(X-1,Y-2),cout<<" ";Setpos(X+1,Y-2),cout<<" ";Setpos(20,Y-2.5),cout<<"";}if(Wind!=0){Setpos(X+1,Y-5);cout<<" ";Setpos(X,Y-5);cout<<" ";Setpos(X-1,Y-5);cout<<" ";Setpos(20,Y-5),cout<<"";}if(Water!=0){Setpos(X,Y-4);cout<<" ";Setpos(X+2,Y-3.5);cout<<" ";Setpos(X-2,Y-3.5);cout<<" ";Setpos(X+1,Y-3.5);cout<<" ";Setpos(X-1,Y-3.5);cout<<" ";Setpos(20,Y-5),cout<<"";}if(Fire!=0){Setpos(X,Y+1),cout<<" ";Setpos(X+1,Y),cout<<" ";Setpos(X-1,Y-1),cout<<" ";Setpos(20,Y-1);cout<<"";} } if(a0){ if(Boss1||Boss6){if(Bwhat15)Color(5),Setpos(Bx1,By1),cout<<"█",Color(0);else if(Bwhat14&&Bgo1[1]>6&&Bgo1[1]<11)Color(4),Setpos(Bgo1[5]-1,Bgo1[6]),cout<<"︻",Setpos(Bgo1[5],Bgo1[6]-1),cout<<"【",Setpos(Bgo1[5],Bgo1[6]+1),cout<<"】",Setpos(Bgo1[5]+1,Bgo1[6]),cout<<"︼",Color(0);else{Setpos(Bx1-1,By1-0.5),Color(0),cout<<"●●";Setpos(Bx1,By1-1);if(Bwhat12&&Bgo1[1]<=5)Color(1);else if(Bwhat13&&Bgo1[1]<=5)Color(5);else if(Bwhat16&&Bgo1[1]<=5)Color(8); else Color(4);if(Bwhat14) Setpos(Bx1,By1-0.5),cout<<"██(";else cout<<")██(";Setpos(Bx1+1,By1-0.5),cout<<"……";Color(0);}} if(Boss2||Boss6){Setpos(Bx2-1,By2-1);Color(0),cout<<"\ ";Color(0);cout<<"●";Setpos(Bx2,By2-1);Color(3);cout<<"◥";Color(5),cout<<"JJJ";Color(0),cout<<">";Color(3);Setpos(Bx2+1,By2-1),cout<<"◢█◣";Color(0);} if(Boss3||Boss6){Setpos(Bx3-1,By3-0.5);if(Bwhat33||Bwhat39) Color(1);else if(Bwhat34||Bwhat310) Color(4);else if(Bwhat35||Bwhat311) Color(5);if(Bwhat311)cout<<' ';else if(Bwhat36) Color(3);else Color(2);cout<<"●-";Setpos(Bx3,By3);if(Bwhat311)cout<<"/";else cout<<"┃";Color(0);Setpos(Bx3+1,By3-1),cout<<"●●●";} if(X<0)return;if(Ren2) Color(12);if(Ren3) Color(1);if(Ren4) Color(3);if(Ren5) Color(4);if(Ren6) Color(2);if(Drug!=0&&T%5!=0) Color(11);if(Drug!=0&&T%50) Color(11);if(Ice!=0) Color(6);if(b1) Color(8);if(Li!=0) Color(5);if(Ren1&&Killb>0&&T%4<2) Color(13);if(Wind>0&&T%4<=1) Color(1);if(Wind>0&&T%4>=2) Color(0);if(Thun>0&&T%4<=1) Color(1);if(Thun>0&&T%4>=2) Color(6); if(X>=17&&X<=19){Setpos(X-1,Y);cout<<"●";Setpos(X,Y-1);cout<<"━/";if(T%10<3) Setpos(X+1,Y-1),cout<<"┛╲";else if(T%10<6) Setpos(X+1,Y-1),cout<<"┦ ";else Setpos(X+1,Y-1),cout<<"╯>";if(Wind>0&&T%30) Setpos(X+1,Y-1),cout<<"┛╲";else if(Wind>0&&T%31) Setpos(X+1,Y-1),cout<<"┦ ";else if(Wind>0&&T%32)Setpos(X+1,Y-1),cout<<"╯>";}else if(X<=23&&X>=21){Setpos(X+1,Y);cout<<"●";Setpos(X,Y-1);cout<<"━\";if(T%10<3) Setpos(X-1,Y-1),cout<<"┓╱";else if(T%10<6) Setpos(X-1,Y-1),cout<<"┪ ";else Setpos(X-1,Y-1),cout<<"╮>";if(Wind>0&&T%30) Setpos(X-1,Y-1),cout<<"┓╱";else if(Wind>0&&T%31) Setpos(X-1,Y-1),cout<<"┪ ";else if(Wind>0&&T%32)Setpos(X-1,Y-1),cout<<"╮>";}else if(X>23){Setpos(X,Y-1);cout<<"━ ●";Setpos(X-1,Y-0.5),cout<<"│>";}else if(X<17&&Upt!=0){Setpos(X,Y-1);cout<<"━ ●";Setpos(X+1,Y-1.5),cout<<"╱ >";}else if(X<17){Setpos(X,Y-1);cout<<"━ ●";Setpos(X+1,Y-0.5),cout<<"│>";}if(Thun>0){Setpos(X-2,Y-1),cout<<"▄▄";Setpos(X+2,Y-1),cout<<"▄▄";Setpos(X,Y+2),cout<<"▌";Setpos(X,Y-2.5),cout<<"▌";Setpos(X-1,Y+1),cout<<"█";Setpos(X+1,Y+1),cout<<"█";Setpos(X-1,Y-2),cout<<"█";Setpos(X+1,Y-2),cout<<"█";}if(Magne>0&&T%7<2)Setpos(X,Y),Color(5),cout<<"★";if(Wind>1){if(T%6<2)Color(1);else Color(0);if(T%8<=1){Setpos(X+1,Y-5);cout<<"---- --";Setpos(X,Y-5);cout<<"- --- -";Setpos(X-1,Y-5);cout<<"--- - --";}else if(T%8<=3){Setpos(X+1,Y-5);cout<<"------ ";Setpos(X,Y-5);cout<<" -- ---";Setpos(X-1,Y-5);cout<<"----- - ";}else if(T%8<=5){Setpos(X+1,Y-5);cout<<" ------";Setpos(X,Y-5);cout<<"-- -- -";Setpos(X-1,Y-5);cout<<"- ----- ";}else if(T%8<=7){Setpos(X+1,Y-5);cout<<"-- ----";Setpos(X,Y-5);cout<<" --- -- ";Setpos(X-1,Y-5);cout<<"- - ----";}}if(Water!=0){Color(1);if(T%20<5){Setpos(X+2,Y-3);cout<<"■";Setpos(X+1,Y-3.5);cout<<"■";Setpos(X-1,Y-2.5);cout<<"■";Setpos(X-2,Y-3);cout<<"■";}else if(T%20<10||T%20>=15){Setpos(X+2,Y-3);cout<<"■";Setpos(X,Y-4);cout<<"■■";Setpos(X-2,Y-3); cout<<"■";}else if(T%20<15){Setpos(X+2,Y-3.5);cout<<"■";Setpos(X+1,Y-3);cout<<"■";Setpos(X-1,Y-3.5);cout<<"■";Setpos(X-2,Y-3);cout<<"■";}}if(Fire!=0){if(T%6<3)Color(4);else Color(5);if(Fir>=1)Setpos(X,Y+1),cout<<"●";if(Fir>=2)Setpos(X+1,Y),cout<<"●23";if(Fir>=3)Setpos(X-1,Y-1),cout<<"●";} } if(a1||a3){ if(B[b].what1){Nor;Setpos(B[b].x,B[b].y-1);if(ti(B[b].x)20)cout<<"";else cout<<" ";if(B[b].life!=0){B[b].y-=B[b].vy;Setpos(B[b].x,B[b].y);if(B[b].How<=1) Color(13);else Color(4);cout<<"●";if(a1) Pan(1,B[b].x,B[b].y,b);}} if(B[b].what2){Nor;Setpos(B[b].x-1,B[b].y-1);if(ti(B[b].x-1)20)cout<<"";else cout<<" ";Setpos(B[b].x,B[b].y-1);if(ti(B[b].x)20)cout<<"";else cout<<" ";Setpos(B[b].x+1,B[b].y-1);if(ti(B[b].x+1)20)cout<<"";else cout<<" ";if(B[b].life!=0){B[b].y-=B[b].vy;Setpos(B[b].x,B[b].y);Color(5);if(B[b].How0){Setpos(B[b].x-1,B[b].y),cout<<"↑";Setpos(B[b].x,B[b].y-1),cout<<"←┼ →";Setpos(B[b].x+1,B[b].y),cout<<"↓";}else if(B[b].How1){Setpos(B[b].x-1,B[b].y-1),cout<<"↖ ↗";Setpos(B[b].x,B[b].y),cout<<"╳";Setpos(B[b].x+1,B[b].y-1),cout<<"↙ ↘";} if(a1) Pan(2,B[b].x,B[b].y,b);}} if(B[b].what3||B[b].what5){Nor;Setpos(B[b].x,B[b].y);if(ti(B[b].x)20)cout<<"";else cout<<" ";if(B[b].life!=0){B[b].y-=B[b].vy;B[b].x-=B[b].vx;Setpos(B[b].x,B[b].y);if(B[b].How1) Color(5);else Color(4);cout<<"◎";}} if(B[b].what4){Nor;Setpos(B[b].x,fmax((float)0,B[b].y-8));if(ti(B[b].x)20){for(int i=max(0,(int)B[b].y-8);i<=B[b].y;i++)cout<<"";}else {for(int i=max(0,(int)B[b].y-8);i<=B[b].y;i++)cout<<" ";}if(B[b].life!=0){B[b].y-=B[b].vy;Setpos(B[b].x,fmax((float)0,B[b].y-8));Color(6); for(int i=max(0,(int)B[b].y-8);i<=B[b].y;i++)cout<<"═"; if(a1) Pan(4,B[b].x,B[b].y,b);}} if(B[b].what6||B[b].what8||B[b].what9){Nor;Setpos(B[b].x-1,B[b].y);if(ti(B[b].x)-120)cout<<"";else cout<<" ";Setpos(B[b].x+1,B[b].y);if(ti(B[b].x)+120)cout<<"";else cout<<" ";Setpos(B[b].x,B[b].y-1);if(ti(B[b].x)20)cout<<"";else cout<<" ";if(B[b].life!=0){B[b].y-=B[b].vy;B[b].x-=B[b].vx;Setpos(B[b].x,B[b].y-1);if(B[b].what6){if(B[b].How<=1) Color(1); else Color(6);}if(B[b].what9){if(B[b].How<=1) Color(4); else Color(8);}if(B[b].what8)Color(5);Setpos(B[b].x-1,B[b].y);cout<<"︹";Setpos(B[b].x+1,B[b].y);cout<<"︺";Setpos(B[b].x,B[b].y-1);if(B[b].How%21) cout<<"〔●〕"; else cout<<"﹝○﹞"; if(a1) Pan(6,B[b].x,B[b].y,b);}} if(B[b].what7){Nor;Setpos(B[b].x,B[b].y);if(B[b].How<0) for(int i=19;i>=20+B[b].How;i--) {Setpos(i,B[b].y);cout<<" ";}if(B[b].How>0) for(int i=21;i<=20+B[b].How;i++) {Setpos(i,B[b].y);cout<<" ";}if(B[b].life!=0){B[b].y-=B[b].vy;if(B[b].How<0) for(int i=19;i>=20+B[b].How;i--) {Setpos(i,B[b].y);cout<<"║"; if(a1) Pan(7,i,B[b].y,b);}if(B[b].How>0) for(int i=21;i<=20+B[b].How;i++) {Setpos(i,B[b].y);cout<<"║"; if(a1) Pan(7,i,B[b].y,b);}}} if(B[b].what10||B[b].what11||B[b].what12){Nor;Setpos(B[b].x,B[b].y);if(ti(B[b].x)20)cout<<"";else cout<<" ";if(B[b].life!=0){B[b].x-=B[b].vx;B[b].y-=B[b].vy;if(B[b].How1){B[b].vy-=0.2;}else B[b].vx-=0.35;if(B[b].x>=25) B[b].x=25,B[b].vx*=-0.8;if(B[b].what11&&B[b].y<=1) B[b].y=1,B[b].vy*=-1;if(B[b].what12&&B[b].y<=1) B[b].y=1,B[b].vx=0,B[b].vy=-0.5,B[b].How=1;Setpos(B[b].x,B[b].y);if(B[b].what11)Color(1);else if(B[b].what12)Color(5);else Color(0);if(B[b].t%4<2)cout<<"▃";else cout<<"▍";if(a1) Pan(B[b].what,B[b].x,B[b].y,b);}} if(B[b].what>=13&&B[b].what<=17){Nor;Setpos(B[b].x,B[b].y);if(ti(B[b].x)20)cout<<"";else cout<<" ";if(B[b].life!=0){B[b].x-=B[b].vx;B[b].y-=B[b].vy;Setpos(B[b].x,B[b].y);if(B[b].what14) Color(1);else if(B[b].what15) Color(4);else if(B[b].what16) Color(5);else if(B[b].what17) Color(3);else Color(2);cout<<"●";if(B[b].what14)cout<<"";if(B[b].what15)cout<<"";if(B[b].what16)cout<<"<";if(B[b].what17)cout<<"X";} if(a1) Pan(1,B[b].x,B[b].y,b);} if(B[b].what98&&B[b].life!=0){B[b].y-=B[b].vy;Setpos(B[b].x,B[b].y);if(ti(B[b].x20))cout<<"";else cout<<" ";if(B[b].y<=3)B[b].life=0;} if(B[b].what>=99){if(B[b].y<=3)B[b].life=0;if(B[b].life!=0){B[b].y-=B[b].vy;Setpos(B[b].x,B[b].y);Color(5);if(B[b].what99)cout<<"█";if(B[b].what>=100&&B[b].what<200){if(B[b].what%50)cout<<"我";if(B[b].what%51)cout<<"是";if(B[b].what%52)cout<<"最";if(B[b].what%53)cout<<"强";if(B[b].what%54)cout<<"的";}if(B[b].what>=200&&B[b].what<300){if(B[b].what%60)cout<<"神";if(B[b].what%61)cout<<"级";if(B[b].what%62)cout<<"怪";if(B[b].what%63)cout<<"物";if(B[b].what%64)cout<<"之";if(B[b].what%65)cout<<"光";}if(B[b].what>=300&&B[b].what<400){if(B[b].what%80)cout<<"颤";if(B[b].what%81)cout<<"抖";if(B[b].what%82)cout<<"吧";if(B[b].what%83)cout<<"无";if(B[b].what%84)cout<<"能";if(B[b].what%85)cout<<"的";if(B[b].what%86)cout<<"人";if(B[b].what%87)cout<<"类";}if(B[b].what>=400&&B[b].what<500){if(B[b].what%80)cout<<"还";if(B[b].what%81)cout<<"不";if(B[b].what%82)cout<<"快";if(B[b].what%83)cout<<"跪";if(B[b].what%84)cout<<"倒";if(B[b].what%85)cout<<"在";if(B[b].what%86)cout<<"朕";if(B[b].what%87)cout<<"前";}if(B[b].what>=500&&B[b].what<600){if(B[b].what%80)cout<<"看";if(B[b].what%81)cout<<"懂";if(B[b].what%82)cout<<"这";if(B[b].what%83)cout<<"句";if(B[b].what%84)cout<<"话";if(B[b].what%85)cout<<"的";if(B[b].what%86)cout<<"是";if(B[b].what%87)cout<<"猪";} if(a1) Pan(1,B[b].x,B[b].y,b);}} if(B[b].what==-1){Nor;Setpos(B[b].x,B[b].y);if(ti(B[b].x)20)cout<<"";else cout<<" ";if(Boss0) B[b].life=0;else if(((Boss1&&abs(B[b].x-Bx1)+abs(B[b].y-By1)<1.5)||(Boss2&&abs(B[b].x-Bx2)+abs(B[b].y-By2)<1.5)||(Boss3&&abs(B[b].x-Bx3)+abs(B[b].y-By3)<1.5)||(B[b].t10))&&B[b].life1) Bblo-=8+Lv2,B[b].life=0;if(B[b].life!=0){if(Boss1)B[b].x=B[b].x+(Bx1-B[b].x)/(10-B[b].t)*1.0,B[b].y=B[b].y+(By1-B[b].y)/(10-B[b].t)*1.0;if(Boss2)B[b].x=B[b].x+(Bx2-B[b].x)/(10-B[b].t)1.0,B[b].y=B[b].y+(By2-B[b].y)/(10-B[b].t)1.0;if(Boss3)B[b].x=B[b].x+(Bx3-B[b].x)/(10-B[b].t)*1.0,B[b].y=B[b].y+(By3-B[b].y)/(10-B[b].t)*1.0;Setpos(B[b].x,B[b].y);Color(7);if(B[b].t%20) cout<<"+";else cout<<"×";}} if(B[b].what<=-2&&B[b].what>=-9){Nor;Setpos(B[b].x-1,B[b].y);if(ti(B[b].x)-120)cout<<"";else cout<<" ";Setpos(B[b].x+1,B[b].y);if(ti(B[b].x)+120)cout<<"";else cout<<" ";Setpos(B[b].x,B[b].y-1);if(ti(B[b].x)20)cout<<"";else cout<<" ";if(B[b].life!=0){B[b].y-=B[b].vy;B[b].x-=B[b].vx;if(B[b].what<=-3&&B[b].what>=-7){if(B[b].x<=7)B[b].x=7;if(B[b].x>=28)B[b].x=28;else if(B[b].x>=B[b].a+1&&B[b].How1)B[b].How=0;else if(B[b].x<=B[b].a-1&&B[b].How0)B[b].How=1;if(B[b].How1&&B[b].vx>=-1)B[b].vx-=0.2;if(B[b].How0&&B[b].vx<=1)B[b].vx+=0.2;}if(B[b].what==-2) Color(3);if(B[b].what==-3) Color(4);if(B[b].what==-4) Color(1);if(B[b].what==-5) Color(0);if(B[b].what==-6) Color(6);if(B[b].what==-7) Color(5);if(B[b].what==-8) Color(2);if(B[b].what==-9) Color(14);if(T%7<=1&&B[b].what==-5)Color(1);else if(T%7<=1)Color(0);Setpos(B[b].x-1,B[b].y);cout<<"︹";Setpos(B[b].x+1,B[b].y);cout<<"︺";Setpos(B[b].x,B[b].y-1);if(B[b].what==-2) cout<<"﹝镖﹞";if(B[b].what==-3) cout<<"﹝火﹞";if(B[b].what==-4) cout<<"﹝水﹞";if(B[b].what==-5) cout<<"﹝风﹞";if(B[b].what==-6) cout<<"﹝雷﹞";if(B[b].what==-7) cout<<"﹝磁﹞";if(B[b].what==-8) cout<<"﹝血﹞";if(B[b].what==-9) cout<<"﹝忍﹞"; if(a1) Pan(-2,B[b].x,B[b].y,b);}} if(B[b].what-11||B[b].what==-12){Nor;Setpos(B[b].x,B[b].y);if(ti(B[b].x)20)cout<<"";else cout<<" ";if(B[b].life!=0){if(Magne>0)B[b].How++,B[b].x=B[b].x+(X-B[b].x)/(10-B[b].How)1.0,B[b].y=B[b].y+(Y-B[b].y)/(10-B[b].How)1.0;B[b].y-=B[b].vy;Setpos(B[b].x,B[b].y);if(B[b].what==-10) Color(5);if(B[b].what==-11) Color(7);if(T%7<=1)Color(0);cout<<"◆"; if(a1) Pan(-1,B[b].x,B[b].y,b);}} if(B[b].what-13){Nor;Setpos(B[b].x,B[b].y-0.5);if(ti(B[b].x)20)cout<<"=";else cout<<" ";if(B[b].life!=0){if(B[b].a13880086){if(Boss0) B[b].life=0;else if(((Boss1&&abs(B[b].x-Bx1)+abs(B[b].y-By1)<1.5)||(Boss2&&abs(B[b].x-Bx2)+abs(B[b].y-By2)<1.5)||(Boss3&&abs(B[b].x-Bx3)+abs(B[b].y-By3)<1.5)||(B[b].t5))&&B[b].life==1) Bblo-=8+Lv2,B[b].life=0;if(B[b].life!=0){if(Boss1)B[b].x=B[b].x+(Bx1-B[b].x)/(5-B[b].t)*1.0,B[b].y=B[b].y+(By1-B[b].y)/(5-B[b].t)*1.0;if(Boss2)B[b].x=B[b].x+(Bx2-B[b].x)/(5-B[b].t)1.0,B[b].y=B[b].y+(By2-B[b].y)/(5-B[b].t)1.0;if(Boss3)B[b].x=B[b].x+(Bx3-B[b].x)/(5-B[b].t)*1.0,B[b].y=B[b].y+(By3-B[b].y)/(5-B[b].t)*1.0;}}else{if(B[B[b].a].life0) B[b].life=0;else if((abs(B[b].x-B[B[b].a].x)+abs(B[b].y-B[B[b].a].y)<1.5||(B[b].t5))&&B[b].life1) Exp+=2,B[B[b].a].life=B[b].life=0;if(B[b].life!=0){B[b].x=B[b].x+(B[B[b].a].x-B[b].x)/(5-B[b].t)1.0,B[b].y=B[b].y+(B[B[b].a].y-B[b].y)/(5-B[b].t)1.0;}}Setpos(B[b].x,B[b].y-0.5);if(T%6<3)Color(5);else Color(4);cout<<"●";}} }if(br<bl) {br=-1,bl=0;memset(B,0,sizeof(B));}Color(0); } void Move(){ if(X<3) X=3;if(Y<1) Y=1,Vy=0;if(Y>29) Y=29,Vy=0; if(Ice!=0){X-=Vx/2.0;Y+=Vy/2.0;Vy=fmax(Vy-0.025,(float)0);if(T%60&&Up0&&Y<Ding) Y+=0.25;if(T%63&&Up0&&Y>=Ding) Y-=0.25;if(Up0&&Y<=Ding-1.25) Vy=0.25;if(Up0&&Y>=Ding+1.25&&Wind0) Vy=-0.25;if(Up0&&Down0&&Vx>0&&X<=18) Up=0,Down=0,Vx=0,Vy=0,X=18,Setpos(20,Y-2.5),cout<<"";else if(Down2&&X<=22) Up=0,Down=1,Vx=0,Vy=0,X=22,Setpos(20,Y-2.5),cout<<"";else if(Up0&&Down1&&Vx<0&&X>=22) Up=0,Down=1,Vx=0,Vy=0,X=22,Setpos(20,Y-2.5),cout<<"";else if(Up>0&&Down0&&X>18) Up=0,Vx=0,Vy=0,X=18,Setpos(20,Y-2.5),cout<<"";else if(Down2) Vx+=0.175;else if(Up>0&&Upt0) Vx-=0.175;else if(Up>0&&Upt>0) {Vx=fmax(Vx-0.125,(float)0);if(Upt1&&T%20)Map(-1,0);if(T%20)Upt--;}} else{X-=Vx;Y+=Vy;Vy=fmax(Vy-0.05,(float)0);if(Wind0){if(T%60&&Up0&&Y<Ding) Y+=0.5;if(T%63&&Up0&&Y>=Ding) Y-=0.5;}else{if(T%20&&Up0&&Y<Ding) Y+=0.5;if(T%21&&Up0&&Y>=Ding) Y-=0.5;}if(Up0&&Y<=Ding-1.25) Vy=0.5;if(Up0&&Y>=Ding+1.25&&Wind0) Vy=-0.5;if(Up0&&Down0&&Vx>0&&X<=18) Up=0,Down=0,Vx=0,Vy=0,X=18,Setpos(20,Y-2.5),cout<<"";else if(Down2&&X<=22) Up=0,Down=1,Vx=0,Vy=0,X=22,Setpos(20,Y-2.5),cout<<"";else if(Up0&&Down1&&Vx<0&&X>=22) Up=0,Down=1,Vx=0,Vy=0,X=22,Setpos(20,Y-2.5),cout<<"";else if(Up>0&&Down0&&X>18) Up=0,Vx=0,Vy=0,X=18,Setpos(20,Y-2.5),cout<<"";else if(Down2) Vx+=0.35;else if(Up>0&&Upt0) Vx-=0.35;else if(Up>0&&Upt>0) {Vx=fmax(Vx-0.25,(float)0);if(Upt1)Map(-1,0); Upt--;}} for(int i=bl;i<=br;i++){ if(B[i].what<98)if(B[i].x-B[i].vx<=5||B[i].x-B[i].vx>=30||B[i].y-B[i].vy<=0||B[i].y-B[i].vy>=30){B[i].life=0;Map(1,i);} for(int j=0;j<20;j++)if(B[i].what>0&&B[i].life!=0&&abs(B[i].x-I[j][0])<2&&B[i].y-I[j][1]<=2){Setpos(I[j][0],I[j][1]);if(I[j][0]20) cout<<"=";else cout<<" ";I[j][0]=I[j][1]=-1;B[i].life=0;Exp+=2;} if(B[i].t>=100)B[i].life=0;if(B[i].life0&&ibl) bl++; Map(1,i);if(B[i].life0) continue; else{B[i].t++; if(B[i].what1){if(B[i].y<=25&&B[i].How0) B[i].vy=0,B[i].How=1;if(B[i].t30) B[i].y+=1.5,B[i].How=2;if(B[i].t35) B[i].vy=1.5,B[i].How=3;} if(B[i].what2){if(B[i].t%30) B[i].How=!B[i].How;} if(B[i].what3||B[i].what5){if(B[i].what3&&B[i].y<=20) B[i].vy=0;if(B[i].what5&&B[i].y<=21) B[i].vy=0;if(B[i].t>30&&B[i].t%20) B[i].How=!B[i].How;if(B[i].what5&&B[i].t<=30&&B[i].x<X) B[i].vx=-0.2;else if(B[i].what5&&B[i].t<=70&&B[i].x>X) B[i].vx=0.2;else B[i].vx=0;if(B[i].t45){B[i].life=0;br++;B[br].what=4;B[br].x=B[i].x;B[br].y=32;B[br].vy=3;B[br].life=1;}} if(B[i].what6||B[i].what8||B[i].what9){if(B[i].vx<0.25&&B[i].vy<0.25&&B[i].t>=50){B[i].life=0;if(B[i].life0&&ibl) bl++;Map(1,i);break;}if(B[i].t%50) B[i].How=rand()%4;if(B[i].what9){if(B[i].t7){X9:float xx=(rand()%41)/40.0,yy=(rand()%41)/40.0;if(xx<=0.5&&yy<=0.5) goto X9;for(int j=1;j<=4;j++){br++,B[br].what=9;B[br].t=11;B[br].x=B[i].x,B[br].y=B[i].y,B[br].vx=xx,B[br].vy=yy;if(j%2==0)swap(B[br].vx,B[br].vy),B[br].vy=-1;if(j<=2)B[br].vx=-1,B[br].vy=-1;B[br].life=1;}B[i].life=0;}}if(B[i].what8){if(B[i].x>X&&B[i].vx<1.2) B[i].vx+=fmax((float)0,0.2-B[i].t/25);if(B[i].x<X&&B[i].vx>-1.2) B[i].vx-=fmax((float)0,0.2-B[i].t/25);if(B[i].y>Y&&B[i].vy<1.2) B[i].vy+=fmax((float)0,0.2-B[i].t/25);if(B[i].y<Y&&B[i].vy>-1.2) B[i].vy-=fmax((float)0,0.2-B[i].t/25);}} if(B[i].what>=13&&B[i].what<=15&&B[i].How!=0){if(B[i].xB[i].How)B[i].vx=0,B[i].How=0;} if(B[i].what16){if(B[i].x<X&&B[i].vx>=-1) B[i].vx-=0.2;else if(B[i].x>X&&B[i].vx<=1) B[i].vx+=0.2;} } if(B[i].life1&&B[i].a==0&&B[i].what>0){if(B[i].y>Y&&abs(B[i].x-X)<=3&&((B[i].x-X)(B[i].x-X)+(B[i].y-Y)(B[i].y-Y))<Dis) Dis=(B[i].x-X)(B[i].x-X)+(B[i].y-Y)(B[i].y-Y),Disb=i;else if(((B[i].x-X)(B[i].x-X)+(B[i].y-Y)(B[i].y-Y))<Dis1) Dis1=(B[i].x-X)(B[i].x-X)+(B[i].y-Y)(B[i].y-Y),Disb1=i;} } } void Guai(int R,int r){ if(R==-1){br++;B[br].what=-1;B[br].x=X+rand()%3-1;B[br].y=Y+rand()%3-1;B[br].life=1;} if(R<=-2&&R>=-11){br++;B[br].what=R;B[br].x=B[br].a=r;B[br].y=29;if(R<=-3&&R>=-7)B[br].vx=-1;B[br].vy=1;B[br].life=1;} if(R0){br++;B[br].what=1;B[br].x=r;B[br].y=29;B[br].vy=1;B[br].life=1;} if(R1){br++;B[br].what=2;B[br].x=r;B[br].y=29;B[br].vy=1;B[br].life=1;} if(R2||R3){br++;B[br].what=2R-1;B[br].x=r;B[br].y=29;B[br].vy=1;B[br].life=1;} if(R4){br++;B[br].what=6;if(r<5)r=5;if(r>30)r=30;B[br].x=r;if(r11||r25) B[br].y=29-(rand()%20);else B[br].y=29;X4:B[br].vx=(rand()%21-10)/30.0;B[br].vy=(rand()%25)/30.0;if(B[br].vx<=0.8&&B[br].vy<=0.8)goto X4;int rx=rand()%50;if(rx0) B[br].vx=0;B[br].life=1;} if(R5){br++;B[br].How=r;B[br].what=7;if(B[br].How<0) B[br].x=19;if(B[br].How>0) B[br].x=21;B[br].y=29;B[br].vy=1;B[br].life=1;} } void CpGuai(int R,float x,float y,float xx,float yy){ if(R4){br++;B[br].what=6;B[br].x=x;B[br].y=y;B[br].vx=xx;B[br].vy=yy;B[br].life=1;} if(R6||R7||R8){br++;B[br].what=4+R;B[br].x=x;B[br].y=y;B[br].vx=xx;B[br].vy=yy;B[br].life=1;} } void MesGuai(int a,int rr){ int R=rand()%rr,r=-10086; if(R0){if(a1) r=(5+rand()%8)*2;if(a<=3&&a!=1) r=10+rand()%16;if(a4) r=rand()%75-20;if(a5) r=2+rand()%4;if(r!=-10086) Guai(a,r);} } void NorGuai(int a,int b){ if(a1) {if(b1||b41) Guai(0,15),Guai(0,17),Guai(0,19);if(b21||b61) Guai(0,21),Guai(0,23),Guai(0,25);if(b81) Guai(0,11),Guai(0,13),Guai(0,15),Guai(0,17),Guai(0,19);if(b101||b141) Guai(0,17),Guai(0,19),Guai(0,21),Guai(0,23),Guai(0,25);if(b121) Guai(0,15),Guai(0,17),Guai(0,19),Guai(0,21),Guai(0,23);if(b>=160&&b<=260&&b%100) Guai(0,b/10-1);if(b>=270&&b<=370&&b%100) Guai(0,52-b/10);if(b>=460&&b<=560&&b%100) Guai(0,b/10-37),Guai(0,b/10-36),Guai(0,b/10-35);if(b>=570&&b<=670&&b%100) Guai(0,78-b/10),Guai(0,77-b/10),Guai(0,76-b/10);if(b>=760&&b<=960&&b%100) Guai(0,b/10-66),Guai(0,b/10-65),Guai(0,103-b/10),Guai(0,104-b/10);if(b>=1000&&b<=1300) MesGuai(0,30-b/50);} if(a2) {if(b<=200&&b%301) {int r=rand()%4;if(r1) r=0;for(int i=0;i<4;i++) if(i!=r) Guai(1,i4+9);}if(b>200&&b<=220&&b%51) Guai(1,18);if(b>220&&b<=300&&b%71) Guai(1,b/5-26);if(b>350&&b<=370&&b%51) Guai(1,22);if(b>370&&b<=450&&b%71) Guai(1,96-b/5);if(b461||b501||b541) Guai(1,13),Guai(1,17),Guai(1,21);if(b481||b521||b561) Guai(1,17),Guai(1,21),Guai(1,25);if(b>=561&&b<=861&&b%201) Guai(1,b/40+5);if(b>=561&&b<=861&&b%2011) Guai(1,35-b/40);if(b>=801&&b<=961&&b%151) Guai(1,20);if(b>=1000&&b<=1300) MesGuai(1,30-b/50);} if(a3) {if(b1||b61) Guai(3,15),Guai(2,17),Guai(2,19);if(b31||b91) Guai(2,21),Guai(2,23),Guai(3,25);if(b>=120&&b<=220&&b%100) Guai(2,b/10+3);if(b>=240&&b<=340&&b%100) Guai(2,49-b/10);if(b>=360&&b<=460&&b%200) Guai(2,b/10-21),Guai(2,61-b/10);if(b>=480&&b<=580&&b%200) Guai(3,b/10-33),Guai(3,73-b/10);if(b>=600&&b<750&&b%300) {for(int i=0;i<5;i++) Guai(3,i*3+10);}if(b>=750&&b<830&&b%100) if(b<=200&&b%401) Guai(2,X);if(b>=830&&b<910&&b%200) Guai(2,X);if(b>=910&&b<980&&b%100) Guai(2,X);if(b>=1000&&b<=1300) MesGuai(rand()%2+2,40-b/50);} if(a4) {if(b1) CpGuai(4,10,29,-0.4,0.7),CpGuai(4,14,29,-0.2,0.7),CpGuai(4,21,29,0,0.65);if(b41) CpGuai(4,10,29,-0.2,0.7),CpGuai(4,14,29,-0.1,0.7),CpGuai(4,18,29,0,0.65);if(b81) CpGuai(4,5,20,-0.4,0.35),CpGuai(4,10,29,-0.4,0.7),CpGuai(4,14,29,-0.2,0.7),CpGuai(4,30,20,0.25,0.4),CpGuai(4,21,29,0,0.65);if(b121) CpGuai(4,5,20,-0.2,0.35),CpGuai(4,10,29,-0.2,0.7),CpGuai(4,14,29,-0.1,0.7),CpGuai(4,30,20,0.4,0.4),CpGuai(4,18,29,0,0.65);if(b161) CpGuai(4,10,29,-0.4,0.7),CpGuai(4,14,29,-0.2,0.7),CpGuai(4,21,29,0,0.6),CpGuai(4,10,29,-0.2,0.7),CpGuai(4,14,29,-0.1,0.7),CpGuai(4,18,29,0,0.65);if(b>=200&&b<=500&&b%401) {float r=0,rr;for(int i=1;i<=5;i++){X5:rr=0.7+(rand()%5)/10.0;if(rrr)goto X5;r=rr;CpGuai(4,i*3+7,29,0,0.5+(rand()%50)/80.0);}}if(b>540&&b<=565&&b%51) CpGuai(4,5,8,-2,0.2);if(b>590&&b<=615&&b%51) CpGuai(4,30,8,1.5,0.2);if(b>640&&b<=665&&b%51) CpGuai(4,5,8,-1.5,0.3);if(b>690&&b<=715&&b%51) CpGuai(4,30,8,2,0.3);if(b>=750&&b<=950&&b%201) {float r=0,rr;for(int i=1;i<=3;i++){X6:rr=0.7+(rand()%5)/10.0;if(rrr)goto X6;r=rr;CpGuai(4,i*5+7+(rand()%3),29,0,0.5+(rand()%50)/200.0);}}if(b>=1000&&b<=1300) MesGuai(4,5);} } void RandGood(){ if(Biao>0){Biao--;Guai(-1,0);} if(Gd[1]0){Gd[1]=rand()%1000+1;if(Win7)Gd[1]=10086;Gd[3]=rand()%16+8;} else if(Gd[1]<=5){Guai(-2-Gd[1],Gd[3]);memset(Gd,0,sizeof(Gd));} else if(Gd[1]>=20&&Gd[1]<27){Guai(-8,Gd[3]);memset(Gd,0,sizeof(Gd));} else if(Gd[1]>=30&&Gd[1]<37){Guai(-9,Gd[3]);memset(Gd,0,sizeof(Gd));} else if(Gd[1]>=40&&Gd[1]<70){Gd[2]++;if(Gd[2]%21)Guai(-10,Gd[3]);if(Gd[2]>=9)memset(Gd,0,sizeof(Gd));} else if(Gd[1]>=70&&Gd[1]<100){Gd[2]++;if(Gd[2]%21)Guai(-11,Gd[3]);if(Gd[2]>=9)memset(Gd,0,sizeof(Gd));} else if(Boss!=0&&Gd[1]>=450&&Gd[1]<=500){Guai(-2,Gd[3]);memset(Gd,0,sizeof(Gd));} else Gd[1]=0; for(int i=0;i<20;i++){if(I[i][0]-1) continue;Setpos(I[i][0],I[i][1]);Color(0);if(I[i][0]20) cout<<"=";else cout<<" ";I[i][1]++;if(I[i][0]>=28||I[i][0]<=0||I[i][1]>=29) I[i][0]=I[i][1]=-1;else Color(1),Setpos(I[i][0],I[i][1]),cout<<"■";Color(0);} } void Panboss(int bx,int by){ float Nox[4],Noy[4];Nox[0]=X,Noy[0]=Y; if(Down1&&X22) Nox[1]=X+1,Noy[1]=Y-0.5,Nox[2]=X-1,Noy[2]=Y-0.5; else if(Down2) Nox[1]=X+1,Noy[1]=Y-0.5,Nox[2]=-10,Noy[2]=-10; else if(Down1||X<18) Nox[1]=X-1,Noy[1]=Y-0.5,Nox[2]=-10,Noy[2]=-10; else Nox[1]=X+1,Noy[1]=Y-0.5,Nox[2]=X-1,Noy[2]=Y-0.5; for(int i=0;i<3;i++){if((Boss1||Boss6)&&Wind0&&Thun0&&abs(Nox[i]-bx)<1&&abs(Noy[i]-by)<1&&Bgo1[4]0) Blo-=20,Bgo1[4]=1,Killb=20,Kill=1;if((Boss2||Boss6)&&Wind0&&Thun0&&abs(Nox[i]-bx)<1&&abs(Noy[i]-by)<1&&Bgo2[8]0) Blo-=20,Bgo2[8]=1,Killb=20,Kill=1;} } void Boss1(){ for(int j=0;j<20;j++)if(abs(Bx1-I[j][0])<2&&By1-I[j][1]<=2){Setpos(I[j][0],I[j][1]);if(I[j][0]20) cout<<"=";else cout<<" ";I[j][0]=I[j][1]=-1;Bblo-=8+Lv*2;Exp+=2;} if(BbrBbl&&Bbr!=0) Bbr=Bbl=0; for(int i=1;i<=3+(Bbl-Bbr)/5;i++)if(Bbr<Bbl){Setpos(Bway[Bbr][0],Bway[Bbr][1]);if(Bway[Bbr][0]20) cout<<"";else cout<<" ";Bbr++;} if(Bwhat15){int bx,by;Color(5);for(int i=0;i<10;i++){bx=Bx1-iBvx1/10.0;by=By1-iBvy1/10.0;Setpos(bx,by),cout<<"█";Bbl++;Bway[Bbl][0]=bx;Bway[Bbl][1]=by;}Color(0);} Bx1-=Bvx1;By1-=Bvy1; if(Bwhat10){X2:Bwhat1=rand()%7;if(Bwhat12||Bwhat13){if(By1<=10||By1>25) goto X2;}if(Bwhat14){if(By1<=15||Bx1<20) goto X2;Bgo1[2]=Bx1;Bgo1[3]=By1-1;}if(Bwhat15) {X0:Bgo1[3]=rand()%4+1;Bvx1=(rand()%101)/20.0;Bvy1=(rand()%101)/20.0;if(Bgo1[3]<=2) Bvx1*=-1;if(Bgo1[3]%21) Bvy1*=-1;if(abs(Bvx1)+abs(Bvy1)<=3||Out1)goto X0;}if(Bwhat16){if(By1<=17||By1>25) goto X2;}} if(Bwhat11){Bgo1[1]++,Bgo1[2]++;int R=rand()%(5-Bgo1[1]),r=rand()%(10-Bgo1[2]);if(Out1) R=0;if(R0) {int vx=Bvx1,vy=Bvy1;Bgo1[1]=0;Bvx1=(rand()%101-20)/50.0;Bvy1=(rand()%101-20)/50.0;if(Bgo1[3]<=2) Bvx1*=-1;if(Bgo1[3]%21) Bvy1*=-1;if(Out1) r=0;} if(r0) Chang1 } if(Bwhat12){Bgo1[1]++;if(Bgo1[1]>6){Bvy1=-0.3;br++;B[br].x=Bx1,B[br].y=By1-1;B[br].what=6;X3:B[br].vx=(rand()%21-10)/40.0;B[br].vy=(rand()%25)/30.0;if(B[br].vx<=0.8&&B[br].vy<=0.8)goto X3;int rx=rand()%50;if(rx0) B[br].vx=0;B[br].life=1;}if(Bgo1[1]>8) Chang1} if(Bwhat13){Bgo1[1]++;if(Bgo1[1]>6&&Bgo1[1]%30){Bvy1=-0.3;br++;B[br].x=Bx1,B[br].y=By1-1;B[br].what=8;B[br].life=1;}if(Bgo1[1]>15) Chang1} if(Bwhat14){Bgo1[1]++;if(Bgo1[1]<=8){Setpos(Bgo1[2],Bgo1[3]);if(Bgo1[1]1)cout<<" ";else if(Bgo1[1]>1&&Bgo1[2]20) cout<<"";else cout<<" ";Bgo1[2]--;Setpos(Bgo1[2],Bgo1[3]);int r=rand()%4;if(r%20) Color(6);else Color(9);if(r<2) cout<<") ";else cout<<"】";Color(0);}if(Bgo1[1]6) Bgo1[5]=X,Bgo1[6]=Y;if(Bgo1[1]11){Map(0,(bool)Kill);Setpos(Bgo1[5],Bgo1[6]+1),cout<<" ";Setpos(Bgo1[5],Bgo1[6]-1),cout<<" ";Setpos(Bgo1[5]+1,Bgo1[6]),cout<<" ";Setpos(Bgo1[5]-1,Bgo1[6]),cout<<" ";int bx,by,bvx=Bgo1[2]-Bgo1[5],bvy=Bgo1[3]-Bgo1[6];Color(6);int i=0;while(1){bx=Bgo1[2]-ibvx/30.0;by=Bgo1[3]-ibvy/30.0;if(bx<=5||bx>=30||by<0||by>=29) break;Panboss(bx,by);Setpos(bx,by),cout<<"█";Bbl++;Bway[Bbl][0]=bx;Bway[Bbl][1]=by;i++;}Color(0);Map(-1,0);Chang1}} if(Bwhat15){Bgo1[1]++,Bgo1[2]++;int R=rand()%(5-Bgo1[1]),r=rand()%(10-Bgo1[2]);if(Out1) R=0;if(R0) {int vx=Bvx1,vy=Bvy1;Bgo1[1]=0;X1:Bvx1=(rand()%101-20)/20.0;Bvy1=(rand()%101-20)/20.0;if(Bgo1[3]<=2) Bvx1*=-1;if(Bgo1[3]%21) Bvy1*=-1;if(abs(Bvx1)+abs(Bvy1)<=3||abs(Bvx1-vx)<=1||abs(Bvy1-vy)<=1)goto X1;if(Out1) r=0;} if(r0) Chang1 } if(Bwhat16){Bgo1[1]++;if(Bgo1[1]>6&&Bgo1[1]%100){By1-=1;br++;B[br].x=Bx1,B[br].y=By1-1;B[br].what=9;X30:B[br].vy=1;B[br].life=1;}if(Bgo1[1]>31) Chang1} } void Boss2(){ for(int j=0;j<20;j++)if(abs(Bx2-I[j][0])<2&&By2-I[j][1]<=2){Setpos(I[j][0],I[j][1]);if(I[j][0]20) cout<<"=";else cout<<" ";I[j][0]=I[j][1]=-1;Bblo-=8+Lv2;Exp+=2;} if(BbrBbl&&Bbr!=0) Bbr=Bbl=0; for(int i=1;i<=3+(Bbl-Bbr)/5;i++)if(Bbr<Bbl){Setpos(Bway[Bbr][0],Bway[Bbr][1]);if(Bway[Bbr][0]20) cout<<"";else cout<<" ";Bbr++;} Bx2-=Bvx2;By2-=Bvy2; if(Bwhat20){X21:Bwhat2=rand()%7;if(Bwhat2==2){X31:for(int i=1;i<=3;i++){Bgo2[i2+1]=rand()%28+1,Bgo2[i2]=rand()%25+5;if((abs(Bgo2[i2]-Bx2)<=2&&abs(Bgo2[i2+1]-By2)<=2)||(abs(Bgo2[i2]-X)<=2&&abs(Bgo2[i2+1]-Y)<=2))goto X31;}if(Bgo2[2]Bgo2[4]||Bgo2[2]Bgo2[6]||Bgo2[6]Bgo2[4]||Bgo2[5]Bgo2[3]||Bgo2[3]Bgo2[7]||Bgo2[5]Bgo2[7]) goto X31;}if(Bwhat23){Bgo2[2]=rand()%2;}if(Bwhat24||Bwhat25||Bwhat26){Bvy2=-1.5;Bvx2=-0.5;}} if(Bwhat21){Bgo2[1]++,Bgo2[2]++;int R=rand()%(5-Bgo2[1]),r=rand()%(30-Bgo2[2]);if(Out2) R=0;if(R0) {int vx=Bvx2,vy=Bvy2;Bgo2[1]=0;Bvx2=(rand()%101-20)/50.0;Bvy2=(rand()%101-20)/50.0;if(Bgo2[3]<=2) Bvx2=-1;if(Bgo2[3]%21) Bvy2*=-1;if(Out2) r=0;} if(r0) Chang2 } if(Bwhat22){Bgo2[1]++;float bx,by,bvx,bvy;if(Bgo2[1]<21){for(int i=1;i<=3;i++){bvx=Bgo2[i2]-Bx2,bvy=Bgo2[i2+1]-By2;if(Bgo2[1]<=10){Setpos(Bx2+(Bgo2[1]-1)*bvx/10.0,By2+(Bgo2[1]-1)*bvy/10.0);if(abs(Bx2+(Bgo2[1]-1)*bvx/10.0-20)<0.5)cout<<"";else cout<<" ";bx=Bx2+Bgo2[1]bvx/10.0;by=By2+Bgo2[1]bvy/10.0;Setpos(bx,by);}else Setpos(Bgo2[i2],Bgo2[i2+1]);int r=rand()%4;if(r%20) Color(3);else Color(10);if(r<=1) cout<<"×";else cout<<"+";Color(0);}}if(Bgo2[1]21){Map(0,(bool)Kill);Color(3);int j=0;for(int j=0;j<=30;j++)for(int i=1;i<=3;i++)for(int k=1;k<=4;k++){if(k1) bvx=j,bvy=0;if(k2) bvx=-j,bvy=0;if(k3) bvx=0,bvy=j;if(k4) bvx=0,bvy=-j;bx=Bgo2[i2]+bvx,by=Bgo2[i2+1]+bvy;if(bx<=5||bx>=30||by<0||by>=30) {continue;}Panboss(bx,by);Setpos(bx,by),cout<<"█";Bbl++;Bway[Bbl][0]=bx;Bway[Bbl][1]=by;}Color(0);Map(-1,0);Chang2}} if(Bwhat23){Bgo2[1]++;if(Bgo2[1]<=18){if(Bgo2[3]0) Setpos(Bgo2[4]-3,Bgo2[5]),cout<<" ",Setpos(Bgo2[4]+3,Bgo2[5]),cout<<" ",Color(0),Setpos(20,Bgo2[5]),cout<<"";if(Bgo2[3]1) Setpos(Bgo2[4],Bgo2[5]-3.5),cout<<" ",Setpos(Bgo2[4],Bgo2[5]+2.5),cout<<" ",Color(0),Setpos(20,Bgo2[5]+2.5),cout<<"",Setpos(20,Bgo2[5]-3.5),cout<<"";if(Bgo2[1]%40)Bgo2[3]=!Bgo2[3];if(Bgo2[1]%6<3)Color(3);else Color(5);if(Bgo2[3]0) Setpos(X-3,Y),cout<<"▼",Setpos(X+3,Y),cout<<"▲",Bgo2[4]=(int)(X+0.5),Bgo2[5]=(int)(Y+0.5);if(Bgo2[3]1) Setpos(X,Y-3),cout<<" ",Setpos(X,Y+3),cout<<" ",Bgo2[4]=(int)(X+0.5),Bgo2[5]=(int)(Y+0.5);Color(0);}if(Bgo2[1]18){if(Bgo2[3]0) Setpos(Bgo2[4]-3,Bgo2[5]),cout<<" ",Setpos(Bgo2[4]+3,Bgo2[5]),cout<<" ",Color(0),Setpos(20,Bgo2[5]),cout<<"";if(Bgo2[3]1) Setpos(Bgo2[4],Bgo2[5]-3.5),cout<<" ",Setpos(Bgo2[4],Bgo2[5]+2.5),cout<<" ",Color(0),Setpos(20,Bgo2[5]+2.5),cout<<"",Setpos(20,Bgo2[5]-3.5),cout<<"";}if(Bgo2[1]>18&&Bgo2[1]<=25){Bgo2[3]=Bgo2[2];if(Bgo2[3]0) Setpos(Bgo2[4]-3,Bgo2[5]),cout<<" ",Setpos(Bgo2[4]+3,Bgo2[5]),cout<<" ",Color(0),Setpos(20,Bgo2[5]),cout<<"";if(Bgo2[3]1) Setpos(Bgo2[4],Bgo2[5]-3.5),cout<<" ",Setpos(Bgo2[4],Bgo2[5]+2.5),cout<<" ",Color(0),Setpos(20,Bgo2[5]+2.5),cout<<"",Setpos(20,Bgo2[5]-3.5),cout<<"";if(Bgo2[1]%4<2)Color(3);else Color(5);if(Bgo2[3]0) Setpos(Bgo2[4]-3,Bgo2[5]),cout<<"▼",Setpos(Bgo2[4]+3,Bgo2[5]),cout<<"▲";if(Bgo2[3]1) Setpos(Bgo2[4],Bgo2[5]-3),cout<<" ",Setpos(Bgo2[4],Bgo2[5]+3),cout<<" ";Color(0);}if(Bgo2[1]25){if(Bgo2[2]0){Color(3);for(int i=4;i<=29;i++){Setpos(i,Bgo2[5]),cout<<"█";Bbl++;Panboss(i,Bgo2[5]);Bway[Bbl][0]=i;Bway[Bbl][1]=Bgo2[5];}}if(Bgo2[2]1){Color(3);for(int i=0;i<=28;i++){Setpos(Bgo2[4],i),cout<<"█";Bbl++;Panboss(Bgo2[4],i);Bway[Bbl][0]=Bgo2[4];Bway[Bbl][1]=i;}}Chang2}} if(Bwhat24||Bwhat25||Bwhat26){Bgo2[1]++;if(By2>27)Bvy2=0;if(Bx2>23)Bvx2=0;if(Bgo2[1]>13&&Bgo2[1]%30){float t=By2-Y,g=0.35;if(Boss6) t/=2.0;CpGuai(Bwhat2+2,Bx2,By2,(Bx2-X)/t*1.0+(t-1)g/2.0,1);}if(Bgo2[1]>20) Chang2} } void Boss3(){ #define Bean br++;B[br].what=13;B[br].x=Bx3-1,B[br].y=By3-1;B[br].vy=1;B[br].life=1; for(int j=0;j<20;j++)if(abs(Bx3-I[j][0])<2&&By3-I[j][1]<=2){Setpos(I[j][0],I[j][1]);if(I[j][0]20) cout<<"=";else cout<<" ";I[j][0]=I[j][1]=-1;Bblo-=8+Lv2;Exp+=2;} Bx3-=Bvx3;By3-=Bvy3; if(Bwhat3<=8){if(Bx3>X&&Bvx3<1.5) Bvx3+=0.3;if(Bx3<X&&Bvx3>-1.5) Bvx3-=0.3;} if(Bwhat30){X22:Bwhat3=rand()%12;if(Bwhat311&&abs(Bx3-20)<=1)goto X22;if(Bwhat311)Bgo3[2]=rand()%5;} if(Bwhat31){Bgo3[1]++;if(Bgo3[1]6){br++;B[br].what=13;B[br].x=(int)Bx3-1,B[br].y=By3-1;B[br].vy=1;B[br].vx=1;B[br].How=(int)Bx3-4;B[br].life=1;br++;B[br].what=13;B[br].x=(int)Bx3-1,B[br].y=By3-1;B[br].vy=1;B[br].vx=-1;B[br].How=(int)Bx3+2;B[br].life=1;br++;B[br].what=13;B[br].x=(int)Bx3-1,B[br].y=By3-1;B[br].vy=1;B[br].life=1;Chang3}} if(Bwhat3>=2&&Bwhat3<=6){Bgo3[1]++;if(Bgo3[1]6){br++;B[br].x=(int)Bx3-1,B[br].y=By3-1;B[br].what=11+Bwhat3;B[br].vy=0.5+(rand()%100)/80.0;if(Bwhat35)B[br].vy=B[br].vy*3/4.0;B[br].life=1;Chang3}} if(Bwhat37){Bgo3[1]++;if(Bgo3[1]6){br++;B[br].what=14;B[br].x=(int)Bx3-1,B[br].y=By3-1;B[br].vy=1;B[br].vx=1;B[br].How=(int)Bx3-4;B[br].life=1;br++;B[br].what=14;B[br].x=(int)Bx3-1,B[br].y=By3-1;B[br].vy=1;B[br].vx=-1;B[br].How=(int)Bx3+2;B[br].life=1;br++;B[br].what=14;B[br].x=(int)Bx3-1,B[br].y=By3-1;B[br].vy=1;B[br].life=1;Chang3}} if(Bwhat38){Bgo3[1]++;if(Bgo3[1]6){br++;B[br].what=15;B[br].x=(int)Bx3-1,B[br].y=By3-1;B[br].vy=1;B[br].vx=1;B[br].How=(int)Bx3-4;B[br].life=1;br++;B[br].what=15;B[br].x=(int)Bx3-1,B[br].y=By3-1;B[br].vy=1;B[br].vx=-1;B[br].How=(int)Bx3+2;B[br].life=1;br++;B[br].what=15;B[br].x=(int)Bx3-1,B[br].y=By3-1;B[br].vy=1;B[br].life=1;Chang3}} if(Bwhat39){Bvx3=0;Bgo3[1]++;if(Bgo3[1]6||Bgo3[1]8){Bean}if(Bgo3[1]>=8)Chang3} if(Bwhat310){Bvx3=0;Bgo3[1]++;if(Bgo3[1]6||Bgo3[1]8||Bgo3[1]10||Bgo3[1]12){Bean}if(Bgo3[1]>=12)Chang3} if(Bwhat311){Bvx3=0;Bgo3[1]++;if(Bgo3[1]>=8)for(int i=1;i<=4;i++){br++;B[br].what=80+100*Bgo3[2]+Bgo3[1]*4+i;B[br].x=Bx3-1,B[br].y=By3-1+i;B[br].vy=4;B[br].life=1;br++;B[br].what=99;B[br].x=Bx3,B[br].y=By3-1+i;B[br].vy=4;B[br].life=1;br++;B[br].what=99;B[br].x=Bx3-2,B[br].y=By3-1+i;B[br].vy=4;B[br].life=1;}if(Bgo3[1]>=20){for(int i=1;i<=4;i++){br++;B[br].what=98;B[br].x=Bx3-1,B[br].y=By3-1+i;B[br].vy=4;B[br].life=1;br++;B[br].what=98;B[br].x=Bx3,B[br].y=By3-1+i;B[br].vy=4;B[br].life=1;br++;B[br].what=98;B[br].x=Bx3-2,B[br].y=By3-1+i;B[br].vy=4;B[br].life=1;}Chang3}} } void Ball(int ball){ if(ball1){if(Fir<3&&T%80) Fir++;if(Fir>0){br++;B[br].what=-13;B[br].x=X;B[br].y=Y+rand()%3-1;B[br].life=1;if(Dis<=30) B[br].a=Disb,B[Disb].a=1,Fir--;else if(Boss!=0) B[br].a=13880086,Fir--;else if(Dis!=13880087) B[br].a=Disb,B[Disb].a=1,Fir--;else if(Dis1!=13880087) B[br].a=Disb1,B[Disb1].a=1,Fir--;else B[br].life=0;Dis=Dis1=13880087;}} if(ball2){if(T%40)ib=(ib+1)%20,I[ib][1]=Y-2;if(T%160)I[ib][0]=X;if(T%164)I[ib][0]=X-1;if(T%168)I[ib][0]=X+1;if(T%1612)I[ib][0]=X-2;if(T%129)I[ib][0]=X+2;if(Water1){for(int i=X-6;i<=X+6;i++)ib=(ib+1)%20,I[ib][0]=i,I[ib][1]=Y-2-0.5abs(i-X);}} if(ball3){if(Wind>5){if(Y<Ding-1)Vy=5;else Vy=0;if(Up>=1) Vx=-5;if(Down2) Vx=5;}if(Wind<5){if(Y>Ding-1)Vy=-5;else Vy=0;if(Up>=1) Vx=-5;if(Down2) Vx=5;}if(Wind5){if(Boss==2) Ding=12.25;else Ding=6.25;if(Boss!=0) Bblo-=16+Lv4;if(Boss1) Chang1 if(Boss2) Chang2 if(Boss3) Chang3 system("color 3F");Sleep(20);system("color 6F");Sleep(10);system("color 0F");system("cls");for(int i=bl;i<=br;i++)if(B[i].what>0)B[i].life=0;Setpos(20,0);for(int i=1;i<=60;i++) printf("=");}} if(ball4){if(Thun1){if(Boss!=0) Bblo-=16+Lv*4;if(Boss1) Chang1 if(Boss2) Chang2 if(Boss3) Chang3 system("color 9F");Sleep(20);system("color 6F");Sleep(10);system("color 0F");system("cls");for(int i=bl;i<=br;i++)if(B[i].what>0)B[i].life=0;Setpos(20,0);for(int i=1;i<=60;i++) printf("=");}} if(ball5){system("cls"); Color(5);Setpos(10,10);cout<<"新天赋!";Y:int rr=rand()%4+2;Setpos(12,10);if(rrRen) goto Y;if(rr2)cout<<"瞬跳";if(rr3)cout<<"空之舞";if(rr4)cout<<"三段跳";if(rr5)cout<<"反重力跳跃";Setpos(14,10);cout<<"当前天赋:";if(Ren1)cout<<"小无敌";if(Ren2)cout<<"瞬跳";if(Ren3)cout<<"空之舞";if(Ren4)cout<<"三段跳";if(Ren5)cout<<"反重力跳跃";Setpos(16,10);cout<<"换否?(y/n)";G:char g=_getch();if(g'y')Ren=rr;else if(g!='n')goto G;system("cls");Setpos(20,0);Color(0);for(int i=1;i<=60;i++) printf("=");} if(ball6){Color(4);for(float i=1;i<=Bblo;i+=Bblomax/20.0)cout<<"▄";Color(0);cout<<' '<<Bblo<<" ";Color(0);} if(ball7){Color(1);if(Win7&&T%6<3)Color(3);for(float i=1;i<=Blo;i+=Blomax/20.0)cout<<"▄";Color(0);if(Win7&&T%6<3)Color(3);printf(" %0.1f ",Blo);} } int main(){ system("mode con cols=60 lines=37");CONSOLE_CURSOR_INFO cursor_info={1,0};SetConsoleCursorInfo(GetStdHandle(STD_OUTPUT_HANDLE),&cursor_info);srand((unsigned)time(NULL)); Win=0;Ren=1;Lv=1;Blo=Blomax=100;Expmax=300;Hui=15;X=18,Y=6; ReStart:system("cls");memset(B,0,sizeof(B));memset(I,-1,sizeof(I));T=0;bl=0;br=-1;Upt=0; Start:Blo=Blomax * 100;Ding=6.25; memset(Bgo1,0,sizeof(Bgo1));memset(Bgo2,0,sizeof(Bgo2));memset(Bgo3,0,sizeof(Bgo3)); if(Win%20) T=0;if(Win%20&&D0){if(Win>0)Ball(5);Boss=0;lL:L=rand()%4+1;for(int i=0;i<=Win/2-1;i++)if(LLl[i]) goto lL;Ll[Win/2]=L;}if(Win%21&&D0){if(Win7)Boss=6,T=0,Blomax+=100;else{bl:Boss=rand()%3+1;for(int i=0;i<=3;i++)if(BossBl[i]) goto bl;}Bl[Win/2]=Boss;Bwhat1=Bwhat2=Bwhat3=0,Bx1=10,By1=20,Bx2=15,By2=20,Bx3=21,By3=20;system("color 4C");Sleep(20);system("color 0F");Map(0,1);Sleep(1000);}if(Win%21){Bblomax=500+(Win/2)*500;Bblo=Bblomax;if(Boss2) Ding=12.25;} while(1){ T++; if(Wind0){if(GetAsyncKeyState(VK_LEFT)&0x8000) Vy=-(10-abs(Ding-Y)*1.5)/20.0;if(GetAsyncKeyState(VK_RIGHT)&0x8000) Vy=(10-abs(Ding-Y)*1.5)/20.0;}if(GetAsyncKeyState(VK_UP)&0x8000&&u10) {u1++;if(Down1){Down=0;Up=0;if(Ren2)Map(-1,0),Vx=0,X=18,Li=5;else Vx=7,Vy=0.3;}else if(Up0&&Wind0) {Down=0;Up=1;if(Ren2)Map(-1,0),Vx=1,X=10,Map(0,3),Li=5;else Vx=2,Vy=0.1;}else if(Up1&&Wind0) {Down=0;Up=2;if(Ren2)Map(-1,0),Vx=1,X-=6,Map(0,3),Li=5;else Vx=1.5,Vy=0.1;}else if(Ren3&&Up2&&Wind0) {Down=0;Up=3;Vx=1;Vy=0.5;Upt=30;}else if(Ren4&&Up2&&Wind0) {Down=0;Up=3;Vx=1.8;Vy=0.1;}}if(GetAsyncKeyState(VK_DOWN)&0x8000&&u20) {u2++;if(Down1&&Ren5){Down=2;Up=0;Vx=-1.7;}else {Down=1;Up=0;if(Ren2)Map(-1,0),Vx=0,X=22,Map(0,3),Li=5;else {if(Upt!=0) Map(-1,0),Upt=0;Vx=-7;}}}if((GetAsyncKeyState(VK_UP)&0x8000) ?0:1) u1=0;if((GetAsyncKeyState(VK_DOWN)&0x8000) ?0:1) u2=0;if(kbhit()){char g=_getch();if(g==' ') Sleep(100),Setpos(4,1),Sy++,system("pause");}if(Sy1) Setpos(4,1),printf(" "),Sy--; if(Drug0) Blo=fmin((float)Blomax,Blo+Hui/100.0);else if(T%100)Blo--;if(T%200) {if(Kill!=0) Kill=0;if(Lvl!=0) Lvl=0;}if(Killb>0) Killb--;if(Li>0) Li--;if(Ice>0) Ice--;if(Drug>0) Drug--;if(Magne>0) Magne--; if(Fire>0) Ball(1),Fire--;if(Water>0) Ball(2),Water--;if(Wind>0) Ball(3),Wind--;if(Thun>0) Ball(4),Thun--; if(Boss0) NorGuai(L,T%1500);RandGood();if(T%201)Exp++; if(T%501){Exp++;system("cls");Setpos(20,0);Color(0);for(int i=1;i<=60;i++) printf("=");if(Win0&&T<300){Setpos(4,6);cout<<"↑/↓ 跳跃/下翻,←→ 些微移动(松手即返回)"; Setpos(8,6);cout<<"球可以开启特殊效果,经验积满(300)可提升级别。";Setpos(8,6);cout<<"打败 7 波即胜利,打败 BOSS 有新天赋。";Setpos(10,15);cout<<"空格可以暂停。";}} Map(-1,0); if(Boss1) Boss1();if(Boss2) Boss2();if(Boss3) Boss3();if(Boss6) Boss1(),Boss2(),Boss3(); Move();Map(0,(bool)Kill);Color(0); Setpos(1,1);Blo=fmin(Blo,(float)Blomax);if(Boss0)cout<<"血量: "<<(int)Blo<<" ";Color(0);Setpos(1,9),cout<<"死亡次数: "<<D<<" ";Setpos(2,1);Exp=min(Exp,Expmax);if(Exp>=Expmax)Exp=0,Lv++,Lvl++,Hui++,Blomax+=5;if(Lvl>0)Color(5);cout<<"级别: "<<Lv;Color(0);Setpos(2,9);cout<<"经验: "<<Exp<<" ";if(Boss>0) Setpos(3,1),cout<<"血量 : ",Ball(7);if(Boss>0&&Boss!=6) Setpos(4,1),cout<<"怪物血量: ",Ball(6);if(Boss6) Setpos(1,9),printf("时间: %0.1f s ",T/15.0); if(Win0) Sleep(55);if(Win1) Sleep(50);if(Win2) Sleep(35);if(Win3) Sleep(40);if(Win4) Sleep(25);if(Win5) Sleep(30);if(Win6) Sleep(20);if(Win>=7) Sleep(17); if(Boss3&&Bblo<=0){for(int i=1;i<=4;i++){br++;B[br].what=98;B[br].x=Bx3-1,B[br].y=By3-1+i;B[br].vy=4;B[br].life=1;br++;B[br].what=98;B[br].x=Bx3,B[br].y=By3-1+i;B[br].vy=4;B[br].life=1;br++;B[br].what=98;B[br].x=Bx3-2,B[br].y=By3-1+i;B[br].vy=4;B[br].life=1;}} if((Win%20&&T>=1400)||(Win%21&&Bblo<=0)||(Win7&&T>=450)||Blo<=0) {Map(-1,0);break;} } if(Blo<=0){ Sleep(1000); D++; system("color 7F"); Setpos(15,11); Color(4); cout<<"GAME OVER..."; Sleep(2000); goto ReStart; } else if(Win6){ system("color 7F"); Setpos(15,11); Color(4); cout<<"坚持30秒 !"; Sleep(2000); Setpos(30,0); Win++; D=0; } else if(Win==7){ Sleep(1000); system("color 6E"); Setpos(15,11); Color(5); cout<<"YOU WIN !"; Sleep(2000); Setpos(30,0); return 0; } else Sleep(1000),Win++,D=0; goto Start; }
绝地狂态(原版):
#include<bits/stdc++.h> #include<windows.h> #include<stdio.h> #include<conio.h> #include<time.h> #define KEY_DOWN(VK_NONAME)((GetAsyncKeyState(VK_NONAME)&0x8000)?1:0) using namespace std; int m[10001][21]; struct node {int xx,yy,Zhong,rr,mr;} B[100001]; int K,X,Y,tX,tY,tY2,tT,Er,T,Yb,Zb,Win,Blood,Score,Kb; void Color(int a) { if(a0) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED|FOREGROUND_GREEN|FOREGROUND_BLUE); if(a1) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_GREEN|FOREGROUND_BLUE); if(a2) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_GREEN); if(a3) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED|FOREGROUND_BLUE); if(a4) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED); if(a5) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED|FOREGROUND_GREEN); if(a6) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_BLUE); if(a7) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_RED|FOREGROUND_GREEN); if(a8) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_RED|FOREGROUND_GREEN|FOREGROUND_BLUE); if(a9) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_RED|FOREGROUND_GREEN|BACKGROUND_INTENSITY|BACKGROUND_RED); if(a10) SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|FOREGROUND_GREEN|FOREGROUND_BLUE|BACKGROUND_INTENSITY|BACKGROUND_BLUE); } void SetPos(int x,int y) { COORD pos; pos.X=y*2-1,pos.Y=x+1; SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE),pos); } void Zha(int x,int y) { Zb++; int k1=rand()%2+2,k2=rand()%3+2,r=rand()%6; if(r0) B[Zb].xx=x-K,B[Zb].yy=y,B[Zb].Zhong=1,B[Zb].rr=0,B[Zb].mr=k12; if(r1) B[Zb].xx=x-K,B[Zb].yy=y,B[Zb].Zhong=2; if(r2) B[Zb].xx=x-K,B[Zb].yy=y,B[Zb].Zhong=3,B[Zb].rr=k2,B[Zb].mr=k1; if(r3) B[Zb].xx=x-K,B[Zb].yy=y,B[Zb].Zhong=4; if(r4) B[Zb].xx=x-K,B[Zb].yy=y,B[Zb].Zhong=5,B[Zb].rr=1,B[Zb].mr=k22; if(r5) B[Zb].xx=x-K,B[Zb].yy=y,B[Zb].Zhong=rand()%2+6,B[Zb].rr=k1+1,B[Zb].mr=k2+3; } void Cout(int i,int j,int a) { int R=rand()%500,jk=0; if(i-K>=0&&i-K<=1&&j>=2&&j<=6) return; if(a!=4) { if(m[i][j]0&&(a0||a3)) SetPos(i-K,j),Color(7),cout<<"■"; if(m[i][j]1&&a5) SetPos(i-K,j),Color(0),cout<<" ";//空气 if(m[i][j]==2) SetPos(i-K,j),Color(8),cout<<"■"; if(m[i][j]>=3&&m[i][j]<6) SetPos(i-K,j),Color(5),cout<<"█",m[i][j]++; if(m[i][j]==6&&a!=5) SetPos(i-K,j),cout<<" ",m[i][j]=1; if(m[i][j]==7) SetPos(i-K,j),Color(9),cout<<"~ "; if(m[i][j]==8) SetPos(i-K,j),Color(10),cout<<"~ "; if(m[i][j]==9) SetPos(i-K,j),Color(3),cout<<"◆"; if((m[i][j]==1||m[i][j]8)&&m[i-1][j]>=10&&m[i-1][j]<=30&&a!=5) {int M=m[i][j];m[i][j]=m[i-1][j],m[i-1][j]=M;if(M1) SetPos(i-K-1,j),cout<<" ";}//炸弹下落 if(m[i][j]==1&&m[i-1][j]9&&a!=5) {m[i][j]=9,m[i-1][j]=1,SetPos(i-K-1,j),Color(0),cout<<" ";jk=1;}//宝石下落 if(m[i][j]>=10&&m[i][j]<=30) {m[i][j]++;if(m[i][j]%30) Color(4);else Color(5);SetPos(i-K,j),cout<<"●";}//炸弹计时 if(m[i][j]==1&&m[i-1][j]==7&&a!=5) {m[i][j]=7,m[i-1][j]=1,SetPos(i-K-1,j),Color(0),cout<<" ";jk=1;}//岩浆下落 if(m[i][j]==0&&m[i-1][j]==7&&R<=2) m[i][j]=m[i-1][j],m[i-1][j]=1,SetPos(i-K-1,j),cout<<" ";//岩浆融解 if(m[i][j]==7&&R>2&&R<=5) {int r=rand()%3-1; if(m[i][j+r]==1) m[i][j+r]=m[i][j];if(m[i][j+r]==8) m[i][j+r]=2;}//岩浆扩散
if(R<50&&R>=20&&m[i+1][j+1]==1&&m[i+1][j]==8&&m[i][j]==8) m[i+1][j+1]=8,m[i][j]=1,SetPos(i-K,j),Color(0),cout<<" "; if(R<80&&R>=50&&m[i+1][j-1]==1&&m[i+1][j]==8&&m[i][j]==8) m[i+1][j-1]=8,m[i][j]=1,SetPos(i-K,j),Color(0),cout<<" ";//岩浆平面 if(m[i][j]==1&&m[i-1][j]==8&&a!=5) {m[i][j]=8,m[i-1][j]=1,SetPos(i-K-1,j),Color(0),cout<<" ";jk=1;}//水下落 if(m[i+1][j+1]==1&&m[i+1][j]==8&&m[i][j]==8) m[i+1][j+1]=8,m[i][j]=1,SetPos(i-K,j),Color(0),cout<<" "; if(m[i+1][j-1]==1&&m[i+1][j]==8&&m[i][j]==8) m[i+1][j-1]=8,m[i][j]=1,SetPos(i-K,j),Color(0),cout<<" ";//水平面 if((m[i+1][j]==8&&m[i][j]==7)||(m[i+1][j]==7&&m[i][j]==8)) m[i][j]=2,m[i-1][j]=1,SetPos(i-K-1,j),Color(0),cout<<" ";//变石头 if(m[i][j]==0&&m[i-1][j]==8&&R>5&&R<=7) m[i][j]=m[i-1][j],m[i-1][j]=1,SetPos(i-K-1,j),cout<<" ";//水融解 if(m[i][j]==8&&R>7&&R<=9) {int r=rand()%3-1; if(m[i][j+r]==1) m[i][j+r]=m[i][j];if(m[i][j+r]==7) m[i][j+r]=2;}//水扩散
if(m[i][j]==31) SetPos(i-K,j),cout<<" ",Zha(i,j); } else if(a!=5)//界外 { if(m[i][j]>=3&&m[i][j]<6) m[i][j]++; if(m[i][j]==6) m[i][j]=1; if((m[i][j]==1||(m[i][j]>=3&&m[i][j]<=6))&&m[i-1][j]>=10&&m[i-1][j]<=30) m[i][j]=m[i-1][j],m[i-1][j]=1;//炸弹下落 if(m[i][j]>=10&&m[i][j]<=30) m[i][j]++;//炸弹计时 if(m[i][j]==1&&m[i-1][j]==9) m[i][j]=9,m[i-1][j]=1;//宝石下落 if(m[i][j]==1&&m[i-1][j]==7) m[i][j]=7,m[i-1][j]=1;//岩浆下落 if(m[i][j]1&&m[i-1][j]8) m[i][j]=8,m[i-1][j]=1;//水下落 }if(jk1) jk=0,Cout(i,j,5); Color(0); } void Map(int a); void Wo() { SetPos(X-K,Y),cout<<" "; //清除上一次残影 if(m[X][Y]9) Blood++,Score+=5,m[X][Y]=1,system("color 2F"),Sleep(50),system("color 0F"),Map(3); if(tX!=0&&(m[X-1][Y]1||m[X-1][Y]7||m[X-1][Y]8||m[X-1][Y]9||(m[X-1][Y]>=3&&m[X-1][Y]<=6))) tX--,X-=2; //上跳 if(m[X+1][Y]1||(m[X+1][Y]>=3&&m[X+1][Y]<=6)||m[X+1][Y]7||m[X+1][Y]8||m[X+1][Y]9) X++; //掉落 if(m[X+1][Y]0||m[X+1][Y]2||(m[X+1][Y]>=3&&m[X+1][Y]<=6)) tX=Er=0; //跳跃次数清零 if(m[X-1][Y]0||m[X-1][Y]2||(m[X-1][Y]>=10&&m[X-1][Y]<=31)) tX=Er=0; //跳跃次数清零 if(X<=K) tX=Er=0,X=K; if(X>=K+28) X=K+28,Kb=1; //高度上下限 if(m[X][Y]7) m[X-1][Y]=m[X-2][Y]=1,tX+=8; if(m[X][Y]!=1&&m[X][Y]!=8&&m[X][Y]!=9) Blood--,m[X][Y]=1,system("color 4F"),Sleep(50),system("color 0F"),Map(3); if(Blood<=0) Win=-1; SetPos(X-K,Y),Color(1),cout<<"●"; } void Map(int a) { SetPos(0,2);cout<<"Blood: "<<Blood<<" "; SetPos(1,2);cout<<"Score: "<<Score<<" "; if(a3) system("cls"); for(int i=K+28;i>=K;i--)for(int j=1;j<=20;j++) Cout(i,j,a); for(int i=K+33;i>K+28;i--)for(int j=1;j<=20;j++) Cout(i,j,4); if(a!=3) Wo(); } void CircleBomb(int x,int y,int s,int ms) { if(sms) return; for(int i=x-s;i<=x+s;i++) for(int j=y-s;j<=y+s;j++) { float k=(i-x)(i-x)+(j-y)(j-y)-ss; if(k<=s&&k>=-s&&j>0&&j<=20&&m[i+K][j]!=2&&m[i+K][j]!=9) m[i+K][j]=3; }Zb++; B[Zb].xx=x,B[Zb].yy=y,B[Zb].Zhong=1,B[Zb].rr=s+1,B[Zb].mr=ms; Sleep(30); } void LineBomb(int i,int j) { for(int k=0;j+k<=20;k++) if(m[i+K][j+k]!=2&&m[i+K][j+k]!=9) m[i+K][j+k]=3; for(int k=0;j+k<=20;k++) if(m[i+K+1][j+k]!=2&&m[i+K+1][j+k]!=9) m[i+K+1][j+k]=3; for(int k=0;j-k>0;k++) if(m[i+K][j-k]!=2&&m[i+K][j-k]!=9) m[i+K][j-k]=3; for(int k=0;j-k>0;k++) if(m[i+K+1][j-k]!=2&&m[i+K+1][j-k]!=9) m[i+K+1][j-k]=3; } void ZuanBomb(int i,int j) { int k; for(k=0;m[i+K+k][j]!=2&&k<=7;k++) if(m[i+K+k][j]!=9) m[i+K+k][j]=3; int k1=rand()%2+2;Zb++; B[Zb].xx=i+k,B[Zb].yy=j,B[Zb].Zhong=1,B[Zb].rr=0,B[Zb].mr=k13/2; } void TrigleBomb(int i,int j,int r,int mr) { if(rmr) return; if(r1) m[i+K][j]=3,i++; for(int k=max(0,j-r);k<=min(20,j+r);k++) if(m[i+K][k]!=2&&m[i+K][k]!=9) m[i+K][k]=3; Zb++;B[Zb].xx=i+1,B[Zb].yy=j,B[Zb].Zhong=5,B[Zb].rr=r+1,B[Zb].mr=mr; } void GunBomb(int i,int j,int r,int mr) { if(mr<=0) return;Zb++; B[Zb].xx=i,B[Zb].yy=j+2,B[Zb].Zhong=6,B[Zb].rr=r,B[Zb].mr=mr-1;Zb++; B[Zb].xx=i,B[Zb].yy=j,B[Zb].Zhong=1,B[Zb].rr=r-1,B[Zb].mr=r; } void GunBomb2(int i,int j,int r,int mr) { if(mr<=0) return;Zb++; B[Zb].xx=i,B[Zb].yy=j-2,B[Zb].Zhong=7,B[Zb].rr=r,B[Zb].mr=mr-1;Zb++; B[Zb].xx=i,B[Zb].yy=j,B[Zb].Zhong=1,B[Zb].rr=r-1,B[Zb].mr=r; } void ThreeBomb(int x,int y,int s,int ms) { for(int i=1;i<=3;i++) { int Xx=rand()%(2s+1)-s,Yy=rand()%(2s+1)-s; Zb++; B[Zb].xx=Xx+x,B[Zb].yy=Yy+y,B[Zb].Zhong=1,B[Zb].rr=0,B[Zb].mr=ms+rand()%3-1; } } void Sheng(int a) { K++; for(int i=1;i<=20;i++) { int R=rand()%max(80-(K/10),30);int Rr=rand()%200; if(R<=3) m[K+28][i]=2; else if(R<=6) m[K+28][i]=7; else if(R<=9) m[K+28][i]=8; if(Rr0) m[K+28][i]=9; } if(a!=1) system("cls"),Map(0); } void Jiao() { SetPos(0,2);Color(1),cout<<"●",Color(7),cout<<" ■ ",Color(8),cout<<" ■ ",Color(4),cout<<" ● ",Color(9),cout<<"~ ",Color(0),cout<<" ",Color(10),cout<<"~ ",Color(3),cout<<" ◆"; SetPos(2,2);Color(0),cout<<"你 泥土 石块 炸弹 岩浆 水 宝石"; SetPos(4,1),cout<<" ↑ 空格放炸弹..."; SetPos(5,1),cout<<"← →移动 "; SetPos(6,1),cout<<" ↓ 可二段跳。"; SetPos(8,1),cout<<"炸弹种类随机,计时3秒爆炸。"; SetPos(10,1),cout<<"(一共有7种炸弹,有几率组合一起爆炸)"; SetPos(12,1),cout<<"岩浆和水有几率向左右扩散..."; SetPos(14,1),cout<<"它们相融会产生石块。"; SetPos(16,1),cout<<"岩浆和爆炸波会使你减血..."; SetPos(18,1),cout<<"岩浆还会使你上跳,宝石可以加血。"; SetPos(20,1),cout<<"画面每隔一段时间会下降..."; SetPos(22,1),cout<<"当你抵达画面底部时,画面会随你一起下降..."; SetPos(24,1),cout<<"当你被抵在画面顶部时,会持续减血。"; SetPos(26,1),cout<<"每隔一段时间分数会增加...",Color(5),cout<<"500分即可通关!"; SetPos(28,1);Color(1);cout<<"按 y 开始游戏!"; char tt;while(tt!='y') tt=_getch(); } void Start() { Color(5); SetPos(2,3);Color(7),cout<<" ■ ",Color(5),cout<<"掘",Color(7),cout<<" ■■■■ "; SetPos(3,3);Color(7),cout<<" ■■ ",Color(5),cout<<" ↓",Color(7),cout<<" ■■■■ "; SetPos(4,3);Color(7),cout<<" ■■■■ ",Color(5),cout<<" ↓",Color(7),cout<<" ■■■■■ "; SetPos(5,3);Color(7),cout<<" ■■■■■",Color(5),cout<<"↓",Color(7),cout<<" ■■■■■ "; SetPos(6,3);Color(7),cout<<" ■■■■■ ■■■",Color(5),cout<<"地",Color(7),cout<<"■■ "; SetPos(7,3);Color(7),cout<<" ■■■■■■■■■■■■ ";Color(5); SetPos(10,3);cout<<" ■■■ ■ "; SetPos(11,3);cout<<" ■ ■ ■ "; SetPos(12,3);Color(8),cout<<" ■■■ ",Color(5),cout<<" ■■■ ■ ■ "; SetPos(13,3);Color(8),cout<<" ■",Color(5),cout<<"矿",Color(8),cout<<"■ ",Color(5),cout<<" ■ ■ ■■■■■"; SetPos(14,3);Color(8),cout<<" ■■■ ",Color(5),cout<<" ■ ■ "; SetPos(15,3);cout<<" ■■■ ■■■■ "; SetPos(16,3);cout<<" ■ ■ ■ ■ "; SetPos(17,3);cout<<" ■ ■ ■ ■ "; SetPos(18,3);cout<<" ■■ ■ ■■■■ "; SetPos(22,2);Color(1);cout<<"按 y 确定!"; SetPos(22,10);Color(9);cout<<" 开始游戏! "; SetPos(24,10);Color(0);cout<<" 操作攻略! "; SetPos(27,1);Color(3);cout<<"注意!这里 绝对不能是拼音输入法!"; SetPos(28,5);Color(3);cout<<"↓";Color(0); char tt;int Ee=0; while(tt!='y') { tt=_getch(); if(tt72&&Ee!=0) Ee--; if(tt80&&Ee!=2) Ee++; SetPos(22,10);if(Ee0) Color(9);else Color(0);cout<<" 开始游戏! "; SetPos(24,10);if(Ee1) Color(9);else Color(0);cout<<" 操作攻略! "; }system("color 0F");system("cls");Color(0); if(Ee1) Jiao(); } int main() { system("mode con cols=42 lines=31"); CONSOLE_CURSOR_INFO cursor_info={1,0}; SetConsoleCursorInfo(GetStdHandle(STD_OUTPUT_HANDLE),&cursor_info); srand((unsigned)time(NULL)); Start(); St:system("cls"); K=-5,T=Win=Score=0;X=Y=2;Blood=20; memset(m,0,sizeof(m));memset(B,0,sizeof(B)); for(int i=5;i<=15;i++) for(int j=1;j<=20;j++) m[i][j]=1; for(int i=1;i<=10;i++) Sheng(1); Map(0); while(Win0) { T++;Kb=0;if(Score>=500) Win=1; if(GetAsyncKeyState(VK_UP)&0x8000&&tT0&&Er<2) tT++,tX+=4,Er++; if((GetAsyncKeyState(VK_UP)&0x8000)?0:1) tT=0; if(GetAsyncKeyState(VK_LEFT)&0x8000&&Y>1&&(m[X][Y-1]1||m[X][Y-1]7||m[X][Y-1]8||m[X][Y-1]9)&&(tY0||tY>=2)) SetPos(X-K,Y),cout<<" ",Y--; if(GetAsyncKeyState(VK_RIGHT)&0x8000&&Y<20&&(m[X][Y+1]1||m[X][Y+1]7||m[X][Y+1]8||m[X][Y+1]9)&&(tY20||tY2>=2)) SetPos(X-K,Y),cout<<" ",Y++; if((GetAsyncKeyState(VK_LEFT)&0x8000)?0:1) tY=0;if((GetAsyncKeyState(VK_RIGHT)&0x8000)?0:1) tY2=0; if((GetAsyncKeyState(VK_LEFT)&0x8000)?1:0) tY++;if((GetAsyncKeyState(VK_RIGHT)&0x8000)?1:0) tY2++; if(kbhit()) {char e=_getch();if(e' '&&m[X-1][Y]!=0&&m[X-1][Y]!=2&&(m[X+1][Y]<=10||m[X+1][Y]>=31)&&Kb0) m[X][Y]=10,X--;} int zb=Zb; for(int i=zb-10;i<=zb;i++) { if(B[i].Zhong1) CircleBomb(B[i].xx,B[i].yy,B[i].rr,B[i].mr),B[i].Zhong=0; if(B[i].Zhong2) LineBomb(B[i].xx,B[i].yy),B[i].Zhong=0; if(B[i].Zhong3) ThreeBomb(B[i].xx,B[i].yy,B[i].rr,B[i].mr),B[i].Zhong=0; if(B[i].Zhong4) ZuanBomb(B[i].xx,B[i].yy),B[i].Zhong=0; if(B[i].Zhong5) TrigleBomb(B[i].xx,B[i].yy,B[i].rr,B[i].mr),B[i].Zhong=0; if(B[i].Zhong6) GunBomb(B[i].xx,B[i].yy,B[i].rr,B[i].mr),B[i].Zhong=0; if(B[i].Zhong7) GunBomb2(B[i].xx,B[i].yy,B[i].rr,B[i].mr),B[i].Zhong=0; } Map(1);Sleep(40); if(T%max(10,40-Score/16)0||Kb>=1) Sheng(0); if(T%200) Score++; } if(Win!=0) { if(Win>0) {system("color 6E"),Color(3);SetPos(0,2);cout<<"You! Win!!!",Sleep(1000);} if(Win<0) {system("color 7F"),Color(4);SetPos(0,2);cout<<"You! Die!!!",Sleep(1000);} SetPos(1,2);cout<<"Please point 'y' to Play AGain."; A:char e=_getch();if(e!='y') goto A;goto St; } }https://www.cnblogs.com/ggc114514/p/18565009
http://ts3.tc.mm.bing.net/th/id/OIP-C.a-5MmTIP6FU2C0nVgUlheAHaHa?rs=1&pid=ImgDetMain&o=7&rm=3
-
通过的题目
-
最近活动
-
最近编写的题解
This person is lazy and didn't write any solutions.
题目标签
- 计算几何
- 3
- 模拟
- 2
- 字符串
- 2
- 数学
- 1
- 语言入门
- 1