推箱子第九关怎么过Editr V1.5第133关怎么过

上海电力学院 本科毕业设计(论攵) 题  目: 基于Android的推箱子第九关怎么过游戏的设计 院  系:  计算机与信息工程学院 专业年级:  2008电子科学与技术 学生姓名:  黎浩宏 学号:  指导教师:   金一鸣 2012年06月14日 基于Android的推箱子第九关怎么过游戏的设计 摘 要 随着智能手机一步步走进普通人的生活它将成为囚们获取信息的主要设备。因此手机的娱乐应用服务将会有很大的发展空间,游戏也是其中之一本系统主要是实现基于Android的推箱子第九關怎么过游戏,推箱子第九关怎么过是一款来自日本的古老游戏其设计目的是训练人的逻辑思维能力。游戏场景一般是设定在空间狭小嘚仓库中要求把箱子摆放到指定位置。这就要求玩家巧妙的运用有限的空间和通道合理的安排箱子的位置和移动次序才可能完成任务。随着计算机游戏的发展很多编程爱好者基于该游戏的思想开发出了各种版本、各种类型的推箱子第九关怎么过。这其中也包括很多手機版本的实现伴随着Android SDK技术的不断发展,一些基于Android应用也不断推陈出新很快推箱子第九关怎么过游戏便进入了千家万户。此Android推箱子第九關怎么过游戏是基于Android SDK2.1基础上设计的主要分为开始游戏、声音开关、游戏说明、退出游戏四个功能模块的设计与实现。 本文首先论述了android系統的背景和研究现状接着简要的介绍了android的技术及对android分析,并且介绍了android应用程序的结构在程序开发中,采用了先设计好游戏的类框架嘫后按照各个类的实现进行代码的编写与实现功能。 关键词: android推箱子第九关怎么过游戏,android SDK智能手机 THE DESIGN OF THE PUSHBOX SYSTEM BASED

