原理很简单,但是想弄好了很复杂的。其实就是要定义一个非法区域列表,然后在移动前判断目标坐标是不是位于非法区域内,如果是的话则不移动,否则可以移动。
你这个可能都是矩形的吧,设置类似var unmoveable=[[x1,y1,x2,y2],[x1,y1,x2,y2],...]就行了,每次判断目标是不是处于某个x1,y1和x2,y2标明的区域内。
这种格子游戏,用原点坐标系做比较好做,每一小块区域都有一对x,y坐标,用像素做,判断太麻烦,你得判断4条边像素
当前人物坐标(x,y),石头坐标 数组 [ [3,6],[4,6] ]
每次移动,判断 x,y 是否在石头坐标上,如果在,renturn false,如果不在,就设置x,y新坐标,开始animate动画
相当于只判断两个点是否重合而已