1 / 21
文档名称:

游戏开发2048指导.doc

格式:doc   大小:335KB   页数:21页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

游戏开发2048指导.doc

上传人:雾里看花 2019/4/12 文件大小:335 KB

下载得到文件列表

游戏开发2048指导.doc

文档介绍

文档介绍:肅芁游戏开发设计说明书薁袅膄蚀肇袇节题目膀2048袈学号羈20**********蚅学生姓名袃董涛薈指导教师螅谢逸螃所在班级芃计科1108班艿专业名称螇计算机科学与技术膅蚂聿袈目录芄肁蝿蚆游戏开发课程设计 1文档来自于网络搜索蚆目录 2文档来自于网络搜索薁一. 课程设计主要内容 3文档来自于网络搜索薀1. 题目 3文档来自于网络搜索螇2. 需求分析 3文档来自于网络搜索螄3. 设计环境 3文档来自于网络搜索羀二. 详细设计说明 4文档来自于网络搜索芀1. 系统程序流程图 4文档来自于网络搜索螈2. 系统概要说明 5文档来自于网络搜索袃3. 功能说明 5文档来自于网络搜索蚄4. 系统各类的知识点说明 5文档来自于网络搜索肀5. 主要算法设计 6文档来自于网络搜索薆三. 游戏运行说明 10文档来自于网络搜索肃1. 游戏开始 11文档来自于网络搜索螁2. 游戏进行 12文档来自于网络搜索蚇3. 游戏结束 12文档来自于网络搜索莄四. 课程设计总结 13文档来自于网络搜索蒂芇蚈螆羂羈蒆袄莁螈薇羃螀蒈虿莅芀艿莆蒃羃罿课程设计主要内容蒇题目螆2048莃需求分析虿游戏操作需求:芅1、可使用鼠标或↑、↓、→、←或W、X、A、D键进行操作;羄2、Play按钮重新开始游戏;螂3、Undo按钮取消本次操作,回到上一步。蒀2048游戏算法莆肂1、游戏开始时随机的产生2个数值为2/4的方格,其中1个方格置于4个角中的一个位置,膁另一个方格随机的置于其它位置,其余方格值为0。膀2、每次移动鼠标或按方向键后,逐行计算移动后的方格值。每行移动的算法是:先将所有值为0的数移至行首。能后从行尾开始逐一和前一个数比较,如果相等则合并这2个格子。文档来自于网络搜索莇3、每合并一次格子,将其值累计到游戏总分中。莅4、一次移动结束后,在所有值为0的方格中随机的分配一个2/4的值。蚁5、所有方格值不为0且上下、左右相邻的方格都不相等,则游戏结束。羁6、2出现的概率为90%,4出现的概率为为10%。膅设计环境薃运行环境:windowsxp,windows2003windows7肀开发环境:MicrosoftVisualStudio2010蚁编写语言:c#芆袆螃***芈羄详细设计说明膃袈开始肅随机产生两个方块膂键盘控制移动方块系统程序流程图薂蚈膆蒅肁莈芈薃蒁移动方向最底部方块是否有方块腿羅羆袀衿肆方块移到底部肄薄蚀N膈膂原来位置方块清除羃莀Y羅薅蒂肀羇蚃袂袁数字是否相等肈肅芁N薁袅上一格方块数字是否相等膄蚀Y肇两方块数字相加把上面的行数据下移并置袇节膀袈羈Y蚅N袃薈方块是否能够移动螅Y螃Y芃N艿螇膅蚂聿结束游戏袈芄系统概要说明袇本程序是在VS2010环境下编写的Windows应用程序,函数中利用了画图函数绘制基本方块模型,并通过键盘或鼠标执行相应的操作。在产生的方块中,调用随机方法,随机产生1~100中的任何一个数字,数字小于90,方块显示数字为2,否则显示为4,每一,通过这种方式,实现了游戏中其中不同模块的数字的随机产生。文档来自于网络搜索薅莁功能说明莂(1)实现可以显示2或者4两张数字的方块芇(2)实现各个方块的上下左右移动芆(3)实现方块间数字判断与相加蒃系统各类的知识点说明蒀主类蚆Main()方法羆主函数调用主要功能的三个方法,实现程序运行。(画单元格)蕿Cube类的功能定义了单个方块的构架。此类中,定义了不同的数字显示所显示的不同的单元格方块,使方块相加变化明显。文档来自于网络搜索荿此类中定义了属性currValue//当前得分螆以及方法Cube_Paint()方块的绘制,此方法针对可能出现的12中数字显示,运用Graphics类,(方块的控制)羁此类主要实现对方块的控制,实现每种不同操作的实现衿此类创建了四个属性蒇privateCube[]cubes=newCube[16];//创建个个cubes类的数组,实现游戏方块的创建文档来自于网络搜索莃enumMoveDict{Up,Down,Left,Right};//定义枚举类型,键盘控制方向,上下左右文档来自于网络搜索聿privateintx1,y1;//鼠标位置芈privateintscore=0;//房钱成绩羃privateint[]prev=newint[17];/./上一步方格值和积分蒄Form1()方法:构造方法,实现方块的实例化创建蒂start()方法:游戏的初始化,实现最开始两个方块的摆放。蚈SavePrevVaule()方法:保存每上一步的方块值以及成绩,实现撤销一次的操作螃LoadPrevValue()方法:加载上一步值,当进行撤销操作时,调用该方法。节OneMove()方法:实现移动一