成都创新互联网站制作重庆分公司

用java写推箱子代码 编程推箱子

推箱子鼠标移动算法(JAVA编程)

用迭代把 要写两个方法 一个计算人是否能到达某一个格子 一个是计算箱子是否能到达相邻的某一个格子

创新互联建站主要从事成都做网站、成都网站制作、网页设计、企业做网站、公司建网站等业务。立足成都服务左权,10余年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:18980820575

请大神们帮帮忙,java类似推箱子游戏

网上搜一下,网上有这种推箱子箱子的源码下码的。

下载的看一眼就知道。

如果我的回答没能帮助您,请继续追问。

你的采纳是我前进的动力。记得好评和采纳。

用JAVA编写一个小程序 比如拼图游戏 推箱子 猜数字 。。。。。。请附详细注释 因为要发表 谢谢大家!

我写的一个猜数字游戏,希望对你有用,代码如下:

import java.awt.BorderLayout;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import java.util.Random;

import javax.swing.JButton;

import javax.swing.JFrame;

import javax.swing.JLabel;

import javax.swing.JOptionPane;

import javax.swing.JPanel;

import javax.swing.JScrollPane;

import javax.swing.JTextArea;

import javax.swing.JTextField;

public class GuessNumber {

static int trys, A, B;

static String r, t;

public static int[] MakeGuessNumber(){//随机生成一个无重复数字的四位数

Random r = new Random();

int guess[] = new int[4];

for(int i=0; i4; i++){

guess[i] = r.nextInt(10);

for(int j=i-1; j=0; j--){

if(guess[i]==guess[j]){

i--;

break;}

}

}

return guess;

}

public static String getRundom(){//将此四位数转化为字符串

int guess[]=MakeGuessNumber();

return ""+guess[0]+guess[1]+guess[2]+guess[3];

}

public static void messageDialog(Object o){

JOptionPane.showMessageDialog(null, o);

}

public static void guessNumber(){//主要算法实现部分

r=getRundom();

//System.out.println(r);

JFrame jf=new JFrame();

JButton b1=new JButton("新游戏");

JLabel l1=new JLabel("输入:");

final JTextField jtf=new JTextField(10);

JButton b2=new JButton("提交");

final JTextArea jta=new JTextArea(10,10);

jta.append(" "+"Guess"+" "+"Result"+"\n");

JScrollPane scrollPane=new JScrollPane(jta);

JPanel jp1=new JPanel();

jp1.add(l1);

jp1.add(jtf);

jp1.add(b2);

jf.add(b1,BorderLayout.NORTH);

jf.add(jp1,BorderLayout.CENTER);

jf.add(scrollPane,BorderLayout.SOUTH);

b1.addActionListener(new ActionListener(){

@Override

public void actionPerformed(ActionEvent e) {

// TODO Auto-generated method stub

trys=0;

A=0;

B=0;

jta.setText(" "+"Guess"+" "+"Result"+"\n");

jtf.setText("");

r=getRundom();

//System.out.println(r);

}

});

b2.addActionListener(new ActionListener(){

@Override

public void actionPerformed(ActionEvent e) {

// TODO Auto-generated method stub

t=jtf.getText();

A=0;

B=0;

if(t.length()!=4||t.substring(0, 1).equals(t.substring(1, 2))

||t.substring(0, 1).equals(t.substring(2, 3))

||t.substring(0, 1).equals(t.substring(3, 4))

||t.substring(1, 2).equals(t.substring(2, 3))

||t.substring(1, 2).equals(t.substring(3, 4))

||t.substring(2, 3).equals(t.substring(3, 4))

||!t.matches("[0-9]*"))

messageDialog("Wrong Input!");

else{

jtf.setText("");

trys++;

if(t.substring(0, 1).equals(r.substring(0, 1)))

A++;

if(t.substring(0, 1).equals(r.substring(1, 2)))

B++;

if(t.substring(0, 1).equals(r.substring(2, 3)))

B++;

if(t.substring(0, 1).equals(r.substring(3, 4)))

B++;

if(t.substring(1, 2).equals(r.substring(1, 2)))

A++;

if(t.substring(1, 2).equals(r.substring(0, 1)))

B++;

if(t.substring(1, 2).equals(r.substring(2, 3)))

B++;

if(t.substring(1, 2).equals(r.substring(3, 4)))

B++;

if(t.substring(2, 3).equals(r.substring(2, 3)))

A++;

if(t.substring(2, 3).equals(r.substring(0, 1)))

B++;

if(t.substring(2, 3).equals(r.substring(1, 2)))

B++;

if(t.substring(2, 3).equals(r.substring(3, 4)))

B++;

if(t.substring(3, 4).equals(r.substring(3, 4)))

A++;

if(t.substring(3, 4).equals(r.substring(0, 1)))

B++;

if(t.substring(3, 4).equals(r.substring(1, 2)))

B++;

if(t.substring(3, 4).equals(r.substring(2, 3)))

B++;

jta.append(trys+" "+t+" "+A+"A"+B+"B"+"\n");

if(A==4){

if(trys=4)

messageDialog("You win after "+trys+" trys!");

else if(trys=3)

messageDialog("You win after only "+trys+" trys!");

}

}

}

});

jf.setSize(300, 300);

jf.setVisible(true);

jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

}

public static void main(String args[]){

guessNumber();

}

}

