【第六周】【新蜂站会】2

https://git.coding.net/Boxer_/homework.git

ssh:git@git.coding.net:Boxer_/homework.git

小组名称:新蜂

组长:武志远

组成员:宫成荣 谢孝淼 杨柳 李峤

项目名称:Java俄罗斯方块

站会时间:11.2

总任务:

1,数据库显示模块。

2,本地记录模块,

 3,俄罗斯方块主模块

4,按钮窗口模块

5,下一个窗口模块

6,等级窗口模块,

7,分数窗口模块。

8,版权信息模块。

每日任务:

实现下一个窗口。

其实不难,有前面的工作,随机生成方块其实就是生成随机数,然后根据随机数生成图片,而下一个窗口就是先把随机数存起来,读取然后先用来生成下一行,再生成在游戏主舞台里。主要代码:

 1 public static Image NEXT[];
 2     public static List<Image> BG_IM;
 3     static {
 4         // 初始化下一个方块的图片
 5         NEXT = new Image[GameConfig.getSYSTEM_CONFIG().getTypeConfig().size()];
 6         for (int i = 0; i < NEXT.length; i++) {
 7             NEXT[i] = new ImageIcon("Graphics/game/" + i + ".png").getImage();
 8         }
 9         // 初始化背景图片
10         // 1.获得背景图片所在的文件(夹)对象
11         File file = new File("Graphics/background");
12         // 2.获取该文件夹下的所有子文件对象
13         File files[] = file.listFiles();
14         BG_IM = new ArrayList<Image>();
15         // 3.遍历区别文件,把符合条件的图片创建图片对象
16         for (File file2 : files) {
17             // 如果是文件夹则不创造对象
18             if (file2.isDirectory()) {
19                 continue;
20             }
21             BG_IM.add(new ImageIcon(file2.getPath()).getImage());
22         }
23 
24     }

找到图片后,绘制出来。

public class LayerNext extends Layer {

    public LayerNext(int x, int y, int w, int h) {
        super(x, y, w, h);
    }

    /**
     * @Title:
     * @author wzy
     * @Describe
     */
    public void paint(Graphics g) {
        this.creatWindow(g);
        //如果是开始整体,再绘制下一个方块
        if (this.gameDto.isStart()) {
            this.drawImageAtCenter(Ima.NEXT[this.gameDto.getNext()], g);
        }

    }
}

原文地址:https://www.cnblogs.com/Boxer1994/p/6032173.html