Решил поддержать серию постов «Делаем XXX на JS в 30 строк». Взял для примера Pong в приближенному к классическому оформлении:
Вышло не совсем в 30 строк, а целых 38, т.к. логики вышло прилично, а совсем убивать читаемость или сжимать минимизаторами/обфускаторами не хотелось.
В демке:
- Управление по Up/Down;
- ИИ противника;
- Ускорение мяча с каждым отскоком;
- Обработка клавиатуры, не зависящая от перемещения мяча;
- Ожидание нажатия клавиш для запуска мяча;
- Поддержка практически любого размера поля и высоты «игроков»;
- Ведение статистики.