C++贪吃蛇——(1)
2015-11-27 10:30
302 查看
做一个贪吃蛇的游戏,不用现成的游戏引擎直接使用控制台。第一个内容应该是需求分析,任何程序都应该基于需求分析来进行。否则全凭脑补,走一步看一步那回滚代码都会让你喊GG。
那么做一个控制台的贪吃蛇游戏需要啥子东西。
1.node类保存坐标点
2.map保存整张地图
3.蛇、蛇的长度、蛇的方向
4.食物结点、食物是否被吃了
5.蛇的移动速度
6.游戏是否失败/结束、游戏是否开始
7.类方法:移动、上下左右、自动生成食物
8.游戏分数(吃到食物的个数)
暂时就想到这么多,还有啥子东西....慢慢想,慢慢补充。
贴个头文件,作为1的结尾。
View Code
那么做一个控制台的贪吃蛇游戏需要啥子东西。
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
相关文章推荐
- C++容器的拷贝注意细节
- C语言string家族函数使用说明及范例
- #if defined和#if !defined(c语言的宏定义)
- c++对ip和端口的处理
- 33.c/c++程序员面试宝典-函数重载
- 转: windows下C++ UI库 UI神器-SOUI
- C++中delete和delete[]的区别
- 汇编语言中的常数
- 二叉树遍历之递归实现(C++版)
- c语言编写一段小程序,出现了复制某个文件到一个找不到的路径里边
- 第10周项目3 利用二叉树遍历思想解决问题
- 第10周项目2 二叉树遍历的递归算法
- C语言结构体(struct)常见使用方法
- 千锋2015.04月最新C语言基础视频教程
- 为什么C++中只有指针和引用才能实现多态?
- oc语言学习之基础知识点介绍(四):方法的重写、多态以及self、super的介绍
- 一起talk C栗子吧(第六十四回:C语言实例--DIY字符串复制函数)
- C++得到成员变量的偏移值
- 《深入探索C++对象模型》笔记之第一章关于对象
- 【C语言】-循环的嵌套