Не могу найти описание класса "ArrayList" в классе "com.javarush.games.snake.part20.Snake". Возможно вы забыли его импортировать (указать в import).
файл com/javarush/games/snake/part20/Snake.java, строка 18, позиция 608
package com.javarush.games.snake;
import com.javarush.engine.cell.*;
import java.util.*;
public class SnakeGame extends Game {
public static final int WIDTH = 15;
public static final int HEIGHT = 15;
private Snake snake;
private int turnDelay;
private Apple apple;
private boolean isGameStopped;
private static final int GOAL = 28;
private int score;
@Override
public void initialize(){
setScreenSize(WIDTH,HEIGHT);
createGame();
}
@Override
public void onTurn(int x){
snake.move(apple);
if(!snake.isAlive){
gameOver();
}
if(snake.getLength() > GOAL){
win();
}
if(!apple.isAlive){
score = score + 5;
setScore(score);
turnDelay = turnDelay - 10;
setTurnTimer(turnDelay);
}
drawScene();
}
@Override
public void onKeyPress(Key key) {
if (key == Key.SPACE && isGameStopped == true) createGame();
if(key==Key.LEFT){
snake.setDirection(Direction.LEFT);
}
if(key==Key.RIGHT){
snake.setDirection(Direction.RIGHT);
}
if(key==Key.UP){
snake.setDirection(Direction.UP);
}
if(key==Key.DOWN){
snake.setDirection(Direction.DOWN);
}
}
private void createGame(){
snake = new Snake ( WIDTH / 2, HEIGHT / 2 );
createNewApple();
isGameStopped=false;
drawScene();
snake.draw(this);
turnDelay= 300;
setTurnTimer( turnDelay) ;
score = 0;
setScore(score);
}
private void drawScene() {
for (int x = 0; x < WIDTH; x++) {
for (int y = 0; y < HEIGHT; y++) {
setCellValueEx(x, y, Color.DARKSEAGREEN, "");
}
}
snake.draw(this);
apple.draw(this);
}
private void createNewApple(){
{
do {
apple = new Apple(getRandomNumber(WIDTH), getRandomNumber(HEIGHT));
} while (snake.checkCollision(apple));
}
}
private void gameOver(){
stopTurnTimer();
isGameStopped = true;
this.showMessageDialog(Color.BLACK, "Game Over", Color.RED, 75);
}
private void win(){
stopTurnTimer();
isGameStopped = true;
showMessageDialog(Color.RED,"***YOU WIN***", Color.YELLOW, 75);
}
}