jquery 元素移动的问题

这是我做的jquery一个练习,地址是g.xweb.cn/game_02/源代码应该都看得到,现在我想实现的效果是中间那个人物不能移动碰到灰色元素的里面去,就像游戏里面角色碰到石头 河流一样不能穿过的感觉一样,大家给点思路,完全没头绪...现在是按键盘上下左右能移动的
2026年09月21日 14:12
有2个网友回答
网友(1):

原理很简单,但是想弄好了很复杂的。其实就是要定义一个非法区域列表,然后在移动前判断目标坐标是不是位于非法区域内,如果是的话则不移动,否则可以移动。

你这个可能都是矩形的吧,设置类似var unmoveable=[[x1,y1,x2,y2],[x1,y1,x2,y2],...]就行了,每次判断目标是不是处于某个x1,y1和x2,y2标明的区域内。

网友(2):

这种格子游戏,用原点坐标系做比较好做,每一小块区域都有一对x,y坐标,用像素做,判断太麻烦,你得判断4条边像素
当前人物坐标(x,y),石头坐标 数组 [ [3,6],[4,6] ]
每次移动,判断 x,y 是否在石头坐标上,如果在,renturn false,如果不在,就设置x,y新坐标,开始animate动画
相当于只判断两个点是否重合而已