• 大小: 6.49M
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2024-04-13
  • 语言: C/C++
  • 标签: c++  游戏  

资源简介

按空格跳跃

资源截图

代码片段和文件信息

#define _CRT_SECURE_NO_WARNINGS
#include“header.h“
#include“music.h“
extern void makeMenu();
//数据
//1.图片变量
//2.鸟的结构体
//3.柱子的结构体
IMAGE backGround;     //背景图
IMAGE myBigBird[2];   //鸟:背景图掩码图
IMAGE down[2];
IMAGE up[2];
IMAGE end[2];

struct pillar
{
int x;
int y;
int height;//柱子显示的高度
};

struct bird
{
int x;
int y;
int speed;//鸟下坠的速度   
}flyBird = { 12430450 };

int score = 0;

//加载资源
void loadResource()
{
loadimage(&backGround “images\\background.bmp“);     //背景图

loadimage(myBigBird “images\\birdy.bmp“);            //鸟的掩码图        SRCAND   
loadimage(myBigBird + 1 “images\\bird.bmp“);         //鸟的背景图        SRCPAINT

loadimage(up “images\\upy.bmp“);                     //朝上柱子的掩码图  
loadimage(up + 1 “images\\up.bmp“);                  //朝上柱子的背景图

loadimage(down “images\\downy.bmp“);                 //朝下柱子的掩码图
loadimage(down + 1 “images\\down.bmp“);              //朝下柱子的掩码图

loadimage(end “images\\endy.bmp“);                   //结束图像的掩码图
loadimage(end + 1 “images\\end.bmp“);                //结束图像的背景图
}

//画鸟
void drawBird()//SRCAND贴掩码图(遮盖图)  SRCPAINT贴背景图
{
putimage(flyBird.x flyBird.y myBigBird SRCAND);
putimage(flyBird.x flyBird.y myBigBird + 1 SRCPAINT);
}
//按键处理
void keyDowm()
{
char userKey = _getch();
switch (userKey)
{
case ‘ ‘:
flyBird.y -= flyBird.speed;
Wing_sound();
break;
default:
break;
}
}

//初始化柱子
void initPillar(struct pillar* arrayPillar int i)
{
srand((unsigned int)time(NULL));
//随机高度
arrayPillar[i].height = rand() % 100 + 160; //160-259
//柱子的高度要不同pow(ab);
//while (arrayPillar[i].height == arrayPillar[(i + 1) % 3].height ||
// arrayPillar[i].height == arrayPillar[(i + 2) % 3].height)
//柱子的高度仅仅不相等还不行柱子高度相差还不能过小
while (pow((double)arrayPillar[i].height - (double)arrayPillar[(i + 1) % 3].height 2) <= 400 ||
pow((double)arrayPillar[i].height - (double)arrayPillar[(i + 2) % 3].height 2) <= 400)
/*
     i  (i+1)%3    (i+2)%3
i=0  0      1        2
i=1  1      2        0
i=2  2      0        1 
*/
{
arrayPillar[i].height = rand() % 100 + 160;
}
//两个柱子间的间距为200
arrayPillar[i].x = 288 + i * 200;
arrayPillar[i].y = 0;
}

//画柱子
void drawPillar(struct pillar myPillar)

//myPillar.x 0  窗口坐标
//显示52*myPillar.height大小的图片  
//从图片坐标(0320-myPillar.height)     取图片(图片坐标)

//朝下的柱子
//贴52*myPillar.height大小的柱子
putimage(myPillar.x 0 52 myPillar.height down 0 320 - myPillar.height SRCAND);
putimage(myPillar.x 0 52 myPillar.height down + 1 0 320 - myPillar.height SRCPAINT);

//朝上的柱子
//贴52*(320-myPillar.height)大小的柱子
putimage(myPillar.x 512 - (320 - myPillar.height) 52 320 - myPillar.height up 0 0 SRCAND);
putimage(myPillar.x 512 - (320 - myPillar.height) 52 320 - myPillar.height up + 1 0 0 SRCPAINT);
//两个柱子加起来一共贴出去了320就是一根柱子的长度
//512-(320-myPillar.height)=192+myPillar.height
}

//撞击地板以及越界判断
int hitFloor()
{
if (flyBird.

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     文件          56  2020-08-19 01:31  可执行文件位置.txt
     文件      102343  2020-08-19 01:31  游戏设计文档.pdf
     目录           0  2020-08-19 01:31  源代码\
     文件        5314  2020-08-19 01:31  源代码\game.cpp
     文件         214  2020-08-19 01:31  源代码\header.h
     文件        1359  2020-08-19 01:31  源代码\music.cpp
     文件         341  2020-08-19 01:31  源代码\music.h
     文件        1344  2020-08-19 01:31  源代码\start.cpp
     文件      133757  2020-08-19 01:31  用户分析文档.pdf
     目录           0  2020-08-19 01:31  素材库\
     目录           0  2020-08-19 01:31  素材库\images\
     文件      525368  2020-08-19 01:31  素材库\images\background.bmp
     文件        6968  2020-08-19 01:31  素材库\images\bird.bmp
     文件        6968  2020-08-19 01:31  素材库\images\birdy.bmp
     文件       49976  2020-08-19 01:31  素材库\images\down.bmp
     文件       49976  2020-08-19 01:31  素材库\images\downy.bmp
     文件       33104  2020-08-19 01:31  素材库\images\end.bmp
     文件       33104  2020-08-19 01:31  素材库\images\endy.bmp
     文件       49976  2020-08-19 01:31  素材库\images\up.bmp
     文件       49976  2020-08-19 01:31  素材库\images\upy.bmp
     文件      525368  2020-08-19 01:31  素材库\images\尺寸分析.bmp
     文件       63423  2020-08-19 01:31  素材库\images\柱子分析.jpg
     目录           0  2020-08-19 01:31  素材库\music\
     文件     2514904  2020-08-19 01:31  素材库\music\background.mp3
     文件      139784  2020-08-19 01:31  素材库\music\Die.wav
     文件       96020  2020-08-19 01:31  素材库\music\Hit.wav
     文件      176444  2020-08-19 01:31  素材库\music\Point.wav
     文件      352844  2020-08-19 01:31  素材库\music\Swooshing.wav
     文件       28224  2020-08-19 01:31  素材库\music\Wing.wav
     目录           0  2020-08-19 01:31  项目文件夹\
     目录           0  2020-08-19 18:04  项目文件夹\flappyBird\
............此处省略49个文件信息

评论

共有 条评论