Вопросы

Antoxa39
Dance 80-90, mmm Nice)

Как узнать координаты обьетка, после того как игрок изменил позицию обьекта через EditObject.

    if(sscanf(objid,"i",objid[1])) return SendClientMessage(playerid,-1,"zzzz");
    obj = CreateObject(objid[1],0.0,0.0,0.0,0.0,0.0,0.0);
    EditObject(playerid,obj);
    new Float:x,Float:y,Float:z;
    GetPlayerPos(playerid,x,y,z);
    SetObjectPos(obj,x,y,z);

Мне нужно узнать координаты после того как игрок сохранил изменения с обьектом

Поделиться сообщением


Ссылка на сообщение

4 ответа на этот вопрос

  • 0
Antoxa39
Dance 80-90, mmm Nice)

@DEST 

public OnPlayerEditObject(playerid, playerobject, objectid, response, Float:fX, Float:fY, Float:fZ, Float:fRotX, Float:fRotY, Float:fRotZ)
{

    if(response == EDIT_RESPONSE_FINAL)
    {
        AttachObjectToVehicle(GetPVarInt(playerid,"objc"),GetPlayerVehicleID(playerid),fX/1000,fY/1000,fZ/1000,fRotX,fRotY,fRotZ);
        
    }

}

После того как он нажал финал, то обьект должен закрепится на той позиции которую игрок задал, но обьект возвращается на нулевые. Делю на 1000 т.к обьект прикрепляется по координатам модели машины.

Поделиться сообщением


Ссылка на сообщение
  • 0
hokageud
Завсегдатый

@Antoxa39 

public OnPlayerEditObject(playerid, playerobject, objectid, response, Float:fX, Float:fY, Float:fZ, Float:fRotX, Float:fRotY, Float:fRotZ)
{

    if(response == EDIT_RESPONSE_FINAL)
    {
        AttachObjectToVehicle(GetPVarInt(playerid,"objc"),GetPlayerVehicleID(playerid),fX,fY,fZ,fRotX,fRotY,fRotZ);
        
    }

}

попробуй

Поделиться сообщением


Ссылка на сообщение
  • 0

@Antoxa39 обратите внимание, что в коллбэк приходят координаты в мире, а в функцию AttachObjectToVehicle вы передаете не координаты объекта в мире, а смещение относительно центра транспортного средства. 

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

Поделиться сообщением


Ссылка на сообщение
Гость
Эта тема закрыта для публикации ответов.
  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

  • Похожий контент

    • Korochansky
      От Korochansky
      Я рад объявить о выпуске первой публичной версии современной IDE с открытым исходным кодом под лицензией GPLv3 для разработки open.mp и SA-MP, которая отличается интеграцией с SAMPCTL, управлением зависимостями и встроенной поддержкой Git.
       
      Особенности:
      • Разработано специально для open.mp и SA-MP разработки.
      • Встроенная интеграция с SAMPCTL для создания, запуска и управления проектами.
      • Менеджер зависимостей для удобной установки и обновления серверных пакетов и компонентов.
      • Встроенная поддержка Git с индикаторами состояния репозитория и историей коммитов.
      • Маркеры истории изменений для отслеживания измененных и сохраненных строк.
      • Автоматическое сопоставление и выделение скобок
      • Предварительный просмотр цвета для значений RGBA и HEX прямо в редакторе.
      • Интеграция инструмента выбора цвета для быстрой вставки цветов в код Pawn.
      • Режим 'Разделенный редактор кода' для одновременной работы с несколькими файлами.
      • Дерево проекта, оптимизированное для крупных проектов.
      • Интегрированные панели вывода результатов сборки и консоли сервера.
      • Автоматический мониторинг и обновление файлов проектов.
      • Портативная версия (установка не требуется).
       
      В репозитории: https://github.com/daniilkorochansky/spawn
    • Margiela
      От Margiela
      устал от vs code + он часто конфликтует с маками, конкретно с версией M3(как у меня).
      имеются ли аналоги pawno на mac?