Arkanoid game htrml5 canvas
Написал арканоид на канвасе. Жду конструктивной критики от гуру.
https://github.com/dKab/Arcanoid-html5-canvas-game |
как вычисляешь стукнулса шарик или нет ?
|
domius, если коротко, то нахожу кирпичи, с которыми шарик может соприкасаться в данный момент. Для каждого делаю проверку, на пересечение следующим обазом: нахожу ближайшую точку на кирпиче к центру шарика, сравниваю расстояние от неё с радиусом шарика. Если оно меньше радиуса -> шарик ударил кирпич.
|
Совсем не гуру, но по мне - выглядит очень круто (тем более - за месяц). Это вхождение в профессию такое или уже давно на JS кодишь? В гитхабе всё учебное как я понял.
Из комментариев - дизайн вырвиглазный (можно сказать олдскульный) и тестов не увидел. |
Не гуру :). Посмотрел, вот советы и замечания:
1) Ускорение для ракетки не хватает при зажатии клавиши. 2) Внизу округленность лучше убрать и толщину уменьшить, так как не отталкивается от краев (наверно и от боковых поверхностей). 3) В коде выноси все константы в отдельные переменные. 4) Всегда нужно помнить о расширяемости и объектов и функционала (игровые колбэк события). 5) Один стиль для цветов в коде (rgba(0,0,0,0.3) и "black" - мне не понравилось). 6) Если разделяешь функционал по файлам, то их название полностью должно соответствовать содержанию. 7) Не нужно плодить повторяющиеся куски кода, делай приватные функции. 8) В методах лучше принимать объекты для описания стиля, чем: "color, width, height, ...". Учитывать отсутствие передаваемых свойств и вынести свойства по умолчанию в отельную структуру. 9) Игровое поле должно растягиваться под размер монитора. 10) Память освобождать от лишних объектов. Привяжи accelerometer, можно будет детишкам давать играть. |
Часовой пояс GMT +3, время: 19:38. |