文章插图
程序设计及说明1、边墙(Wall) 该类规定游戏的范围大小 。2、蛇类(Snake) 用该类生成一个实例蛇snake 。3、移动(Move) 该类用于实现对蛇的操作控制,即蛇头方向的上下左右的移动操作 。4、食物类(Food) 该类是游戏过程中食物随机产生的控制和显示 。5、判断死亡(Dead) 该类是对游戏过程中判断玩家操作是否导致蛇的死亡,其中包括蛇头咬食自己身体和蛇头是否触及游戏“边墙” 。6、蛇结点(SnakeNode) 该类是蛇吃下随机产生的食物从而增加长度的控制类,其中包括蛇长度增加和尾部的变化 。7、计分统计(Score) 该类由于玩家的游戏成绩记录,及游戏结束时的得分输出 。... 部分函数及说明1.Char menu(); /*用于玩家选择的游戏速度,返回一个char值*/ 2.DELAY(char ch1); /*用于控制游戏速度*/ 3.void drawmap(); /*绘制游戏地图函数* 4、void menu() /*游戏帮助信息的输出* ... 部分类细节解说1、蛇的构建 —Snake class Snake{ public: int x[n];int y[n]; int node; //蛇身长度int direction;//蛇运动方向int life;//蛇生命,判断死亡 }2、随机食物Food 利用rand()函数进行随机数产生,然后就行坐标定位 void Food(void){ ... int pos_x = 0; int pos_y = 0; pos_x = rand() % length;//x坐标的确定 pos_y = rand() % (width-1);//y坐标的确定 ... }3、蛇头方向确定 利用switch语句进行方向确定... switch(){ case VK_UP:{ OutChar2.Y--; y--; break; } case VK_LEFT:{ OutChar2.Y++; y++; break; } case VK_DOWN:{ OutChar2.X---; x--; break; } case 'VK_RIGHT:{ OutChar2.X++; x++; break; } } 代码#include
推荐阅读
- 尧山是在哪个城市 尧山的城市
- 核桃的在家中储存方法 核桃的在家中的储存方法
- 什么能祛痘和痘印
- 豆包代表什么意思
- 分蜂一般在什么时间
- 哈密瓜主要产地在哪里 哈密瓜的主要产地
- E5 2670cpu和E31230相比,哪个更好?好在哪里?
- 龙族幻想阿尔诺亚在哪里
- 绝地求生中m24和98k哪个厉害
- 腾讯视频点赞记录在哪里看