C实现贪吃蛇游戏练手项目

贪吃蛇练手项目源码

C实现贪吃蛇游戏练手项目 - 码到城攻使用C语言,基于VS2017实现的一个贪吃蛇游戏,很好的练手项目,项目中注释简单,理解容易,推荐初学使用https://www.codecomeon.com/posts/147/

游戏着重点

  1. 游戏结束,蛇身链表需要销毁。
  2. 随机产生的食物节点,如果蛇没吃到,游戏结束了,此食物节点也需要清理。
  3. 一定需要吃了上一个食物在出现下一个食物,以防死掉,还有一节点漏掉。
  4. 重新开始游戏,控制参数需要全部重新初始化。
  5. 关于状态按键的初始状态,必须是用已知状态中的一个去初始化。
  6. rand()%n 随机数范围:[0,n-1]。

游戏功能概览

// 初始化游戏
void InitSnakeGame();
// 开始游戏
void StartSnakeGame();
// 重新开始游戏
void RestartSnakeGame();
// 展示游戏菜单
void ShowGameMenu();
// 创建游戏地图
void CreateGameLimitMap();
// 展示游戏向导
void ShowGameGuide();
// 展示游戏分数
void ShowGameScore();
// 展示作者信息
void ShowAuthInfo();
// 创建初始蛇身
void CreateSnakeBody();
// 创建食物
void CreateFoodNode();
// 游戏循环控制
void GameRecycleControl();
// 通过打印控制蛇移动
void SnakeMoveByPrint();
// 通过坐标控制打印位置
void DefinePosition(int x, int y);
// 隐藏光标
void HideConsoleCursor();
// 游戏结束
bool SnakeGameOver();
// 蛇吃了自己(游戏结束)
bool SnakeEatSelf();
// 蛇撞墙了(游戏结束)
bool HitLinitWall();
// 游戏暂停
void GamePause();
// 游戏结束后,清理蛇体链表,释放内存
void ClearCorpse();
// 重新开始游戏选择
void ShowRestartGameMenu();
// 蛇移动逻辑
void SnakeMoveAction(snakeBodyNode* nextSnakeHead);

更多源码,参见原文。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值