Совет Разработчику
По мере развития игровых действий целесообразно увеличивать значение переменной, определяющей агрессию спрайта преследователя, – это сделает игру интереснее. Вы можете связать агрессию спрайтов с уровнем игры (количеством набранных игроком очков) или просто с прошедшим от начала игры временем.
Переменные класса ChaseSprite инициализируются конструктором ChaseSprite() (листинг 13.1).
Листинг 13.1. Конструктор ChaseSprite() вызывает родительский конструктор и инициализирует переменные класса
public ChaseSprite(Image image, int frameWidth, int frameHeight, int chaseSpeed,
TiledLayer barrierLayer, boolean hasDirection, Sprite chaseeSprite,
int aggressionLevel) {
super(image, frameWidth, frameHeight);
// инициализация генератора случайных чисел
rand = new Random();
// установить скорость
speed = chaseSpeed;
// установить слой-барьер
barrier = barrierLayer;
// установить, направленный ли спрайт
directional = hasDirection;
// установить преследуемый спрайт
chasee = chaseeSprite;
// установить уровень агрессии
aggression = aggressionLevel; //Чем больше значение, тем агрессивнее спрайт. Это значение лежит в диапазоне от 0 до 10
}