码迷,mamicode.com
首页 > 移动开发 > 详细

Android实践项目汇报

时间:2015-12-07 02:14:50      阅读:197      评论:0      收藏:0      [点我收藏+]

标签:

Android实践项目:推箱子

  推箱子是一款来自日本的古老游戏,其设计目的是训练人的逻辑思维能力。游戏场景一般是设定在空间狭小的仓库中,要求把箱子摆放到指定位置。这就要求玩家巧妙的运用有限的空间和通道,合理的安排箱子的位置和移动次序才可能完成任务。 随着计算机游戏的发展,很多编程爱好者基于该游戏的思想开发了出各种版本、各种类型的推箱子。这其中也包括很多手机版本的实现,伴随着手机与计算机的普及,很快推箱子游戏便进入了千家万户。

一、需求分析

2.1 功能需求

  在游戏开发之前,首先需要对游戏所应该具有的功能进行分析,功能分析是游戏开发的前提,有了需求才可能游戏的开发,并且需求分析必须非常详细,以免造成不必要的损失。 具体的功能如下:

  欢迎动画界面 ,游戏运行后首先进入的界面。

  菜单的选择,还需要设计出菜单界面,并且在菜单界面至少有四种菜单供用户选择。

  游戏的音效,游戏的过程中需要在适当的位置添加上音效,并且可以对音效进行开与关闭的设置 。

  游戏帮助,还需要为本游戏添加帮助界面,简单介绍游戏的基本功能及玩法。

  键盘操控,主要是完成玩家与游戏的交互。

  游戏的胜利,游戏需要设计适当的难度,使玩家能够经过努力完成游戏。

 

2.2 性能需求

  采用的呈现技术,推箱子游戏一般采用的都是2D的呈现技术,本案例为了增强游戏的吸引力,拟采用2.5D呈现技术。2.5D呈现技术也有多种视角可供选择,本游戏采用45度视角。

2.3 其他需求

  游戏情节,本游戏为轻量级的益智游戏,因此不存在很复杂的情节。这方面主要要做的工作主要为设计游戏各关仓库的形状、大小、可通过区域,以及各关中箱子的初始位置与目的地。

  目标受众 ,这个游戏受众面比较广,应该是老少皆宜的。考虑到受众面广的原因,应该将操作方式设计得更加人性化,画面更加清新。

  运行的目标平台,本游戏的目标平台为Android2.1。

  操作方式,本游戏拟采用手机键盘进行操作,对于没有键盘的型号也可以考虑采用虚拟键盘。

二、系统设计

 

系统模块划分与操作流程:

 

  共有类:

 

    Activity的实现类PushBoxActivity

 

    键盘监听线程KeyThread

 

  欢迎界面相关类:

 

    欢迎界面类WelcomeView

 

    欢迎界面的绘制线程类WelcomeViewThread

 

    欢迎界面的动画实现类WelcomeViewGoTread

 

  菜单界面相关类:

 

    菜单界面类MenuView

 

    菜单界面的绘制线程类MenuViewDrawThread

 

    菜单界面的动画实现类MenuViewGoThread

 

  游戏界面相关类:

 

    游戏主界面类GameView

 

    游戏主界面的绘制线程类GameViewDrawTread

 

    地图信息类MapList  

 

    角色封装类MySprite

 

    角色移动线程类SpriteMoveThread

 

    角色换帧线程类SpriteThread

 

    箱子移动类BoxThread

三、系统实现

  首先整个系统分为四个大类,具体区分如下:  

技术分享

 

 

 

 

 

 

 

 

 

 

 

  然后最主要的过程是游戏界面相关类,内部各个类的关系如下:

技术分享

  最后就是界面的设计,欢迎界面是一个移动的动画,游戏界面就在实现中展示了,菜单界面包括四个按钮,用uml做界面如下:

技术分享

四、系统测试

 

4.1 单元测试

  欢迎动画界面:

  技术分享

  菜单界面:

  技术分享

  游戏界面:

  技术分享

4.2 功能测试

  经过测试,实现了任务移动和推箱子等功能,并可以用键盘控制。

五、开发中遇到的问题及解决方案

 

5.1 Android版本问题

  本游戏使用的是Android2.1版本,首先要下载API21,再导入项目时会报错,然后下载相应的API就可以了。

5.2 键盘连接问题

  键盘的连接要改变config配置文件。找到模拟器创建的文件夹所在的配置文件,即.andriod里边的adv文件夹。打开config文件,把hw.dpad=no改为hw.dpad=yes,保存好后退出,重新启动模拟器就可以了。

5.3 成功过关问题

  游戏中存在一个错误就是推到箱子时,不论箱子往哪推,都会显示游戏结束,找到BoxThread类,添加如下return false,从而达到只有所有的箱子都变成绿色时游戏才成功过关。

六、总结

  本次项目主要是完成了基于Android平台的推箱子游戏的实现,使用了Android Studio的开发平台,实现了不一样的2.5D呈现技术的新视角。完成了欢迎动画、界面设计、游戏设计等多个环节的制作,并且解决了游戏开发过程中的几个问题,游戏功能基本开发完全,但仍有很多地方可以进行优化和改进。

  (1)音效的提升,本游戏中,并没有过多添加对音效的处理,有兴趣的玩家可以再添加一些适当的音效,以提升玩家的体验。

  (2)玩家的定制,本游戏中,应该添加上游戏难度的选择功能,使玩家根据自己的情况选择不同的等级进行游戏,这样才更加合理。

  (3)成绩的存储 ,如果能在游戏的最后加上游戏成绩的存储与排行,那更会大大提高玩家对本游戏的体验,增强游戏的人性化。

  最后,非常感谢娄老师和同学们给予我的帮助!

 

Android实践项目汇报

标签:

原文地址:http://www.cnblogs.com/20159217cbs/p/5024905.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!