1、android连连看手机游戏开发设计说明书Android手机软件开发设计说明书题 目: Android 连连看 姓 名: 学 号: 班 级: 0 指导教师: 完成日期: 2011.12.18 第一章 功能介绍 21.1功能描述 21.2 功能特点 2第二章 系统的设计实现 32.1 结构设计 32.2 设计实现 32.2.1 设计思想. 32.2.2 具体实现 42.2.3 界面设计说明. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .72.2.4主要算法设计说. . . . . . . . . . .
2、 . . . . . . . . . . . .10总 结 11参考文献 12Andorid连连看系统设计说明书第一章 功能介绍1.1功能描述在连连看游戏中,两张相同图片之间存在通路的条件就是两张图片间某条路径中含有的拐角数不超过两个并且没有其它图片存在。基于这一基本功能完成的同时,这个连连看还有以下一些功能:1、计时器:在游戏过程中同步设置一个计时器,需在规定时间内完成游戏,否则就为游戏失败。2、游戏难度:可以在游戏开始时设置游戏难易程度,其实就是规定时间的不同。游戏的难易程度可以再窗体的游戏难度显示栏上显示。3、暂停:在游戏过程中,玩家可以根据自己的需要暂停游戏,点击start键后又可以返
3、回游戏。4、路径显示:游戏过程中,如果两张所选的相同图片之间存在着通路,就可以用连线显示该组图片间的一条路径,便于玩家观察。1.2 功能特点1、用于为玩家提供操作提示,便于玩家了解游戏的规则。2、用于为玩家提供可视化的游戏界面,增加了游戏的可玩性。3 、当用户选择菜单时能够快速反应,以满足用户的要求。4、完成图片的消除功能,消除时画线功能,重新排列功能。第二章 系统的设计实现2.1 结构设计连连看游戏结构如下:2.2 设计实现主要有四个大类:class GameView /游戏视类,处理游戏中的情况,包括界面生成,算法,一部分消息响应。class GameActivity /用于处理游戏中的消
4、息提示class StartActivity /用于菜单的设计Class SetActivity /用于菜单中游戏难度的设定2.2.1 设计思想(1)主要功能:用于为玩家提供操作提示,便于玩家了解游戏的规则。 (2)可扩展性:能够适应应用要求的变化和修改,具有灵活的可扩充性.2.2.2 具体实现图1. 主界面主要有开始游戏、游戏设置、游戏规则、退出游戏等几个选项图2. 游戏设置的菜单 主要设置游戏的简易程度图3.进行游戏算法 /定义菜单类,接口为OnClickListener,用于接收用户的单击消息。public class StartActivity extends Activity imp
5、lements View.OnClickListener/设计5个按钮用于接收按钮消息:private Button btnStart;private Button btnSet;private Button btnRole;private Button btnAbout;private Button btnExit;/在OnCreate函数中将它们初始化:/获取按钮btnStart = (Button)findViewById(R.id.btnStart);btnSet = (Button)findViewById(R.id.btnSet);btnRole = (Button)findVie
6、wById(R.id.btnRole);btnAbout = (Button)findViewById(R.id.btnAbout);btnExit = (Button)findViewById(R.id.btnExit);/注册点击事件btnStart.setOnClickListener(this);btnSet.setOnClickListener(this);btnRole.setOnClickListener(this);btnAbout.setOnClickListener(this);btnExit.setOnClickListener(this); 在OnClick函数中对响应
7、进行处理:setContentView(new GameView(this); /进入游戏,游戏在GameView类中进行了封装/说明游戏规则new AlertDialog.Builder(this).setMessage(1. 将相同的两张图片用三根以内的直线连在一起就可以消除n +2. 每消除一次图片,都会使可用时间增加n + 3. 每隔一段时间,当前的界面中的图片会进行重排列n +4. 在规定的时间里,当所有的图片都消除时,即为胜利n + 5. 规定的时间内有图片未消去,即为失败n).setPositiveButton(确定, null).show();/结束游戏this.finish(
8、);/进行游戏设置,设置游戏的难度,调用了SetActivity类intent.setClass(this, SetActivity.class); 2.2.3 界面设计说明主要功能:用于为玩家提供可视化的游戏界面,增加了游戏的可玩性。 可扩展性:能够适应应用要求的变化和修改,具有灵活的可扩充性。1、 功能生成游戏界面,生成进度条。如下图:2、 性能 能够快速的随机生成符合用户需要的界面3、 算法 /定义游戏视图类public class GameView extends View/存储素材图片public int imageType /保存所有小格子中的图片 public int grid
9、= new introwcol;/初始化加载图片的类型public void initType() /总共要加载的图片int size = (row-2)*(col-2); /64/每类图片加载的次数(张数) 要为偶数int count=size/imageType.length; /imageType.length=16 即,16种图片for(int i=0; iimageType.length; i+)for(int j=0; jcount;j+)type.add(imageTypei);/初始化网格的设计private void initGrid() Random r = new Ran
10、dom();for(int i=0; irow;i+)for(int j=0; jcol;j+)if(i=0 | i=row-1 | j=0 |j=col-1)gridij=0; /四周不设置图片elseint index=r.nextInt(type.size();gridij=type.get(index);type.remove(index);/设置位图的大小private void ititmBitmap(Context context) int typeLength=imageType.length;image=new BitmaptypeLength;/重新绘制for(int i=
11、0;itypeLength;i+)/创建一个Bitmap的对象Bitmap bitmap=Bitmap.createBitmap(int)width, (int)height, Bitmap.Config.ARGB_8888);/对Bitmap进行绘制Canvas canvas = new Canvas(bitmap);Drawable dwr = context.getResources().getDrawable(imageTypei);dwr.setBounds(1, 1, 30, 30);dwr.draw(canvas);imagei=bitmap;/在OnDraw函数中画出框格,每次
12、进行重绘操作/设置背景颜色:Paint backGround = new Paint();backGround.setColor(Color.WHITE);/画一个矩形canvas.drawRect(0, 0, getWidth(), getHeight(), backGround);/设置网格线条的颜色Paint higth= new Paint();higth.setColor(Color.BLUE);/画网格for(int i=0;i10;i+)/画横线、纵线canvas.drawLine(0, height*i, getWidth(), height*i, higth);canvas.
13、drawLine(width*i, 0, width*i, getHeight(), higth);/画image图片boolean test=true; /检测图片是否肖完for(int i=0;irow;i+)for(int j=0;jcol;j+)if(gridij!=0)canvas.drawBitmap(imageArrays.binarySearch(imageType, gridij), i*width, j*height, null);test=false; /还有图片,说明未赢4、接口API函数5、限制条件无明显限制条件2.2.4主要算法设计说明1、程序描述 主要功能:完成图
14、片的消除功能,消除时画线功能,重新排列功能。 可扩展性:能够适应应用要求的变化和修改,具有灵活的可扩充性。2、功能完成连连看游戏的核心算法。3、性能 能够快速判断两图片是否能消除,并能在消除时进行画线操作。隔一段时间,能够打乱顺序进行重新排列。4、输人项用户点击、时间条5、输出项 消除匹配的图片总 结通过这一学期的学习,我首次对Andorid系统的开发起源,发展过程、未来趋势以及应用方面进行了初步的文字性的了解,然后在一些参考文献的辅助下下载并搭建了用于amdorid开发的esclipes集成环境,并第一次建立运行简单程序。随后更进一步学习了解了andorid系统中比较复杂的应用程序。在对其主
15、要文件进行分析后,在此基础上开始尝试写一下简单程序。在对这一实际问题进行操作并解决一些问题后,对于andorid程序的编写有了更深一步的认识。不仅增加了对于andorid系统的知识,更重要的是,通过学习提高了自身能力,在对一项新事物,从陌生到了解再到掌握,这些都是之前从未经历过的挑战。通过这一学期的学习让我看清楚了自己需要什么,同时也让我吸取了愈多学习以及和人相处的经验,这将对我以后踏足社会,谋生里也有很好的借鉴和帮助作用。今后,我会珍惜这些宝贵的经验,在人生的旅途中勇往直前,迎接时代的挑战.参考文献1 高翔,何立军. JSP动态网站开发技术与实践. 电子工业出版社 2007年4月, 第二版
16、2 吴玉亮译. NetBeans IDE 中文版用户指南 机械工业出版社 2006年3月,第一版 3 赵松涛. SQL Server2000系统管理与应用开发 2006年2月人民邮电出版 第一版4 孙卫琴. Tomcat与JavaWeb开发 电子工业出版社 2007年2月,第二版5 张慧英 尹春霞 电脑编程技巧与维护 2010 第10期 - 维普资讯网信息工程学院Android手机软件开发实训实践环节考核报告单2011-2012学年度第一学期期末排课编号:(2011-2012-1)-2005502-09419-1 批阅日期: 年 月 日姓名班级学号评分标准及得分评分标准满分得分1、 程序能正常
17、运行连连看项目必须实现游戏开始、重新开始、重新排序、转换主题、退出程序等最基本的功能。实现最优路径选择,游戏的分值计算算法,按满分计算。动态人物设计,要求设计的人物特点鲜明,能完成基本的动作,比如抬腿、转身、挥拳。实现快速行走和跳跃,按满分计算。自选题目,要求主题鲜明,有足够的动态效果,如涉及到3D内容并且运行正常,按满分计。602、 能正确回答教师关于知识点的提问教师根据学生的学习情况和为完成的项目所编的程序,一般会问3个问题,每个问题5分。153、 代码规范代码的规范性主要考察三个大方面:(1) 凹凸缩进是否清楚地体现程序的结构;(2) 注释是否足够,他人是否从注释中很容易分析出程序实现的功能;(3) 标识符命名154、 有创新点游戏设计主要是创意,有好的创意适当加分55、题目难度根据难易程度和实现的功能多少适当加分5考核成绩任课教师签名
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1