[codesyntax lang=”cpp”]

#include

#include

#include

#include

#include

/********函数变量声明********/

#define PR_Box printf(“■”)

#define PR_Gold printf(“★”)

#define PR_Ag printf(“☆”)

#define PR_FBird printf(“Ю”)

#define PR_DBird printf(“Ф”)

#define PR_Land printf(“┳┳┯”)

#define PR_Bg_TL printf(“╔”)

#define PR_Bg_TR printf(“╗”)

#define PR_Bg_DL printf(“╚”)

#define PR_Bg_DR printf(“╝”)

#define PR_Bg_X printf(“═”)

#define PR_Bg_Y printf(“║”)

#define PR_Blank printf(” “);

int Grade = 1, C_Gold = 0, C_Ag = 0, Score = 0, Delay_time = 1000,Max_blank=9,Distance=18;

struct Birds

{

int x, y;

int condition;

};

Birds *Bird = (Birds*)malloc(sizeof(Birds));

struct Bg

{

int x, y;

int l_blank;

int reward[9];

Bg *pri;

Bg *next;

};

Bg *Bg1 = new Bg[sizeof(Bg)];

void Position(int x, int y)

{

COORD pos = { x – 1, y – 1 };

HANDLE Out = GetStdHandle(STD_OUTPUT_HANDLE);

SetConsoleCursorPosition(Out, pos);

}

void CreatBird()

{

Bird->x=41;

Bird->y=10;

Bird->condition =0;

}

void CreatBg()

{

Bg *Bg2 = (Bg*)malloc(sizeof(Bg));

Bg1->x=90;Bg1->y =8;

Bg2->x=Bg1->x+Distance;Bg2->y =9;

Bg1->l_blank =Max_blank-Grade;

Bg2->l_blank =Max_blank-Grade;

Bg1->next=Bg2;

Bg1->pri=Bg2;

Bg2->next=Bg1;

Bg2->pri=Bg1;

}

void InsertBg(Bg *p)

{int temp;

Bg *Bgs = (Bg*)malloc(sizeof(Bg));

Bgs->x=p->pri->x+Distance;

Bgs->l_blank =Max_blank-Grade;

srand((int)time(0));

temp=rand();

if(temp%2==0)//++

{ if((temp%4+p->pri->y+Max_blank-Grade)<21)

Bgs->y=p->pri->y+temp%4;

else

Bgs->y=p->pri->y;

}

else

{

if((p->pri->y-temp%4)>2)

Bgs->y=p->pri->y-temp%4;

else

Bgs->y=p->pri->y;

}

Bgs->pri=p->pri;

Bgs->next =p;

p->pri->next=Bgs;

p->pri =Bgs;

}

void Check_Bg(Bg *q)

{ Bg *p=q;int i=0,temp;

while(++i<=5)

{ if(p->x>-4)

p=p->next;

else

{ srand((int)time(0));

temp=rand();

if(temp%2==0)//++

{ if((temp%4+p->y+Max_blank-Grade)<21)

p->y=p->y+temp%4;

else

p->y=p->y;

p->x=p->pri->x+Distance;

p->l_blank=Max_blank-Grade;

}

else

{

if((p->y-temp%4)>2)

p->y=p->y-temp%4;

else

p->y=p->y;

p->x=p->pri->x+Distance;

p->l_blank=Max_blank-Grade;

}

}

}

}

void Loop_Bg(Bg *q)

{

Bg *p=q;int i=0;

while(++i<=5)

{p->x=p->x-1;

p=p->next ;

if(Bird->x==p->x)

{Score+=1;

if(Score%4==0&&Grade<4)

Grade++;

}

}

}

void Prt_Bg(Bg *q)