我没有进行详细注释,这个程序挺好理解的,你可以自己再看一下

我想要用java编写一个简单的推箱子游戏,里面的移动事件要怎样控制啊?

监控键盘事件,监控方向键,然后根据方向键判断角色的对应方向是否有箱子,有箱子,在判断箱子的前方是否有路;没有箱子就角色移动到那个位置。

假设有个方法判断坐标是箱子还是空地或者越界check(int x,int y)通过返回类型判断,返回类型可以自己定义,这里定义成int类型,0代表箱子,1代表空地,2代表越界

if(check(X+1,y)==0){

if(check(x+2,y)==1){

//箱子往右移动一格,同时角色也往右移动一个

}else if(check(x+2,y)==2){

//箱子推不动,角色也不动,箱子到了墙角,给出提示或者保持角色和箱子原地不动、

}

}

if(check(x+1,y)==1){

//角色往右移动,箱子不动

}

同理等于2的时候,角色原地不动。。。

这只是简单的做了判断,具体的实现看你自己了,可以把人和箱子分开判断。。总之把思路分析清楚就OK

推箱子游戏java代码如何判断下一步是墙还是空地

1. 确定的功能:让玩家通过按上下左右键推箱子,当箱子们都推到了目的地后出现过关信息,并显示下一关。推错了玩家还按空格键从新玩过这关。直到过完全部关卡。

2. 定义的核心数据结构:我们定义一个二维数组ghouse来记录屏幕上各点的状态。char ghouse[20][20]; 其中:0表示什么都没有,'b'表示箱子,'w'表示墙壁,'m'表示目的地,'i'表示箱子在目的地。

3. 对整个进行功能模块划分。

(1)。初始化:在屏幕上输出欢迎信息,把ghouse数组的元素初始化为0。并根据各关的要求在屏幕上输出墙、箱子、目的地和人。并用ghouse 数组记录各点的状态。

(2)。进入游戏循环:这个游戏主循环是等待按键。当接受到上下左右键时执行相关操作:接受ESC键时退出游戏;接受空格键时返回本关开头;接受无效按键时做忽略处理。重点介绍按上下左右键时如何执行相关操作。

(3)。判断是否过关:用一个链表win由每关的初始化函数传给main函数。Win链表主要记录屏幕上的哪些点是目的地,并记录目的地的位置。Main函数每执行一次操作后就判断屏幕上的目的地是不是都有箱子了。

谁有java设计推箱子游戏的代码,要简单点的代码

以前看过如鹏网的《这样学Java不枯燥》视频教程,通过开发飞机大战等经典小游戏来讲解Java的知识点,挺有意思的


文章名称:用java写推箱子代码 编程推箱子
地址分享:http://cxhlcq.com/article/hijdcc.html

其他资讯

在线咨询

微信咨询

电话咨询

028-86922220(工作日)

18980820575(7×24)

提交需求

返回顶部