指导老师:刘凯组员:李柏阳李翔阳玖玲张阳平长沙源享科技有限公司2012年,6月,10日简介:贪吃蛇是一款脍炙人口的经典游戏。通过对贪吃蛇游戏项目的练习,可以让我们熟练掌握数组,结构体,链表,和GUI等重要知识也增加我们对大中型项目的熟练度,为我们以后步入嵌入式的学习打下牢靠的基础。项目需求蛇的美观性增加游戏的吸引力。贪吃蛇的身体需要用卡通元素制作,分为蛇头,蛇身体,蛇尾。设置多关卡多地图来增加游戏的可玩性游戏必须包含三个难度等级,初级,中级,高级。每一个关卡中,分别设置不同的游戏背景,以及三种不同的食物。通过改变蛇的速度,增加地图障碍物,让食物活动起来等方法提高游戏难度。进入游戏的动画Fig1:游戏初始动画的设计游戏界面Fig2:游戏界面的布局注意事项:,需要判断是否让玩家继续玩 3显示历史最高分数游戏的结束画面Fig3:游戏退出的设计运行平台,以及编写语言。游戏运行平台为Windows下的VC编写语言为C语言,以增加游戏的运行效率项目概要设计::: 贪吃蛇的移动界面需要用二维数组来映射,贪吃蛇的本身用链表来保存。我们通过链表映射二维数组, 主要分为三个模块,开机模块游戏模块退出游戏模块详细设计全局变量intLevel(记录等级),Score(纪录分数),Randx,Randy,(食物的坐标)Direction(移动方向),LifeFlag(判断是否死亡),BestScore(纪录最高分)///////////////////////////////////////////////////////////////////////////////////////////////////////:Snake_StartGame()用来封装开机模块开机模块包含以下函数:画布大小800×600Snake_Title()//把贪吃蛇这几个字放入开机画面Snake_Round()//让游戏加入声音IntSnake_ChoiceLevel()返回一个全局变量,选择游戏等级intLevel//////////////////////////////////////////////////////////////////////////////////////////////////////:画布大小800×600游戏区域只要600×600 Snake_GamePlay();用来封装游戏模块VoidSnake_DataMenu();用来显示所需要的数据,例如,最高分,现在分数,等级,时间,操作IntSnake_ReadScore()用来读取最高分数,返回BestScoreVoidSnake_WriteScore(intscore)用来书写最高分数,写入名字与分数。();用来控制蛇的速度映射数组表示地图IntEnvMap1[30][30]低级IntEnvMap2[30][30]中级IntEnvMap3[30][30]高级映射函数Snake_Update();//更新映射数组尾巴1身体2头3食物4障碍物5蛇用链表来表示StructSnake{Intnum;Intx;Inty;Structsnake*Next }VoidSnake_Ini();//蛇的初始化VoidSnake_Food();//放置食物用randx,randyVoidSnake_Add()//增加一节蛇VoidSnake_Del()//删除一节蛇VoidSnake_Dir(),全局变量Direction,,这个函数用来判断方向撞到墙后,显示GameOver,让用户选择YesOrNo,如果重玩,重新来过,不重玩,返回main函数,就显示GameOver并且显示最高分,之后进入Snake_CreditList()IntSnake_Life();//判断蛇是否死亡,返回LifeFlag0Or1判断是否replay?VoidSnake_Replay()//重新玩让用户选YesOrNo//////////////////////////////////////////////////////////////////////////////////////////////////////()从下往上出现,放上制作人的名字//////////////////////////////////////////////////////////////////////////////////
贪吃蛇设计报告(李博阳第一版) 来自淘豆网m.daumloan.com转载请标明出处.