10.游戏场景-蛇类
10.1 知识点
将要实现的类图
创建蛇类,里面包括蛇身体数组。蛇类构造函数中初始化蛇身体数组和位置,默认有一个蛇头,长度为1。实现蛇类绘制方法,遍历蛇身体数组 逐个绘制蛇身体。
//蛇类 继承绘制接口
class Snake : IDraw
{
//蛇的身体数组
SnakeBody[] bodys;
//当前蛇的长度
int snakeBodysLength;
//蛇类构造函数
public Snake(int x, int y)
{
//粗暴的 申明200个空间 游戏中 基本不会出现蛇长度达到200个身体
bodys = new SnakeBody[200];
//声明蛇头
bodys[0] = new SnakeBody(E_SnakeBody_Type.Head, x, y);
//初始时只有蛇头 初始化为1
snakeBodysLength = 1;
}
//蛇类绘制方法
public void Draw()
{
//遍历蛇身体数组 逐个绘制蛇身体
for (int i = 0; i < snakeBodysLength; i++)
{
bodys[i].Draw();
}
}
}
游戏场景类中创建蛇变量。初始化时new出一个蛇。实现游戏场景里的更新方法中调用蛇的绘制方法。
//游戏场景类 继承游戏帧更新接口
class GameScene : ISceneUpdate
{
//地图类变量 管理所有墙壁
Map map;
//蛇类变量 管理蛇相关
Snake snake;
//游戏场景类构造函数
public GameScene()
{
//初始化地图类变量
map = new Map();
//初始化一个蛇
snake = new Snake(40, 10);
}
//实现游戏场景里的更新方法
public void Update()
{
//绘制地图类
map.Draw();
//绘制蛇类
snake.Draw();
}
}
转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 785293209@qq.com