我想要用java编写一个简单的推箱子游戏,里面的移动事件要怎样控制啊?
2个回答
展开全部
监控键盘事件,监控方向键,然后根据方向键判断角色的对应方向是否有箱子,有箱子,在判断箱子的前方是否有路;没有箱子就角色移动到那个位置。
假设有个方法判断坐标是箱子还是空地或者越界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
假设有个方法判断坐标是箱子还是空地或者越界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
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询