Skip to content

Задача «Гейб слишком занят»

Notifications You must be signed in to change notification settings

urfu-2017/webdev-task-8

Repository files navigation

Задача «Гейб слишком занят»

Перед выполнением задания внимательно прочитайте:

Основное задание

Все сувениры в магазине Билли быстро раскупили, поэтому теперь ему хочется попробовать себя в геймдеве.

Билли слышал, что самый популярный тренд в играх – это ремастеры, и у Билли как раз есть на примете игра из его детства. Так как в этой сфере Билли новичок, ему должен был помочь его друг Гейб, но Билли боится, что тот добавит в его любимую игру лутбоксы. Надеясь на ваше бескорыстие, Билли просит помощи у вас.

Требования

Предыдущие задания были достаточно хардкорные и формальные, поэтому в этот раз мы подготовили для вас кое-что фановое™. Предлагаем реализовать простую игру в стиле тамагочи.

В первую очередь, вам необходимо нарисовать персонажа при помощи SVG. Для добавления интерактивных анимаций к нему рекомендуем использовать snapsvg.io. В качестве персонажа предлагается использовать уже знакомого вам Хрюнделя.

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

Хрюндель должен уметь
  • Сохранять своё состояние и уметь его восстанавливать даже после закрытия браузера. Это касается и изменения его характеристик.

  • Засыпать, когда вы уходите с вкладки и просыпаться когда вы возвращаетесь, либо когда в комнате становится очень темно. При этом процесс засыпания и пробуждения должен сопровождаться анимацией. Во время сна восстанавливается энергия.

  • Питаться, при подключении зарядного устройства. Если такая возможность недоступна, выводить кнопку, по нажатию на которую также можно накормить Хрюнделя. Во время питания восстанавливается сытость.

  • Начинать вас слушать при клике по нему. Распознанная фраза выводится на экране и поднимает настроение персонажа. Как только настроение поднимается до максимума персонаж должен перестать вас слушать.

  • Умирать при снижении любых двух характеристик до 0.

  • Периодически издавать звуки, громкость которых можно настраивать.

  • Когда вы находитесь на другой вкладке, Хрюндель должен писать вам сообщения если он проголодался или соскучился (любой из показателей снизился до 10%).

  • Хочется, чтобы питание, радость от общения и смерть тоже были анимированы.

Нюансики
  • Должна присутствовать возможность в любой момент начать игру заново.

  • Когда Хрюндель выполняет какое-либо действие, он не может выполнять другое.

    • Общение прерывается сном, питанием или наполнением настроения до 100%
    • Питание прерывается сном или наполнением сытости до 100%
    • Сон прерывается активной вкладкой и наполнением энергии до 100%
  • Изменение каждой из характеристик должно происходить линейно с течением времени. Накопление харакеристик логично сделать в 3-4 раза более быстрым, чем их расходование.

  • Для реализации большинства возможностей рекомендуем использовать последние версии браузеров Chromium, Yandex.Browser или Chrome. Отсутствие в браузере возможности не должно влиять на общую работоспособность игры.

  • Для демонстрации можно использовать now.

Gabe

About

Задача «Гейб слишком занят»

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages