На этом уроке мы добавим две функции для проверки на столкновения машинки с боксиками и немножко поиграем. Вдохновился я на эти уроки статьёй на Хабре: habrahabr.ru/post/202556/
Дата отправки отчёта:
19 апреля 2021 г.
Задание выполнено: за
17 час. 2 мин.
Чему научился:
История создания игры "гонки" на JS 1. создан канвас с id=canvas в теге <body>; 2. canvas и context проинициализированы через функцию init(); 3. описаны параметры машинки и "боксов"; 4. при помощи паттерна fillRect нарисованы зеленая машинка и черные "боксы"; 5. созданы функции рисования машинки и боксов, причем размещение боксов реализовано рандомно на канвасе; 6. размещено 40 боксов и одна машинка. 7. выполнен рефакторинг предыдущего варианта скрипта race: - функция downBox() перемещает боксы вниз, - addBox() рандомно добавляет новые боксы на поле, - showBox() рисует сами боксы, cls() очищает поле. 8. Размещена кнопка Down, которая запускает эти функции в определенном порядке. 9. Добавила вызов таймера. 10. Создала функцию timer(). 11. функция addBox() изменена так, чтобы уровни увеличивались автоматически 12. плавное появление боксиков реализовано в функции addBox() 13. удаление уехавших боксиков реализовано в функции downBox() 14. подобрала параметры уровня и изменения скорости так, чтобы выполнение происходило комфортно для глаз 15. добавила обработчик движения мышки, который связывает мышь с машинкой (функция moveCar()). Функция-обработчик рассчитывает координаты машинки в канвасе и обрабатывает перемещение машинки влево и вправо. 16. добавила три функции (checkCrash(), isInside(x, y) и isCrash(bx, by) для проверки на столкновения машинки с боксиками 17. момент остановки игры и фиксации результата реализован в функции gameOver()
Что было сложным:
запуск проекта осложнился тем, что работа с nodeJS изменила настройки VS Code. Проблема решилась переустановкой этой программы (сброс настроек + очистка системных папок)
Научился: функции
для прoвеpки на столкновения машинки Трудности: Пoстaвить cвoй coбственный рекoрд. Вдохновился я на эти уроки статьёй
на Хабре: http://habrahabr.ru/post/202556/