基于Android平台的星际射击游戏的设计与实现(4)
来源:56doc.com 资料编号:5D10234 资料等级:★★★★★ %E8%B5%84%E6%96%99%E7%BC%96%E5%8F%B7%EF%BC%9A5D10234
资料介绍
4.2.2 游戏开始画面系统 进入游戏时,显示如下菜单项: (1) 进入游戏——当用户选择进入游戏时,正式进入游戏运行。 (2) 设置——当用户选择设置时,显示对话框,背景音乐:ON/OFF,音效:ON/OFF。 4.2.3 游戏操作介绍 本游戏主要采用触控来实现飞机的上下左右移动的,屏幕的上下左右分别作为控制飞机方向的上下左右。 4.2.4 游戏内容系统 本游戏飞机拥有一次生命,被敌机击中后会减少相应的HP值,HP值为0时即Game Over。敌机有不同的角色,每种角色的攻击力不一样,打中一些特别的敌机会爆装备,飞机可以通过碰撞道具来拾取装备,拾取装备后,飞机会改变射击形态,射击角度和射击强度,这些状况根据拾取的装备的不同而作出改变。玩家在击毁敌机的同时也要注意躲避敌机与子弹,将终极boss打败后即为游戏胜利。 4.2.5 线程控制和游戏暂停系统 游戏中可以随时呼出主页面,可以设置音效和背景音乐,然后继续回到刚才游戏中,或者退出游戏。 4.2.6 计时系统 道具出现的几率: 加防道具 20% 加血道具 50% 加攻击力 30% 5 游戏的详细设计及实现 游戏开发需求分析过后进入最重要的设计与实现阶段,根据需求分析确定手机游戏应该具有的功能和性能要求。本章主要介绍了该游戏的界面设计与实现,功能的详细设计与实现,以及屏幕响应和游戏声效的设计与实现。 5.1 界面的设计与实现 本游戏设计简单方便操作,共有三个界面:菜单选择界面、设置界面、游戏界面。本游戏因受手机屏幕大小限制,为了增加该游戏的易操作性,本游戏的所有界面都采用横屏显示。横屏主要的实现代码段如下: Android:screenOrientation="landscape" <!--设置界面的方向为横向--> Android:configChanges="orientation|keyboardHidden" <!--设置界面的方向不随手机的方向和键盘的改变而改变--> 在activity主函数中还需要对配置文件进行配置判断,实现的主要代码段如下: @Override public void onConfigurationChanged(Configuration newConfig) { super.onConfigurationChanged(newConfig); try { super.onConfigurationChanged(newConfig); if(this.getResources().getConfiguration().orientation ==Configuration.ORIENTATION_PORTRAIT) { setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT); } } catch (Exception ex) { } } 5.1.1 菜单选择界面 本界面位于主程序中,通过xml文件配置和定义好菜单选择界面的中包含的控件,主要控件有设置和进入游戏按钮,welcome.xml布局文件的主要代码段如下: <?xml version="1.0" encoding="utf-8"?> <FrameLayout xmlns:Android="http://schemas.Android.com/apk/res/Android" Android:orientation="vertical" Android:layout_width="fill_parent" Android:layout_height="fill_parent" Android:background="@drawable/homebg"> <RelativeLayout Android:layout_width="fill_parent" Android:layout_height="fill_parent"> <LinearLayout Android:orientation="vertical" Android:layout_width="wrap_content" Android:layout_height="wrap_content" Android:layout_centerInParent="true" <!--按钮位于界面的中心位置--> > <Button <!--设置按钮,监听动作进入设置界面--> Android:background="@drawable/button1" Android:text="设置" Android:layout_width="90dip" Android:layout_height="42dip" Android:id="@+id/btn1" /> <Button <!--开始按钮,监听动作进入游戏界面--> Android:background="@drawable/button1" Android:text="开始" Android:layout_width="90dip" Android:layout_height="42dip" Android:id="@+id/btn2" |