• Из-за обновления GTA 5 (был добавлен новый патч) может временно не работать вход в 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/ru/newswire/
    Статус всех служб для Rockstar Games Launcher и поддерживаемых игр: https://support.rockstargames.com/ru/servicestatus


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

Проблема Проблема с функцией setNoCollision

Zderadinlio

Активный участник
Автор темы
15 Авг 2021
8
0
38
Привет, ребята, у меня проблема с setNoCollision на транспортных средствах.
Я не знаю что делаю не так
Итак, код такой:


JavaScript:
mp.vehicles.forEachInStreamRange(vehicle => {
        if (vehicle.handle !== 0 && vehicle !== mp.players.local) {
            mp.players.local.setNoCollision(vehicle.handle, false);
            vehicle.setAlpha(102);
        }
    });
 
Последнее редактирование модератором:

DaVilka

Гуру
16 Сен 2020
611
231
108
Привет, ребята, у меня проблема с setNoCollision на транспортных средствах.
Я не знаю что делаю не так
Итак, код такой:

JavaScript:
    mp.vehicles.forEachInStreamRange(vehicle => {
        if (vehicle.handle !== 0 && vehicle !== mp.players.local) {
            mp.players.local.setNoCollision(vehicle.handle, false);
            vehicle.setAlpha(102);
        }
    });


И они обычно должны проходить один через другой, но это не работает
Не юзал эту функцию, но эта работает https://wiki.rage.mp/index.php?title=Entity::setCollision
 

DaVilka

Гуру
16 Сен 2020
611
231
108
Возможно оно не работает изза того что ты применяешь колизию к персонажу и машине, а не к машине в которой находится персонаж
mp.players.local.vehicle.setNoCollision(player.vehicle.handle, false);
 

DaVilka

Гуру
16 Сен 2020
611
231
108

Zderadinlio

Активный участник
Автор темы
15 Авг 2021
8
0
38
Возможно оно не работает изза того что ты применяешь колизию к персонажу и машине, а не к машине в которой находится персонаж
mp.players.local.vehicle.setNoCollision(player.vehicle.handle, false);
Я пробовал это

JavaScript:
    mp.players.forEach(player => {
        mp.players.local.vehicle.setNoCollision(player.vehicle.handle, false);
        player.vehicle.setAlpha(102);
        player.setAlpha(255);
    });

Я тоже пробовал

JavaScript:
    mp.vehicles.forEachInStreamRange(vehicle => {
        if (vehicle.handle !== 0 && vehicle !== mp.players.local) {
            mp.players.local.vehicle.setNoCollision(vehicle.handle, false);
            vehicle.setAlpha(102);
        }
    });

И это все еще не работает
 

XDeveluxe

Модератор
Команда форума
high coder
30 Авг 2021
2,220
1,425
191
27
Здравствуй.

Тебе нужно, чтобы две машины имели возможность проезжать друг через друга?
Тогда нужно выставлять коллизию обоим из них, следующий код - то, что тебе нужно. При чём код должен отработать у обоих игроков, иначе один будет проезжать, а второй будет видеть месиво на своём экране.


JavaScript:
let myvehicle = mp.players.local.vehicle;
mp.vehicles.forEachInStreamRange(vehicle =>
{
    if (vehicle.handle !== 0 && myvehicle.handle !== 0 && vehicle !== myvehicle)
    {
        vehicle.setNoCollision(myvehicle.handle, false);
        myvehicle.setNoCollision(vehicle.handle, false);
        vehicle.setAlpha(102);
    }
});