看完狂神的贪吃蛇的视频做出来的,增加了边界死亡和可以加速(第一次发文章 哈哈哈)
代码地址 https://gitee.com/wuyue111/game.git
游戏代码结构
游戏效果图
说一下自己遇到的几个问题吧
1,蛇身体动起来了,头不动
是因为我的这个头部位置第一次不是通过静态常量sankex来获得的 而是直接写成了坐标,所以后面蛇的头部不动
2,关于初始化的问题
//初始化蛇的位置
public GamePanl1() {
length=3; //蛇的初始化长度
snakeX[0]=100;snakeY[0]=100; //蛇头
snakeX[1]=75;snakeY[1]=100; //蛇身
snakeX[2]=50;snakeY[2]=100; //蛇尾
this.setFocusable(true); //获取焦点事件
this.addKeyListener(this);
timer.start();
foodX=25+25random.nextInt(20);
foodY=75+25random.nextInt(20);
}
if (ifFail){ //如果游戏失败 重新开始
ifFail=false;
// new GamePanl1(); 重新初始化游戏 回到原样
length = 3;//初始小蛇有三节,包括小脑袋
snakeX[0] = 100; snakeY[0] = 100;
snakeX[1] = 75; snakeY[1] = 100;
snakeX[2] = 50; snakeY[2] = 100;
direction=“R”;
//初始化食物数据
foodX = 25 + 25* random.nextInt(34);
foodY = 75 + 25* random.nextInt(24);
我这里如果想使用对象的形式该怎么初始化 通过类获取对象并不能实现,我这里是直接重新手写了一遍初始化的值,一个解决办法是吧这些初始化提取出来,但是如果按我所写的这样,有没有大佬能指点一下,通过改变当前对象,让他= // new GamePanl1(); 重新初始化游戏 回到原样