在map.h中添加如下代码
- #ifndef MAP_H
- #define MAP_H
- #include
- class Map
- {
- public:
- //构造函数
- Map();
- //地图滚动坐标计算
- void mapPosition();
- public:
- //地图图片对象
- QPixmap m_map1;
- QPixmap m_map2;
- //地图Y轴坐标
- int m_map1_posY;
- int m_map2_posY;
- //地图滚动幅度
- int m_scroll_speed;
- };
- #endif // MAP_H
5.3 实现成员函数
? 在.h中添加新的配置数据
- /**********地图配置数据 **********/
- #define MAP_PATH":/res/img_bg_level_1.jpg" //地图图片路径
- #define MAP_SCROLL_SPEED 2//地图滚动速度
在map.cpp中实现成员函数
- #include "map.h"
- #include "config.h"
- Map::Map()
- {
- //初始化加载地图对象
- m_map1.load(MAP_PATH);
- m_map2.load(MAP_PATH);
- //设置地图其实y轴坐标
- m_map1_posY = -GAME_HEIGHT;
- m_map2_posY = 0;
- //设置地图滚动速度
- m_scroll_speed = MAP_SCROLL_SPEED;
- }
- void Map::mapPosition()
- {
- //处理第一张图片滚动
- m_map1_posY += MAP_SCROLL_SPEED;
- if(m_map1_posY >= 0)
- {
- m_map1_posY =-GAME_HEIGHT;
- }
- //处理第二张图片滚动
- m_map2_posY += MAP_SCROLL_SPEED;
- if(m_map2_posY >= GAME_HEIGHT )
- {
- m_map2_posY =0;
- }
- }
5.4 定时器添加
在.h中添加新的定时器对象
QTimer m_Timer;
在 .h中添加 屏幕刷新间隔
#define GAME_RATE10//刷新间隔,帧率 单位毫秒
在.cpp的中追加代码
- //定时器设置
- m_Timer.setInterval(GAME_RATE);
5.5 启动定时器实现地图滚动
在.h中添加新的成员函数以及成员对象
- //启动游戏用于启动定时器对象
- void playGame();
- //更新坐标
- void updatePosition();
- //绘图事件
- void paintEvent(QPaintEvent *event);
- //地图对象
- Map m_map;
在.cpp中实现成员函数
- void MainScene::playGame()
- {
- //启动定时器
- m_Timer.start();
- //监听定时器
- connect(&m_Timer,&QTimer::timeout,[=](){
- //更新游戏中元素的坐标
- updatePosition();
- //重新绘制图片
- update();
- });
- }
- void MainScene::updatePosition()
- {
- //更新地图坐标
- m_map.mapPosition();
- }
- void MainScene::paintEvent(QPaintEvent *event)
- {
- QPainter painter(this);
- //绘制地图
- painter.drawPixmap(0,m_map.m_map1_posY , m_map.m_map1);
- painter.drawPixmap(0,m_map.m_map2_posY , m_map.m_map2);
- }
测试运行游戏,实现地图滚动
6 英雄飞机
步骤如下:
6.1 创建英雄文件和类
创建类以及生成对应的文件
和创建地图的步骤一样,这里就不在详细截图了
- 山本五十六之死:中国人破译密电美国军机截杀
- 成吉思汗陵墓五大谜团大宝藏究竟在哪儿
- Windows远程桌面实现之五(FFMPEG实现桌面屏幕RTSP
- 一加五,一加5怎么oo
- 五阿哥永琪死得太早如果继位能斗过和珅吗
- 解密帝王为何被称之为九五之尊
- 盘点:曹军战亡五大虎将排名
- psp罪恶都市秘籍召唤飞机 psp罪恶都市秘籍
- 一五阳性可以转阴吗,乙肝一五阳性可以转阴真的吗?乙肝科
- 五代时期诗人黄损生平简介黄损代表作品