{ Bg *p=q;int i=0,k,j;

while(++i<=5)

{ if(p->x>0&&p->x<=78)

{ for(k=2;ky;k++)

{ Position(p->x+1,k);

PR_Box;PR_Box;PR_Blank

}

Position(p->x,p->y);

PR_Box;PR_Box;PR_Box;PR_Blank;

Position(p->x,p->y+p->l_blank);

PR_Box;PR_Box;PR_Box;PR_Blank;

k=k+p->l_blank+1;

for(k;k<=22;k++)

{Position(p->x+1,k);

PR_Box;PR_Box;PR_Blank;

}

Position(p->x,23);

for(k=1;k

PR_Land;

}

p=p->next;

if(p->x==0)

{ for(j=2;jy;j++)

{ Position(p->x+1,j);

PR_Blank;PR_Blank;

}

Position(p->x+1,p->y);

PR_Blank;PR_Blank;PR_Blank;

Position(p->x+1,p->y+Max_blank-Grade);

PR_Blank;PR_Blank;PR_Blank;

j=j+Max_blank-Grade+1;

for(j;j<=22;j++)

{Position(p->x+1,j);

PR_Blank;PR_Blank;

}

}

}

}

void PrtBg()

{ int i;

Position(1,1);PR_Bg_TL;

Position(79,1);PR_Bg_TR;

Position(1,24);PR_Bg_DL;

Position(79,24);PR_Bg_DR;

for(i=3;i<=78;i+=2)

{ Position(i,1);PR_Bg_X;

Position(i,24);PR_Bg_X;

}

/*for(i=2;i<=23;i++)

{ Position(1,i);PR_Bg_Y;printf(“%d”,i-1);

Position(79,i);PR_Bg_Y;

}*/

}

void PrtBird()

{ Position(Bird->x,Bird->y-1);

PR_Blank;

Position(Bird->x,Bird->y);

PR_FBird;

Position(38,2);

printf(“Score:%d”,Score);

}

int CheckYN(Bg *q)

{ Bg *p=q;int i=0;

while(++i<=5)

{ if(Bird->y>23)

return 0;

if(Bird->x==p->x&&Bird->y<=p->y)

return 0;

if((Bird->x==p->x||Bird->x==p->x+1||Bird->x==p->x+2)&&Bird->y==p->y)

return 0;

if(Bird->x==p->x&&Bird->y>p->y+p->l_blank)

return 0;

if((Bird->x==p->x||Bird->x==p->x+1||Bird->x==p->x+2)&&Bird->y==p->y+p->l_blank)

return 0;

p=p->next;

}

return 1;

}

void Prtfirst()

{

printf(“══════════════════════════════════════\n”);

printf(” ■■ ■■\n”);

printf(” ■■ ■■\n”);

printf(” ■■ ■■ C语言版 Flappy Bird\n”);

printf(” ■■ ■■ 瞎搞人:yyposs\n”);

printf(” ■■ ■■ 瞎搞日期:2014.2\n”);

printf(” ■■ ■■ 耗时:4小时\n”);

printf(” ■■■ ■■ 游戏说明:\n”);

printf(” ■■ 1-按上箭头使鸟起飞\n”);

printf(” ■■ 2-等级越高,难度越大!\n”);

printf(” Ю ■■■\n”);

printf(“\n”);

printf(” ■■■ 欢迎各路大神与我探讨C、C++、VB、PHP、C#\n”);

printf(” ■■\n”);

printf(” ■■\n”);

printf(” ■■ ■■■ 【无版权,随意修改】\n”);

printf(” ■■ ■■\n”);

printf(” ■■ Ф ■■\n”);

printf(” ■■ ■■\n”);

printf(” ■■ ■■\n”);

printf(” ■■ ■■\n”);

printf(” ■■ ■■\n”);

printf(” ┳┳┯┳┳┯┳┳┯┳┳┯┳┳┯┳┳┯┳┳┯┳┳┯┳┳┯┳┳┯┳┳┯┳┳┯┳\n”);

system(“pause”);

Position(1,1);

int i=0;

while(i++<40*25)

PR_Blank;

}

void main()

{int i=0;char ch;

Prtfirst();

PrtBg();

CreatBg();

InsertBg(Bg1);

InsertBg(Bg1);

InsertBg(Bg1);

CreatBird();

while(1)

{

if(!CheckYN(Bg1))

break;

Check_Bg(Bg1);

Prt_Bg(Bg1);

PrtBird();

Loop_Bg(Bg1);

Bird->y=Bird->y+1;

if(GetAsyncKeyState(VK_UP))

{ Position(Bird->x,Bird->y-1);

PR_Blank;

Bird->y=Bird->y-4;

}

while(i++<500);

{ Sleep(100);

}

i=0;

}

Position(38,10);

printf(“You Lost!”);

Position(1,25);

system(“pause”);

}

1

[/codesyntax]

c语言flappy bird代码,Flappy bird源代码(略吊)相关推荐

  1. c语言打砖块代码,打砖块游戏的源代码(请多指教)

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 #include#include#include#include#includevoid draw(int x1){int m=0,n=0,x=40,y= ...

  2. 洪水攻击程序c语言,洪水攻击原理及代码实现全攻略(附源代码)

    下载本文示例代码 推荐:应用程序安全的魔道之争 声明:本文所提供的资料仅仅限于技术交流和学习,请不要用于其他非法目的,维护网络安全是我们的共同责任. 下载本文源代码和例程 一. 什么是洪水攻击 洪水之 ...

  3. 钢琴软件c语言源代码,C语言钢琴程序代码.doc

    C语言钢琴程序代码.doc 把以下程序复制粘贴到Visual c++6.0,点编译与连接,不要点编译,不然会出错,这个程序就没用了,在强调一下:点编译与链接.然后点执行,就可以开始弹钢琴了.最后附有一 ...

  4. c语言写的黑白棋游戏代码,C语言编写的黑白棋游戏源代码..doc

    C语言编写的黑白棋游戏源代码. C语言编写的黑白棋游戏/*3.3.4 源程序*/ #include "graphics.h" /*图形系统头文件*/ #define LEFT 0x ...

  5. 黑白棋代码Linux程序,C语言编写的黑白棋游戏源代码.doc

    PAGE PAGE 1 C语言编写的黑白棋游戏源代码 /*3.3.4 源程序*/ #include "graphics.h" /*图形系统头文件*/ #define LEFT 0x ...

  6. 最值得阅读学习的 10 个 C 语言开源项目代码

    本文转载于: 最值得阅读学习的 10 个 C 语言开源项目代码 从扩展思路的角度来说,一个程序员应该好好读过这样一些代码: 一个操作系统内核 一个编译器(如:gcc,lua) 一个解释器(如:pyth ...

  7. c语言安卓贪吃蛇代码下载,C语言贪吃蛇代码

    c语言编写贪吃蛇源代码,简单易懂,文件为VC源代码.如果你正在学习c语言,就来下载吧.很经典的 C语言贪吃蛇代码部分 #include #include #include#include #defin ...

  8. keil4如何将c语言转换成汇编语言_Keil 中关于C语言编译生成汇编代码函数名规则...

    在keil 中 C语言的函数有带参数和不带参数之分. 一般的资料里说fun(void)类型的函数不带参数,所以,keil编译器生成的汇编的调用地址(函数名) 为fun.这没有错.事实上,不管C语言的函 ...

  9. c语言程序设计医院就医,C语言程序设计(医院信息管理系统)附源代码[精品].doc...

    C语言程序设计(医院信息管理系统)附源代码[精品] 专业设计报告 课程名称: C 语 言 程 序 设 计 课题名称: 医院信息管理系统 专业班别: 11本计算机科学与技术二班 姓 名: 学 号: 指导 ...

最新文章

  1. 超过resnet的图片分类网络
  2. 用Javascript模拟微信飞机大战游戏
  3. ML之LoRSGD:基于LoR(逻辑回归)、SGD梯度下降算法对乳腺癌肿瘤(10+1)进行二分类预测(良/恶性)
  4. 8 Redis 持久化RDB
  5. Java的主要就业方向
  6. 在UE中自由绘制基本图元的几种方法
  7. linux如何运行sh监控文件夹,如何使用Shell进行文件监控?
  8. C++之操作符重载探究(七):==运算符重载
  9. Exchange常见问题大全
  10. windows | RDPWrap 远程桌面登录增强工具,长期提供多版本 rdpwrap.ini配置文件 [可灵活设置多人同时登录、一键改变配置]
  11. 面试自我介绍优秀范文
  12. 英文简历模板计算机专业,2016计算机专业英文简历模板
  13. ios识别人脸自动拍照_GitHub - qingweiiOS/FaceRecognition: 活体人脸识别,识别人脸,识别张嘴和摇头动作,并拍照...
  14. 井口综合安检-解决方案
  15. Linux查看gzip文件原始大小,Linux 文件管理:Linux gzip 压缩
  16. 【Al TIME】博硕论坛064期 | 清华计算机系大佬齐论Al
  17. Latex常见数学符号写法
  18. 你不得不会的EXCEL选择性粘贴
  19. Redis-避免缓存穿透的利器之BloomFilter
  20. python视频网站项目_价值2400元的python全栈开发系列Flask Python Web 网站编程视频

热门文章

  1. Chrome , Firfox 对应IE fireEvent 的方法
  2. mysql 缺省配置 崩溃_MySQL5.6初始配置调优_MySQL
  3. mysql 事件调度器_【MySQL】事件调度器 (Event Scheduler)
  4. linux查看系统后台,求助,如何查看后台服务
  5. 树莓派3b能装java吗_树莓派3B-系统安装
  6. Python中的pip包管理工具被删除重新进行安装
  7. matlab从哪里学,从零开始学MATLAB(附光盘)/从零开始学系列
  8. vue.js2.0 java_详解vite2.0配置学习(typescript版本)
  9. 决策树 结构_决策树模型是什么?5步了解好看模型图
  10. Oracle添加主键和唯一约束最佳实践