- 1、本文档共37页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
五子棋、贪吃蛇C大作业项目报告剖析
“C++程序设计与训练”课程大作业项目报告项目名称:五子贪吃蛇棋姓名:林子坤学号:2014011541班级:自45 日期: 2015/09/201系统功能设计这是进行复杂软件开发的第一步,即需求分析。此部分需要详细描述清楚系统将要实现的功能。(此部分的子标题和结构自行拟定。此部分内容同一小组可以共用。)1.1总体功能描述1、概述众所周知,五子棋和贪吃蛇都是在各种电子设备上的经典游戏,堪称电子游戏之鼻祖。五子棋考验人们的理性思维,在安静的思考中获得获胜的思路;而贪吃蛇考验人们的观察力和敏捷度,在速度的决斗中增加自己的长度。而我们这个项目将两款游戏融合起来,成为一个动静结合的新型游戏。2、项目具体功能本游戏采取两种切换策略,两种策略共享同样的五子棋代码。第一种切换策略中,五子棋和贪吃蛇采取无限循环的简单模式。在每一轮中,玩家需先作为黑棋方完成一局五子棋游戏,若任意一局五子棋失败,则整个游戏以失败计,弹出窗口显示失败信息。若该局五子棋获胜,则弹出窗口显示胜利信息,并且棋盘变为贪吃蛇的跑道,初始化蛇头(黄色)、蛇身(绿色),并随机出现食物(红色)且上局中的白棋(电脑方)作为贪吃蛇的障碍物,贪吃蛇碰到自身、墙壁与障碍物,游戏均以失败计,弹出窗口显示失败信息。因此,五子棋的通关速度也会影响到最终的结果,因为随着五子棋获胜步数增加,贪吃蛇游戏中障碍物数量也会相应增加。如果贪吃蛇成功吃到食物,则本局游戏获胜,弹出窗口显示胜利信息,并且界面恢复为五子棋的棋盘,进行下一局的五子棋的游戏。第二种切换策略中,五子棋和贪吃蛇采取单局计分的多窗口信息传递模式。在每一轮中,玩家需先作为黑棋方完成一局五子棋游戏,若任意一局五子棋失败,则整个游戏以失败计,弹出窗口显示失败信息。若该局五子棋获胜,则弹出窗口显示胜利信息,并且弹出贪吃蛇游戏窗口,并把上局中的白棋(电脑方)坐标传入贪吃蛇游戏的跑道上,作为贪吃蛇的障碍物。因此,五子棋的通关速度也会影响到最终的结果,因为随着五子棋获胜步数增加,贪吃蛇游戏中障碍物数量也会相应增加。吃到一个食物则记录分数。由于没有分数上限,所以当贪吃蛇长度过长时,玩家游戏失败,直接结束游戏。1.2功能点说明(本部分是大作业考核和评分的主要依据)大作业功能点说明(示例)功能类型功能点名称实现方式自己编写C++代码使用C++标准库使用第三方库使用SQL语句功能点描述基本信息处理1.产生随机数自己编写C++代码使用C++标准库产生随机数,提供给五子棋“随机下棋“模式中落子坐标及贪吃蛇食物的随机生成2.读取玩家的所下五子棋的位置自己编写C++代码使用C++标准库通过鼠标点击信息获取,读取玩家所下五子棋的位置并将其显示在界面上3.计算机智能下棋自己编写C++代码使用C++标准库五子棋的实现核心,通过对多种情况的考虑分析让计算机对人的下棋情况进行分析并进行堵、攻等算法实现4.五子棋的获胜判定自己编写C++代码使用C++标准库五子棋的实现关键,通过对人方最后落子附近的扫描与全棋盘的扫描判断五子棋是否获得胜利5.格内棋子显示切换自己编写C++代码使用C++标准库在第一种切换模式中,通过对各种颜色赋值,实现棋子换色功能,从而达到切换为贪吃蛇、清屏等效果6.初始化贪吃蛇的位置数据自己编写C++代码使用C++标准库在第一种切换模式中,初始化贪吃蛇的位置数据7.实时更新贪吃蛇的位置数据自己编写C++代码使用C++标准库使用第三方库使用QTimer库,每隔一定时间实时更新贪吃蛇的位置数据8.贪吃蛇的食物获得判定自己编写C++代码使用C++标准库根据游戏规则判定玩家的贪吃蛇阶段是否获得食物并进行其他操作(在第一种模式中直接获胜,在第二种模式中蛇长加长)9.读取玩家对于贪吃蛇的位置移动自己编写C++代码使用C++标准库通过键盘敲击信息获取,读取玩家对贪吃蛇的上下左右移动10.贪吃蛇长度增加自己编写C++代码使用C++标准库在第二种切换模式中,贪吃蛇碰到自己所下的五子棋会得到身体增长的奖励11.贪吃蛇的获胜/失败判定自己编写C++代码使用C++标准库根据游戏规则判定玩家的贪吃蛇阶段是否获胜/失败统计功能12.统计贪吃蛇的得分自己编写C++代码使用C++标准库在第二种切换模式中,根据游戏规则统计贪吃蛇的得分界面部分13.界面设计自己编写C++代码使用C++标准库使用第三方库通过QT自带库,设计五子棋棋盘界面、贪吃蛇跑道界面和五子棋、贪吃蛇的形态设计14.鼠标点击信息获取自己编写C++代码使用C++标准库使用第三方库通过QT自带库,获取鼠标点击信息15.键盘敲击信息获取自己编写C++代码使用C++标准库使用第三方库通过QT自带库,获取键盘敲击信息16.鼠标点击信息处理自己编写C++代码使用C++标准库使用第三方库通过QT自带库,处理鼠标点击信息并向其它函数传递相关参数17.
您可能关注的文档
- 计算机课件声音的制作课件.doc
- 计算机联锁论文课件.doc
- 五一节快递服务涨价几成定局剖析.pptx
- 计算机网络讨论课课件.ppt
- 五上22滴水穿石的启示PPT剖析.pptx
- 计算机网络考研辅导讲座(2、物理层)课件.ppt
- 互联网项目分析报告(完整版)剖析.doc
- 计算机网络系统集10课件.ppt
- 计算机网络教案(第3章)课件.ppt
- 互联网农业剖析.ppt
- 2023-2024学年广东省深圳市龙岗区高二(上)期末物理试卷(含答案).pdf
- 2023-2024学年贵州省贵阳市普通中学高一(下)期末物理试卷(含答案).pdf
- 21.《大自然的声音》课件(共45张PPT).pptx
- 2023年江西省吉安市吉安县小升初数学试卷(含答案).pdf
- 2024-2025学年广东省清远市九校联考高一(上)期中物理试卷(含答案).pdf
- 广东省珠海市六校联考2024-2025学年高二上学期11月期中考试语文试题.pdf
- 2024-2025学年语文六年级上册第4单元-单元素养测试(含答案).pdf
- 2024-2025学年重庆八中高三(上)月考物理试卷(10月份)(含答案).pdf
- 安徽省安庆市潜山市北片学校联考2024-2025学年七年级上学期期中生物学试题(含答案).pdf
- 贵州省部分校2024-2025学年九年级上学期期中联考数学试题(含答案).pdf
文档评论(0)