欢迎来到天天文库
浏览记录
ID:47981541
大小:766.50 KB
页数:11页
时间:2020-01-18
《贪吃蛇游戏程序设计实验报告》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、Windows编程大作业贪吃蛇设计与实现学校:武汉轻工大学院系:班级:姓名:学号:2015年12月16日目录一、题目介绍二、设计目的三、详细设计3.1贪吃蛇本体设计3.2贪吃蛇食物设计3.3游戏界面设计3.3.1游戏初始化3.3.2游戏开始3.3.3游戏暂停3.3.4游戏退出3.3.5游戏总界面3.3.6游戏区域与背景3.3.7关于SNAKE3.4玩法规则设计3.5核心设计四、功能测试五、总结六、参考文献一、题目介绍:编写一个基于MFC的小游戏。基本要求:1、实现一个小游戏2、实现基本游戏控制功能3、具有游戏数据保存功能4、界面布局合理、美观;二、设计目的
2、:通过使用vc++6.0实现一个小游戏的课程设计,进一步掌握MFC的高级使用方法和锻炼自己动手写程序的能力。了解游戏设计的整个过程,通过熟练使用MFC来设计游戏。程序主要包括:游戏界面设计,游戏菜单栏设计,游戏初始化,游戏控制等。培养和锻炼开发游戏的能力。三、详细设计3.1贪吃蛇的本体设计贪吃蛇的头部拥有一个坐标(x,y),蛇体有一个长度len,蛇有一个运动方向direct,故定义一个结构体如下:structSnake{intx,y;intlen;intdirect;}Snake[50];3.2贪吃蛇食物设计贪吃蛇的食物有一个坐标(x,y),此食物有一个标
3、志isfood,当isfood为0时,表示食物还没被吃,为1时,表示被吃。structFood{intx;inty;intisfood;}Food;3.3游戏界面设计3.3.1游戏初始化游戏初始蛇体长度为3,颜色为灰色,食物标志为1,因为此时没有显示出食物,需要随机生成后,才置为0;voidCSNAKEView::OnInitialUpdate(){CView::OnInitialUpdate();Snake[0].x=10;Snake[0].y=10;Snake[1].x=11;Snake[1].y=10;Snake[2].x=12;Snake[2].y
4、=10;Snake[0].direct=3;Snake[0].len=3;Food.isfood=1;//初始化贪吃蛇起初有3个节点,长度为3,起始坐标;食物默认为1无0有//TODO:Addyourspecializedcodehereand/orcallthebaseclass}voidCSNAKEView::oninit(){CDC*pDC=GetDC();CBrushDrawBrush=(RGB(100,100,100));CBrush*Drawbrush=pDC->SelectObject(&DrawBrush);for(inti=0;i<=Sn
5、ake[0].len-1;i++)pDC->Rectangle(Snake[i].x*20,Snake[i].y*20,(Snake[i].x+1)*20,(Snake[i].y+1)*20);pDC->SelectObject(DrawBrush);}3.3.2游戏开始点击游戏开始菜单后,出现一个对话框,提示一秒后,将开始游戏。voidCSNAKEView::OnStart(){//TODO:AddyourcommandhandlercodehereSetTimer(1,1000,NULL);AfxMessageBox("1秒后开始游戏!");}3.3.
6、3游戏暂停点击游戏暂停菜单后,出现显示“已暂停游戏”的对话框。voidCSNAKEView::OnPause(){//TODO:AddyourcommandhandlercodehereKillTimer(1);AfxMessageBox("已暂停游戏");}3.3.4游戏退出点击游戏退出菜单,显示“退出游戏”的对话框,随后关闭游戏界面。voidCSNAKEView::OnExit(){//TODO:AddyourcommandhandlercodehereAfxMessageBox("退出游戏...");exit(0);}3.3.5游戏总界面大小设计使用
7、CMainFrame的PreCreateWindow函数对总界面进行初始化。BOOLCMainFrame::PreCreateWindow(CREATESTRUCT&cs){if(!CFrameWnd::PreCreateWindow(cs))returnFALSE;//TODO:ModifytheWindowclassorstylesherebymodifying//theCREATESTRUCTcscs.style&=~WS_OVERLAPPED;cs.cy=615;cs.cx=530;returnTRUE;}3.3.6操作游戏界面大小及背景色设计将背
8、景色设置为黑色,并将游戏区域显示出来。voidCSNAKEView
此文档下载收益归作者所有