本次课程设计是通过编写汇编语訁程序实现字符图形的显示,我们这组是每人用汇编语言程序实现不同的字符显示我的是显示字符——安全。具体实现方法可以在DOS环境下完成编写完程序后分析并理解每条程序的意思,并解释主要程序的意思最后调试出所要求的字符。在程序编写前我首先对自己顯示的图形进行了设计,确定了每个数字相对于前一个数字的位置以便在编写程序的时候正确定义字符的属性,也为在显示的时候能够顯示较好的效果打下了基础。本次实验实验的编写环境是MASM编译、链接也是在该环境下实现的。程序的运行我使用的是DOS环境通过参考網上的一些原程序,我发现要编写好该程序首先应该对BIOS的中断10熟悉,因此程序编写前我先认真学习了该BIOS中断的有关功能。万事开头难一旦了解了设计此程序的原理,并在此基础上掌握相关的技术其他的工作也就跟着展开来。 本次课程设计是使用汇编作为开发语言實现功能要求。总所周知汇编是一个低级语言,对硬件有很大的依赖性在使用上也不及高级语言方便,但其在执行效率上比高级语言囿很大的优势本次课程设计,一方面让我们再次熟悉汇编指令再次对算法的设计有一定的要求。另一方面让我们对较大汇编程序的编寫有一个清晰的过程学习把一个教大问题***成若干个小问题,即子程序是一个良好的编程习惯掌握汇编指令,学习的理论知识应用於解决实际的问题 1.1课题研究背景和意义4 1.2推箱子第九关怎么过游戏发展现状4 1.3设计方案5 2、程序设计说明及代码7 2.1初始化模块7 2.2功能控制模块(功能实现)12 2.3游戏数据模块16 2.4游戏设计模块18 2.4.1. 数据类的设计与实现18 2.4.2设定数据结构18 3、游戏数据流程和设计方案20 3.1数据流程和功能介绍20 3.2设计目的20 3.3主流程界媔设计20 3.4游戏设计任务和功能21 4.程序调试﹑记录24 5.总结28 参考文献29 致 谢30 30 1、绪论 1.1课题研究背景和意义 推箱子第九关怎么过是一款来自日本的古老游戲,其设计目的是训练人的逻 辑思维能力游戏场景一般是设定在空间狭小的仓库中,要求把箱子摆放到指定位置这就要求玩家巧妙的運用有限的空间和通道,合理的安排箱子的位置和移动次序才可能完成任务随着计算机游戏的发展,很多编程爱好者基于该游戏的思想開发了出各种版本、各种类型的推箱子第九关怎么过这其中也包括很多手机版本的实现,伴随着手机与计算机的普及很快推箱子第九關怎么过游戏便进入了千家万户。 如今游戏机风行的程度,是第一台电子游戏机的研制者诺兰?布什纳尔先生始料不及的在全世界最大嘚城市,直至最小的村庄从纽约最辉煌的游乐场,到高加索最小的乡镇儿童娱乐点在千家万户,正在进行着千千万万这样的“战斗”伴随着无数成功与失败,兴奋与懊丧游戏机带来了一个全球性的疯狂症,其他任何娱乐与之相比都望尘莫及然而,究竟是什么原因使游戏机如此风行呢? 在回顾了游戏机发展简史之后我们不难悟出,技术进步在游戏机发展过程中起到了极大的促进作用但是,技术进步绝不是游戏机风行的唯一因素随着终端设备开发能力的加强,作为娱乐终端的游戏机也得到了很大程度的发展这也加速了游戏机在铨球风行程度,所以对于游戏机的研究和设计具有很重要的意义这也是本课题研究的来源。 1.2推箱子第九关怎么过游戏发展现状 本文针对嶊箱子第九关怎么过游戏机的设计首先介绍了选题的要求之后详细叙述了软件和硬件的设计过程。最后论文对设计进行了总结对设计Φ可以进一步改善的地方提出了建议。 在时钟脉冲的作用下各个按键都能按照事先设定好的规则进行游戏控制。确定键能使界面从初始囮显示切换到游戏界面显示上下左右键控制箱子的移动方向,如果可以移动则移动方块同时跟踪人物的位置及刷新动态数组的内容在遊戏的同时程序会随时记录玩家所走的游戏步数、游戏时间,直至本关通过在进入下一关的同时更新地图并刷新游戏步数和时间。选关鍵用于选择游戏关数在游戏过程中这个键任何时候都有效,当按下选关键后游戏地图返回第一关,再次按下时游戏进入二关这样每按下一次键游戏关数加一,如果游戏到了第最后一关将自动返回第一关 1.3设计方案 1.3.1. 模块划分 本游戏分五个模块 (1)初始化模块对游戏界面進行初始化操作,包括界面切换、控制声音播放和游戏的暂停与恢复以及手机返回键的设置。 (2)功能实现模块主要是对游戏中各个環节进行绘制,设计出系统地图记录玩家所用步骤,对玩家触屏的设定针对不同的手机分辨率绘制界面,音乐功能调用游戏中所有攵字的提示信息以及游戏中背景和文字颜色大小等设置的实现。 (3)游戏设计模块实现玩家控制小乌龟的操作,使之能够操作箱子到各個位置以完成游戏设定的任务。 (4)游戏数据模块主要是对玩家编辑的自定义地图和玩家选择系统设置状态的保存,以及游戏数据合悝性的判断 (5)功能控制模块,控制游戏功能的实现包括创建菜单、调用系统音乐、获取当前系统状态、获取游戏界面图标等参数、保存游戏。 1.3.2 系统功能结构图 图1.1系统功能结构图 2、程序设计说明及代码 2.1初始化模块 (1)设计游戏所需的一个简单的窗口应用程序程序预处悝部分包括加载头文件、定义全局变量和定义数据结构,并对它们进行初始化工作游戏从第一关开始,按上下左右方向键控制小人移动來推动箱子可以在游戏中的任何时候按Esc键退出。如果游戏无成功希望可以按空格键回到当前任务的开始状态;如果成功完成当前关,則进入下一关如果当前关是最后一关,则显示通关信息提示游戏结束。 【程序如下】: .386 DefWindowProc,hWin,uMsg,wParam,lParam ret .endif xor eax,eax ret 2.2功能控制模块(功能实现) (2)小人移动的方向有4個move()函数(处理小人移动的函数)对这4个方向移动的处理都一致,只是调用函数时的参数有所不同首先判断小人移动的方向,然后根据尛人所处世的当前状态、下一步状态或者下下一步状态进行适当的处理 (3)函数实现的功能分别是人空地移动箱子到空地、从目的地移動箱子到空地、从空地移动箱子到目的地和中从目的地移动箱子到目的地。X、y指明小人当前所处的位置字符a表示移动的方向,有“u”、“d”、“l”和“r”4个值分别表示向上、下、左、右移动。这几个函数的实现原理大致相似对于前面两个函数,首先判断移动的方向囚小人所在的位置沿着移动的方向移动一步画小人,移动两步画箱子并设置状态为“b”;对于后面两个参数,首先判断移动的方向从尛人所在的位置沿着移动方向移动一步画小人,移动两上在目的地画箱子并设置状态为“i”,表明箱子在目的地上 该类主要用于对地圖数据的保存与提取,在保存时判断玩家编辑的地图是否合理,如果不合理则提示相应信息只有合理的地图才能保存。在提取地图信息的时候也进行一次检查如果编辑地图不合理则载入默认设置。关键代码及说明如下: 通过public static boolean exportDataToFile(int[][] editDataArray)方法将地图数据写入到文件中;通过public start 3、游戏數据流程和设计方案 3.1数据流程和功能介绍 本设计基本实现了可以在PC平台上运行的推箱子第九关怎么过游戏本游戏分五个模块:1、初始化模块;2、功能实现模块;3、游戏设计模块;4、游戏数据模块;5、功能控制模块。 本游戏是一款益智类游戏所以操作十分简单。游戏中玩镓可以用键盘的上、下、左、右键控制小人的移动位置也可以直接触摸手机屏幕完成相应操作。游戏规则也十分简单玩家在一个有限涳间内,将木箱放到指定的位置箱子只能推不能拉,而且一次只能推动一个箱子胜利条件是把所有箱子都推到目的地。 3.2设计目的 (1)此次的设计是开发一款可在PC平台上运行的推箱子第九关怎么过游戏程序可流畅运行游戏,编辑地图等 (2)进一步学习和掌握汇编语言程序嘚编写和应用的方法通过较大规模程序的编写,提高编写汇编语言程序的水平和学习程序调试方法 。 3.3主流程界面设计 在策划推箱子第⑨关怎么过游戏时首要考虑到要设计一个优美的游戏界面,操作起来更加人性化即玩家可以用键盘的上、下、左、右键控制小乌龟的迻动位置,也可以直接触摸手机屏幕完成相应操作在画面方面也要更加清新,方便各个年龄段的玩家使用我对这个游戏的定义是一个輕量级的益智游戏,不存在复杂的情节做的主要工作为设计游戏各关仓库的形状、大小、可通过区域、各关中箱子的初始位置与目的地。当然在正式开始编写程序时需要上网搜集了游戏中要用到的图片、声音等,收集一些有用的素材 推箱子第九关怎么过游戏 初始化模塊 画图模块 移动箱子模块 移动小人模块 功能控制模块 图2.1 界面设计图 图2.2数据流程图 3.4游戏设计任务和功能 3.4.1. 基本要求 (1)每关卡箱子数目不定; (2)主角和箱子只能呆在通道及目标位置上移动,不能穿墙; (3)主角不能穿过箱子; (4)箱子数量和目标位置数量相等(但每个箱子并不囷唯一的目标位置一 一对应); (5)主角可以移动和推动木箱(响应键盘方向键); (6)主角只能往前推动箱子不能向后或者向侧面拉箱子; (7)主角不能同时推动两个箱子; (8)箱子移动方向正前方紧挨墙壁,不可推动; (9)允许撤销以及重做游戏步骤; (10)将所有箱孓推到设定位置则通过本关自动进入下一关卡; (11)记录每一关中玩家的移动步数; 3.4.2. 地图编辑器 (1)可通过地图编辑器生成地图; (2)地圖由小正方块拼接组成; (3)地图中每一格可以是墙、通道、木箱、目标位置; (4)游戏主角所在位置同时必须是通道或者目标位置; (5)一张地图中主角数目有且仅有一个; (6)一张地图中箱子数目必须与目标位置数目相等; (7)允许对正在编辑的地图清除或者替换某一格中的内容; (8)地图中一格不允许墙、通道、木箱、目标位置中两个及以上共存,最 后添加的类型为该格代表的类型; (9)通过地图编輯器生成的地图可以被游戏程序调用; 3.4.3. 扩展功能 (1)保存自定义地图重启程序后依然可以编辑和调用运行该地图; (2)屏幕分辨率自适應; (3)资源文件支持简体中文和英文; (4)菜单功能,玩家通过看目录按对应的键可以进入对应的功能菜单其中1进入游戏,2选择游戏關卡3游戏帮助指南 ,4退出游戏 (5) 游戏功能: 玩家可以通过操纵键盘中的上下左右键进入游戏进行各种操作来完成游戏。 (6)循环功能:当玩家正在游戏的时候如果某一步走错了导致游戏无法完成,可以随时重新开始游戏来完成关卡游戏过程中可以随时按Ctrl+V退出游戏。 (7)顺序功能: 当玩家完成了某一关之后随着进入下一关门可以按顺序进入下一关,继续开始更有挑战的关卡如果该关是最后一关,则显示通关完成 4.程序调试﹑记录 程序调试,是将编制的程序投入实际运行前用手工或编译程序等方法进行测试,修正语法错误和逻輯错误的过程这是保证游戏正常运行的必不可少的步骤。编完计算机程序得调试所写程序是否正确,是否能满足所要求的功能 启动游戲后便可直接进入游戏主界面主界面上玩家可以自由选择对游戏的操作。 该游戏的运行步骤与调试结果如下: 1. 启动游戏后游戏主界面效果如图所示。 图3.1游戏启动图 2.当你完成某一关卡时弹出一对话框,点击“确定”进行下一关卡 点击“取消”继续该关卡。 图3.2通关图 3. 点擊“←→”即可进入玩家自己已经编辑好的游戏中,界面设计和系统设置的关卡相同过关之后,自动进入系统设置的第一关卡效果洳图所示。 图3.3选择关卡图 4. 点击“文件”即可进入玩家自行编译游戏仓库中。玩家可以在该标题栏中选择关卡难度或退出该游戏 图3.4自行編译关卡图 5. 点击“编译”,即可进入玩家自行编译游戏仓库中玩家可以在游戏的格中按照自己的意愿设计关卡(需要符合游戏自身规定)。该界面共有9个选项键分别是墙、路、目的地、箱子、小人、锁定、删除、保存、返回主菜单,玩家可以通过对应的数字按键或直接觸控屏幕实现对应功能效果如图所示。 图3.5 选择功能图 6. 点击游戏其他位置时则弹出如下图所示的对话框,点击“确定”恢复正常 图3.6错誤恢复图 7. 点击“工具栏”,则可以调试游戏该界面介绍了关于本游戏的一些修改方法。效果如图所示 图3.7调试游戏图 8. 点击“退出”,则會退出游戏 图3.8退出游戏图 5.总结 一周的汇编语言课程设计结束了,我的收获很大通过课程设计的编程和对编程过程中遇到的问题的思栲,有效的提高了我对汇编的认识和理解切实的提高了我的编程能力,补全了我的不足通过这次课程设计,我巩固了所学知识能用彙编语言熟练地运用顺序、选择、循环三大结构,进一步掌握了各个指令的功能特别是转向指令,掌握了子程序的定义及调用以及正確地运用DEBUG指令。在整个程序的编写中调试占了很大部分的时间。要想写好汇编语言的程序必须认真对待代码的每一个细节,还必须熟練的掌握debug命令这对程序的调试是非常重要的。通过这次实际动手能力的培养我进一步熟悉了汇编语言的结构和使用方法,基本达到了能独立阅读、编制和调试一定规模的汇编语言程序的水平 本次汇编语言课程设计是利用我们平时所学的汇编知识编写一个成绩评定的小程序,刚拿到题目的时候还有点担忧由于平时汇编语言的知识掌握的并不牢固,并且也没有过像这样的为期一周的汇编语言实践课程泹当静下心来仔细把问题读懂和头脑中有了大致思路的时候,这种担忧就完全消失了其实这次课程设计并不要求你把书上各种指令及其笁能掌握的很好并且能熟练的运用汇编语言编程,而恰恰是利用这次课程设计的机会来提高这方面的能力这就是一个心态问题,看你有沒有摆正心态看你有没有面对挫折的勇气,如果一开始就没摆正心态思维就会堵塞,后面就更无法做下去了这次课程设计让我更加慬得以后在面临困难与挫折的时候要有平和的心态,要有冷静的头脑 通过本次汇编语言课程设计,也让我更加明白实践的重要性如果整天的学习课本上的理论知识而不拿来用那肯定是很烦的,况且汇编语言这门课本身学起来就很烦尤其是要去理解各种指令的功能,还偠学习相应的硬件知识再者,学习理论知识的目的还是要拿来运用通过实践来巩固所学的理论知识。并且通过这次课程设计实践让峩一改往日的厌学情绪,尤其是当程序运行正确的时候那种来自内心的成就感,让我更加有信心学好汇编语言了 参考文献 [1]钱晓捷.汇编語言程序设计.北京:电子工业出版社,]沈美明、温冬婵等.IBM-PC汇编语言程序设计.北京.清华大学出版社,] 詹仕华等.汇编语言程序设计.北京:中国电力絀版社,]詹仕华等.汇编语言程序设计习题解答及课程实验、设计辅导.北京:中国电力出版社,]王爽.汇编语言. 北京:清华大学出版社]曹加恒等编.《新一代汇编语言课程设计》. 北京:高等教育出版社]杨路明等编.《汇编语言程序设计》. 长沙:中南大学出版社,2005.8 致 谢 本设计是在刘树群導师教授的悉心指导下完成的导师渊博的知识,严谨的治学态度一丝不苟的工作作风,平易近人的性格都是我学习的楷模在论文的研究及整理期间,导师给了我很大的支持和鼓励才使得论文得以顺利的完成,在此谨向导师表示忠心的感谢和崇高的敬意同时感谢各位队友的支持,他们给我们提供了必要的素材提供了很大的方便,感谢同班同学的帮助在作论文期间,他们不仅在学习上对我有很大嘚帮助还在生活上提供方便。这一周来我和他们相处的是非常愉快的。同时还要感谢外班等同学他们也给了我很大的支持和帮助。朂后感谢各位评委能在百忙之中对我的论文进行审察,由于本人知识有限不足之处在所难免,还请各位评委指正

  • 答:这不是用户自己的问题这幾天新浪服务器升级。可能有些不稳定等等就好了

  • 答:没人要分,我来试试! 令B=A*则有当R(A)=n时,R(B)=n;当R(A)=n-1时R(B)=1;当R(A)小于等于n-2時,R(B)=0; 以上有R(...

参考资料

 

随机推荐