SashaLevkovich / middle.SandwormRampage.praktikum.yandex

https://middle-sandworm-rampage-praktikum-yandex-client.vercel.app
0 stars 0 forks source link

Feature/san 25 #24

Closed MaksimTsoyProfile closed 1 month ago

MaksimTsoyProfile commented 1 month ago

Какую задачу решаем Тикет SAN-25 Создать механику игры на Canvas API Написал логику для игры.

Добавил бесконечный цикл, который обновляет состояние игры и перерисовывает экран каждый кадр. Добавлено управление по стрелочкам. Добавлена отрисовка червя в canvas с помощью drawImage При столкновении со стеной телепорт в другой конец После столкновения с собой, конец игры Обработка картинок при поворотах (Rotate) Обработка колизий если еда спавнится внутри червя спомощью функции generateFoodPosition Видео

https://github.com/SashaLevkovich/middle.SandwormRampage.praktikum.yandex/assets/70644766/392ab5f6-643d-4302-99e9-26cbc0cf4db2

P.S. Прошу обратить внимание что в рамках этой задачи было просто сделать игру (https://linear.app/sandworm-rampage/issue/SAN-25/sozdat-mehaniku-igry-na-canvas-api) поэтому еще много чего нужно добавить жду ваши идеи в пачке.

Что будет реализовано:

Еда в виде танков Вывод очков Интерфейс инструкции по управлению

linear[bot] commented 1 month ago

SAN-25 Создать механику игры на Canvas API

vercel[bot] commented 1 month ago

The latest updates on your projects. Learn more about Vercel for Git ↗︎

Name Status Preview Comments Updated (UTC)
middle-sandworm-rampage-praktikum-yandex-client ✅ Ready (Inspect) Visit Preview 💬 Add feedback May 28, 2024 4:12pm
kyzinatra commented 1 month ago

Отличная работа! В целом логика canvas написана хорошо . Единственный момент, на который в том числе обратили внимание ваши коллеги это то, что хорошо было бы вынести эту логику в отдельные классы. К примеру в соответствии с MVP. В самом компоненте же просто создавать new CanvasController()