Onakota999,
"Составьте техническое задание по вводу функционала "рубка дерева" для игры Counter-Strike (творческое задание)"
Общий замысел:
На карте, периодически, в одной из заранее заданных точек появляется дерево (объект с моделью). Игроки могут срубать дерево, получая за это деньги (стандартная игровая валюта).
Нюансы:
* Удобный редактор точек появления дерева с их покартовым сохранением.
* Точка появления дерева каждый раз выбирается случайно из всех имеющихся.
* Наличие возможности менять частоту появления дерева путём смены значения квара (в т.ч., временно отключать появление путём установки 0).
* Возможность менять время, требуемое на рубку, путём смены значения квара.
* Первое появление дерева происходит спустя # секунд после начала новой карты (отдельный квар).
* Таймер отсчёта до очередного появления дерева (респавн) запускается в момент, когда дерево срублено. Т.е. технически на карте может быть только одно дерево одновременно.
* Дерево имеет указанную модель (будет предоставлена мною).
* Дерево является твёрдым относительно других объектов в мире, т.е. не пропускает сквозь себя другие объекты.
* Начало процесса рубки осуществляется нажатием +use, прицелившись в дерево. При этом игрок должен быть жив, и находиться рядом с деревом (не далее # юнитов от него, т.е. должно выглядеть естественно).
* Одновременно с началом рубки игрок теряет возможность передвижения, переключения оружия, атаки. Активное оружие скрывается.
* Одновременно с началом рубки на экране игрока появляется шкала прогресса (сообщение BarTime), 100% заполнения которой должно соответствовать моменту, когда рубка успешно завершается.
* Рубить дерево может только один игрок одновременно (попытка параллельной рубки другим игроком не запускает процесс).
* Процесс рубки сопровождается эмитом в мир (слышат окружающие) звука удара топора по дереву (будет предоставлен мною). Звук должен воспроизводиться каждую секунду, пока игрок рубит дерево.
* Прерывание процесса рубки происходит в случае, если игрок, рубящий дерево, выходит с сервера, умирает, отпускает +use, или удаляется от дерева далее чем на # юнитов.
* Успешное завершение рубки возвращает срубившему его игроку ранее заблокированные способости и активное оружие.
* Успешное завершение рубки сразу же скрывает модель дерева, и воспроизводит в мир (эмит) звук падающего дерева (будет предоставлен). При этом дистанция слышимости этого звука должна быть увеличена (примерно как у he-гранаты).
* Успешное завершение рубки добавляет срубившему его игроку # игровых денег (объём должен настраиваться кваром).