想学做网站可以自学吗,平凉网站开发,厦门网站做优化,做网站搞什么流量我是可爱的C小盆友#xff08;不要脸了#xff09;#xff0c;嘻嘻#xff0c;等了这么久#xff0c;吃豆人终于升级啦#xff01;
更新日志#xff1a;
1.修复奇奇怪怪的bug
2.把敌人AI增强了一#xff08;hen#xff09;点#xff08;duo#xff09;
3.加入了…我是可爱的C小盆友不要脸了嘻嘻等了这么久吃豆人终于升级啦
更新日志
1.修复奇奇怪怪的bug
2.把敌人AI增强了一hen点duo
3.加入了奖励豆吃完有特殊的东西 1万物复苏 玩家生命值3 2极致严寒 敌人移动速度降低 3无限牢笼 送一个敌人到地图四个角落种一个
本小盆友很想破1000粉丝求大家四连点赞关注收藏转发
对了提醒一句如果要改我的代码千万不要加using namespace std这一行整个程序会炸不信自己试逝世了我可不负责昂
好啦下面是大家最喜欢的代码环节
#includebits/stdc.h
#includequeue
#includeconio.h
#pragma comment(lib,winmm.lib)
#define _CRT_SECURE_NO_WARNINGS
#define WIDTH 15*25
#define HEIGHT 22*25
#define GRID 25
#define ROW 20
#define COL 15
using std::cout;
using std::endl;
int b 255;
int m 0, n 0;
int speed 400;
int life 5;
int score 0;
bool willGo true;
bool canGo true;
bool isChange true;
long long min 99999999, timesa 1, v[ROW][COL];
DWORD t1 0, t2 0;
DWORD t3 0, t4 0;
DWORD t5 0, t6 0;//奖励函数特用
IMAGE img[8];
IMAGE Enemy[4];
IMAGE bean, bean2;
COLORREF color RGB(0, 0, 0);
enum DIR {NONE,UP,DOWN,LEFT,RIGHT,WAITING
};
enum TOOLS {WALL,PLAYER,SPACE,ENEMY,BEAN,ENEMYBEAN,ENEMYSBEAN,SBEAN
};
struct Point {int x, y;
};
struct Player {int x, y;bool flag;DIR dir;
}player;
struct ENEmy {int x, y;int flag;DIR dir;
}enemy[4];
int map[ROW][COL] {WALL,WALL,WALL,WALL,WALL,WALL,WALL,BEAN,WALL,WALL,WALL,WALL,WALL,WALL,WALL,WALL,BEAN,BEAN,BEAN,BEAN,WALL,BEAN,BEAN,BEAN,WALL,BEAN,BEAN,BEAN,BEAN,WALL,WALL,BEAN,WALL,WALL,BEAN,WALL,BEAN,WALL,BEAN,WALL,BEAN,WALL,WALL,BEAN,WALL,BEAN,BEAN,BEAN,BEAN,BEAN,BEAN,BEAN,BEAN,BEAN,BEAN,BEAN,BEAN,BEAN,BEAN,BEAN,WALL,WALL,BEAN,WALL,WALL,WALL,WALL,BEAN,WALL,WALL,WALL,WALL,BEAN,WALL,WALL,WALL,WALL,BEAN,BEAN,BEAN,BEAN,BEAN,BEAN,BEAN,BEAN,BEAN,BEAN,BEAN,WALL,WALL,WALL,WALL,BEAN,WALL,WALL,BEAN,WALL,WALL,WALL,BEAN,WALL,WALL,BEAN,WALL,WALL,WALL,BEAN,BEAN,BEAN,BEAN,BEAN,BEAN,BEAN,BEAN,BEAN,BEAN,BEAN,BEAN,BEAN,WALL,WALL,BEAN,WALL,WALL,BEAN,WALL,WALL,BEAN,WALL,WALL,BEAN,WALL,WALL,BEAN,WALL,WALL,BEAN,WALL,WALL,BEAN,WALL,BEAN,BEAN,BEAN,WALL,BEAN,WALL,WALL,BEAN,WALL,WALL,BEAN,WALL,WALL,BEAN,WALL,WALL,BEAN,WALL,WALL,BEAN,WALL,WALL,BEAN,WALL,WALL,BEAN,BEAN,BEAN,BEAN,BEAN,BEAN,BEAN,BEAN,BEAN,BEAN,BEAN,BEAN,BEAN,WALL,WALL,WALL,BEAN,WALL,WALL,BEAN,WALL,BEAN,WALL,BEAN,WALL,WALL,BEAN,WALL,WALL,WALL,WALL,BEAN,BEAN,BEAN,BEAN,BEAN,BEAN,BEAN,BEAN,BEAN,BEAN,BEAN,WALL,WALL,WALL,BEAN,BEAN,BEAN,BEAN,WALL,WALL,BEAN,WALL,WALL,BEAN,BEAN,BEAN,BEAN,WALL,WALL,WALL,BEAN,WALL,WALL,WALL,WALL,BEAN,WALL,WALL,WALL,WALL,BEAN,WALL,WALL,BEAN,BEAN,BEAN,BEAN,BEAN,BEAN,BEAN,BEAN,BEAN,BEAN,BEAN,BEAN,BEAN,BEAN,BEAN,WALL,BEAN,WALL,WALL,BEAN,WALL,BEAN,WALL,BEAN,WALL,BEAN,WALL,WALL,BEAN,WALL,WALL,BEAN,BEAN,BEAN,BEAN,WALL,BEAN,BEAN,BEAN,WALL,BEAN,BEAN,BEAN,BEAN,WALL,WALL,WALL,WALL,WALL,WALL,WALL,WALL,BEAN,WALL,WALL,WALL,WALL,WALL,WALL,WALL,
};
void drawText() {if (b 1) {isChange false;}else if (b 255 - 8) {isChange true;}char ch[1000];int spaceH;settextcolor(RGB(60, 10, b));settextstyle(25, 0, 华文行楷);sprintf_s(ch, 生命: %d 得分: %d, life, score);spaceH (getwidth() - textwidth(ch)) / 2;outtextxy(spaceH, 20 * 25, ch);sprintf_s(ch, x:%d y:%d, player.x, player.y);spaceH (getwidth() - textwidth(ch)) / 2;outtextxy(spaceH, 21 * 25, ch);if (isChange) {b - 7;}else {b 7;}
}
void initMap() {loadimage(Enemy[0], 01.png, GRID, GRID);loadimage(Enemy[1], 02.png, GRID, GRID);loadimage(Enemy[2], 03.png, GRID, GRID);loadimage(Enemy[3], 04.png, GRID, GRID);loadimage(img[0], UP_CLOSE.jpg, 24, 24);loadimage(img[1], UP_OPEN.jpg, 24, 24);loadimage(img[2], DOWN_CLOSE.jpg, 24, 24);loadimage(img[3], DOWN_OPEN.jpg, 24, 24);loadimage(img[4], LEFT_CLOSE.jpg, 24, 24);loadimage(img[5], LEFT_OPEN.jpg, 24, 24);loadimage(img[6], RIGHT_CLOSE.jpg, 24, 24);loadimage(img[7], RIGHT_OPEN.jpg, 24, 24);loadimage(bean, bean.png, 15, 15);loadimage(bean2, sbean.png, 15, 15);map[m][n] PLAYER;player.flag true;player.x m;player.y n;srand((unsigned int)time(NULL));for (int i 0; i 4; i) {int a rand() % (ROW - 2) 1;int b rand() % (COL - 2) 1;while (map[a][b] WALL || map[a][b] PLAYER) {a rand() % (ROW - 2) 1;b rand() % (COL - 2) 1;}enemy[i].x a;enemy[i].y b;map[a][b] ENEMYSBEAN;}
}
void drawMap() {setbkmode(TRANSPARENT);setbkcolor(RGB(83, 55, 213));cleardevice();for (int i 0; i ROW; i) {for (int j 0; j COL; j) {switch (map[i][j]) {case SPACE:color RGB(81, 55, 213);setlinecolor(color);setfillcolor(color);fillrectangle(j * GRID, i * GRID, j * GRID GRID, i * GRID GRID);break;case WALL:color RGB(150, 0, 255);setlinecolor(color);setfillcolor(color);setlinecolor(WHITE);setlinestyle(PS_SOLID, 1);fillroundrect(j * GRID, i * GRID, j * GRID GRID, i * GRID GRID, 6, 6);break;case PLAYER:switch (player.flag) {case true:switch (player.dir) {case UP:putimage(j * GRID, i * GRID, img[1]);break;case DOWN:putimage(j * GRID, i * GRID, img[3]);break;case LEFT:putimage(j * GRID, i * GRID, img[5]);break;case RIGHT:putimage(j * GRID, i * GRID, img[7]);break;}break;case false:switch (player.dir) {case UP:putimage(j * GRID, i * GRID, img[0]);break;case DOWN:putimage(j * GRID, i * GRID, img[2]);break;case LEFT:putimage(j * GRID, i * GRID, img[4]);break;case RIGHT:putimage(j * GRID, i * GRID, img[6]);break;}break;}break;case ENEMY:for (int k 0; k 4; k) {if (enemy[k].x i enemy[k].y j) {putimage(j * GRID, i * GRID, Enemy[k]);}}break;case BEAN:putimage(j * GRID 5, i * GRID 5, bean);break;case SBEAN:putimage(j * GRID 5, i * GRID 5, bean2);break;case ENEMYSBEAN:for (int k 0; k 4; k) {if (enemy[k].x i enemy[k].y j) {putimage(j * GRID, i * GRID, Enemy[k]);}}break;case ENEMYBEAN:for (int k 0; k 4; k) {if (enemy[k].x i enemy[k].y j) {putimage(j * GRID, i * GRID, Enemy[k]);}}break;}}}for (int i 0; i ROW; i) {for (int j 0; j COL; j) {switch (map[i][j]) {case WALL:color RGB(150, 0, 255);setlinecolor(color);setfillcolor(color);setlinecolor(WHITE);setlinestyle(PS_SOLID, 1);fillroundrect(j * GRID, i * GRID, j * GRID GRID, i * GRID GRID, 6, 6);break;}}}drawText();
}
void drawText2(char ch[100]) {mciSendString(pause 1.mp3, 0, 0, 0);//setbkcolor(BLACK);//cleardevice();//setfillcolor(BLACK);//fillrectangle(0, 0, WIDTH, HEIGHT);settextcolor(RED);settextstyle(45, 0, 华文行楷);int spaceH (getwidth() - textwidth(ch)) / 2;int spaceV (getheight() - textheight(ch)) / 2;outtextxy(spaceH, spaceV, ch);FlushBatchDraw();Sleep(1250);drawMap();mciSendString(play 1.mp3 repeat, 0, 0, 0);
}
void movePlayer() {int sp;char c;char ch1[22] 万 物 复 苏;char ch2[22] 极 致 严 寒;char ch3[22] 无 限 牢 笼;Player next player;switch (player.dir) {case UP:next.x--;break;case DOWN:next.x;break;case LEFT:next.y--;break;case RIGHT:next.y;break;}if (player.x 16 player.y 0 canGo) {map[player.x][player.y] SPACE;player.x 16;player.y COL - 1;player.dir LEFT;map[player.x][player.y] PLAYER;player.flag !player.flag;canGo false;}else if (player.x 16 player.y COL - 1 canGo) {map[player.x][player.y] SPACE;player.x 16;player.y 0;player.dir RIGHT;map[player.x][player.y] PLAYER;player.flag !player.flag;canGo false;}if (player.x 3 player.y 0 canGo) {map[player.x][player.y] SPACE;player.x 3;player.y COL - 1;player.dir LEFT;map[player.x][player.y] PLAYER;player.flag !player.flag;canGo false;}else if (player.x 3 player.y COL - 1 canGo) {map[player.x][player.y] SPACE;player.x 3;player.y 0;player.dir RIGHT;map[player.x][player.y] PLAYER;player.flag !player.flag;canGo false;}if (player.x 0 player.y 7 canGo) {map[player.x][player.y] SPACE;player.x ROW - 1;player.y 7;player.dir UP;map[player.x][player.y] PLAYER;player.flag !player.flag;canGo false;}else if (player.x ROW - 1 player.y 7 canGo) {map[player.x][player.y] SPACE;player.x 0;player.y 7;player.dir DOWN;map[player.x][player.y] PLAYER;player.flag !player.flag;canGo false;}/*Player next2 player;switch (map[next2.x][next2.y]) {case WALL:break;case SPACE:map[player.x][player.y] SPACE;player next2;map[player.x][player.y] PLAYER;player.flag !player.flag;canGo true;break;case ENEMY:case ENEMYBEAN:case ENEMYSBEAN:for (int i 0; i 4; i) {if (next2.x enemy[i].x next2.y enemy[i].y) {life--;if (life 0) {mciSendString(close 1.mp3, 0, 0, 0);c getchar();exit(0);}else {map[player.x][player.y] SPACE;player.x m;player.y n;break;}}}break;case BEAN:score;map[player.x][player.y] SPACE;player next2;map[player.x][player.y] PLAYER;player.flag !player.flag;canGo true;break;case SBEAN:score 10;map[player.x][player.y] SPACE;player next2;map[player.x][player.y] PLAYER;player.flag !player.flag;canGo true;srand((unsigned int)time(NULL));sp rand() % 3 1;switch (sp) {case 1:break;case 2:break;case 3:break;}break;}*/switch (map[next.x][next.y]) {case WALL:break;case SPACE:map[player.x][player.y] SPACE;player next;map[player.x][player.y] PLAYER;player.flag !player.flag;canGo true;break;case ENEMY:case ENEMYBEAN:case ENEMYSBEAN:for (int i 0; i 4; i) {if (next.x enemy[i].x next.y enemy[i].y) {life--;if (life 0) {mciSendString(close 1.mp3, 0, 0, 0);c getchar();exit(0);}else {map[player.x][player.y] SPACE;player.x m;player.y n;break;}}}break;case BEAN:score;map[player.x][player.y] SPACE;player next;map[player.x][player.y] PLAYER;player.flag !player.flag;canGo true;break;case SBEAN:score 10;map[player.x][player.y] SPACE;player next;map[player.x][player.y] PLAYER;player.flag !player.flag;canGo true;srand((unsigned int)time(NULL));sp rand() % 4 1;if (sp 1) {drawText2(ch1);life 3;}else if (sp 2) {drawText2(ch2);speed 200;}else {drawText2(ch3);for (int i 0; i 4; i) {if (enemy[i].x ! 0 enemy[i].y ! 0 map[0][0] ! ENEMY) {map[enemy[i].x][enemy[i].y] SBEAN;enemy[i].x 0;enemy[i].y 0;map[enemy[i].x][enemy[i].y] ENEMY;break;}else if (enemy[i].x ! 0 enemy[i].y ! 0 map[0][COL - 1] ! ENEMY) {map[enemy[i].x][enemy[i].y] SBEAN;enemy[i].x 0;enemy[i].y COL - 1;map[enemy[i].x][enemy[i].y] ENEMY;break;}else if (enemy[i].x ! 0 enemy[i].y ! 0 map[ROW - 1][0] ! ENEMY) {map[enemy[i].x][enemy[i].y] SBEAN;enemy[i].x ROW - 1;enemy[i].y 0;map[enemy[i].x][enemy[i].y] ENEMY;break;}else if (enemy[i].x ! 0 enemy[i].y ! 0 map[ROW - 1][COL - 1] ! ENEMY) {map[enemy[i].x][enemy[i].y] SBEAN;enemy[i].x ROW - 1;enemy[i].y COL - 1;map[enemy[i].x][enemy[i].y] ENEMY;break;}}}break;}
}
void keyDown() {if (_kbhit()) {canGo true;switch (_getch()) {case 72:player.dir UP;break;case 80:player.dir DOWN;break;case 75:player.dir LEFT;break;case 77:player.dir RIGHT;break;}}
}
void moveEnemy() {char c;for (int i 0; i 4; i) {ENEmy next enemy[i];switch (enemy[i].dir) {case UP:next.x--;break;case DOWN:next.x;break;case LEFT:next.y--;break;case RIGHT:next.y;break;}if (enemy[i].x 16 enemy[i].y 0 canGo) {map[enemy[i].x][enemy[i].y] SPACE;enemy[i].x 16;enemy[i].y COL - 1;enemy[i].dir LEFT;map[enemy[i].x][enemy[i].y] ENEMY;canGo false;}else if (enemy[i].x 16 enemy[i].y COL - 1 canGo) {map[enemy[i].x][enemy[i].y] SPACE;enemy[i].x 16;enemy[i].y 0;enemy[i].dir RIGHT;map[enemy[i].x][enemy[i].y] ENEMY;canGo false;}if (enemy[i].x 3 enemy[i].y 0 canGo) {map[enemy[i].x][enemy[i].y] SPACE;enemy[i].x 3;enemy[i].y COL - 1;enemy[i].dir LEFT;map[enemy[i].x][enemy[i].y] ENEMY;canGo false;}else if (enemy[i].x 3 enemy[i].y COL - 1 canGo) {map[enemy[i].x][enemy[i].y] SPACE;enemy[i].x 3;enemy[i].y 0;enemy[i].dir RIGHT;map[enemy[i].x][enemy[i].y] ENEMY;canGo false;}if (enemy[i].x 0 enemy[i].y 7 canGo) {map[enemy[i].x][enemy[i].y] SPACE;enemy[i].x ROW - 1;enemy[i].y 7;enemy[i].dir UP;map[enemy[i].x][enemy[i].y] ENEMY;canGo false;}else if (enemy[i].x ROW - 1 enemy[i].y 7 canGo) {map[enemy[i].x][enemy[i].y] SPACE;enemy[i].x 0;enemy[i].y 7;enemy[i].dir DOWN;map[enemy[i].x][enemy[i].y] ENEMY;canGo false;}/*ENEmy next2 enemy[i];switch (map[next2.x][next2.y]) {case WALL:break;case SPACE:if (map[enemy[i].x][enemy[i].y] ENEMYBEAN) {map[enemy[i].x][enemy[i].y] BEAN;}else if (map[enemy[i].x][enemy[i].y] ENEMYSBEAN) {map[enemy[i].x][enemy[i].y] SBEAN;}else {map[enemy[i].x][enemy[i].y] SPACE;}enemy[i] next2;map[enemy[i].x][enemy[i].y] ENEMY;break;case ENEMY:case ENEMYBEAN:case ENEMYSBEAN:break;case PLAYER:for (int i 0; i 4; i) {if (next2.x enemy[i].x next2.y enemy[i].y) {for (int i 0; i ROW; i) {for (int j 0; j COL; j) {printf(%d , map[i][j]);}printf(\n);}printf(\n);life--;if (life 0) {mciSendString(close 1.mp3, 0, 0, 0);c getchar();exit(0);}else {map[player.x][player.y] SPACE;player.x m;player.y n;break;}}}break;case BEAN:if (map[enemy[i].x][enemy[i].y] ENEMY) {map[enemy[i].x][enemy[i].y] SPACE;}else if (map[enemy[i].x][enemy[i].y] ENEMYBEAN) {map[enemy[i].x][enemy[i].y] BEAN;}else if (map[enemy[i].x][enemy[i].y] ENEMYSBEAN) {map[enemy[i].x][enemy[i].y] SBEAN;}enemy[i] next2;map[enemy[i].x][enemy[i].y] ENEMYBEAN;break;case SBEAN:if (map[enemy[i].x][enemy[i].y] ENEMY) {map[enemy[i].x][enemy[i].y] SPACE;}else if (map[enemy[i].x][enemy[i].y] ENEMYBEAN) {map[enemy[i].x][enemy[i].y] BEAN;}else if (map[enemy[i].x][enemy[i].y] ENEMYSBEAN) {map[enemy[i].x][enemy[i].y] SBEAN;}enemy[i] next2;map[enemy[i].x][enemy[i].y] ENEMYSBEAN;break;}*/switch (map[next.x][next.y]) {case WALL:break;case SPACE:if (map[enemy[i].x][enemy[i].y] ENEMYBEAN) {map[enemy[i].x][enemy[i].y] BEAN;}else if (map[enemy[i].x][enemy[i].y] ENEMYSBEAN) {map[enemy[i].x][enemy[i].y] SBEAN;}else {map[enemy[i].x][enemy[i].y] SPACE;}enemy[i] next;map[enemy[i].x][enemy[i].y] ENEMY;break;case ENEMY:case ENEMYBEAN:case ENEMYSBEAN:break;case PLAYER:for (int i 0; i 4; i) {if (next.x player.x next.y player.y) {life--;if (life 0) {mciSendString(close 1.mp3, 0, 0, 0);c getchar();exit(0);}else {map[player.x][player.y] SPACE;player.x m;player.y n;break;}}}break;case BEAN:if (map[enemy[i].x][enemy[i].y] ENEMY) {map[enemy[i].x][enemy[i].y] SPACE;}else if (map[enemy[i].x][enemy[i].y] ENEMYBEAN) {map[enemy[i].x][enemy[i].y] BEAN;}else if (map[enemy[i].x][enemy[i].y] ENEMYSBEAN) {map[enemy[i].x][enemy[i].y] SBEAN;}enemy[i] next;map[enemy[i].x][enemy[i].y] ENEMYBEAN;break;case SBEAN:if (map[enemy[i].x][enemy[i].y] ENEMY) {map[enemy[i].x][enemy[i].y] SPACE;}else if (map[enemy[i].x][enemy[i].y] ENEMYBEAN) {map[enemy[i].x][enemy[i].y] BEAN;}else if (map[enemy[i].x][enemy[i].y] ENEMYSBEAN) {map[enemy[i].x][enemy[i].y] SBEAN;}enemy[i] next;map[enemy[i].x][enemy[i].y] ENEMYSBEAN;break;}}
}
DIR EnemyBFS(int xx,int xy) {int dx[4], dy[4];int rnd[4];DIR vis[ROW][COL] { NONE };int oridx[4] { 0,0,-1,1 };int oridy[4] { 1,-1,0,0 };DIR oridir[4] { RIGHT,LEFT,UP,DOWN };DIR dr[4];Point v[ROW][COL];rnd[0] rand() % 4;for (int i 1; i 4; i) {bool x 1;while (x) {rnd[i] rand() % 4, x 0;for (int j 0; j i; j) if (rnd[i] rnd[j]) x 1;}}for (int i 0; i 4; i) dx[i] oridx[rnd[i]], dy[i] oridy[rnd[i]], dr[i] oridir[rnd[i]];std::queuePoint q;q.push({ xx,xy });for (int i 0; i ROW; i)for (int j 0; j COL; j)if (map[i][j] ! WALL) vis[i][j] WAITING;else vis[i][j] NONE;vis[xx][xy] NONE;v[xx][xy] { xx,xy };while (!q.empty()) {int _x_ q.front().x, _y_ q.front().y; q.pop();if (_x_ player.x _y_ player.y) {Point t { player.x,player.y }, lst t;while (v[t.x][t.y].x!t.x||v[t.x][t.y].y!t.y) {lst t;t v[t.x][t.y];}int gox lst.x, goy lst.y;for (int i 0; i 4; i) {if (xx oridx[i] gox xy oridy[i] goy) return oridir[i];}return NONE;}for (int i 0; i 4; i) {int nx _x_ dx[i], ny _y_ dy[i];if (vis[nx][ny] WAITING) {vis[nx][ny] dr[i];v[nx][ny] { _x_,_y_ };q.push({ nx,ny });}}}return NONE;
}
void enemyControl() {srand((unsigned int)time(NULL));while (1) {for (int i 0; i 4; i) {/*int r player.x;int c player.y;int r2 enemy[i].x;int c2 enemy[i].y;int m rand() % 2 1;switch (m) {case 1:if (r r2 map[r2 - 1][c2] ! WALL) {enemy[i].dir UP;}else if (r r2 map[r2 1][c2] ! WALL) {enemy[i].dir DOWN;}else if (c c2 map[r2][c2 - 1] ! WALL) {enemy[i].dir LEFT;}else if (c c2 map[r2][c2 1] ! WALL) {enemy[i].dir RIGHT;}else {int n rand() % 4 1;switch (n) {case 1:enemy[i].dir UP;break;case 2:enemy[i].dir DOWN;break;case 3:enemy[i].dir LEFT;break;case 4:enemy[i].dir RIGHT;}}break;case 2:if (r r2 map[r2 - 1][c2] ! WALL) {enemy[i].dir UP;}else if (r r2 map[r2 1][c2] ! WALL) {enemy[i].dir DOWN;}else if (c c2 map[r2][c2 - 1] ! WALL) {enemy[i].dir LEFT;}else if (c c2 map[r2][c2 1] ! WALL) {enemy[i].dir RIGHT;}else {int n rand() % 4 1;switch (n) {case 1:enemy[i].dir UP;break;case 2:enemy[i].dir DOWN;break;case 3:enemy[i].dir LEFT;break;case 4:enemy[i].dir RIGHT;}}break;}*/enemy[i].dir EnemyBFS(enemy[i].x, enemy[i].y);Sleep(300);}}
}
bool isWin() {for (int i 0; i ROW; i) {for (int j 0; j COL; j) {if (map[i][j] BEAN || map[i][j] SBEAN) return false;}}
}
int main() {initgraph(WIDTH, HEIGHT);CreateThread(NULL, NULL, (LPTHREAD_START_ROUTINE)enemyControl, NULL, NULL, NULL);mciSendString(open 1.mp3, 0, 0, 0);mciSendString(play 1.mp3 repeat, 0, 0, 0);int s 0;srand((unsigned int)time(NULL));do {m rand() % ROW;n rand() % COL;} while (map[m][n] WALL || map[m][n] ENEMY);BeginBatchDraw();initMap();while (life) {drawMap();do {m rand() % ROW;n rand() % COL;} while (map[m][n] WALL);if (t1 - t2 150) {movePlayer();t2 t1;}if (t3 - t4 speed) {moveEnemy();t4 t3;}if (t5 - t6 10000 willGo false) {willGo true;t6 t5;}t1 GetTickCount64();t3 GetTickCount64();t5 GetTickCount64();keyDown();//enemyControl();if (isWin()) {s;if (s 3) {mciSendString(close 1.mp3, 0, 0, 0);mciSendString(open 2.mp3, 0, 0, 0);mciSendString(play 2.mp3, 0, 0, 0);break;}}FlushBatchDraw();}EndBatchDraw();closegraph();return 0;
}
嘿嘿竟然真的有人看完了整篇博客欸嘿那肯定要送一点福利呀简单给个预告下一篇很可能是关于flappy bird的游戏的大家敬请期待 文章转载自: http://www.morning.jpbpc.cn.gov.cn.jpbpc.cn http://www.morning.rhzzf.cn.gov.cn.rhzzf.cn http://www.morning.xptkl.cn.gov.cn.xptkl.cn http://www.morning.thwcg.cn.gov.cn.thwcg.cn http://www.morning.phgz.cn.gov.cn.phgz.cn http://www.morning.clpdm.cn.gov.cn.clpdm.cn http://www.morning.qdrrh.cn.gov.cn.qdrrh.cn http://www.morning.zrpbf.cn.gov.cn.zrpbf.cn http://www.morning.rzjfn.cn.gov.cn.rzjfn.cn http://www.morning.rngyq.cn.gov.cn.rngyq.cn http://www.morning.fypgl.cn.gov.cn.fypgl.cn http://www.morning.rhgtc.cn.gov.cn.rhgtc.cn http://www.morning.zcnwg.cn.gov.cn.zcnwg.cn http://www.morning.pznnt.cn.gov.cn.pznnt.cn http://www.morning.bpmnq.cn.gov.cn.bpmnq.cn http://www.morning.nlysd.cn.gov.cn.nlysd.cn http://www.morning.rntyn.cn.gov.cn.rntyn.cn http://www.morning.yrlfy.cn.gov.cn.yrlfy.cn http://www.morning.zpyh.cn.gov.cn.zpyh.cn http://www.morning.ttrdr.cn.gov.cn.ttrdr.cn http://www.morning.litao7.cn.gov.cn.litao7.cn http://www.morning.mzgq.cn.gov.cn.mzgq.cn http://www.morning.xqkcs.cn.gov.cn.xqkcs.cn http://www.morning.hwnqg.cn.gov.cn.hwnqg.cn http://www.morning.kqglp.cn.gov.cn.kqglp.cn http://www.morning.qgtbx.cn.gov.cn.qgtbx.cn http://www.morning.nzcys.cn.gov.cn.nzcys.cn http://www.morning.jbshh.cn.gov.cn.jbshh.cn http://www.morning.ctxt.cn.gov.cn.ctxt.cn http://www.morning.wjtxt.cn.gov.cn.wjtxt.cn http://www.morning.zcfsq.cn.gov.cn.zcfsq.cn http://www.morning.lgmty.cn.gov.cn.lgmty.cn http://www.morning.gcfg.cn.gov.cn.gcfg.cn http://www.morning.xcjbk.cn.gov.cn.xcjbk.cn http://www.morning.npxcc.cn.gov.cn.npxcc.cn http://www.morning.bkwd.cn.gov.cn.bkwd.cn http://www.morning.kwqqs.cn.gov.cn.kwqqs.cn http://www.morning.qcygd.cn.gov.cn.qcygd.cn http://www.morning.drqrl.cn.gov.cn.drqrl.cn http://www.morning.ksggl.cn.gov.cn.ksggl.cn http://www.morning.rqlzz.cn.gov.cn.rqlzz.cn http://www.morning.brsgw.cn.gov.cn.brsgw.cn http://www.morning.tdmr.cn.gov.cn.tdmr.cn http://www.morning.sqhlx.cn.gov.cn.sqhlx.cn http://www.morning.fjzlh.cn.gov.cn.fjzlh.cn http://www.morning.zrwlz.cn.gov.cn.zrwlz.cn http://www.morning.wjfzp.cn.gov.cn.wjfzp.cn http://www.morning.rrwft.cn.gov.cn.rrwft.cn http://www.morning.ymtbr.cn.gov.cn.ymtbr.cn http://www.morning.qrmry.cn.gov.cn.qrmry.cn http://www.morning.fdwlg.cn.gov.cn.fdwlg.cn http://www.morning.pffx.cn.gov.cn.pffx.cn http://www.morning.qzglh.cn.gov.cn.qzglh.cn http://www.morning.wxckm.cn.gov.cn.wxckm.cn http://www.morning.mgbsp.cn.gov.cn.mgbsp.cn http://www.morning.ypklb.cn.gov.cn.ypklb.cn http://www.morning.mygbt.cn.gov.cn.mygbt.cn http://www.morning.ljdjn.cn.gov.cn.ljdjn.cn http://www.morning.yfnjk.cn.gov.cn.yfnjk.cn http://www.morning.lnbcg.cn.gov.cn.lnbcg.cn http://www.morning.qczpf.cn.gov.cn.qczpf.cn http://www.morning.trrpb.cn.gov.cn.trrpb.cn http://www.morning.lwmxk.cn.gov.cn.lwmxk.cn http://www.morning.tfpbm.cn.gov.cn.tfpbm.cn http://www.morning.rpgdd.cn.gov.cn.rpgdd.cn http://www.morning.rxhsm.cn.gov.cn.rxhsm.cn http://www.morning.hyryq.cn.gov.cn.hyryq.cn http://www.morning.hfnbr.cn.gov.cn.hfnbr.cn http://www.morning.plchy.cn.gov.cn.plchy.cn http://www.morning.ntgjm.cn.gov.cn.ntgjm.cn http://www.morning.knngw.cn.gov.cn.knngw.cn http://www.morning.yldgw.cn.gov.cn.yldgw.cn http://www.morning.ljdjn.cn.gov.cn.ljdjn.cn http://www.morning.nytpt.cn.gov.cn.nytpt.cn http://www.morning.lxjcr.cn.gov.cn.lxjcr.cn http://www.morning.ptwrz.cn.gov.cn.ptwrz.cn http://www.morning.tqpnf.cn.gov.cn.tqpnf.cn http://www.morning.pfbx.cn.gov.cn.pfbx.cn http://www.morning.bxrqf.cn.gov.cn.bxrqf.cn http://www.morning.snmsq.cn.gov.cn.snmsq.cn