没有合适的资源?快使用搜索试试~ 我知道了~
五子棋游戏总体设计与实现(20210116190233).docx
4 浏览量
2023-02-07
08:42:00
上传
评论
收藏 1MB DOCX 举报
。。。
资源推荐
资源详情
资源评论






















4.系统总体设计与实现
4. 1 总体设计分析
总体设汁是软件开发过程中的另一个重要阶段,在这一阶段中将根据需求分 析中提出
的逻辑模型,科学合理地进行物理模型的设计。这个阶段的主要 U 标是 将反映用户信息
需求的逻辑方案转换成物理方案,并为下一阶段提供必要的技术 资料。
4.1.1 总体设计原则
(1)
整体性:软件是作为统一整体而存在的。因此,在总体设计中要从整个软件 的
角度进行考虑。
(2)
灵活性:为保持软件长久的生命力,要求该手机游戏软件具有很强的环境 适
应性。为此,游戏软件应具有较好的开放性和结构的可变性。
(3)
可黑性:可幕性是指软件抵御外界干扰的能力及受外界干扰时的恢复 能力。
(4 )经济性:经济性是指在满足游戏软件需求的前提下,尽可能地减小游戏 软件的开
销。
4 .1.2 软件模块总体设计
软件中各模块之间的关系通常利用层次图来表示。它是一种一系列多层次的 用树形结
构的矩形框描绘数据的层次结构框图。一个单独的矩形框作为树形结构 的顶层,各个数据
的子集山下面的各层矩形框代表,最底层的各个矩形框代表组 成这个数据的实际数据元素
(不能再分割的元素),它代表完整的数据结构。这模 式非常适合于需求分析阶段的需要,
层次方框图对数据结构描绘随着结构精细化 也越来越详细。反复细化沿着图中每条路径,
从对顶层信息的分类开始,直到确 定了数据结构的全部细节为止。

游戏选项
五
/
棋
游
戏
游戏设置
帮助
图 4 一 1 游戏功能结构
本研究中将游戏软件分为三大模块,如图4 一 1 所示,包括:游戏选项、游戏设 置和
帮助。按照在调研中搜集的资料对每个模块的功能进行编排制作。依据上述 功能的分析,
本研究中,将游戏软件在三大模块的基础上乂对每一大模块乂分为儿 个子模块:
游戏选项包括六个模块:开始游戏、重新游戏、悔棋、认输、背景音乐和退 出游戏。
游戏设置包括三个模块:先后手设置、棋盘底纹颜色设置和棋盘大小设置。 帮助包括
两个模块:游戏帮助和关于。
游戏设计
4.2
4.2.1
游戏前的准备
本游戏在开发之询需要做一些询期准备工作,尤其是对于精通五子棋游戏的 Java 游戏开
发者来说。通常情况下,一款运用起来比较熟练地 J2ME 开发 工具是必不可少的。本游戏
使用的是 2ME 的简化开发工具S un Java 仃 IVI Wireless T o o 1 ki t 2. 5 . 2 f or CLDC,他
J
)
需先将J ava 虚拟机安装调试好之后 才能使用。WTK 2.5.2 不带有文本编辑功能,所以需

要另寻搭配使用。本游戏采 用 Ultra Edit 进行编辑。本游戏需要儿张后缀名为.png 格式的
卡通图,除 了一张用作五子棋游戏的Logo 夕卜,其余的都将在游戏中使用。
4. 2.2
游戏界面和事件驱动设计
游戏的界面设计采取传统游戏界面风格,如图4-2 所示。游戏设计中釆用传统 界面游
戏风格,首先启动游戏,然后进入游戏开始界面,界面中放置“设置”、“开 局”、“帮
助”、“关于”四个选项供玩家选择。其中“设置”选项主要是对游戏的 相关功能进行设
置,如游戏难度设置。另外还有“悔棋”、“重玩”等项H 的设置。 除此之外还包括查看
游戏帮助、游戏介绍等。
游戏帮砂表单
确定
游戏介绍表单-
确定
图 4-2 游戏界面设计
所谓事件驱动,简单地说就是你点什么按钮(即产生什么事件),电脑执行什么 操作
(即调用什么函数)。当然事件不仅限于用户的操作。我们知道,事件是事件驱 动的核心自
然是。从事件角度说,一个事件收集器、一个事件发送器和一个事件 处理器组成了事件驱
动程序的基本结构。事件收集器专门负责收集包括来自硕件 的(如时钟事件等)、来自用户
的(如键盘、鼠标事件等)及来自软件的(如应用 程序本身、操作系统等)的所有事件。将收
集器收集到的事件分发到LI 标对象中 则山事件发送器负责完成。具体的事件响应工作则山
事件处理器完成,它需要运 用虚函数机制(函数名取为类似于Hand 1 e Msg 的一个名字),

它往往要到实现 阶段才完全确定。事件处理器对于框架的使用者来说是他们唯一能够看到
的。棋 类游戏通常具备两个重要特性,首先是对战双方轮流落子,其次是落子间隔通常 是
不确定的,尤其是对战后期,可能每一步棋都要经过深思熟虑,无论是人还是计 算机■都无
法对时间间隔有事先的预期。基于以上两个特性,本游戏摒弃了大多数 游戏采用的线程或
定时器驱动游戏的方法,而采用了事件驱动的方法,即玩家的 键盘或触摸笔触发游戏的下
一个动作。事件驱动大大减少了不必要的工作量,只 有玩家发出消息时川算机才启动运
算,而在玩家思考期间川算机不做任何运算 和重绘操作。
4. 2.3
游戏的类设计
五子棋游戏属于二维棋类游戏,因此可以定义一个 Che s ses 类来表示棋子, 用一个
Chess 类型的二维数组来包含棋盘上的所有棋子,对于该棋子玩家的 区分使用C h es s e s
的 b o o 1 e a n 型的变量is PI a y e r 1 来区 分。可以考虑直接生成数组的每一个对象而不
是在数组建立后,而是把每一个棋 子对象(C h ess e s)放在游戏的进行中生成,这主要是考
虑到移动设备的资源有 限,尽可能减少系统资源占用。这样在游戏进行时,可以避免还没
有下的棋子在 一开始就占用了系统内存,玩家每下一步棋,在数组相应位置生成该棋子的
对象。
对于游戏中的每一类的设计,首先就是一个MlDlet 类,Go b a ng类继承 自 MlDlet 类,
通过方法 start App,paus e A p p ,des t roy App 来通知游 戏的开始,暂停和销毁结束,用于
连接设备的应用程序管理器(Appl i c a t ion Manag er)。
本游戏共山7 个类组成,它们各自的功能如下:
(l)Goba ng MID 1 e t 类
负责程序的启动和屏幕之间的切换;
(2) Goba n gCa n v a s 类
剩余19页未读,继续阅读
资源评论

lengyue815
- 粉丝: 489
- 资源: 3294

上传资源 快速赚钱
我的内容管理 收起
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助

会员权益专享
安全验证
文档复制为VIP权益,开通VIP直接复制
