• Из-за обновления GTA 5 (был добавлен новый патч) может временно не работать вход в RAGE Multiplayer.

    Ошибка: Ваша версия Grand Theft Auto V не поддерживается RAGE Multiplayer.
    ERROR: Your game version is not supported by RAGE Multiplayer.

    Данная ошибка говорит о том, что GTA V обновилась до новой версии (GTA Online тоже). Вам необходимо обновить саму игру в главном меню вашего приложения (Steam / Epic Games / Rockstar Games).
    Если после этого RAGE:MP все равно не работает - вам нужно дождаться выхода патча для самого мультиплеера (обычно это занимает от нескольких часов до нескольких дней).

    Новости и апдейты Rockstar Games - https://www.rockstargames.com/newswire/
    Статус всех служб для Rockstar Games Launcher и поддерживаемых игр: https://support.rockstargames.com/ru/servicestatus


    Grand Theft Auto 5 (+ GTA Online) последний раз были обновлены:

Вопрос Очистка машины от грязи

ivanasdads

Новый участник
1 Дек 2024
4
0
13
Приветствую, столкнулся с такой проблемой, что машины спавнятся грязными, решил сделать команду для её очистки
В ragemp api нашел SetDirtlevel реализовал его вот так на сервере,по итогу использования пишет что машина помыта, через dirtlevel значение 0 но грязь на авто остается, пробовал переносить на клиент, Тот же результат

JavaScript:
mp.events.addCommand('wash', (player) => {
    if (!player.vehicle) {
        return player.outputChatBox('Вы должны быть в транспортном средстве!');
    }

    player.vehicle.dirtLevel = 0;
    player.vehicle.repair();
    player.outputChatBox('Транспорт помыт!');
});
 

derrsak

Специалист
17 Июн 2023
340
79
76
Приветствую, столкнулся с такой проблемой, что машины спавнятся грязными, решил сделать команду для её очистки
В ragemp api нашел SetDirtlevel реализовал его вот так на сервере,по итогу использования пишет что машина помыта, через dirtlevel значение 0 но грязь на авто остается, пробовал переносить на клиент, Тот же результат

JavaScript:
mp.events.addCommand('wash', (player) => {
    if (!player.vehicle) {
        return player.outputChatBox('Вы должны быть в транспортном средстве!');
    }

    player.vehicle.dirtLevel = 0;
    player.vehicle.repair();
    player.outputChatBox('Транспорт помыт!');
});
Это клиентская функция. Поправьте, если не так o_O
 

derrsak

Специалист
17 Июн 2023
340
79
76
Приветствую, столкнулся с такой проблемой, что машины спавнятся грязными, решил сделать команду для её очистки
В ragemp api нашел SetDirtlevel реализовал его вот так на сервере,по итогу использования пишет что машина помыта, через dirtlevel значение 0 но грязь на авто остается, пробовал переносить на клиент, Тот же результат

JavaScript:
mp.events.addCommand('wash', (player) => {
    if (!player.vehicle) {
        return player.outputChatBox('Вы должны быть в транспортном средстве!');
    }

    player.vehicle.dirtLevel = 0;
    player.vehicle.repair();
    player.outputChatBox('Транспорт помыт!');
});
С сервера вызываешь метод на клиенте. В клиенте - vehicle.setDirtLevel(0);
 

MacDuck

Новый участник
28 Апр 2022
22
2
67
Приветствую, столкнулся с такой проблемой, что машины спавнятся грязными, решил сделать команду для её очистки
В ragemp api нашел SetDirtlevel реализовал его вот так на сервере,по итогу использования пишет что машина помыта, через dirtlevel значение 0 но грязь на авто остается, пробовал переносить на клиент, Тот же результат

JavaScript:
mp.events.addCommand('wash', (player) => {
    if (!player.vehicle) {
        return player.outputChatBox('Вы должны быть в транспортном средстве!');
    }

    player.vehicle.dirtLevel = 0;
    player.vehicle.repair();
    player.outputChatBox('Транспорт помыт!');
});
Проблема еще может быть в мета файле машины ( vehicles.meta ), есть 2 параметра отвечающих за грязь:
<dirtLevelMin value="0.500000" />
<dirtLevelMax value="0.900000" />
И если первый ( то есть <dirtLevelMin value="0.500000" /> ) не равен 0 то машина никогда не будет чистой, она всегда будет спавнится грязной. А если хочет костылем обойти это ( без серверной команды и т.д. ) то просто выставляешь оба параметра на 0.
 

XDeveluxe

⚡️BackEnd Developer
Команда форума
Moderator
High developer
BackEnd developer
30 Авг 2021
2,770
1,576
211
28
Как уже говорили выше - сервер не может влиять на уровень загрязнения машины (во всяком случае так было раньше всегда), поэтому сервер может только отправить запрос клиенту, а клиент уже устанавливает значение (от 0.0 до 15.0) с помощью метода setDirtLevel.
Легче всего это реализовать с помощью установки SharedData на сервере с нужным значением, а на клиенте отлавливать и при onEntityStreamIn, где entity.type == 'vehicle' обрабатывать.
Если у тебя не работает, то значит неверно реализовал.
 
Реакции: Slash и enotit