《俄罗斯方块》项目采用技术
2020-07-14 06:08
148 查看
创建Cell类
定义基本的元素:小方块(cell)的基本参数:行,列,小方块图片
提供无参有参构造器
提供get/set方法
定义本游戏最基本的行为:左移一格;右移一格;下落一格
Tetromino类,提供方块的各种行为方法
将一个四个方块视为一个数组
将一个四个方块的四种状态也定义为数组
添加一个作为旋转计数器的量
定义cell的各种行为:下落;左移;右移;旋转以及旋转的方法
然后定义内部类state,此类用来描述方块旋转的四种状态,首先定义八个整型变量,用来描述四个方块的位置.0,1,2,3分别代表四个方块,我们旋转的时候以方块0为轴,其余三个方块向右旋转
然后提供无参有参构造器和get/set方法
定义七种方块(O,T,I,J,L,S,Z):(注意七种方块均应该继承Tetromino类)
主类Tetris类:游戏的核心,使用JPanel绘制游戏界面
首先定义正在下落和即将下落的四格方块
定义一个叫做墙的二维数组作为游戏界面
定义分数
游戏界面的各种图片放入此项目的包内
为了防止各种意外,我们将其放入try…catch中,这时会读取包内的同名图片
绘制游戏的各种图片,需要使用JPanel类中的paint()方法
开始设置游戏的各种状态
下落之后就要判断一行是否填满以便进行消除,所以我们定义布尔型方法,带参数row
若其中一行满了则需进行消除,首先定义变量来统计消除的行数
定义可以下落方法
接下来把以上方法都编入start()
开启键盘监听事件
使用多线程播放背景音乐,程序不会停止
设置进度条
相关文章推荐
- 分享手淘过年项目中采用到的前端技术
- 系统集成项目管理工程师教程———活动历时估算所采用的主要方法和技术
- 制定项目质量计划时,采用的主要技术
- 为什么要在现在的项目中采用myfaces jsf技术?
- Java项目(1)——采用Ajax异步交互技术验证用户代码是否重复
- 从编程语言、算法、项目等层面深谈读研如何提高技术
- 开源的服务发现项目Zookeeper,Doozer,Etcd - 木精灵的技术博客 - CSDN博客
- 软件开发技术高手转向项目管理者要突破的误区
- 软件外包项目实施过程中的关键因素(摘自IT168技术频道)
- IT项目经理(CIO)是否需要技术能力
- 关于此次团队项目中技术选型问题
- 项目技术总结之页面前段
- BizTalk Server 2010/2013/2013R2/2016 培训&项目开发&技术服务
- 如果你真的想要做好互联网项目 请不要将项目的技术外包
- 海马汽车经销商管理系统技术解析(一)新建项目,搭建WCF架构
- 项目总结:电子签名功能-对接第三方-02-技术 -3.如何不用本地上传的方式而是通过获取第三方返回的已签署协议下载链接以网络流的方式直接将已签署文件连同转化的图片(多张单页图或一张长图)一同上传到自
- 水处理领域采用uf超滤膜技术原理说明
- 管理项目团队的工具及技术
- 技术/开发人员如何转型项目管理
- 微信公众号开发_项目目录以及包含的技术点(二)