俄罗斯方块设计报告书

俄罗斯方块设计报告书

ID:15068353

大小:233.50 KB

页数:12页

时间:2018-08-01

俄罗斯方块设计报告书_第1页
俄罗斯方块设计报告书_第2页
俄罗斯方块设计报告书_第3页
俄罗斯方块设计报告书_第4页
俄罗斯方块设计报告书_第5页
资源描述:

《俄罗斯方块设计报告书》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、软件体系结构设计课程设计报告课程设计题目:俄罗斯方块小游戏专业名称:软件工程2017年6月30日12一、简介1.1俄罗斯方块游戏简介《俄罗斯方块》(Tetris,俄文:Тетрис)是一款由俄罗斯人阿列克谢·帕基特诺夫于1984年6月发明的休闲游戏。由小方块组成的不同形状的板块陆续从屏幕上方落下来,玩家通过调整板块的位置和方向,使它们在屏幕底部拼出完整的一条或几条。这些完整的横条会随即消失,给新落下来的板块腾出空间,与此同时,玩家得到分数奖励。没有被消除掉的方块不断堆积起来,一旦堆到屏幕顶端,玩家便告输,游戏结束。1.2俄罗斯方块游戏规则1.游戏主画面在一个用于摆放方块的面板上2.(1)

2、一组由4个小型正方形组成的规则图形(即方块)共有7种形状,分别为一字形、田字形、7字形、反7形、Z形、反Z形、T形。(2)一字形:一次最多消除四层田字形:消除一至二层7字形:最多消除三层,或消除二层反7形:最多消除三层,或消除二层Z形:最多二层,容易造成孔洞反Z形:最多二层,容易造成孔洞T形:最多二层3.方块从区域上方开始下落,玩者可以按指定按钮左右移动方块、逆时针旋转方块,以及让方块加速落下。4.方块移到区域最下方或是着地到其他方块上无法移动时,就会固定在该处,而新的方块出现在区域上方开始落下。5.当区域中某一行横向格子全部由方块填满,则该列会消失,玩家得分。6.当固定的方块累积堆到一

3、定层数(设计游戏时设置)时,游戏结束。7.游戏会提示下一个要落下的方块形状。12二、需求分析与游戏设计2.2需求分析2.2.1游戏界面需求 良好的用户界面设计。本游戏主要有三个界面,一是主游戏区的面板,显示变化和下落的方块;二是用于放置按钮以及显现游戏信息的面板,三是双人对战时用以显示对方游戏信息的面板。 2.2.2方块控制需求 方块下落时,可通过特定按钮对该方块进行翻转、加速,以及向左、向右移动等操作。 2.2.3图形显示需求 随机给出不同的形状(一字形、田字形、7字形、反7形、Z形、反Z形、T形),下落填充给定的区域,填满一行则消掉记分,方块累积到一定层数无法再消去行时游戏结束。12

4、2.3游戏设计2.3.1游戏流程图2.3.2功能模块图12游戏操作模块:(1)显示模块:a.由图形工厂产生7种不同图形并随机显示在游戏主画面上;b.显示玩家信息;(2)控制模块:控制方块下落、移动、翻转等;(3)设置模块:设置游戏难度、游戏背景等。122.3.3用例模型(1)玩家:玩家进入游戏,可以控制游戏(如控制方块运动与翻转)和设置游戏(如设置游戏难度、游戏背景等)。(2)计算机:在游戏开始后,计算机随机产生方块,控制方块下落并响应玩家操作,方块下落到底部后,能自动消除满行方块并更新分数,当方块累积到顶部时,报告游戏结束。12三、设计模式3.1工厂模式工厂模式又称为工厂方法模式,也叫

5、多态工厂模式或虚拟构造器模式,它属于类创建型模式,满足“开闭原则”。在俄罗斯方块的设计中,使用图形工厂产生7种不同的方块并在游戏中随机出现。图形工厂接口:packagetest1;publicinterfaceShapeFactory{publicBlockproduceBlock();}方块接口:packagetest1;publicinterfaceBlock{publicvoidchange();publicvoidmoveleft();publicvoidmoveright();publicvoidfall();}7个具体的图形工厂实现图形工厂接口,实现produceBlock(

6、)方法,随机产生7种不同的方块显示在游戏界面上,7种具体的方块实现方块接口,实现change()、moveleft()、moveright()、fall()三种方法。123.2命令模式命令模式是指将一个请求封装为一个对象,从而使我们可用不同的请求对客户进行参数化;对请求排队或者记录请求日志,以及支持可撤销的操作。命令模式是一种对象行为型模式,其别名为动作模式或事务模式。新的命令容易加到系统中,满足“开闭原则”。在俄罗斯方块游戏设计中,玩家可对方块进行控制,即玩家向图形类发出请求,在此,便要用到命令模式,将玩家对图形类的请求封装为对象,然后放在类中。命令接口Command中定义了抽象方法e

7、xecute():packagetest1;publicinterfaceCommand{publicvoidexecute();}4个具体命令类BlockChangeCommand、BlockMoveleftCommand、BlockMoverightCommand、BlockFallCommand实现命令接口,实现方法execute()。4个按钮为调用者,分别是moveleft、moveright、change、fall,它们各

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。