基于Java的俄罗斯方块游戏的设计与实现

龙源期刊网 https://www.360docs.net/doc/9318456151.html,

基于Java的俄罗斯方块游戏的设计与实现作者:高成珍

来源:《科技经济市场》2017年第02期

摘要:俄罗斯方块是一款简单有趣的益智类小游戏,通过对游戏中包含的元素及其关系的分析,抽象出相应的类和接口,通过对游戏过程的分析,抽象出关键的流程,并通过Java语

言编程实现。

关键词:俄罗斯方块;Java

0引言

俄罗斯方块是一款经久不衰的益智类小游戏,游戏规则简单、有趣,老少皆宜。对于Java 初学者来说是一个不错的练习项目,难度适中,不仅可以检验知识的综合运用,提升开发技能,培养面向对象编程思维,同时还可以激发学习兴趣,增强自我效能感。

1俄罗斯方块游戏中核心元素

游戏中核心元素包括3个:各种形状的方块、底部障碍物以及游戏面板。游戏主要是控制方块在面板上的移动与变化以及障碍物的增加和消除。

1.1方块

经典的俄罗斯方块游戏中方块主要有7种类型,如图1所示,每一种类型又有若干种变形,如图2所示。

根据图2形状的分析可以得出,所有的方块都可以用一个4*4的格子表示,格子有两种状态:空白和填充。对于不同的形状,填充部分不同而已,所以可以用一个包含16个整型元素的一维数组来表示一种具体的形状。当需要填充时,对应的位置上的数字为1,否则位置上的数字为0。采用二维数组存储一种类型的方块,第一维表示的是第几种变体,第二维表示具体形状的数值。采用三维数组存储所有的方块,第一维表示哪一种类型,第二维表示该类型的第几种变体,第三维表示具体形状的数值。对于方块来说除了要知道它的形状以外,还需要知道它的位置,并且能够根据需要进行移动和变形,所以方块类(Shape)的设计如图3所示。

1.2障碍物

障碍物实际上就是不能移动的方块组合,障碍物会随着游戏执行过程而不断增加或减少。与方块类似可以采用一个二维数组来保存障碍物,数组的大小即为整个面板中横向和纵向上格子的个数,对于需要填充的格子数值标记为1,空白格子对应的数值为0。障碍物添加后需要

相关文档
最新文档