📄 snake.java
字号:
import java.util.Vector;
import java.awt.Point;
class Snake extends Vector {
int length;
Point head,end=null;
int xBound =58;
int yBound =47;
GamePanel game;
Snake(GamePanel game){
this.game=game;
length =game.length;
head =new Point(0,0);
this.insertElementAt(head,0);
xBound = 58;
yBound = 47;
}
boolean move(int drict){
Point newhead =new Point();
Point point;
Point food;
switch(drict){
case 0:
newhead.x =head.x+1;
newhead.y =head.y;
break;
case 1:
newhead.x =head.x;
newhead.y =head.y+1;
break;
case 2:
newhead.x =head.x-1;
newhead.y =head.y;
break;
case 3:
newhead.x =head.x;
newhead.y =head.y-1;
break;
}
if(newhead.x<0||newhead.x>=xBound||
newhead.y<0||newhead.y>=yBound){
return false;
}
for(int i=0;i<game.dp.size();i++){
point=(Point)game.dp.elementAt(i);
if(newhead.equals(point)) return false;
}
for(int i=0;i<this.size();i++){
point = (Point)this.elementAt(i);
if(point.equals(newhead)) return false;
}
this.insertElementAt(newhead,0);
head = newhead;
food=game.currentFood;
if(head.equals(food)){
length++;
return true;
}
if(this.size()>length) {
end=(Point)this.elementAt(length);
this.remove(length);}
return true;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -