Circuit Breaker - Скрипт мини-игры для сервера RAGE:MP
Описание
Доброго времени суток.
Данный скрипт - мини игра Circuit Breaker, которая изначально появилась в обновлении для GTA V от RockStar.
Скрипт подойдёт к абсолютно любому моду.
Система выполнена на C# клиентской стороне, полностью на Scaleform без CEF\'а.
Суть игры:
Дойти из точки А в точку Б играя за \"змейку\".
Нельзя соприкасаться со стенками, выходить за периметр игры или соприкасаться с телом змейки.
В игре всего 5 уровней сложности, повышая который изменяется:
Скорость движения змейки, шанс потери соединения с мини игрой и частота проверок потери соединения.
Уровней всего 6, выбирая количество уровней - они выбираются случайно из всех, то есть выбрав 3 уровня может получиться так, что нужно будет пройти 6, 1 и 4 уровни (например).
Система потери соединения работает следующим образом:
В зависимости от уровня сложности раз в определенное количество времени срабатывает проверка, по результату которой определяется отключить игрока или нет, если решение - отключить, то игрок теряет связь, экран становится красным и всё движение замораживается на случайное для игрока время (от 0.5 до 5 секунд). Из-за того, что игрок не знает, когда переподключение произойдёт - это создаёт некоторую дополнительную сложность при прохождении.
Важная информация:
За основу данного скрипта был взят скрипт для FiveM, который находится в публичном доступе.
Система была переписана для RAGE:MP, внесены изменения для оптимизации кода и некоторые улучшения, которые не работали в \"оригинале\".
Установка скрипта:
Все файлы из архива поместить в client_packages\\cs_packages
Начало игры:
Для того, чтобы мини игра началась - нужно отправить на клиент событие с названием CircuitBreakerStart и 3мя аргументами:
Первый аргумент - количество жизней (от 1 до 10),
Второй аргумент - уровень сложности (от 0 до 4, где 0 - новичок, 4 - эксперт),
Третий аргумент - количество уровней для победы (от 1 до 6).
Пример вызова события с C# серверной стороны:
player.TriggerEvent(\"CircuitBreakerStart\", 5, 1, 6);
Пример вызова события с JS серверной стороны:
player.call(\"CircuitBreakerStart\", 5, 1, 6);
В таком случае начнётся мини игра с 5 жизнями, 1 уровнем сложности и 6 уровнями.
Результат игры:
Результат приходит в 2 события - CircuitBreakerWIN и CircuitBreakerLOSE в зависимости от итога.
Победное событие (CircuitBreakerWIN) вызывается на клиентской стороне в случае, если игрок закончил нужное количество уровней и у него остались жизни.
Проигрышное событие (CircuitBreakerLOSE) вызывается на клиентской стороне в случае, если игрок вышел из мини игры (кнопка Q) или у него закончились жизни до того, как он закончил нужное количество уровней.
Категория:
Скрипты RAGE:MPАвтор публикации:
Root
Дата публикации:
18 янв. 2024 г.