TA的每日心情 | 开心 2021-12-13 21:45 |
---|
签到天数: 15 天 [LV.4]偶尔看看III
|
简单思路介绍:
抓住游戏的本质,不断刷新canvas,使游戏动起来。
首先,开一个线程每个一段时间重绘一次canvas,另外对上下左右键加上事件监听。
重绘canvas做什么?
把canvas作为m*n的数组,遍历,判断是否该显示方块。
输入与输出(显示)的问题基本解决。
接下来要考虑如何显示5个基本图形、图形的变换、消行、图形的移动以及图形什么时候停止。
基本图形:将不同图片资源放到canvas下,不同坐标组合即可形成;
图形变换:移动小方块,也是不同组合;
消行:用一个数组保存canvas下已显示的方块,逐行遍历。如果满一行即可消行;
图形移动:修改图片资源x、y方向的偏移量;
图形停止:判断下面是否有方块,如果有则停止,保存坐标,显示新图形。
上图
初始化界面
Android实现的俄罗斯方块_28284
程序运行中
Android实现的俄罗斯方块_28285Android实现的俄罗斯方块_28287
源码请见Tetris.zip,Eclipse直接导入即可运行。(Android 2.1 分辨率320*480)
文件名:Android实现的俄罗斯方块.zip
下载地址:http://www.javaxxz.com/file.php?id=19845944
|
|