RPG游戏(一)——环境搭建、地图显示
来源:互联网 发布:大额借贷软件 编辑:程序博客网 时间:2024/06/07 23:06
RPG游戏与rogue游戏类似,如经典RPG游戏“口袋妖怪”。我们组选择用Qt开发一个类似的游戏,作为“嵌入式linux开发”这门课的大作业。环境搭建:安装Qt、安装Tiledmap(一款地图编辑器)。地图制作与显示:用tiledmap软件生成地图位置信息——编写Qt代码加载素材——分割素材——按地图位置信息贴图。闲话不多说,下面放代码
mainwindow.h
#ifndef MAINWINDOW_H#define MAINWINDOW_H#include <QMainWindow>#include <QImage>#include <QPainter>namespace Ui {class MainWindow;}class MainWindow : public QMainWindow{ Q_OBJECTpublic: explicit MainWindow(QWidget *parent = 0); ~MainWindow();public: void paintEvent(QPaintEvent *e);private: Ui::MainWindow *ui; QImage all; QImage tiles[256];};#endif // MAINWINDOW_H
<pre name="code" class="cpp">#include "mainwindow.h"#include "ui_mainwindow.h"#include <QDebug>int map_data[] = {71,72,71,72,2,2,202,202,202,0, 87,88,87,88,2,2,218,218,218,0, 145,146,210,210,71,72,0,0,202,0, 161,162,226,226,87,88,0,0,218,0, 145,146,210,210,71,72,0,0,0,0, 161,162,226,226,87,88,0,0,0,0, 0,0,145,146,145,146,0,0,0,0, 0,0,161,162,161,162,0,0,0,0, 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0};MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow){ ui->setupUi(this); all.load("C:/Users/jupeizhong/Desktop/Qt/RPG/tiles/TileB.png"); for (int i = 0;i < 16;++i) for (int j = 0;j < 16;++j) tiles[i * 16 + j] = all.copy(QRect(j*32, i*32, 32, 32));}void MainWindow::paintEvent(QPaintEvent *e){ QPainter *pa; pa = new QPainter(); pa->begin(this); for (int i = 0;i < 10;++i) for (int j = 0;j < 10;++j) if (map_data[i*10+j] != 0) pa->drawImage(j * 32, i * 32, tiles[map_data[i*10+j]-1]); pa->drawImage(0, 0, tiles[18]); pa->end(); delete pa;}MainWindow::~MainWindow(){ delete ui;}
main.cpp
#include "mainwindow.h"#include <QApplication>int main(int argc, char *argv[]){ QApplication a(argc, argv); MainWindow w; w.show(); return a.exec();}运行效果:
所用素材,即TileB.png
注:本系列博客所包含素材来源于互联网,请勿用于商业用途。
0 0
- RPG游戏(一)——环境搭建、地图显示
- RPG游戏(地图传送)
- SpriteBuilder中使用GUI界面快速搭建RPG游戏中的地图名显示动画
- RPG游戏编写教程(一)——准备工作
- 使用J2ME技术开发RPG游戏(一)——程序框架
- 使用J2ME技术开发RPG游戏(一)——程序框架
- 使用J2ME技术开发RPG游戏(一)——程序框架
- 使用J2ME技术开发RPG游戏(一)——程序框架
- 使用J2ME技术开发RPG游戏(一)——程序框架
- 使用J2ME技术开发RPG游戏(一)——程序框架
- 使用J2ME技术开发RPG游戏(一)——程序框架
- RPG游戏滚动地图原理
- AndroidStudio下加入百度地图的使用(一)——环境搭建
- J2ME RPG游戏边学边做(一)
- RPG类型游戏—1
- RPG类型游戏—2
- RPG类型游戏—4
- RPG类型游戏—3
- Subsets
- 发现大师们的错误
- Foundation框架之 NSString 和 集合
- cocoaPods做iOS程序的依赖管理
- NSXMLParser 解析代理方法
- RPG游戏(一)——环境搭建、地图显示
- ibatis批量插入对象
- Java Socket长连接异步单工保持心跳
- poj--3250--Bad Hair Day(模拟)
- LeetCode:Remove Element
- NSXMLParser 解析方法
- linpcap
- 【黑马程序员】C语言结构体
- java实现excel导出