亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > C++ > 正文

C語言實現Flappy Bird小游戲

2020-05-23 13:22:46
字體:
來源:轉載
供稿:網友

本文實例為大家分享了C語言實現Flappy Bird小游戲的具體代碼,供大家參考,具體內容如下

#include<stdio.h>#include<stdlib.h>#include<conio.h>#include<time.h>#include<Windows.h>/********函數變量聲明********/#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;typedef struct Birds {  int x, y;  int condition;}Birds; Birds * Bird; typedef struct Bg {  int x, y;  int l_blank;  int reward[9];  struct Bg * pri;  struct Bg * next;}Bg;Bg * Bg1; 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; k < p -> y; 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 < Distance / 3 - 2; k++)        PR_Land;    }    p = p -> next;    if (p -> x == 0) {      for (j = 2; j < p -> y; 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;  }}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(" ■■■ 歡迎各路大神一起探討/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;  Bird = (Birds * ) malloc(sizeof(Birds));  Bg1 = (Bg * ) malloc(sizeof(Bg));  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");}

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VEVB武林網。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产欧美日韩中文字幕在线| 97色在线观看免费视频| 久久久久国产一区二区三区| 欧美日韩国产va另类| 2019日本中文字幕| 亚洲开心激情网| 欧美激情国产日韩精品一区18| 欧美极品在线播放| 在线亚洲国产精品网| 97视频免费在线看| 国产精品美女www| 中文字幕久久精品| 国产男女猛烈无遮挡91| 久久国产精品久久精品| 一本色道久久综合狠狠躁篇的优点| 欧美午夜电影在线| 精品国产区一区二区三区在线观看| 精品成人乱色一区二区| 国产在线视频2019最新视频| 成人午夜在线视频一区| 久久久久国色av免费观看性色| 人九九综合九九宗合| 亚洲国产精品一区二区三区| 日韩欧美国产视频| 国产成人亚洲综合| 中文字幕亚洲国产| 亚洲自拍偷拍第一页| 日韩国产在线看| 久久欧美在线电影| 国产精品免费看久久久香蕉| 国内精品视频一区| 亚洲国产一区自拍| 欧美一区二区视频97| 精品亚洲一区二区三区在线观看| 97福利一区二区| 亚洲乱码av中文一区二区| 色婷婷av一区二区三区久久| 久久久精品中文字幕| 成人有码在线视频| 日韩成人在线免费观看| 国产精品爽黄69| 欧美精品videosex极品1| 欧美精品在线极品| 91精品视频在线免费观看| 欧美又大又粗又长| 欧美一级成年大片在线观看| 国产91在线播放| 性夜试看影院91社区| 日韩亚洲在线观看| 日韩精品视频在线观看网址| 久久在线视频在线| 日韩免费黄色av| 精品小视频在线| 日韩美女毛茸茸| 亚洲一区二区久久久| 亚洲精品第一国产综合精品| 亚洲精品白浆高清久久久久久| 欧美日韩国产页| 日韩在线观看免费网站| 久久久久这里只有精品| 欧美性xxxx极品hd满灌| 91探花福利精品国产自产在线| 日韩在线观看免费| 欧美wwwxxxx| 97在线视频观看| 日韩资源在线观看| 精品久久久久久亚洲精品| 精品国产欧美成人夜夜嗨| 国产精品高潮粉嫩av| 欧美在线影院在线视频| 午夜免费日韩视频| 91久久国产精品91久久性色| 亚洲视频自拍偷拍| 国产日韩欧美电影在线观看| 国产精品久久久久久久电影| 2020国产精品视频| 色偷偷亚洲男人天堂| 亚洲一区精品电影| 欧美精品久久久久久久久| 久久99久久久久久久噜噜| 亚洲美女自拍视频| 亚洲老头同性xxxxx| 久久久久久亚洲| 欧美日产国产成人免费图片| 51视频国产精品一区二区| 美女少妇精品视频| 国产精品久久久久久久久久久久久久| 精品国产区一区二区三区在线观看| 欧美国产在线电影| 久久久在线免费观看| 91久久综合亚洲鲁鲁五月天| 国产精品高潮呻吟久久av黑人| 亚洲激情视频在线播放| 一区二区中文字幕| 一区二区欧美激情| 国产免费一区视频观看免费| 成人免费观看网址| 欧美精品日韩三级| 日韩欧美视频一区二区三区| 久久久99免费视频| 伊人一区二区三区久久精品| 亚洲va国产va天堂va久久| 亚洲精品福利免费在线观看| 九九综合九九综合| 欧美激情三级免费| 91精品久久久久久综合乱菊| 亚洲的天堂在线中文字幕| 欧美孕妇孕交黑巨大网站| 国产亚洲欧洲在线| 国产亚洲精品日韩| 国产一区二区av| 久久久中精品2020中文| 欧美性xxxx在线播放| 日韩国产欧美精品一区二区三区| 欧美国产欧美亚洲国产日韩mv天天看完整| 色综合天天综合网国产成人网| 国产精品成人免费视频| 成人黄色片在线| 亚洲精品在线观看www| 性色av一区二区三区红粉影视| 欧美激情一区二区三区在线视频观看| 欧美视频在线观看 亚洲欧| 欧美在线视频观看| 国产精品6699| 日韩精品亚洲元码| 亚洲美女av黄| 精品久久久精品| 国产欧美一区二区三区在线| 精品久久久久久久久久久久| 国产欧美在线播放| 日韩欧美在线国产| 国产美女高潮久久白浆| 久久精品国产2020观看福利| 亚洲精品美女网站| 国产女同一区二区| 国产精品情侣自拍| 久久久久这里只有精品| 日韩精品在线免费观看| 国产成人精品一区二区| 国产成人精品最新| 91产国在线观看动作片喷水| 国产999视频| 亚洲精品www久久久| 国产午夜精品一区二区三区| 国产免费一区二区三区在线能观看| 欧美性黄网官网| 亚洲成人a**站| 中日韩午夜理伦电影免费| 欧美电影免费在线观看| 亚洲影视九九影院在线观看| 国产欧美精品久久久| 亚洲最大成人免费视频| 一区二区三区国产视频| 欧美国产一区二区三区| 国产精品观看在线亚洲人成网| 国产免费一区二区三区香蕉精| 国精产品一区一区三区有限在线| 国产精品v片在线观看不卡| 亚洲精品国产美女| 国产欧美精品一区二区三区-老狼| 中文字幕亚洲一区二区三区五十路| 日韩美女视频免费在线观看| 亚洲国产精品久久久久秋霞蜜臀| 亚洲欧美三级伦理|