Space Invaders

Рекомендованный уровеньуровень
10+
Если вы думаете, что самая успешная игра в мире — какой-нибудь многомиллионный блокбастер последних лет, вы ошибаетесь! Это старая добрая (не такая уж и добрая, откровенно говоря) Space Invaders («Космические захватчики»), принесшая разработчикам около 10 млрд. долларов прибыли со скидкой на инфляцию. Она оказала огромное влияние не только на индустрию видеоигр, но также на массовую культуру: вы наверняка узнаете очертания пришельцев и противостоящего им бравого космического корабля на фоне звёздного неба, даже если никогда не играли в Space Invaders. А появилась игра об одиночке, который отражает орды агрессивно настроенных инопланетных «крабов» ещё в 1978 году на аркадных автоматах. После этого она выдержала массу переизданий на самых разных платформах, спасла от гибели приставку Atari 2600, а самые новые на сегодняшний день коммерческие версии вышли под Android и iOS. Теперь ваша очередь! Напишите собственную версию Space invaders прямо здесь, на JavaRush под чутким руководством разработчиков курса. Ваша игра будет похожа на «классику»: космический сеттинг с симпатичной графикой а-ля 8 бит, стрельба по агрессивным захватчикам, рядовым и «генералам», которые прячутся за их спинами, возможность уворачиваться от вражеских выстрелов, перемещаясь вправо и влево. Игроку предстоит сражаться до тех пор, пока он не убьет всех рядовых и босса. Или пока его не сразит инопланетная пуля. Мы не ищем лёгких путей, поэтому наша версия суровей оригинала: у героя будет всего одна жизнь.
Комментарии (55)
  • популярные
  • новые
  • старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Bohdan
Уровень 2, Киев
8 июня, 15:34
🤭
Mike-L
Уровень 43
19 мая, 16:24
в третьем условии к задаче код написал верно -> валидатор не принял решение в таком виде для класса Star мой вариант
public class Star extends GameObject {
    public Star(double x, double y)
{
        super(x, y); //просто "разнес скобки" и прокомментировал код
    }
}
надо чтобы прошло тест
public class Star extends GameObject {
    public Star(double x, double y) {
        super(x, y);
    }
}
пысы. хотя делаю || еще игры по 1-2 таска и нормально всё, можно и комментарии в коде оставлять ХЗ, что там дальше будет с "чудо-играми" при прохождении валидации
Валерий
Уровень 4, Новосибирск, Россия
7 мая, 17:20
Здравствуйте! класс ShapeMatrix не прислали!
Ilya Ryvkin
Уровень 20, Москва, Россия
20 апреля, 19:28
Если-что единственные клавиши которые вы можете использовать в JAVARUSH для игр - это ENTER, ESCAPE, SPACE, PAUSE, LEFT, RIGHT, UP и DOWN.
Виталий
Уровень 27, Санкт-Петербург, Россия
8 апреля, 18:59
"под чутким руководством разработчиков курса" (>﹏<)
Marina
Уровень 30, Ростов-на-Дону, Россия
20 марта, 15:37
Чтобы решить 16/34, я создала матрицу PLAYER по виду матрицы ENEMY. Предложенная матрица красивее- корабль крупнее , цвет отличный, а главное - направлен в сторону интервентов! Продолжаю решать на сайте, пока без особых проблем. Спасибо за отклик.
Marina
Уровень 30, Ростов-на-Дону, Россия
14 марта, 06:28
Напоминаю разработчикам игры, что баг в задании 16/34 остался-не добавляется в код матрица ShapeMatrix.Player, хотя в условии сказано о ее добавлении к коду и идут ссылки на нее при вычислении координат.
Зепп Бранниган Admin в JavaRush Moderator
15 марта, 14:14
Спасибо за Ваше обращение. Напомнили.
Divertitto Android Developer Master
16 марта, 09:38
Такая ошибка может возникать после сброса большой задачи через WebIde. Есть 2 решение: 1. Рекомендуемое - использовать Intellij IDEA. 2. Почистить local storage браузера. На всякий случай прикреплю код матрицы PLAYER
public static final int[][] PLAYER = new int[][]{
         {0, 0, 6, 0, 0},
         {0, 6, 6, 6, 0},
         {6, 6, 6, 6, 6}
 };
Maксим
Уровень 17, Пермь, Россия
22 февраля, 09:23
а можно как-то добавить звуковые эффекты?
Divertitto Android Developer Master
16 марта, 09:32
В текущей версии движка Web - нет, в JavaFx пользователь может сам добавлять
Mikhail Levitin
Уровень 2, Москва
9 декабря 2020, 18:20
№16 - баг - матрицу ShapeMatrix.PLAYER не добавляют при переходе на задание
Mikhail Levitin
Уровень 2, Москва
9 декабря 2020, 17:43
Добрый день, можете объяснить механику команды (как выполняется) : gameobject.draw(this); например: bullet.draw(this); star.draw(this); и.т.п.