Skip to content

Latest commit

 

History

History
104 lines (75 loc) · 6.28 KB

README.md

File metadata and controls

104 lines (75 loc) · 6.28 KB

PSVTestSnowballGame


Все указанные требования при разработке были выполнены!


Расположение apk: \Assets\PSV Test Snowball Game.apk

Расположение всех настроек в проекте: \Assets\Level\Settings


Использовано следующее соглашение имён в проекте: UnityStyleGuide


Производительность

  • Телефон 2016-го года показывает около 30-40 FPS
  • Более современные телефоны, показывают стабильные 60+ FPS

Для планирования и выполнения задач в течение 2 недель использовался Kanban


ESC, асинхронность - не использовались в проекте.


Плагины и версия Unity:

  • Unity 2018.4.31f1
  • Simple Input System
  • Spine 3.7

APK файл имеет следующие свойства:

  • Горизонтальный режим.
  • Compression Method: LZ4HC
  • Scripting Backend: IL2CPP
  • Minimum API Level: Android 4.4 'KitKat' (API level 19)
  • Target API Level: Android 10 (API level 29)
  • Target Architectures:
    • ARMv7
    • ARM64
    • x86

Установлено:

  • NDK: android-ndk-r16b
  • JRE и JDK: 8u152 x64

Исходное задание: Игра в снежки. Две стороны: на одной главный герой, на другой противники. Цель игры собрать нужное количество очков попаданий прежде чем закончатся жизни главного героя.

Главный персонаж которым управляем - Hippo:

  • С помощью джойстика управления по одной оси двигаем Hippo, используя анимации бега(run) и бездействия(idle).
  • Атакующая способность: на экране отображается, беспрерывно и постепенно изменяющаяся сила броска «Снежка», от минимальной до максимальной.
  • Цель нажать кнопку «Бросок» в момент максимальной силы, дабы «Снежок» долетел до противника.
  • «Снежок» - это физический объект который имеет свой вес и стремится упасть вниз, по этому ему нужно предать силу броска.
  • У «Снежка» есть время создания, по этому после «Броска» отображается прогресс создания нового в течении 2 секунд.
  • Во время успешного попадания по врагу - на экране отображается визуальный эффект успешного действия.
  • На экране отображается количество жизней Hippo. Всего 3 жизни. Если жизней стает 0 то показываем поражение с перезапуском уровня.

Противники:

  • В игре в один момент может быть 3 противника.
  • Каждый противник хаотично двигается по одной оси используя анимации бега(run) и бездействия(idle). Иногда враг останавливается на несколько секунд.
  • Раз в 5 секунд один из противников стреляет в Hippo по прямой, без учета гравитации. У Hippo должна быть возможность уйти от попадания.
  • При попадании противника по Hippo - отнимаем 1 жизнь.
  • При попрании Hippo по противнику - противник убегает за экран, а на его место выбегает следующий противник.
  • Противники могут быть трех уровней, с разными обликами, за попадание по противника разных уровней Hippo получает разное количество очков попаданий - 1, 2 ,3 соответственно.
  • На экране отображается счетчик заработанных очков за попадания по противникам.
  • В момент получения 10 очков попаданий - победа с визуальными эффектами и диалоговым окном с количеством звезд. Максимально 3 звезды по одной за каждую оставшуюся жизнь.

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

  • Запрещено использовать Instantiate после инициализации уровня.
  • Отображать на экране время раунда
  • Отображать на экране кнопку паузы
  • Возможность изменять значения в редакторе на сцене, до начала игры:
  • Скорость движения противников
  • Скорость движения Hippo
  • Количество необходимых очков попадания для победы
  • Количество получаемых очков попадания для каждого врага
  • Скорость перезарядки «Снежка» Hippo
  • Периодичность выстрелов противников

Для работы с анимациями интегрировать и использовать Spine Unity Plugin http://ru.esotericsoftware.com/spine-documentation http://ru.esotericsoftware.com/spine-unity#Getting-Started http://ru.esotericsoftware.com/spine-unity-download#Older-Versions

Asset Джойстика: https://assetstore.unity.com/packages/tools/input-management/simple-input-system-113033

Все необходимые картинки искать с помощью Google

Результат: Исходный код и APK.