zoukankan      html  css  js  c++  java
  • 【视频】半小时内编写一个贪吃蛇游戏

    贪吃蛇编写提纲

    致谢:

    感谢 Ronnie Mooney ,我是在学习了他的视频后完成这个视频的,你可以在 [C#] Creating a Snake Game - Less than an Hour 找到他的视频(需FQ,请自备梯子)。

    • 编写 Input 静态类

      • 初始化静态变量 private static readonly Hashtable _keys = new Hashtable()
      • 编写方法 public static void ChangeState(Keys key, bool state)
      • 编写方法 public static bool Pressed(Keys key)
    • 编写 SnakePart

      该类仅有两个变量 XY,以及一个构造函数,构造函数的作用就是为 XY 赋值。

    • 编写 Direction 枚举

    • 编写 SnakeForm 表单

      • 添加一个 PictureBox 控件,命名为 pbCanvas,并将大小设置为 320 * 240,背景色设置为 LightSkyBlue
      • 调整表单大小
      • 添加 SnakeForm_KeyDownSnakeForm_KeyUp 事件
      • 添加 pbCanvas_Paint 事件,该事件的处理函数就是调用 draw()
      • 添加一个 _score 变量
      • 添加一个 _gameover 变量
      • 添加一个 _direction 变量
      • 添加一个 _snake 列表变量
      • 添加一个 _food 变量
      • 添加一个 _gameLoop 变量
      • 添加一个 _snakeLoop 变量
      • 添加一个 _snakeRate 变量
      • 初始化各变量,设置定时器变量的回调方法和回调间隔(gameLoop: 1000 / 60,snakeLoop:1000 / _snakeRate),并启动定时器,调用 startGame
      • 编写方法 startGame()
        • 重置变量
        • 实例化 head 并添加进 _snake
        • 调用 generateFood
      • 编写 generateFood()
        • 随机产生一个 SnakePart 并赋值给 _food,需要确保新产生的 _food 不在蛇身上
      • 编写方法 gameover()
        • _gameover 置为 true
      • 编写方法 draw()
      • 编写方法 updateGame()
      • 编写方法 updateSnake()
  • 相关阅读:
    很多网络库介绍
    CFileFind
    C#编写COM组件
    使用javascript调用com组件
    C++ 解析Json——jsoncpp
    休眠与开机自动运行等VC代码
    win7 vs2012/2013 编译boost 1.55
    VC中的字符串转换宏
    InstallShield 静默安装
    CAD版本 注册表信息
  • 原文地址:https://www.cnblogs.com/platobeing/p/3815034.html
Copyright © 2011-2022 走看看