Перед тем как приступить к началу создания проекта, рассмотрим общую схему реализации игры Змейка. Во многом она будет похожа на схему создания игры "Новогодний дождь".
Сначала определим схему классов, которые потребуются при создании игры. Всего для создания игры нам потребуется четыре класса (см. рис. 1):
Рис. 1
После создания проекта мы добавим к нему два файла: zmeika.java и game.java. Классы zmeika, myFrame, myPanelбудут находиться в файле zmeika.java; класс game будет находиться в файле game.java.Другими словами в первом файле будут находиться сразу три класса, которые отвечают за запуск игры и ее графическое представление. Класс, отвечающий за логику игры, будет находиться в отдельном файле.
Рассмотрим задачи,выполняемые каждым классом:
1. Класс zmeika, который является главным классом приложения, будет выполнять запуск игры, в нем будет создаваться объект окна для игры и в нем, конечно же, будет метод main().
2. Класс myFrame –это класс окна,который наследуется от класса JFrame. В нем будет подключаться панель окна, на которой расположено игровое поле. Также в этом классе будут указаны все параметры окна:его размеры, заголовок и т.д.
3. Класс myPanel –это класс панели окна, который наследуется от класса JPanel.Этот класс представляет собой игровое поле. Именно этот класс будет подключаться к окну в классе myFrame. Вся графика (отрисовка игрового поля), настройка таймеров, обработка клавиатуры будет происходить именно в этом классе. Но все данные для отрисовки игрового поля класс myPanelбудет получать из класса game, в котором находиться двумерный массив.
4. Класс game– это класс для реализации логики игры. В этом классе будет находиться двумерный массив, и все операции с двумерным массивом будут производиться именно в этом классе. КлассmyPanel будет постоянно обращаться к классу game, чтобы выполнить отрисовку игрового поля по данным двухмерного массива. Данные массива будут зеркально отображаться на игровом поле в классе myPanel, но сами изменения данных массива будут происходить в классе game.
Такая схема классов,конечно же, не является единственной для создания игры Змейка. Программист сам определяет для себя схему классов и их название.
Алгоритм игры,использованный при реализации игры Змейка, также не является единственным. Программист может использовать алгоритм по своему усмотрению. На начальном этапе программирования не стоит гнаться за малым объемом программного кода. Главное больше практики! Полный вариант игры Змейка,представленный в данном методическом пособии (если убрать из него пустые строки и комментарии) в сумме будет составлять250 строк программного кода.С вашим опытом объем программного кода будет уменьшаться!