• Из-за обновления 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) последний раз были обновлены:

FAQ Установка координат объекта относительно другого.

Mercury_One

Специалист
Автор темы
high coder
11 Фев 2021
37
22
82
Предупреждение: Код представлен на JS (client-side).

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

Практический пример: У нас есть объект - стол блэкджека, на него надо положить карту относительно стола.

Реализация:
JavaScript:
let tablePos = {x: -412, y: 1168, z: 324.85};
let table = mp.objects.new(mp.game.joaat("vw_prop_casino_blckjack_01"), tablePos); //Создание стола
let card = mp.objects.new(mp.game.joaat("vw_prop_cas_card_hrt_ace"), tablePos); // Создание карты, пусть она будет на позиции стола (это не надолго)
let offsetCard = {x: 0.5737, y: 0.2376, z: 0.948025}; // Подобранные координаты смещения относительно стола
let newCardPos = mp.game.object.getObjectOffsetFromCoords(tablePos.x, tablePos.y, tablePos.z, table.getHeading(), offsetCard.x, offsetCard.y, offsetCard.z);
// mp.game.object.getObjectOffsetFromCoords - Возвращает координаты относительно объекта, учитывая его поворот(Heading)
// Первыми 3-мя аргументами предаём координаты основного объекта, затем градусы поворота и наконец координаты смещения
card.setCoordsNoOffset(newCardPos.x, newCardPos.y, newCardPos.z, false, false, true);
//object.setCoordsNoOffset - Устанавливает уже новые координаты, последние 3 аргумента это инвертирвание осей, можете поиграться с этим

По итогу: Меняя значения позиции стола, карта всё равно будет лежать на нём, даже если вы измените heading(угол разворота). Хочу заметить, что если вы будете вертеть объект уже после установки координат относительного объекта, то лучше его аттачить или ещё раз выполнить последние 2 функции из примера.

Если будут вопросы, задавайте в комментарии.
 
Последнее редактирование: