Moon Lander

Рекомендованный уровеньуровень
10+
В конце 1970-х – начале 1980-х, когда деревья были большими, а видеоигры — по-настоящему сложными, была среди них одна, которую можно назвать хардкорнейшей среди хардкорных. Имя ей — Lunar Lander. Впервые игра заставила людей страдать ещё в 1979 году, когда эти самые люди опускали свои кровно заработанные медяки в монетоприёмник аркадного автомата Atari. После этого люди превращались в пилотов и принимали управление посадочным лунным модулем, который уверено приближался к лунной поверхности. У Луны рельеф для этих целей так себе — горки-пригорки. Соответственно, мест для мягкой посадки — раз-два и обчёлся. Игроку предстояло нейтрализовать лунное притяжение и замедлить падение с помощью кормовых ускорителей. Управление тягой и ускорителем было пропорциональным, топливо расходовалось быстро, и когда его запасы истощались, корабль переставал реагировать на действия пилота. В таком случае игрок мог докинуть ещё монеток в аркадный автомат (здравствуй, прародитель современных игровых лутбоксов!). Игра требовала недюжинного терпения, посадить модуль медленно и ровно было ох как непросто. Собственно, чем лучше виртуальный пилот это сделает, тем больше баллов получит. Предлагаем вам приобщиться к прекрасному, и написать свою версию «Лунного модуля». Наш Moon Lander будет похож на классический, только графика у нас будет получше (всё-таки 40 лет прошло!). Мы создадим симпатичный посадочный модуль, который нужно аккуратно посадить на Луну, не задев горы. Для мягкой и ровной посадки будем использовать основной двигатель, который замедляет падение и приподнимает, а также боковые двигатели для горизонтального перемещения. Думаете, сложная задачка? Сложная, но не неподъемная. Наша команда уже снабдила её рекомендациями и разбила её на приемлемые для начинающего программиста шаги. Так что дерзайте!
Комментарии (61)
  • популярные
  • новые
  • старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Гвазава Сергей
Уровень 29
10 марта, 15:32
Привет, обьясните на что ссылается this в классе MoonLoaderGame
rocket.draw(this);
        landscape.draw(this);
7 февраля, 19:04
WARNING: '}' at column 9 should be alone on a line. Это пишет "анализ кода" когда видит такой синтаксис
} else {
Так писать не принято?
7 февраля, 14:51
А где найти документацию к классам движка?
Stanislav
Уровень 26
17 февраля, 21:23
установи плагин javarush в Intellij IDEA, там в папке com.javarush.engine.cell
Anonymous #3177672
Уровень 30
6 февраля, 18:41
Информация для авторов курса. В моей версии задачи был создан метод isStopped, проверяющий величину скорости ракеты, однако в дальнейшем нигде в коде он не использовался, ни в каких заданиях на него не ссылались. Как я понял, он используется для проверки "мягкой посадки" ракеты на платформу. Т.е. для победы в игре недостаточно простой "встречи" ракеты с платформой, скорость ракеты при этой "встрече" должна быть не более заданного значения, иначе ракета "разбивается", и игра считается проигранной. P.s. в своем коде дописал isStopped в метод chek
Anonymous #3236054
Уровень 1
2 января, 15:33
Как тормозить ракетой? ничего не получилось :-)
Pavel V.
Уровень 41
24 августа 2022, 01:59
Сделал конечно, но почему-то понимания процесса от силы процентов 50 наберется, остальное как-то смешалось в голове в кашу непонятную 😐
Omega0x0 Java Developer
24 июля 2022, 16:49
В KSP захотелось поиграть что-то...
Yunir
Уровень 51
29 июня 2022, 08:38
Надо бы еще запилить проверку, когда счет равен нулю, выбивать геймовер
Daniil Kovalyov
Уровень 25
26 июня 2022, 20:43
ПОдскажите!!! Я поменял ширину и высоту на 100 А окно вывода игры я так понимаю всё такое же 64х64 Как это исправить? или просто выгружать на сайт и всё будет гуд??????
Abilqasym
Уровень 3
2 февраля 2022, 14:18
It`s the so cool game! I`m playing its game... Please, subscribe me! And YouTube too! Search the youtube Geniral Qwerty!