• 大小: 23KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-06-13
  • 语言: Java
  • 标签: java  推箱子  jframe  

资源简介

该推箱子小游戏是由java编写 基本实习了推箱子小游戏的简单功能 朋友们可以试着扩展一下功能。

资源截图

代码片段和文件信息

package evan;

import java.awt.Color;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import java.util.ArrayList;
import java.util.List;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.Jframe;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;

public class Gameframe extends Jframe implements ActionListener KeyListener {
    private static final long serialVersionUID = 1L;
    // 桌布
    private JPanel zhuobu = new JPanel();
    // 工人
    private JLabel worker = new JLabel();
    // 箱子
    private JLabel box = new JLabel();
    // 目的地
    private JLabel goal = new JLabel();
    // 围墙(道具使用暂未用到)
    private List walls = new ArrayList();
    // 地图
    private int[][] map;
    // 移动速度(常量)
    private static final int SPEED = 50;

    JButton start = null;
    JButton exit = null;
    JPanel right = null;

    public Gameframe() {
        this.settitle(“pushBox by xujing“);
        this.setBounds(100 100 620 532);
        this.setResizable(false);
        right = new JPanel();
        right.setBounds(500 0 120 532);
        right.setBackground(Color.blue);
        right.setLayout(null);
        start = new JButton(“开始“);
        start.setBounds(18 20 80 30);
        exit = new JButton(“退出“);
        exit.setBounds(18 70 80 30);
        right.add(start);
        right.add(exit);
        zhuobu.setBackground(Color.green);
        zhuobu.setLayout(null);
        zhuobu.setFocusable(true);
        zhuobu.add(right);
        this.add(zhuobu);
        this.setDefaultCloseOperation(EXIT_ON_CLOSE);
        start.addActionListener(this);
        exit.addActionListener(this);
        zhuobu.addKeyListener(this);
        setMap(Gameframe.getMapbyIndex(1));
        initMap(map);
    }

    void initMap(int[][] map) {
        for (int i = 0; i < map.length; i++) {
            for (int j = 0; j < map[i].length; j++) {
                if (map[i][j] == 1) {
                    JLabel wall = new JLabel(new ImageIcon(this.getClass().getClassLoader().getResource(“evan/wall.jpg“)));
                    wall.setBounds(j * 50 i * 50 50 50);
                    zhuobu.add(wall);
                    walls.add(wall);
                } else if (map[i][j] == 2) {
                    worker = new JLabel(new ImageIcon(this.getClass().getClassLoader().getResource(“evan/worker.jpg“)));
                    worker.setBounds(j * 50 i * 50 50 50);
                    // zhuobu.add(worker);
                } else if (map[i][j] == 3) {
                    box = new JLabel(new ImageIcon(this.getClass().getClassLoader().getResource(“evan/box.jpg“)));
                    box.setBounds(j * 50 i * 50 50 50);
                    // zhuobu.add(box);
                } else if (map[i][j] == 4) {
                    goal = new J

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       9118  2013-01-11 14:08  pushBox.jar

     文件        301  2013-01-08 14:21  pushBox\.classpath

     文件        383  2013-01-08 14:21  pushBox\.project

     文件        629  2013-01-08 14:21  pushBox\.settings\org.eclipse.jdt.core.prefs

     文件       1413  2013-01-11 14:07  pushBox\bin\evan\box.jpg

     文件       6553  2013-01-11 13:57  pushBox\bin\evan\Gameframe.class

     文件       1140  2013-01-11 14:07  pushBox\bin\evan\goal.jpg

     文件       1360  2013-01-11 14:07  pushBox\bin\evan\wall.jpg

     文件       1471  2013-01-11 14:07  pushBox\bin\evan\worker.jpg

     文件       1413  2013-01-11 14:07  pushBox\src\evan\box.jpg

     文件       7354  2013-01-11 13:57  pushBox\src\evan\Gameframe.java

     文件       1140  2013-01-11 14:07  pushBox\src\evan\goal.jpg

     文件       1360  2013-01-11 14:07  pushBox\src\evan\wall.jpg

     文件       1471  2013-01-11 14:07  pushBox\src\evan\worker.jpg

     目录          0  2013-01-11 14:37  pushBox\bin\evan

     目录          0  2013-01-11 14:37  pushBox\src\evan

     目录          0  2013-01-11 14:37  pushBox\.settings

     目录          0  2013-01-11 14:37  pushBox\bin

     目录          0  2013-01-11 14:37  pushBox\src

     目录          0  2013-01-11 14:37  pushBox

----------- ---------  ---------- -----  ----

                35106                    20


评论

共有 条评论