• 大小: 8.38MB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2023-10-07
  • 语言: C/C++
  • 标签: opencv  

资源简介

为了完成课程作业写的程序,就是chrome断网后的小恐龙的游戏,做了一个简单的山寨版,刚开始学习c++,写得非常粗糙,上传记录一下,可能以后会重写?

资源截图

代码片段和文件信息

#include “Cactus.h“
#include 
#include 
using namespace std;


CCactus::CCactus()
{
}


CCactus::~CCactus()
{
}

/**
* @brief 仙人掌的初始化
* 加载仙人掌图片,初始化仙人掌出现的位置和随机仙人掌的图片
*/
void CCactus::Initialize()
{
static int i_num = 0;
char a_num[2] = { 0 };
/*拼接图片名称字符串*/
_itoa(i_num a_num 10);
char pic_name[15] = { 0 };
strcpy(pic_name “cactus“);
strcat(pic_name a_num);
strcat(pic_name “.png“);
//pic_name[strlen(pic_name)] = 0;
m_cactus = cvLoadImage(pic_name);

++i_num;
i_num %= 6;

m_posx = (rand() % 5) * 200 + 1000;
m_posy = 216 - m_cactus->height;
}

/**
* @brief 释放图片资源
*/
void CCactus::Release()
{
cvReleaseImage(&m_cactus);
}

/**
* @brief 绘制仙人掌
* @param 图片指针copybk白天背景,图片指针copybbk黑夜背景, 整型变量确定白天还是黑夜
*/
void CCactus::DrawToBk(IplImage * copybk IplImage *copybbk int daytime)
{
if (copybk != 0 && copybbk != 0 && m_cactus != 0)
{
for (int i = 0; i < m_cactus->height; ++i)
{
for (int j = 0; j < m_cactus->width; ++j)
{
if (j + m_posx < 0 || j + m_posx >= copybk->width)
continue;
int B = CV_IMAGE_ELEM(m_cactus uchar i j * 3 + 0);
int G = CV_IMAGE_ELEM(m_cactus uchar i j * 3 + 1);
int R = CV_IMAGE_ELEM(m_cactus uchar i j * 3 + 2);
///如果像素点的RGB值在这个范围内,则不画这个像素点
if (R >= 240 && G >= 240 && B >= 240)
continue;
if (daytime == 1)
{
CV_IMAGE_ELEM(copybk uchar i + m_posy (j + m_posx) * 3 + 0) = B;
CV_IMAGE_ELEM(copybk uchar i + m_posy (j + m_posx) * 3 + 1) = G;
CV_IMAGE_ELEM(copybk uchar i + m_posy (j + m_posx) * 3 + 2) = R;
}
else
{
CV_IMAGE_ELEM(copybbk uchar i + m_posy (j + m_posx) * 3 + 0) = 255 - B;
CV_IMAGE_ELEM(copybbk uchar i + m_posy (j + m_posx) * 3 + 1) = 255 - G;
CV_IMAGE_ELEM(copybbk uchar i + m_posy (j + m_posx) * 3 + 2) = 255 - R;
}
}
}
}
}

/**
* @brief 仙人掌的移动,按一定速度向左移动
* @param 传入一个速度
*/
void CCactus::Move(int speed)
{
m_posx -= speed;
}

/**
* @brief 仙人掌是否过图
*/
bool CCactus::isPass()
{
if (m_posx + m_cactus->width < 0)
{
m_posx = 1000 - m_cactus->width;
return true;
}
else
return false;
}

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件        451  2018-03-14 17:48  DinoRun\DinoRun\0.png

     文件        332  2018-03-14 17:52  DinoRun\DinoRun\1.png

     文件        524  2018-03-14 17:54  DinoRun\DinoRun\2.png

     文件        495  2018-03-14 17:53  DinoRun\DinoRun\3.png

     文件        471  2018-03-14 17:52  DinoRun\DinoRun\4.png

     文件        454  2018-03-14 17:51  DinoRun\DinoRun\5.png

     文件        479  2018-03-14 17:55  DinoRun\DinoRun\6.png

     文件        430  2018-03-14 17:54  DinoRun\DinoRun\7.png

     文件        521  2018-03-14 17:56  DinoRun\DinoRun\8.png

     文件        502  2018-03-14 17:56  DinoRun\DinoRun\9.png

     文件       1669  2018-03-13 21:18  DinoRun\DinoRun\background.png

     文件        856  2018-03-13 22:41  DinoRun\DinoRun\bbackground.png

     文件       2340  2018-07-16 00:04  DinoRun\DinoRun\Cactus.cpp

     文件        305  2018-07-16 00:04  DinoRun\DinoRun\Cactus.h

     文件        735  2018-03-11 21:02  DinoRun\DinoRun\cactus0.png

     文件       1285  2018-03-12 00:26  DinoRun\DinoRun\cactus1.png

     文件        606  2018-03-12 00:27  DinoRun\DinoRun\cactus2.png

     文件       2615  2018-03-13 04:39  DinoRun\DinoRun\cactus3.png

     文件        924  2018-03-12 00:27  DinoRun\DinoRun\cactus4.png

     文件       1245  2018-03-12 00:02  DinoRun\DinoRun\cactus5.png

     文件       6337  2018-07-15 00:52  DinoRun\DinoRun\DinoRun.vcxproj

     文件       1690  2018-03-13 23:34  DinoRun\DinoRun\DinoRun.vcxproj.filters

     文件        165  2018-03-11 20:21  DinoRun\DinoRun\DinoRun.vcxproj.user

     文件       3134  2018-07-16 00:04  DinoRun\DinoRun\Dinosaur.cpp

     文件        465  2018-07-16 00:04  DinoRun\DinoRun\Dinosaur.h

     文件       6934  2018-03-12 00:23  DinoRun\DinoRun\dinosaur.png

     文件       1161  2018-03-14 00:39  DinoRun\DinoRun\dinosaur_died.png

     文件       1511  2018-03-12 00:24  DinoRun\DinoRun\dinosaur_run1.png

     文件       1597  2018-03-12 00:26  DinoRun\DinoRun\dinosaur_run2.png

     文件       7216  2018-07-16 00:22  DinoRun\DinoRun\Game.cpp

............此处省略16个文件信息

评论

共有 条评论