public void move()
{
GameObject head = createNewHead();
if (head.x >= SnakeGame.WIDTH
|| head.y >= SnakeGame.HEIGHT
|| head.x < 0 || head.y < 0)
isAlive = false;
else {
snakeParts.add(0, head);
removeTail();
}
}
public GameObject createNewHead()
{
GameObject sp;
switch (direction)
{
case DOWN:
sp = new GameObject(this.x,this.y +1);
break;
case LEFT:
sp = new GameObject(this.x - 1,this.y);
break;
case UP:
sp = new GameObject(this.x,this.y - 1);
break;
case RIGHT:
sp = new GameObject(this.x + 1,this.y);
break;
default:
sp = null;
break;
}
return sp;
}
public void removeTail()
{
this.snakeParts.remove(this.snakeParts.size() - 1);
}
Garry599
19 уровень
У меня змейка движется в пределах 9Х9 и почемуто по диаганали. И вообще не показывает полный размер после того как включил движение.
Решен
Комментарии (2)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Garry599
11 марта 2019, 12:33
Отлично! Спасибо за ответ! Все заработало.
0
VIKTOR NEZHELSKIYExpert
6 марта 2019, 13:28
У какого класса эти методы прописаны? У класса Snake нет параметров x и y. Пропиши эти методы в классе Snake. А метод GameObject createNewHead() будет рабочим если сделать как у меня.
0