Легенда
В компании «Инкилевич и сыновья» проходят постоянные соревнования между коллегами для укрепления корпоративного духа. Работают в основном IT-специалисты со сложными задачами. Им хочется простую по механике игру, в которой они могли бы разгрузить мозг и посоревноваться друг с другом.
Цель
Отработать навыки JavaScript на собственном проекте.
Задача
Реализовать браузерную 2D игру про приключения динозаврика.
Структура проекта
Пример похожей игры — это классическая игра Dinosaur Game от Chrome.
Только тут динозаврик движется слева направо, при достижении правого края отрывается новая сцена (продолжение мира, как в «Марио»). Через несколько сцен заканчивается уровень и происходит переход в следующий уровень.
- Каждый уровень визуально отличается от других уровней: меняется задний фон, предметы, появляются новые препятствия и персонажи (юниты).
- Необходимо реализовать, как минимум 3 уровня игры, каждый из которых состоит минимум из 5 сцен.
- Также должен вестись подсчет очков (правый верхний угол). За каждого перепрыгнутого юнита — 30 очков. За перепрыгнутое препятствие — 10 очко. Каждые 10 сек игры начисляется 10 очков (за продолжительность жизни динозаврика). Цель: набрать наибольшее количество очков.
- На пути динозаврика встречаются препятствия и другие персонажи. Препятствия и персонажи (юниты) могут быть разных размеров. Варианты препятствий: большие камни, холмы, брёвна, ручьи. Юниты отличаются от препятствий тем, что они могут двигаться.
- Если потрачено всё здоровье (3 сердечка), уровень закачивается и игрок начинает прохождение уровня и набор очков за уровень сначала. При переходе на новый уровень у игрока всегда 3 сердечка.
- Динозаврику нужно перепрыгнуть все препятствия и юнитов. Если игрок не перепрыгивает препятствие или юнита, то тратится единица здоровья — 1 сердечко.
- В конце каждого уровня находится Босс. Это быстродвижущийся юнит, которого нужно перепрыгнуть, чтобы пройти уровень. Если игрок не перепрыгивает Босса, он погибает и начинает уровень сначала. Баллы за уровень обнуляются.
При достижении конца последнего уровня, игра заканчивается и происходит подсчёт общего количество баллов.
Инструменты
Игру реализовать при помощи HTML5 Canvas. При написании движка игры можно использовать любые дополнительные библиотеки, например такие как: