今天实现一款经典小游戏的实例,贪吃蛇想必大家都有接触过,当然今天实现的细节没有那么全面,只能算是简易版本的小游戏,使用的是Unity中的UGUI,Bug可能有点多,不过大体算是完成了。
大概的原理
整体小游戏的核心其实还蛮简单的,通俗一点讲就是:键盘控制2D网格图片的上下左右移动。我使用的是UGUI中GridLayoutGroup组件添加多个Image实现整体贪吃蛇移动的地图,其实也就是一个个的网格,网格单元就是图片,平时的网格图片都是透明的,贪吃蛇的身体则是其他图片。
我需要控制的就是贪吃蛇的头部和身体,使用键盘WASD键位进行贪吃蛇头部网格移动,后续身体只需要移动到上一节身体的位置就好了,当然理论可行,实际操作还需要考虑其他的问题。
小游戏的效果图
效果图中的小问题咱们先不讨论,旨在整体的实现效果,基于此可以进行游戏的完善
关键代码演示
设置地图中具体坐标的图片,也就是实时更新屏幕画面
public void SetSpriteImage(List<SnakeCell> snakeBody)
{
//设置其他格子
SetDefaultSpriteImage();
//设置food
if (gameController.food.foodCoord != Vector2.zero)