zoukankan      html  css  js  c++  java
  • C++贪吃蛇——(1)

    做一个贪吃蛇的游戏,不用现成的游戏引擎直接使用控制台。第一个内容应该是需求分析,任何程序都应该基于需求分析来进行。否则全凭脑补,走一步看一步那回滚代码都会让你喊GG。

      那么做一个控制台的贪吃蛇游戏需要啥子东西。

      1.node类保存坐标点

      2.map保存整张地图

      3.蛇、蛇的长度、蛇的方向

      4.食物结点、食物是否被吃了

      5.蛇的移动速度

      6.游戏是否失败/结束、游戏是否开始

      7.类方法:移动、上下左右、自动生成食物

      8.游戏分数(吃到食物的个数)

      暂时就想到这么多,还有啥子东西....慢慢想,慢慢补充。

    贴个头文件,作为1的结尾。

    //
    //  Header.h
    //  SnakeGame
    //
    //  Created by MadMarical on 15/11/26.
    //  Copyright (c) 2015年 com. All rights reserved.
    //
    
    #ifndef SnakeGame_Header_h
    #define SnakeGame_Header_h
    
    #include <iostream>
    #include <stdlib.h>
    #include <conio.h>
    
    const int max = 100;
    const int n = 20;
    
    struct Node
    {
        int x;
        int y;
    };
    
    class Game
    {
    public:
        void Play();
        void Image();
        void Move(int direction);
        void MoveUp();
        void MoveDown();
        void MoveLeft();
        void MoveRight();
        Game();
        
    private:
        int map[max][max];//0标示空地,1标示蛇身,2表示食物,3表示撞死了,4表示蛇头
        int direction;//方向
        int lenOfSnake;//蛇长
        int socre;//分数
        int snakeSpeed;//蛇动速度
        
        Node squence[max];//蛇身坐标
        Node food;//食物坐标
        
        bool eat;//吃没有
        bool isOver;//结束没有
    };
    
    #endif
    View Code
  • 相关阅读:
    Python 编程入门(2):复杂数据类型(列表,字典)
    Python 编程入门(1):基本数据类型
    编程的智慧总结笔记
    学习 Vim 命令总结
    JS中如何使用radio
    关于模板页调用js的问题
    关于session认证用户名和密码的父类(简单认证)
    如何使用日期格式化函数
    数据库中怎么查询所有的表名
    简单的分页
  • 原文地址:https://www.cnblogs.com/thewaytomakemiracle/p/4999871.html
Copyright © 2011-2022 走看看