Реализация скрипта для создания различных видов оружия в 3D-игре на Unity

Требуется реализовать C# скрипт, который можно прикрепить в инспекторе на префаб оружия, и с помощью него выбрать вид оружия и настроить его параметры. Должны быть реализованы следующие виды:

  • Автоматическое/полуавтоматическое огнестрельное - оружие с обычными патронами в виде префабов, выстрелы из которого производятся по прямой траектории с определённой задержкой.
  • Лазерное - оружие, испускающее непрерывный лазерный луч, направленный в центр экрана (в точку прицела), наносящий урон несколько раз в секунду.
  • RPG - оружие, выстрелы из которого производятся в виде взрывных снарядов по параболлической территории. При соприкосновении префаба снаряда с какой-либо поверхностью он должен взрываться с анимацией и наносить урон по области. Дополнительно можно реализовать создание импульса, из-за которого все нестатические объекты в радиусе взрыва будут разлетаться в разные стороны.
  • Аннигилирующее - оружие, испускающее лазерный луч, который уничтожает любой объект в течение нескольких секунд соприкосновения с ним (кроме стен, потолка и пола в комнатах).
  • Создающее барьеры - скорее больше устройство, нежели оружие. По нажатию ЛКМ должно создавать параллельную игроку небольшую стену впереди него (вращать стену перед построением нельзя). Никаких других условий на установку стены нет, она может пересекаться с любой другой поверхностью или быть поставлена за другой стеной.

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

Ссылка на репозиторий проекта в GitHub - https://github.com/RuslanBeresnev/Time-Reactor-Game

Требования к студенту

Требуется знание языка программирования C# (на нём пишутся все скрипты для Unity), а также большим плюсом будет умение работать с базовыми вещами в движке Unity; всё остальное можно изучить по ходу учебной практики.

Уровень

2 курс


Руководитель

Литвинов Юрий Викторович


Консультант

Береснёв Руслан Анатольевич


Источник

От себя лично