Помогите пожалуйста
Привет! Сегодня начнем писать одну интересную и "залипательную" игру — 2048. Готов? Тогда поехали.
Правила игры:
Игровое поле имеет форму квадрата. Размер стандартного поля — 4x4 плитки. Цель игры — получить плитку номиналом 2048.
- В каждом раунде появляется плитка номиналом 2 (с вероятностью 90%) или 4 (с вероятностью 10%).
- Можно сдвинуть все плитки игрового поля в одну из 4 сторон, нажав соответствующую клавишу: вверх, вниз, вправо или влево. Если при сдвиге две плитки одного номинала "налетают" друг на друга, они "слипаются" в одну. Ее номинал равен сумме соединившихся плиток. После каждого хода на свободной секции поля появляется новая плитка номиналом 2 или 4. Если при нажатии клавиши местоположение плиток или их номинал не изменится, ход не совершается.
- Если в одной строчке или столбце находится более двух плиток одного номинала, при сбрасывании они слипаются с той стороны, в которую были направлены. Например, находящиеся в одной строке плитки (4, 4, 4, 0) после хода влево превратятся в (8, 4, 0, 0), а после хода вправо — в (0, 0, 4, 8). Данная обработка неоднозначности позволяет более точно формировать стратегию игры.
- За каждое соединение игровые очки увеличиваются на номинал получившейся плитки.
- Игра заканчивается поражением, если после очередного хода невозможно совершить действие.
- Игра заканчивается победой, если на поле появится клетка номиналом 2048.
Теперь приступаем к реализации игры:
Для начала нам понадобится класс, в котором будет реализована логика игры. Давай назовем его Game2048.
Мы подготовили "игровой движок", где происходит запуск самой игры, перерисовка ее элементов и т.д. Поэтому твой класс Game2048 должен наследоваться от класса Game.Этот и другие классы движка находятся в пакете com.javarush.engine.cell, и чтобы ими пользоваться, класс Game2048 должен содержать такой импорт:
import com.javarush.engine.cell.*;
Попробуй запустить на выполнение свой класс Game2048 и посмотри, что получилось.
Также, советуем прочесть статью про раздел "Игры". В ней ты найдешь информацию, которая будет полезна при написании игр.
Требования:
- Должен быть создан класс Game2048.
- Класс Game2048 должен быть публичным.
- Класс Game2048 должен быть наследником класса Game.
- В классе Game2048 должен быть импорт всего содержимого пакета com.javarush.engine.cell.
package com.javarush.games.game2048;
import com.javarush.engine.cell.*;
public class Game2048 extends Game{
}