Moon Lander

Рекомендованный уровеньуровень
10+
В конце 1970-х – начале 1980-х, когда деревья были большими, а видеоигры — по-настоящему сложными, была среди них одна, которую можно назвать хардкорнейшей среди хардкорных. Имя ей — Lunar Lander. Впервые игра заставила людей страдать ещё в 1979 году, когда эти самые люди опускали свои кровно заработанные медяки в монетоприёмник аркадного автомата Atari. После этого люди превращались в пилотов и принимали управление посадочным лунным модулем, который уверено приближался к лунной поверхности. У Луны рельеф для этих целей так себе — горки-пригорки. Соответственно, мест для мягкой посадки — раз-два и обчёлся. Игроку предстояло нейтрализовать лунное притяжение и замедлить падение с помощью кормовых ускорителей. Управление тягой и ускорителем было пропорциональным, топливо расходовалось быстро, и когда его запасы истощались, корабль переставал реагировать на действия пилота. В таком случае игрок мог докинуть ещё монеток в аркадный автомат (здравствуй, прародитель современных игровых лутбоксов!). Игра требовала недюжинного терпения, посадить модуль медленно и ровно было ох как непросто. Собственно, чем лучше виртуальный пилот это сделает, тем больше баллов получит. Предлагаем вам приобщиться к прекрасному, и написать свою версию «Лунного модуля». Наш Moon Lander будет похож на классический, только графика у нас будет получше (всё-таки 40 лет прошло!). Мы создадим симпатичный посадочный модуль, который нужно аккуратно посадить на Луну, не задев горы. Для мягкой и ровной посадки будем использовать основной двигатель, который замедляет падение и приподнимает, а также боковые двигатели для горизонтального перемещения. Думаете, сложная задачка? Сложная, но не неподъемная. Наша команда уже снабдила её рекомендациями и разбила её на приемлемые для начинающего программиста шаги. Так что дерзайте!
Комментарии (55)
  • популярные
  • новые
  • старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Pavel V.
Уровень 36
24 августа, 01:59
Сделал конечно, но почему-то понимания процесса от силы процентов 50 наберется, остальное как-то смешалось в голове в кашу непонятную 😐
Omega0x0 Java Developer
24 июля, 16:49
В KSP захотелось поиграть что-то...
Yunir
Уровень 51
29 июня, 08:38
Надо бы еще запилить проверку, когда счет равен нулю, выбивать геймовер
Daniil Kovalyov
Уровень 25
26 июня, 20:43
ПОдскажите!!! Я поменял ширину и высоту на 100 А окно вывода игры я так понимаю всё такое же 64х64 Как это исправить? или просто выгружать на сайт и всё будет гуд??????
Abilqasym
Уровень 3
2 февраля, 14:18
It`s the so cool game! I`m playing its game... Please, subscribe me! And YouTube too! Search the youtube Geniral Qwerty!
Иван Чепурин Junior QA inginer в Перформанс Лаб
19 сентября 2021, 18:32
Почему ракета без инерции по оси X?... Так ведь не интересно...
𝕷𝖚𝖓𝖊𝕱𝖔𝖝 System Administrator в BIFIT Expert
6 апреля, 08:53
Так сделай :)
JavaPlayerPro999 Android Developer в Genesis
29 мая, 09:58
:P😝
Юлия Java Developer
28 мая 2021, 07:37
всё, что нужно знать о валидаторе 😏
Александр Выпирайленко Java-разработчик в JavaRush Moderator
29 мая 2021, 09:42
Из какой части этой игры это?
Юлия Java Developer
2 июня 2021, 13:05
кажется, уровень 20 из 23.
Mike-L
Уровень 43
17 мая 2021, 18:31
package com.javarush.games.moonlander;

public class ShapeMatrix {
    public static final int[][] ROCKET = new int[][]{
            {0, 0, 0, 6, 0, 0, 0},
            {0, 0, 6, 6, 6, 0, 0},
            {0, 0, 6, 0, 6, 0, 0},
            {0, 0, 6, 6, 6, 0, 0},
            {0, 0, 6, 0, 6, 0, 0},
            {0, 0, 6, 6, 6, 0, 0},
            {0, 6, 6, 0, 6, 6, 0},
            {6, 6, 6, 6, 6, 6, 6},
            {6, 0, 0, 6, 0, 0, 6},
    };
}
типа догадайся сам Кроме координат, у игрового объекта будет матрица, отвечающая за внешний вид. Давай добавим в класс GameObject переменную matrix типа int[][] для ее хранения. А теперь займемся посадочным лунным модулем. Для простоты будем называть его просто ракетой. Создадим класс Rocket, наследуемый от класса GameObject, так как ракета — это игровой объект. Обрати внимание, что у нас появился вспомогательный класс ShapeMatrix, который хранит матрицу, отвечающую за внешний вид ракеты.
Anonymous #2571395
Уровень 1
22 марта 2021, 17:46
😎
Vladimir Frontend Developer
10 марта 2021, 17:17
Hello, world. Нужна помощь. Установил плагин на intelijidea ОС: ubuntu 20.04. Поставил javaFX11, вообщем, всё запускается всё хорошо, но после проверки задачи IDE закрывается. В чем может быть проблема, где искать? Спасибо за внимание
Mikhail Kuragin
Уровень 22
25 июня 2021, 17:10
Такая же проблема. IDE закрывается именно при тестировании игр.