前几天开始编写java版贪吃蛇,看了别人的作品以及视频教程,然后开始着手写自己的,中间遇到了很多小问题,但是还好都比较简单,写完了蛇移动这一步的时候,点击运行,问题出现了 蛇的身体只有一个矩形,于是检查代码,看别人的源码
无奈就是不知道问题出在哪了,然后去论坛发帖求救,好把没人理我。
然后把问题放了一天。又写了一遍,还是不行,很是烦恼,一怒之下 DOTA去了,又过了一天,终于想通了,原来是坐标问题,我初始化蛇坐标时用的是像素点表示的,
然后运用for循环添加身体时用了x--,去改变坐标,问题出现了,x减是减的一个像素点而不是一个矩形的宽度,造成了三个矩形重叠在一起!!然后马上就去改代码,运行果断成功,你造那时的心情吗!!
编程果然是个严禁的科学,容不得一个小瑕疵。
public Snake() {
// TODO Auto-generated constructor stub
init();
}
//初始化
public void init(){
int x=Rec.width/2;//
int y=Rec.height/2;
for(int i=0;i<3;i++){
body.add(new Point(x--,y));
}
this.direction=Snake.Left;
}
//讲整个界面划分为!15X15的坐标系,Cell_Size为一个矩形宽带
public class Rec {
public static final int Cell_Size=20;
public static final int width=15;
public static final int height=15;
}