//这个方法我其实不太懂,某个color的数组遍历后,为什么就变成3段了呢 void ThreeSnake(Color[] colors) { snakeNode = new SnakeNode(snakePrefab, new Vector3(3, 0.5f, 0), colors[0], null); for (int i = 1; i < colors.Length; i++) { snakeNode.eatFood(snakeNode, colors[i], null); } }
//想让蛇头和每个食物判断位置距离是不是接近,然后新长出的身体是灰色,但是水果们没有颜色 public void SnakeGrow(SnakeNode node, List <Food> Snakes) { for (int i = 0; i < Snakes.Count; i++) { foreach (Food food in Snakes) { if (Vector3.Distance(Snakes[i].GetPosition(), node.GetPosition()) < 0.5f) { snakeNode.eatFood(node, Color.gray, null); Snakes.Remove(food); return; } } } }