Skip to content

vovan-zt/kottans-arcade-game

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

52 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Classic Arcade Game Clone Project

Игра Frogger: Начало

В этом проекте вы будете создавать свою собственную аркадную игру. После завершения ваша игра должна выглядеть так, как показано на этом видео:

    https://www.youtube.com/watch?v=SxeHV1kt7iU&feature=youtu.be

Описание игры Frogger

Ваша реализация должна, как минимум, следовать базовым функциональным возможностям, но при желании вы можете добавить в свою игру дополнительные необязательные функциональные возможности.

Базовая функциональность

В этой игре у вас есть игрок и враги (ошибки). Цель игрока - добраться до воды, не столкнувшись ни с одним из врагов. Игрок может двигаться влево, вправо, вверх и вниз. Враги движутся с разной скоростью по мощеной части сцены. Как только игрок сталкивается с врагом, игра сбрасывается, и игрок возвращается на стартовую клетку. Как только игрок достигает воды, игра выиграна.

Дополнительный функционал

В дополнение к основному функционалу вы можете добавить в свою игру более интересные функции. Например, вот некоторые дополнительные функции, которые вы можете добавить:

Выбор игрока: разрешить пользователю выбирать изображение персонажа игрока перед началом игры. Вы можете использовать различные изображения персонажей, находящиеся в папке с изображениями (мы вернемся к этому ниже). Счет: вы можете реализовать счет для игры. Например, счет может увеличиваться каждый раз, когда игрок достигает воды, и может сбрасываться на 0 при столкновении (или может уменьшаться). Коллекционные предметы: вы можете добавлять в игру драгоценные камни, позволяя игроку собирать их, чтобы сделать игру более интересной. Все, что вам нравится!

Начиная

Вам не придется создавать игру с нуля. Мы предоставили вам художественные ресурсы и игровой движок . Вы можете скачать или клонировать их из нашего репозитория.

Репозиторий содержит папки css, images и js, а также файлы index.html и README.md. После того, как вы скачали предоставленные нами файлы, вам нужно будет отредактировать app.js для сборки игры.

Папка css содержит файл style.css, который вам не нужно редактировать.

Папка images содержит файлы изображений png, которые используются при отображении игры. Из этой папки будут загружены изображения игрока и вражеского персонажа.

Папка js также содержит движок приложения, необходимый для запуска игры, и файл resources.js. Вам не нужно редактировать эти файлы. index.html — открытие index.html должно загрузить игру

README.md должен содержать инструкции о том, как загрузить игру и играть в нее (вам нужно будет добавить эти инструкции).

Внутри файла app.js вам нужно будет реализовать классы Player и Enemy , используя объектно-ориентированный JavaScript. Часть кода для врага предоставляется вам, и вам нужно будет выполнить следующее:

Функция врага, которая инициирует врага:

Загрузка изображения путем установки this.sprite на соответствующее изображение в папке изображений (уже предоставлено)

Установка начального местоположения врага (необходимо реализовать)

Настройка скорости врага (нужно реализовать)

Метод обновления для врага

Обновляет местоположение врага (нужно реализовать)

Обрабатывает столкновение с Player (нужно реализовать)

Вы можете добавить свои собственные методы врага по мере необходимости.

Вам также потребуется реализовать класс Player, и вы можете использовать класс Enemy в качестве примера того, как начать работу. Как минимум, вы должны реализовать следующее:

Функция Player, которая инициирует Player:

Загрузка изображения путем установки this.sprite на соответствующее изображение в папке изображений (используйте код из функции Enemy в качестве примера того, как это сделать)

Установка начального местоположения проигрывателя

Способ обновления для Игрока (может быть аналогичен способу для Врага)

Метод рендеринга для игрока (используйте код из метода рендеринга для врага)

Метод handleInput, который должен получать пользовательский ввод, allowKeys (клавиша, которая была нажата) и перемещать игрока в соответствии с этим вводом. Особенно:

Левая клавиша должна перемещать игрока влево, правая клавиша вправо, вверх следует перемещать игрока вверх, а вниз следует перемещать игрока вниз.

Напомним, что игрок не может выйти за пределы экрана (поэтому вам нужно будет проверить это и принять соответствующие меры).

Если игрок достигает воды, игра должна быть сброшена путем перемещения игрока обратно в исходное положение (для этого можно написать отдельный метод reset Player).

При необходимости вы можете добавить свои собственные методы Player.

После того, как вы завершили реализацию Player и Enemy, вы должны создать их экземпляры:

Создание нового объекта Player

Создание нескольких новых объектов Enemies и размещение их в массиве с именем allEnemies

Добавление собственных

При желании вы можете добавить в игру дополнительные функции. Для этого вы можете добавить дополнительный код в файл app.js и в классы Enemy и Player.

Table of Contents

Instructions

Use this rubric for self-checking your submission.

Make sure the functions you write are object-oriented - either class functions (like Player and Enemy) or class prototype functions such as Enemy.prototype.checkCollisions. Also make sure that the keyword this is used appropriately within your class and class prototype functions to refer to the object the function is called upon.

Your README.md file should be updated with instructions on both how to 1. Run and 2. Play your arcade game.

For detailed instructions on how to get started, check out this guide.

Contributing

This repository is the starter code for all Udacity students. Therefore, we most likely will not accept pull requests.

Archival Note

This repository is deprecated; therefore, we are going to archive it. However, learners will be able to fork it to their personal Github account but cannot submit PRs to this repository. If you have any issues or suggestions to make, feel free to:

https://developer.mozilla.org/ru/docs/Games/Tutorials/2D_Breakout_game_pure_JavaScript/Collision_detection

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 97.7%
  • HTML 2.1%
  • CSS 0.2%