一、实现效果
功能列表
- 实现每次蛇头与食物相撞时,会在固定面积内随机生成其他食物
- 每次‘吃掉’食物后,蛇身增长一节
二、核心要点
碰撞的要点就不详细说了,这一章主要核心实现的是蛇身的增加
void CreateFood()
{
float x = Random.Range(-8.6f, 8.6f);
float y = Random.Range(-4.6f, 4.6f);
GameObject food = FoodPrefab;
Instantiate(food, new Vector3(x, y, -1), Quaternion.identity);
}
注意⚠️snakeBody.Count-1即代表上一节蛇身
private void OnTriggerEnter2D(Collider2D collision)
{
if(collision.tag.Equals(“Food”))
{
Destroy(collision.gameObject);
GameObject newbodynext = Instantiate(body,snakeBody [snakeBody.Count-1].transform.position,Quaternion.identity);
snakeBody.Add(newbodynext);
CreateFood();
}
}
三、感想总结
当前只是初步实现了PC端的贪吃蛇功能,下一步学习将按键控制改为触屏方向控制。