当前位置: 首页 > wzjs >正文

手机网站建设教程网站建设开发模式h5

手机网站建设教程,网站建设开发模式h5,网站建设需求分析,网站做百度推广要多少钱游戏背景: 贪吃蛇是久负盛名的游戏,它也和俄罗斯⽅块,扫雷等游戏位列经典游戏的⾏列。 实现基本的功能: 贪吃蛇地图绘制 蛇吃⻝物的功能 (上、下、左、右⽅向键控制蛇的动作) 蛇撞墙死亡 蛇撞⾃⾝死亡 计…

游戏背景:

贪吃蛇是久负盛名的游戏,它也和俄罗斯⽅块,扫雷等游戏位列经典游戏的⾏列。

 

实现基本的功能:

  • 贪吃蛇地图绘制
  • 蛇吃⻝物的功能 (上、下、左、右⽅向键控制蛇的动作)
  • 蛇撞墙死亡
  • 蛇撞⾃⾝死亡
  • 计算得分
  • 蛇⾝加速、减速
  • 暂停游戏 

技术要点:

C语⾔函数、枚举、结构体、动态内存管理、预处理指令、链表、Win32 API等。 

一、地图的制作思路:

关于地图的制作,我们要将地图制作成什么样子呢?

在我们的预想中,我们需要使用控制台的界面进行贪吃蛇的游戏操作。

控制台的设置-CSDN博客icon-default.png?t=N7T8https://blog.csdn.net/2301_76445610/article/details/133975868?spm=1001.2014.3001.5501

  二、地图内的场景设置:

  • 在游戏地图上,我们打印墙体使用宽字符‘□’,打印蛇使用宽字符'●',打印食物使用宽字符'★'

三、地图坐标和宽字符的冲突:

由于我们是在控制台上进行实现贪吃蛇游戏,所以我们需要在控制台上实现以宽字符为主体的墙面、蛇身、食物,但是在控制台中,我们是以普通字符为主,作为一个坐标点的。

而普通字符是以一个字节为单位,可是宽字符是以两个字节为一组的。

并且根据打印宽字符的特点,只需要打印一个坐标点,就能将宽字符完全显现,比如,在(5,5)上打印宽字符,则宽字符会占据两个字节的位置,会把(6,5)的位置也占了 。

 

  • 所以,最后,我们在考虑墙面、蛇身、食物的时候,我们必须要往2的倍数方向进行考虑,特别是蛇身,我们需要将蛇身以2的倍数进行构造。

C语言 ——宽字符-CSDN博客icon-default.png?t=N7T8https://blog.csdn.net/2301_76445610/article/details/133978119?spm=1001.2014.3001.5501 

四、蛇的身体分析:

  • 对于蛇的身体,我们需要用到链表的知识,将蛇的身体化为一个又一个字节,使用指针进行连接。
typedef struct SnakeNode
{int x;int y;struct SnakeNode* next;}SnakeNode,* pSnakeNode;
  • int x ;int y ;表示控制台的坐标。
  •  SnakeNode 是使用 typedef 将struct SankNode 进行重命名后的名字,方便以后书写suruct SankNode 
  • * pSnakeNode  是 使用 typedef 将 struct SankNode * 这个指针类型进行重命名,以后需要使用 struct SankNode * 可以用  pSnakeNode  代替 。

五、贪吃蛇游戏的文件:

  • test.c —— ——  游戏的整体运行测试
  • snake.c —— ——  函数的实现
  • snake.h —— ——  函数和类型的声明

贪吃蛇的游戏结构: 

需要的内容: 

  •  对于一个贪吃蛇游戏,蛇是必须存在,且因为蛇是一个链表形式,所以我们需要蛇的头节点的指针
  • 同时,根据贪吃蛇的游戏规则,我们需要一个食物,且因为吃掉食物蛇会变长,因此食物也可以看作链表中的一个节点,只是这个节点需要使用链表的某些操作进行插入到蛇的身体中,所以我们需要食物的节点指针
  • 因为贪吃蛇是一个看长度积分的游戏,所以我们需要一个累计分数的变量
  • 同时,我们也需要对食物赋予分数
  • 同时,我们需要对蛇进行一个速度的附加值,让它加速减速
  • 对于操作蛇,是一个非常重要的东西,我们要让蛇上下左右进行移动
  • 最后,我们需要对整个游戏的状态进行判断和显示出该状态下会出现的结果 
