Здравствуйте. В интернете не нашел урока(мануала) или скрипта который позволяет игроку ограничить скорость, к примеру в населенных пунктах. Хорошо подойдет для RP серверов. К примеру у Вас есть фракция LSPD и нужно поддерживать скорость для недопущения ДТП, тем более с синхронизацией в RageMP 0.3.7 существенные проблемки.
Все это нужно вставить в любое место клиентской части вашего сервера. (Пример: client_packages/index.js)
Важное замечание, я тестировал на бета версии мультиплеера 1.1!
Если автомобилю сначала установить скорость (setMaxSpeed), а затем использовать getVehicleModelMaxSpeed, то getVehicleModelMaxSpeed вернёт значение которое вы установили ранее.
Видеоурок:
Ссылки на использованные функции и ивенты:
Key::bind
Entity::setMaxSpeed
Vehicle::getVehicleModelMaxSpeed
PlayerLeaveVehicle
Ссылка на названия кнопок
JavaScript:
let limiter = false; // создадим переменную, которая отвечает за состояние ограна (вкл/выкл)
JavaScript:
let limiter_maxspeed = undefined; //создадим переменную в которую будем записывать максимальную скорость авто
JavaScript:
mp.keys.bind(0x4F, true, function() // 0x4F это символьное имя константы клавиши "O" (англ.)
{
if (mp.players.local.vehicle) { // проверка на нахождение в автомобиле
if(limiter) { // проверка на состояние ограничителя (вкл/выкл)
mp.players.local.vehicle.setMaxSpeed(limiter_maxspeed) // возвращаем автомобилю его стоковую скорость
limiter_maxspeed = undefined; //очищаем переменную в которую мы ранее записывали стоковую максималку авто
limiter = false; // выключаем ограничитель
}
else {
limiter_maxspeed = mp.game.vehicle.getVehicleModelMaxSpeed(mp.players.local.vehicle.model); // записываем стоковую скорость автомобиля в переменную
mp.players.local.vehicle.setMaxSpeed(60/3.6); // ограничиваем скорость авто, где 60 это скорость на которую мы ограничиваем автомобиль, где 3.6 это перевод в км/ч
limiter = true; // включаем ограничитель
}
}
});
JavaScript:
mp.events.add("playerLeaveVehicle", (vehicle, seat) => { // Срабатывает, когда игрок выходит из машины.
vehicle.setMaxSpeed(limiter_maxspeed) // возвращаем автомобилю его стоковую скорость
limiter_maxspeed = undefined; //очищаем переменную в которую мы ранее записывали стоковую максималку авто
limiter = false; // выключаем ограничитель
})
Важное замечание, я тестировал на бета версии мультиплеера 1.1!
Если автомобилю сначала установить скорость (setMaxSpeed), а затем использовать getVehicleModelMaxSpeed, то getVehicleModelMaxSpeed вернёт значение которое вы установили ранее.
Видеоурок:
Ограничение скорости автомобиля | RedAge | RAGE:MP
Всем привет! Сегодня я вам покажу как сделать ограничитель скорости автомобиля для вашего сервера RAGE:MP
ragemp.pro
Ссылки на использованные функции и ивенты:
Key::bind
Entity::setMaxSpeed
Vehicle::getVehicleModelMaxSpeed
PlayerLeaveVehicle
Ссылка на названия кнопок
Последнее редактирование модератором: