//判定食物是否出现在蛇身上,如果是重合,则重新生成一遍
var isOnSnake = true;
//设置食物出现的随机位置
while (isOnSnake) {
//执行后先将判定条件设置为false,如果判定不重合,则不会再执行下列语句
isOnSnake = false;
var indexX = getNumberInRange(0, canvas.width / 20 - 1);
var indexY = getNumberInRange(0, canvas.height / 20 - 1);
var rect = new Rect(indexX * 20, indexY * 20, 20, 20, "green");
for (var i = 0; i < snake.snakeArray.length; i++) {
if (snake.snakeArray[i].x == rect.x && snake.snakeArray[i].y == rect.y) {
//如果判定重合,将其设置为true,使随机数重给
isOnSnake = true;
break;
}
}
}
//返回rect,使得实例化对象food有draw的方法
return rect;
这段代码怎么避免食物出现在蛇上的