Space Invaders

Рекомендованный уровеньуровень
10+
Если вы думаете, что самая успешная игра в мире — какой-нибудь многомиллионный блокбастер последних лет, вы ошибаетесь! Это старая добрая (не такая уж и добрая, откровенно говоря) Space Invaders («Космические захватчики»), принесшая разработчикам около 10 млрд. долларов прибыли со скидкой на инфляцию. Она оказала огромное влияние не только на индустрию видеоигр, но также на массовую культуру: вы наверняка узнаете очертания пришельцев и противостоящего им бравого космического корабля на фоне звёздного неба, даже если никогда не играли в Space Invaders. А появилась игра об одиночке, который отражает орды агрессивно настроенных инопланетных «крабов» ещё в 1978 году на аркадных автоматах. После этого она выдержала массу переизданий на самых разных платформах, спасла от гибели приставку Atari 2600, а самые новые на сегодняшний день коммерческие версии вышли под Android и iOS. Теперь ваша очередь! Напишите собственную версию Space invaders прямо здесь, на JavaRush под чутким руководством разработчиков курса. Ваша игра будет похожа на «классику»: космический сеттинг с симпатичной графикой а-ля 8 бит, стрельба по агрессивным захватчикам, рядовым и «генералам», которые прячутся за их спинами, возможность уворачиваться от вражеских выстрелов, перемещаясь вправо и влево. Игроку предстоит сражаться до тех пор, пока он не убьет всех рядовых и босса. Или пока его не сразит инопланетная пуля. Мы не ищем лёгких путей, поэтому наша версия суровей оригинала: у героя будет всего одна жизнь.
Комментарии (56)
  • популярные
  • новые
  • старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
artem20123110
Уровень 1, Ukraine
14 августа, 12:35
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 не прислали!
Виталий
Уровень 28, Санкт-Петербург, Россия
8 апреля, 18:59
"под чутким руководством разработчиков курса" (>﹏<)
Marina
Уровень 31, Ростов-на-Дону, Россия
20 марта, 15:37
Чтобы решить 16/34, я создала матрицу PLAYER по виду матрицы ENEMY. Предложенная матрица красивее- корабль крупнее , цвет отличный, а главное - направлен в сторону интервентов! Продолжаю решать на сайте, пока без особых проблем. Спасибо за отклик.
Marina
Уровень 31, Ростов-на-Дону, Россия
14 марта, 06:28
Напоминаю разработчикам игры, что баг в задании 16/34 остался-не добавляется в код матрица ShapeMatrix.Player, хотя в условии сказано о ее добавлении к коду и идут ссылки на нее при вычислении координат.
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); и.т.п.
Anonymous #2786424
Уровень 1, Гомель, Belarus
14 сентября, 08:49
Игровой объект умеет заставить игру ("объект игры"😁) нарисовать себя Игра ("объект игры") передаётся как параметр "механика команды" заключается в том что внутри его вызывается метод(ы) отрисовки уже самой игры ("объект игры"). Таким образом, Игровой объект знает какие ячейки и как нужно нужно раскрашивать, а объект игры - то, каким образом можно это сделать (с теми ячейками какие ему укажут) "Игровой объект" - подразумевается экземпляр класса "GameObject", "объект игры" - экземпляр класса "Game"