This is a mobile optimized page that loads fast, if you want to load the real page, click this text.

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

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
Это клиентская функция. Поправьте, если не так
 

derrsak

Специалист
17 Июн 2023
340
79
76
С сервера вызываешь метод на клиенте. В клиенте - vehicle.setDirtLevel(0);
 

MacDuck

Новый участник
28 Апр 2022
22
3
67
Проблема еще может быть в мета файле машины ( 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