//描述蛇的方向
enum DIRECTION 
{UP = 1,DOWN,LEFTRIGHT
}//游戏的状态
enum GAME_STATUS
{//正常运行OK,//按ESC退出END_NORMAL,//撞墙死亡KILL_BY_WALL,//吃到自己死亡KILL_BY_SELF}//贪吃蛇的游戏结构
struct Snake
{pSnakeNode _pSnake;//指向贪吃蛇头结点的指针pSnakeNode _pFood;//指向食物结点的指针int _Score;//贪吃蛇累计的总分Foodweight;//-个食物的分数intint _sleepTime;//每走一步休息的时间,时间越短,速度越快,时间越长,速度越慢enum DIRECTION _Dir;//描述蛇的方向enum GAME_STATUS _status;//游戏的状态: 正常、退出、撞墙、吃到自己}

 游戏的创建:

初始化:

snake.c


未完待续!!!!!!!!!!!!!!!!!!!!! 

 

 

 

 


文章转载自:

http://00000000.kfqzd.cn
http://00000000.kfqzd.cn
http://00000000.kfqzd.cn
http://00000000.kfqzd.cn
http://00000000.kfqzd.cn
http://00000000.kfqzd.cn
http://00000000.kfqzd.cn
http://00000000.kfqzd.cn
http://00000000.kfqzd.cn
http://00000000.kfqzd.cn
http://00000000.kfqzd.cn
http://00000000.kfqzd.cn
http://00000000.kfqzd.cn
http://00000000.kfqzd.cn
http://00000000.kfqzd.cn
http://00000000.kfqzd.cn
http://00000000.kfqzd.cn
http://00000000.kfqzd.cn
http://00000000.kfqzd.cn
http://00000000.kfqzd.cn
http://00000000.kfqzd.cn
http://00000000.kfqzd.cn
http://00000000.kfqzd.cn
http://00000000.kfqzd.cn
http://00000000.kfqzd.cn
http://00000000.kfqzd.cn
http://00000000.kfqzd.cn
http://00000000.kfqzd.cn
http://00000000.kfqzd.cn
http://00000000.kfqzd.cn
http://www.dtcms.com/wzjs/620513.html

相关文章:

  • 培训机构网站模板大宗商品交易平台网
  • 网站用什么开发软件做网站开发一般黄了
  • 济南网站系统优化公司网站建设整体架构
  • 廊坊做网站优化的公司手游代理平台代理
  • 公司网站建设服务费怎么做账西安苗木行业网站建设价格
  • 网站建设市场背景dx365.wordpress
  • 商学院网站建设建议淘宝网站策划怎么做
  • 建设小微公司网站需要多少钱海报设计大赛
  • 宁陵县网站seo济南建设信息网站
  • 江苏网站建设工作室湖北网官网
  • 网站建设预计资金投入做视频特效的网站有哪些
  • wordpress能否做网站天水市秦州区作风建设年网站
  • 梅河口网站开发做网站需要哪些基本功能
  • 做网站公司宣传语东莞品牌网站建设多少钱
  • 祥云网站推广WordPress网站属于什么网站
  • wampserver做网站门户网站html下载
  • 网站如何做二级域名如何造网站
  • 怎么用ftp修改网站百度云网盘搜索引擎入口
  • 3gcms企业手机网站整站源码asp外贸网站源码怎么建
  • 建设地情网站的作用荆州网站建设推荐
  • 招聘网站制作公司建设网站有哪些好处
  • wordpress 多个站点网络项目个人怎么推广快
  • 汕头网站推广费用品牌网app下载
  • 网站建设原码现在哪个网站可以做外贸
  • 找小网站的关键词wordpress 内外网
  • 怎样设置个人网站免费永久网站空间
  • 怎样在各大网站做有效的宣传网站开发视频百度云
  • iis网站开发教程长沙网站se0推广优化公司
  • 商标设计网站排行南昌天和建设有限公司网站
  • 滴滴优惠券网站怎么做制作网站程序