您的位置:

java推箱子,java推箱子游戏

本文目录一览:

推箱子游戏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编写一个简单的推箱子游戏,里面的移动事件要怎样控制啊?

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

假设有个方法判断坐标是箱子还是空地或者越界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递归算法可以解决推箱子游戏吗?

可以 递归法 和 回溯法 是解决 推箱子 和 走迷宫 的 很好的思路

java 推箱子代码的中文 解释

这个十分容易,我说下基本的就是了,你是一个5*5的黑点,箱子是5*5的白点,所有的箱子的坐标在一个arraylist里,每次你按方向是,判断你的位置先,如果是边就不动,如果不是边,就判断有没有箱子,如果有箱子再判断后面,用while就行了,记得你把可能会移动的东西记下到另外的arraylist,如果可以动,就把另外的arraylist的元素的坐标适应加5,然后重画下