Предлагаем тебе написать увлекательную игру Racer. Начнем с правил.
- Цель игры — достигнуть финиша, управляя гоночной машиной на оживленной трассе.
- Количество очков зависит от длительности гонки: чем раньше игрок финиширует, тем больше очков он получит.
- Игра окончена, когда игрок сталкивается с другой машиной или препятствием.
Создадим главный класс игры RacerGame. Чтобы использовать функциональность игрового движка, унаследуем его от класса Game, который содержит в себе методы для реализации игры.
Для начала нам нужно игровое поле (64х64), на которое будут добавляться игровые объекты. Так как значения высоты и ширины поля будут часто использоваться при реализации логики игры, есть смысл создать константы WIDTH и HEIGHT.
Перед запуском игры выполняется метод initialize(), задачей которого является установка начального состояния игры. Его нужно переопределить в классе RacerGame.
В методе initialize() необходимо:
- задать размер игрового поля, вызвав setScreenSize(WIDTH, HEIGHT);
- убрать отображение сетки, вызвав showGrid(false).
Чтобы успешно справиться с задачей Racer, рекомендуем прочесть статью про раздел "Игры". В ней ты найдешь информацию, которая будет полезна при написании игр.
- Должен существовать публичный класс RacerGame.
- Класс RacerGame должен быть наследником класса Game.
- В классе RacerGame должно существовать публичное статическое final int поле WIDTH, проинициализированное при объявлении значением 64.
- В классе RacerGame должно существовать публичное статическое final int поле HEIGHT, проинициализированное при объявлении значением 64.
- В классе RacerGame должен быть переопределен метод initialize() родительского класса Game.
- В методе initialize() должен быть вызван метод showGrid(boolean) класса Game c параметром false.
- В методе initialize() должен быть вызван метод setScreenSize(int, int) класса Game c параметрами WIDTH и HEIGHT.
- В классе RacerGame должен быть импорт всего содержимого пакета com.javarush.engine.cell.