1、 Qt 课程设计说明书课程设计说明书 题 目: 贪吃蛇游戏设计 2 目录目录 功能需求 3 界面要求 3 其他要求 4 设计分析 4 操作方法及运行结果 4 设计体会 6 参考文献 6 3 功能需求功能需求 利用 Qt creator 制作一个贪吃蛇的小游戏,要求: (1) 在窗口上显示菜单栏,帮助栏 和工具栏 (2) 游戏含有正常模式、死亡模式、情侣模式三种 (3)能够记录游戏时间,游戏成绩,游戏排行 (4) 能够显示英雄榜 (5) 能够显示帮助提示 界面要求界面要求 贪吃蛇游戏的游戏界面包括背景图片、工具栏图片、蛇移动范围的绘制等等。 其中贪吃蛇的身体用什么方法绘制,才可以使得其在游戏过程
2、中可以实现“吃”的功 能是很重要的。因此在游戏界面的初始绘制时就必须考虑到游戏时可能遇到的问题。 导入位图以及菜单工具条后,游戏未开始前(win7 系统下)的界面显示如图 2-1 所示 4 其他要求其他要求 能够注意各种异常处理,注重提高程序运行效率 设计分析设计分析 根据分析,贪吃蛇这个程序一共要实现如下几个功能,包括游戏方面正常模式、 死亡模式以及情侣模式,游戏帮助提示与英雄榜的显示等等。具体的程序结构如下 操作方法及运行结果操作方法及运行结果 根据分析后的贪吃蛇结构设计出相应的贪吃蛇流程。贪吃蛇的内容主要包括: 普通模式用上下左右控制方向,随机出现食物,但是如果碰到边框,障碍物和自 己都
3、会挂掉; 死亡模式用上下左右控制方向,小蛇获得了穿越边框的能力,但是得了恶性长胖 病,可以通过吃减肥药来偏强控制,但是不要碰到自己排除的废物; 5 情侣模式玩家 1 用上下左右控制方向,用 P、O、I(或者是 1、2、0)来发射子弹, 可以后退,不能穿越边框玩家 2 用 W,A,S,D 来控制方向,空格键释放陷阱子弹和陷阱 都需要 food 才能补充; 英雄榜能够记录正常模式和死亡模式游戏时间,游戏成绩,游戏排行,玩家姓名; 6 按下帮助键可获得游戏帮助说明。 设计体会设计体会 我学会了用 Qt 编写贪吃蛇游戏,能熟练地掌握 Qt 语言,通过每章每节的学习让 我知道了 Qt 的重要性,学习 Q
4、t 能让我们深刻的知道在以后的工作中能用到,还有让 我知道学习的重要意义,通过 对 Qt 的学习能让我们解决很多的实际东西,QT 能让我 们锻炼自己的编程能力,还能处理许多别的语言处理不了的东西,我知道了学习 Qt 不 仅能提高自己的认识 ,还巩固了对原来学过的其他语言的学习。 参考文献参考文献 Qt 4 开发实践(电子工业出版社) 部分源代码: #include “games.h“ Games:Games(QWidget *parent) : QMainWindow(parent) setWindowTitle(tr(“MainWindow“); showWidget =new ShowWi
5、dget(this); setCentralWidget(showWidget); createActions(); createMenus(); createToolBars(); 7 if(img.load(“4.jpg“) showWidget-imageLabel-setPixmap(QPixmap:fromImage(img); Games:Games() /动作的实现 void Games:createActions() /“普通模式“动作 normalAction =new QAction(QIcon(“12R009143A0-30P46_lit.png“),tr(“普通模式“)
6、,this); normalAction-setStatusTip(tr(“进入普通模式“); connect(normalAction,SIGNAL(triggered(),this,SLOT(shownsnake(); /“死亡模式“动作 deathAction =new QAction(QIcon(“12R00Z110F-Q055_lit.png“),tr(“死亡模式“),this); deathAction-setStatusTip(tr(“进入死亡模式“); connect(deathAction,SIGNAL(triggered(),this,SLOT(showdsnake(); /“情侣模式“动作 loversAction =new QAction(QIcon(“12N3M01I10-212R6_lit.png“),tr(“情侣模式“),this); loversAction-setStatusTip(tr(“进入情侣模式“); connect(loversAction,SIGNAL(tri