Javascript-форум (https://javascript.ru/forum/)
-   Ваши сайты и скрипты (https://javascript.ru/forum/project/)
-   -   Arkanoid game htrml5 canvas (https://javascript.ru/forum/project/46877-arkanoid-game-htrml5-canvas.html)

phpkid 27.04.2014 22:26

Arkanoid game htrml5 canvas
 
Написал арканоид на канвасе. Жду конструктивной критики от гуру.
https://github.com/dKab/Arcanoid-html5-canvas-game

domius 28.04.2014 10:57

как вычисляешь стукнулса шарик или нет ?

phpkid 28.04.2014 15:03

domius, если коротко, то нахожу кирпичи, с которыми шарик может соприкасаться в данный момент. Для каждого делаю проверку, на пересечение следующим обазом: нахожу ближайшую точку на кирпиче к центру шарика, сравниваю расстояние от неё с радиусом шарика. Если оно меньше радиуса -> шарик ударил кирпич.

a.malitsky 09.05.2014 05:40

Совсем не гуру, но по мне - выглядит очень круто (тем более - за месяц). Это вхождение в профессию такое или уже давно на JS кодишь? В гитхабе всё учебное как я понял.

Из комментариев - дизайн вырвиглазный (можно сказать олдскульный) и тестов не увидел.

rekzi 10.05.2014 23:45

Не гуру :). Посмотрел, вот советы и замечания:
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.