开发基于面向对象的俄罗斯方块游戏

更新时间:2023-08-05 21:52:02 阅读量: 实用文档 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

1 / 3 开发基于面向对象的俄罗斯方块游戏

系统分析与设计

前言

一转眼间,大学四年的学习生活即将结束。作为一个计算机系的学生,扪心自问,在这几年的黄金年代里,自己究竟学到了什么?从电脑白痴到电脑高手的种种路途中,也许大部分人都选择了“游戏-编程-设计”这条看似平坦的路,但真正把游戏经验变为编程经验却又不是那么容易的事情,这不得不说是当今大学生的悲哀。

仔细想来,我也算是一个编程狂热者,从小学四年级就开始接触电脑编程。那时的我们四个人挤一台电脑用,在闪着绿色屏幕的中华学习机上用编写着简单的程序。而再想想自己从中学到大学的这十年间,简直可以用荒废二字来形容。除了自学了、、和得一些皮毛外,几乎没什么可以让自己值得自豪的。如果说在中学时代编程上的荒废是由于学校不重视而造成的,那么在大学期间,除了自己以外就怪不得别人了。

回想起来,在大学受到灌输型教育的过程中,也确实学了很多对编程有帮助的课程,比如数据结构、算法分析与设计、面向对象技术等等。

我属于喜欢耍小聪明的那种人,宁愿使用自己构思

的极其差劲的算法解题,也不愿意背那些无法实现

的技术。记得当年数据结构中一道要求遍历二叉树

的程序,自己硬是用数组实现了。现在想起来,这

应该算是很严重的知识与实践之间的脱节吧。现在

的我们,更需要锻炼把理论与实践相结合的能力,

让我们脑子中的那些符号与算子变成代码和程序。

从小就喜欢玩一些小游戏,俄罗斯方块就是其

中的一个。在游戏的过程中,也考虑过游戏的算法

是如何实现的,于是在大二时曾经用编写过一个简

单的方块游戏(如图)。不过由于没有任何设计经

验,在编写代码的过程中,不断改写设计的内容,

最后各个变量和过程的调用几乎可以用混乱来形

容,虽然能正常运行,但每更改一处就会出现无数,有那种“牵一发而动全身”的感觉,不能不说是失败的作品。

当学习了面向对象的知识之后,我决定使用面向对象的思想重新编写这个程序,并且尽量做到程序条理清晰。我做这个小游戏的初衷是,开发出一个比较标准的俄罗斯方块核心模块,作为一个自定义控件可以提供给各种开发程序使用,今后可以扩展为两人对战或者网络对战。

这次的程序算是我个人所设计的较大的工程了,也是第一次使用面向对象思想编写的,因此在设计中也难免存在诸多不足的地方,欢迎大家给予批评指正。

2 /

3 需求分析

俄罗斯方块是个经典的游戏,相信大家对它都已经非常了解了。我之所以选择它也是由于它的易上手性和耐玩性。

作为一款经典游戏,要做出自己的个性才能给人以深刻的印象。在游戏方式上,我的灵感来自于我曾经的一台手掌游戏机,里面包含的种玩法和种方块类型使人百玩不厌。 同时,游戏的高度自由度也是我的宗旨之一。能够让用户方便的自行添加自定义方块形状、自定义方块和各个级别的颜色等等,方块的大小和游戏窗口高度和宽度的大小也可以由用户自定义。当然,游戏的控制方式要力求简洁,控制键可以由用户的喜好来设定。为了增加游戏的耐玩性,要将每次游戏的得分记录到文件,创建排行榜。

综上所述,此游戏在完成“普通游戏”功能的基础上,还要注意以下几点:

◎ 各类不同方块的颜色以及各个关卡的颜色可以任意改变。

◎ 允许更改的操作方式。

◎ 普通级、专家级、用户自定义的方块模式。其中“专家级”模式实际上是系统通过自定义方块的方法增添几种特别类型的方块。

◎ 在任何游戏过程中,用户可以任意添加自己喜欢的方块形状,并且可以立即在游戏中生成。

◎ 过关和游戏结束时都有一小段简单动画。

◎ 游戏结束时,将高分写入排行榜。

系统功能实现

界面设置

本文来源:https://www.bwwdw.com/article/8u3m.html

Top