java推箱子游戏源代码_java实现推箱子小游戏(附源码)

本文分享了一款使用Java编写的推箱子小游戏,通过AWSD键控制角色移动和推箱子,代码包括三个.java文件,实现了游戏逻辑和画面绘制。
摘要由CSDN通过智能技术生成

先上效果图

0e4db05d10dd9ca693f7968a95bcd1db.png

可以通过AWSD进行移动和推箱子

ed9bcf1c12bf38c8c910aef8f0f0930e.png

自己弄出来的代码玩起来还是很有意思的。

代码一共是三个.java文件,代码内容如下所示

package ss;

import java.awt.Graphics;

import java.awt.Image;

import java.awt.Point;

import java.awt.event.KeyEvent;

import java.awt.event.KeyListener;

import javax.swing.ImageIcon;

import javax.swing.JFrame;

import javax.swing.JOptionPane;

/**

* 1.继承窗体类为当前类的父类

* @author lizhicheng

*

*/

public class PushBox extends JFrame implements KeyListener{

/**

* 3.声明一个二维数组的地图

*/

int[][] maps=

{

{3,3,3,3,3,3,3,3},

{3,0,0,0,0,0,0,3},

{3,0,0,0,0,2,0,3},//3表示墙

{3,0,0,0,3,0,3,3},//2表示箱子

{3,0,0,1,0,0,0,3},//1表示人

{3,0,3,0,2,0,0,3},//0表示空地

{3,0,0,0,0,0,0,3},

{3,3,3,3,3,3,3,3},

};

/**

* 6.声明两个变量来保存图标的起始位置

*

*/

int top=10,left=25;

int posX=3,posY=4;//保存大力水手的位置

/**

* 2.构造方法添加固定的窗体设置

*/

public PushBox()

{

//设置标题

this.setTitle("http://ai.52learn.online");

//设置窗体大小

this.setSize(500, 350);

//设置窗体默认关闭操作

this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

//设置窗体可见

this.setVisible(true);

//设置窗体居中显示

this.setLocationRelativeTo(null);

//进行监听

this.addKeyListener(this);

}

/**

* 4.窗体的绘制

* @param args

*/

@Override

public void paint(Graphics g) {

super.paint(g);

refresh();//7.调用刷新

}

/**

* 5.重绘所有当前窗体的组件

* @param args

*/

public void refresh()

{

//获取当前窗体的画笔

Graphics gs=this.getGraphics();

//将图片资源引入

ImageIcon wall = new ImageIcon("bian.png");

ImageIcon area = new ImageIcon("kongdi.png");

ImageIcon human = new ImageIcon("ren.png");

ImageIcon box = new ImageIcon("xiang.png");

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值