ccruiの博客

ccruiの博客

记一个之前用c#写的贪吃蛇

14
2020-08-03

记一个之前用c#写的贪吃蛇

前言

这个贪吃蛇项目,是大一下学期c#基础课由我编写的期末大作业项目,使用了Visual Studio2019编写的桌面应用程序。
由于写这个程序的时候刚学习完c#的基础语法,水平比较低 虽然现在也很低 但是还是尽力的去完成了贪吃蛇小游戏的编写。

1. 项目基本功能

  1. 贪吃蛇自动移动
  2. 使用 WASD 和方向键控制移动
  3. 食物的生成
  4. 吃食物记分
  5. 吃食物蛇变长
  6. 碰到身体和墙壁死亡

2. 附加功能

  1. 游戏难度调节(改变移动速度 并改变分倍率)
  2. 食物数量调节
  3. 食物图标更改
  4. 蛇身大小更改
  5. 显示分数 当前难度 和当前难度下分数倍率
  6. 历史记录(保存在"d:\Record.txt")(若无 D 盘则保存在"c:\Record.txt")
  7. 窗口失去焦点自动暂停游戏
  8. 对不同电脑 dpi 的调节
  9. 添加背景音乐以及吃食物时的特效音乐
  10. 音乐控制
  11. 游戏存档读档功能
  12. 清理游戏历史记录与存档保存所产生的文件
  13. 更改鼠标样式

3. 操作方式

  1. 进入游戏后 按任意键即可开始游戏
  2. 按方向键可以改变蛇移动的方向
  3. 按空格键可以使游戏暂停
  4. 蛇头碰到蛇身或墙壁游戏结束
  5. 游戏结束后按 R 或回车即可重新开始游戏
  6. 点击难度可修改难度
  7. 点击食物数量可更改食物数量
  8. 点击食物图标可更改食物图标
  9. 点击蛇身大小可更改蛇身大小
  10. 点击历史记录 会弹出历史记录窗口
  11. 在历史记录窗口中点击清除历史记录可清除历史记录
  12. 点击音乐控制可控制音乐暂停
  13. 点击游戏存档 可以存档与读档
  14. 点击文件清理 可清理贪吃蛇应用创建的文件

4. 设计思路

  1. 在 pictureBox 控件中绘制背景
  2. 定义并绘制蛇头初始坐标
  3. 通过按键控制蛇头移动
  4. 通过刷新背景完成删除绘制历史
  5. 随机绘制食物
  6. 判断是否吃到食物
  7. 判断是否撞到自己
  8. 判断是否撞墙
  9. 其余功能添加

5. 思维导图

思维导图

6. 界面设计

  1. 主界面
    主界面
  2. 历史记录界面
    历史记录界面
  3. 文件清理界面
    文件清理界面