Вот это дааа🤩! Спасибо, залип на часик😁
Подскажите пожалуйста, на сколько затруднительным видится перенос базового движка игры для использования в создании приложения на Android?
Было бы здорово сделать свою игру и потом из неё рабочий apk.
Обновление 1.06:
— Система этапов с постоянно растущей сложностью.
— Новый бонус: мячик из игры Arkanoid!
— Неиспользованный бонус спасает от выстрела, как одноразовый щит, но уничтожается при этом.
— Новые правила подсчёта очков.
— Текущий счёт, рекордный счёт и номер этапа отображаются на фоне.
— Марио начинает уровень не под зоной обстрела.
О системе этапов:
- Игра на выживание! Играйте до бесконечности и увеличивайте счёт, пока не проиграете.
- Каждый уровень у босса прибавляется 1 здоровье
- Каждые 5 уровней (начиная с 5-го) у маленьких танчиков прибавляется 1 здоровье
- Каждый уровень танчики стреляют всё чаще
- 4 этап по сложности соответствует ранней версии игры.
О новом бонусе Arkanoid Ball:
- Поймайте мячик и запустите его клавишей пробел - он отскакивает от стен и от врагов, разбивая их, как блоки!
- Как и в классическом арканоиде, мячик можно отбивать при помощи Марио, как ракеткой. Он улетит вниз навсегда, если его не отбить.
- Шанс появления мячика, как и других бонусов теперь, равен 33%.
В новой системе счёта теперь не учитывается время, только игровые действия. С каждым этапом количество получаемых очков тоже растёт.
Сможете заработать 5000 очков? :)
Обновление 1.05:
— Собранные и готовые к выстрелу бонусы теперь имеют иконку над головой Марио
— Чем меньше армия маленьких танчиков, тем агрессивнее стреляет босс
— Кирпичи подлетают немного выше
— У вылезших бонусов теперь более правильная физика (например, продолжают реагировать на пинки по кирпичам, пока едут к центру)
Исправления:
— Теперь игра замирает при победе или поражении (Марио не умрёт от оставшейся на экране вражеской пули)
— Исправлен баг, при котором вражеская пуля не отражалась от звезды в первые полсекунды после выстрела
Обновление 1.04:
— Повышена динамика и сложность игры
— Переработана физика движения Марио: теперь у него есть разгон, инерция, торможение, а также более резкое отталкивание от земли при прыжке
— Откорректирована анимация при конце игры
Обновление 1.03: повышаем уровень ностальгического безумия!
— Пули маленьких танчиков теперь имеют форму фигурок из тетриса
— Пуля босса теперь имеет форму огромной гоночной машинки из того же "тетриса"
А как ты сделал анимацию? Как просчитывал положение каждого пикселя (игровой ячейки)? Вручную или есть какие-то способы упростить это? Как нарисовал задний фон? Ведь там тысячи ячеек, и не так уж много одноцветных областей, которые можно закрасить как "прямоугольники". Получается, что ты прописывал координаты каждой ячейки/группы ячеек и каким цветом они закрашены? Или я что-то не догоняю?)
Так в обучении уже всё есть) Берёшь матрицу объекта со всеми её цветами и отрисовываешь в нужном месте экрана в зависимости от координат объекта. Анимация это просто постоянно сменяющиеся матрицы одного и того же объекта, всё есть в дефолтной реализации игры. Фон это те же объекты, которые рисуются до главных объектов, заранее расположенные в нужных местах. Если интересно, могу показать код.
Да, было бы здорово посмотреть код! Просто мне интересно, как ты просчитывал координаты такого огромного количества ячеек? Все вручную или это как-то автоматизируется? В оригинальной-то игре объекты были примитивные, а тебя одни кусты на заднем фоне чего стоят!) Не говоря уже про все остальное. Я понимаю, что это можно нарисовать с помощью закрашивания отдельных ячеек и их массивов (прямоугольников). Но ведь это очень долго! А ты ранее написал, что всю игру сделал всего за пару дней. Поэтому у меня и возникло предположение, что есть какие-то специальные приемы, упрощающие работу с графикой и анимацией, о которых я не знаю. Или ты брал уже готовые "матрицы" откуда-то?
Я перед этой игрой сделал рисовалку спрайтов и выложил её вместо игры Moonlander. Ссылка есть на моей страничке :) Сделал, чтобы все могли пользоваться. Код пришлю в ЛС :)