Jump to content

CocaColaBear

Members
  • Posts

    229
  • Joined

  • Last visited

Posts posted by CocaColaBear

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

    Даже в стоковых машинах передача переключается быстрее, чем наступает смена звука(на след. передачу).

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

  2. Я думаю, все гораздо проще. Человек просто в onClientPreRender отлавливал изменение передачи. Если передача изменилась - меняет звук.

    Узнать текущую передачу - https://wiki.multitheftauto.com/wiki/Ge ... urrentGear

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

  3. Ещё такой вопрос: звуки трансп. средств невозможно заменить?

    Возможно только скриптово. Примерно так:

    1. Отключаем звук при помощи setWorldSoundEnabled;

    2. При входе игрока в автомобиль - запускаем необходимые звуки;

    3. Ну и потом в зависимости от скорости и других действий включать тот или иной звук.

    В общем, не думаю, что такой способ устроит вас.

  4. Это-то понятно =) А, допустим, если машина спавнится из mysql? По опр. координатам. Как получить её идентификатор, по которому присваивать уже параметры? (veh)

    В любом случае, она спавнится при помощи createVehicle. Найдя данное место, можно и присвоить нужный handling

  5. Каждый раз, когда персонаж будет в него садиться?

    Перепутал данную функцию с setModelHandling. Поэтому и был вопрос - всем машинам заменятся хар-ки или только одной.

    Тогда где лучше выставлять новые параметры машинке? При её спавне? Или входе игрока в неё?

    Выставляется только той, которая указана в параметре. Выставлять новые параметры тогда, когда это необходимо. Например, при создании, а потом при изменении.

    При создании, как-то так:

      
    local veh = createVehicle(...) 
    setVehicleHandling(veh, ...) 
      
    

  6. Пофиксил кароч праворульные тазики. Всё в норме теперь.

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

    Допустим, у одного приобретён тюнинг двигателя, значит у него будет скорость больше. Или новые хар-ки будут распостраняться на весь класс машин, вне зависимости от пользователя?

    Возможно, надо использовать setVehicleHandling, на определенный автомобиль

  7. Дело в том, что замена-то серверная. А не просто заменить модельку в игре.

    Хендлинг не проредактируешь через сервер клиенту.

    Изменив handling на сервере, он автоматически изменится для автомобилей клиентов

  8. Есть ли возможность прочесть кириллицу из .txt файла в игре? У меня функция возвращает пустое место из такого файла в любое ГУИ окно или чат, а если выводить результат в консоль, то там какие-то иероглифы. Если же текст на латинице, то все нормально. Что-то с кодировкой или я неправильно что-то делаю?

    Да есть. У меня прекрасно выводит кирилицу в Memo из текстового файла. И кодировка UTF-8 (без BOM). Покажите, как вы выводите

  9. Всем привет, помогите сделать таймер в цикле, чтобы цикл начинал второй крут когда пройдет функция таймера, а не так что оно просто запускает таймер сразу подрят, ну я думаю вы поняли о чем я, заранее спасибо.
        while i >= 0 do 
        local randomTime = math.random(7000, 12000) 
        triggerServerEvent('runAnim', root, localPlayer, randomTime) 
         i = i-1 
        setTimer ( function() 
            if getElementData(localPlayer,'rightHand') == 3 then 
              antibag = nil 
              if i == 0 then 
                     triggerServerEvent("moveTrisEvent", root, tris )      
              end 
           end  
             
        end, randomTime, 1 )  
        end 
    

      
    local f 
    f = function() 
        local randomTime = math.random(7000, 12000) 
        triggerServerEvent('runAnim', root, localPlayer, randomTime) 
        i = i-1 
        setTimer(function() 
            if getElementData(localPlayer,'rightHand') == 3 then 
                antibag = nil 
                if i == 0 then 
                    triggerServerEvent("moveTrisEvent", root, tris )      
                end 
            end  
            if(i >= 0) then  
                f() 
            end 
        end, randomTime, 1) 
    end 
    f() 
      
    

  10. Можно ли как-нибудь сохранять бинарные файлы(изображения, например) из-под Lua в бд MySQL ?

    Читаешь изображение при помощи fileRead и сохраняешь полученный результат в БД. Потом через fileWrite можешь заного создать изображение

      
    fileRead 
    fileWrite 
      
    

  11. Привет всем, помогите привязать объект именно к руке педа, через attachElements это выйдет?

    attachElements привязывает только к позиции элемента. Для того, чтобы объект всегда был в руке, в независимости от анимации, используются:

      
    getPedBonePosition 
    + 
    setElementPosition 
      
    

    И все это дело нужно обрабатывать в onClientRender или onClientPreRender.

    Но вообще, вы можете использовать данный ресурс, если не хотите делать сами:

    https://community.multitheftauto.com/in ... ls&id=2540

  12. А какой тариф у тебя? Какая виртуализация?

    Я вот думал взять vds-отрыв с виртуализацией kvm.

    Как вариант я вот думаю можно взять digitalocean, все нахваливают.

    У меня VDS-Старт на KVM. Просто у меня нет нагрузок и он со всем справляется.

    А для тебя, думаю "отрыва" хватит сполна.

  13. Бот так крутится вокруг одной точки, и никак не не может найти, видимо, хоть немного похожий угол... короче, не мог бы ты привести примерный код?)

    Так поэтому и крутится. Не сравнивай точный угол. Бери погрешность в несколько градусов

  14. Ребята, посоветуйте пожалуйста хороший, стабильный vps хостинг.

    Цена 400-500р, оплата WebMoney, буду хостить сайт, базу и пару мта серверов по 64 слота, хотел взять на firstvds.ru, но после того как прочитал отзывы немного засомневался.

    Использую firstvds.ru уже 2-й месяц. Все стабильно как часы. Ни разу не заметил сбоя.

    Единственный минус - слишком неудобная панель управления. Например, если захочешь сменить тариф, то придется делать бекап существующего сервера, отменять подписку на текущий тариф и оформлять новую.

    Если знаешь, что не будешь изменять тариф, то хостинг хорош.

  15. Hi all! If i tried start server, i got a error:

    ERROR: Could not load /home/MTA/mods/deathmatch/./dbconmy.so - /home/MTA/mods/deathmatch/./dbconmy.so: symbol __cxa_pure_virtual, version libmysqlclient_16 not defined in file libmysqlclient.so.16 with link time reference 
    

    Ubuntu 12.04 x86_64

  16. Решил выложить новую версию данного компилятора.

    Что нового:

    • Полностью изменен интерфейс
    • Добавлен Drag & Drop для папок и файлов.
    • Добавлена возможность сохранять папку, в которую будут помещены скрипты
    • Ускорен процесс компиляции в программе. Теперь каждый файл компилируется в отдельном, независимом потоке.

    * Обновлены ссылке в шапке

  17. Действительно, сделай самостоятельно исследование этого вопроса. И о результатах напиши. Это же намного интересней :)

    Уже проверил. Все нормально обновляется. Все так, как я говорил, запросы отправляются в стек БД и оттуда выполняются, поэтому соединение можно легко прерывать и код выше будет работать.

  18. Посмотрел стандартный ресурс. Он был сделан задолго до функции dxSetAspectRatioAdjustmentEnabled и там под каждое разрешение высчитывается свои координаты при помощи функции resAdjust в util_client.lua.

    Проще такое же перерисовать самому при помощи dxSetAspectRatioAdjustmentEnabled

  19. Какая разница чем компилировать? Есть исходники - скомпилируйте сразу МТАшным компилтятором, дабы потом не было проблем. Нет исходников? Ну тогда либо пишите сами, либо закидывайте это дело.

  20. Всё выполняется в одном потоке. Если подключение разрывается раньше чем обновляются игроки, то логично, что вместо сохранения информации в БД ты получишь кучу ошибок.

    Это понятно. Но судя по работе dbExec, данная функция лишь отправляет запрос на БД. После чего, данный запрос либо выполняется, либо ждет своей очереди на выполнение. Т.е. получается, огромное кол-во запросов помешается в стек и в подключении уже нет надобности, поэтому уничтожается.

    Пример, про что я спрашиваю:

    addEventHandler("onResourceStop", resourceRoot, 
        function() 
            for _, player in ipairs(getElementsByType("player")) do 
                --dbExec(conneciton, ...) 
            end 
            destroyElement(conneciton) 
        end 
    ) 
    

    Так как протестировать на огромном кол-ве игроков нет возможности, то спрашиваю, будет ли сбой? В теории, уничтожается лишь соединение, а запросы уже висят в стеке на обработку самой БД.

×
×
  • Create New...