Jump to content

xYaroslavGTx

Members
  • Posts

    19
  • Joined

  • Last visited

Everything posted by xYaroslavGTx

  1. Hi all, i needed to be create a camera rotation function, i created something like that: local camX = cctv.camlx - math.cos(localC.angle / cctv.camlx) * 30 local camY = cctv.camly - math.sin(localC.angle / cctv.camly) * 30 setCameraMatrix(cctv.camx,cctv.camy,cctv.camz,camX,camY,cctv.camlz - localC.height,0,localC.fov) cctv.cam* -- camera position cctv.caml* -- camera look position localC.angle -- rotation angle Depending on rotation of the camera, this script is working, or does not work, when you call the camera does not look at the specified coordinates and rotates each time on a different angle in spite of the specified range (from -40 to 40).
  2. https://wiki.multitheftauto.com/wiki/IsTransferBoxActive
  3. Здрасьте, потребовалось мне тут запилить функцию поворота камеры, вышло что-то подобное: local camX = cctv.camlx - math.cos(localC.angle / cctv.camlx) * 30 local camY = cctv.camly - math.sin(localC.angle / cctv.camly) * 30 setCameraMatrix(cctv.camx,cctv.camy,cctv.camz,camX,camY,cctv.camlz - localC.height,0,localC.fov) cctv.cam* -- позиция камеры cctv.caml* -- координаты, на которые смотрит камера localC.angle -- угол, задаваемый для поворота Проблема собственно вот какая: в зависимости от ротации камеры этот скрипт то работает, то не работает, при вызове камера смотрит не на заданные координаты и вращается каждый раз на разный улог не смотря на заданный диапазон (от -40 до 40). Подскажите пожалуйста как это можно решить.
  4. Смотри передается ли параметр eCarRZ при вызове.
  5. Скорее всего игровой режим не запущен, а что касается FadaCamera вот: https://wiki.multitheftauto.com/wiki/FadeCamera
  6. Доброго времени суток, наткнулся в исходнике клиента на скрытый чекбокс позволяющий подгружать измененные файлы игры как в клиентах до 1.5 Скрин: https://pp.userapi.com/c847120/v847120289/ba1f4/ghUFByl0DeM.jpg Собственно вопрос - можно ли восстановить эту функцию? Добавлять требуемый параметр в конфиг пытался, результата нет. Изменение кода настроек тоже ничего не дало.
  7. Пока что решил таким костылем: function checkGUIcall() local var = getElementData(getLocalPlayer(), "PRP_atmuse") if(var == "available") then atmGUI() end end bindKey ( "E", "down", checkGUIcall ) Вопрос только насколько сильно ElementData будет грузить сервер?
  8. Вечер добрый, столкнулся с тем, что иногда после нажатия кнопки закрытия не исчезает GUI. Мышка скрывается а интерфейс остается. Юзаю вот такой костыль: function atmGUI() atmGUIMain = guiCreateStaticImage(0, 0, screenx, screeny, "atm.png", false) exitGUIbtn = guiCreateStaticImage(screenx/1.1955, screeny/1.367, screenx/20.5, screeny/17, "button.png", false, atmGUIMain) showCursor(true) end addEvent("drawATMgui", true) addEventHandler("drawATMgui", localPlayer,atmGUI) addEventHandler("onClientGUIClick", getRootElement(), function() if(source == exitGUIbtn) then guiSetVisible(atmGUIMain, false) destroyElement(atmGUIMain) showCursor(false) end end ) В основном всё работает как надо, но иногда бывают траблы с закрытием. Подскажите пожалуйста как исправить этот косяк.
  9. @Disinterpreter спасибо, теперь разобрался)
  10. Нужно клиент переписывать под GTA, или откатываться на старые версии где была поддержка кастомных файлов игры.
  11. Загружаю страницу через loadBrowserURL( theGUIBrowser, "http://www.site.ru/test.php") Пробовал и без www, и без http. Страница не загружается, проверял через вывод URL, он почему-то становится пустым. Если вставить к примеру youtube.com всё работает прекрасно, а если вставляю ссылку на другие сайты, url просто очищается. Подскажите пожалуйста как это поправить.
  12. Hi all, could you tell me how to make a dynamic installation of interface sizes depending on the size of the user's screen? Code: function guiCreateMainMenu() local sWidth,sHeight = guiGetScreenSize() local localPlayerName = getPlayerName(getLocalPlayer()) mainMenuSound() menu = guiCreateStaticImage( 0, 0, sWidth, sHeight, "img/screen_shadow.png", false ) userImg = guiCreateStaticImage( sWidth/2.8, 0, sWidth/1.5, sHeight/1.5, "img/user.png", false, menu ) menuBg = guiCreateStaticImage( sWidth/7, sHeight/8.07692, sWidth/1.4, sHeight/17, "img/bg.png", false, menu ) menuFg = guiCreateStaticImage( sWidth/7, sHeight/8.07692, sWidth/1.4, sHeight/17, "img/fg.png", false, menu ) usernameLabel = guiCreateLabel( sWidth/2434.78260, sHeight/14000, 1, 1, localPlayerName, true, userImg) --24 символа макс. userNameFont = guiCreateFont( "fonts/calibri.ttf", 16 ) guiSetFont ( usernameLabel, userNameFont ) menuMainLabel = guiCreateLabel( sWidth/8400, sHeight/11666.66666, 1, 1, "*Главное меню*", true, menu) mainMenuFont = guiCreateFont( "fonts/carbon.ttf", 32 ) guiSetFont ( menuMainLabel, mainMenuFont ) carrierBtn = guiCreateLabel( (0.12/1680)*sWidth, 0.341, 1, 1, "КАРЬЕРА", true, menuFg) carrierBtnFont = guiCreateFont( "fonts/calibri.ttf", 15 ) guiSetFont ( carrierBtn, carrierBtnFont ) carrierButton = guiCreateStaticImage( 385, 154, 80, 13, "img/btn.png", false, menu ) statBtn = guiCreateLabel( 0.2, 0.341, 1, 1, "СТАТИСТИКА", true, menuFg) statBtnFont = guiCreateFont( "fonts/calibri.ttf", 15 ) guiSetFont ( statBtn, statBtnFont ) statButton = guiCreateStaticImage( 481, 154, 111, 13, "img/btn.png", false, menu ) achBtn = guiCreateLabel( 0.313, 0.341, 1, 1, "ДОСТИЖЕНИЯ", true, menuFg) achBtnFont = guiCreateFont( "fonts/calibri.ttf", 15 ) guiSetFont ( achBtn, achBtnFont ) achButton = guiCreateStaticImage( 615, 154, 121, 13, "img/btn.png", false, menu ) bestBtn = guiCreateLabel( 0.432, 0.341, 1, 1, "ТОП ЛУЧШИХ ИГРОКОВ", true, menuFg) bestBtnFont = guiCreateFont( "fonts/calibri.ttf", 15 ) guiSetFont ( bestBtn, bestBtnFont ) bestButton = guiCreateStaticImage( 758, 154, 198, 13, "img/btn.png", false, menu ) settingsBtn = guiCreateLabel( 0.616, 0.341, 1, 1, "НАСТРОЙКИ", true, menuFg) settingsBtnFont = guiCreateFont( "fonts/calibri.ttf", 15 ) guiSetFont ( settingsBtn, settingsBtnFont ) settingsButton = guiCreateStaticImage( 980, 154, 101, 13, "img/btn.png", false, menu ) newsBtn = guiCreateLabel( 0.720, 0.341, 1, 1, "НОВОСТИ", true, menuFg) newsBtnFont = guiCreateFont( "fonts/calibri.ttf", 15 ) guiSetFont ( newsBtn, newsBtnFont ) newsButton = guiCreateStaticImage( 1106, 154, 78, 13, "img/btn.png", false, menu ) aboutBtn = guiCreateLabel( 0.810, 0.341, 1, 1, "О СЕРВЕРЕ", true, menuFg) aboutBtnFont = guiCreateFont( "fonts/calibri.ttf", 15 ) guiSetFont ( aboutBtn, aboutBtnFont ) aboutButton = guiCreateStaticImage( 1213, 154, 87, 13, "img/btn.png", false, menu ) showCursor(true) showChat(false) setPlayerHudComponentVisible("all", false) end
  13. В принципе вот этот костыль sHeight/11666.66666 с картинками прокатывает, а вот что делать с текстом я не знаю, он не меняет размеров тем самым просто сливается в одну строчку на низких разрешениях экранов.
  14. Доброго времени суток. Столкнулся с такой проблемой как динамическое изменение размеров интерфейса под разрешение экрана игрока. Я накидал GUI под своё разрешение экрана т.е. в таком виде: guiCreateLabel( 0.2, 0.341, 1, 1, "СТАТИСТИКА", true, menuFg) statBtnFont = guiCreateFont( "fonts/calibri.ttf", 15 ) guiSetFont ( statBtn, statBtnFont ) Вообще это всё выглядит вот так: Скриншот Код клиента целиком: function guiCreateMainMenu() local sWidth,sHeight = guiGetScreenSize() local localPlayerName = getPlayerName(getLocalPlayer()) mainMenuSound() menu = guiCreateStaticImage( 0, 0, sWidth, sHeight, "img/screen_shadow.png", false ) userImg = guiCreateStaticImage( sWidth/2.8, 0, sWidth/1.5, sHeight/1.5, "img/user.png", false, menu ) menuBg = guiCreateStaticImage( sWidth/7, sHeight/8.07692, sWidth/1.4, sHeight/17, "img/bg.png", false, menu ) menuFg = guiCreateStaticImage( sWidth/7, sHeight/8.07692, sWidth/1.4, sHeight/17, "img/fg.png", false, menu ) usernameLabel = guiCreateLabel( sWidth/2434.78260, sHeight/14000, 1, 1, localPlayerName, true, userImg) --24 символа макс. userNameFont = guiCreateFont( "fonts/calibri.ttf", 16 ) guiSetFont ( usernameLabel, userNameFont ) menuMainLabel = guiCreateLabel( sWidth/8400, sHeight/11666.66666, 1, 1, "*Главное меню*", true, menu) mainMenuFont = guiCreateFont( "fonts/carbon.ttf", 32 ) guiSetFont ( menuMainLabel, mainMenuFont ) carrierBtn = guiCreateLabel( (0.12/1680)*sWidth, 0.341, 1, 1, "КАРЬЕРА", true, menuFg) carrierBtnFont = guiCreateFont( "fonts/calibri.ttf", 15 ) guiSetFont ( carrierBtn, carrierBtnFont ) carrierButton = guiCreateStaticImage( 385, 154, 80, 13, "img/btn.png", false, menu ) statBtn = guiCreateLabel( 0.2, 0.341, 1, 1, "СТАТИСТИКА", true, menuFg) statBtnFont = guiCreateFont( "fonts/calibri.ttf", 15 ) guiSetFont ( statBtn, statBtnFont ) statButton = guiCreateStaticImage( 481, 154, 111, 13, "img/btn.png", false, menu ) achBtn = guiCreateLabel( 0.313, 0.341, 1, 1, "ДОСТИЖЕНИЯ", true, menuFg) achBtnFont = guiCreateFont( "fonts/calibri.ttf", 15 ) guiSetFont ( achBtn, achBtnFont ) achButton = guiCreateStaticImage( 615, 154, 121, 13, "img/btn.png", false, menu ) bestBtn = guiCreateLabel( 0.432, 0.341, 1, 1, "ТОП ЛУЧШИХ ИГРОКОВ", true, menuFg) bestBtnFont = guiCreateFont( "fonts/calibri.ttf", 15 ) guiSetFont ( bestBtn, bestBtnFont ) bestButton = guiCreateStaticImage( 758, 154, 198, 13, "img/btn.png", false, menu ) settingsBtn = guiCreateLabel( 0.616, 0.341, 1, 1, "НАСТРОЙКИ", true, menuFg) settingsBtnFont = guiCreateFont( "fonts/calibri.ttf", 15 ) guiSetFont ( settingsBtn, settingsBtnFont ) settingsButton = guiCreateStaticImage( 980, 154, 101, 13, "img/btn.png", false, menu ) newsBtn = guiCreateLabel( 0.720, 0.341, 1, 1, "НОВОСТИ", true, menuFg) newsBtnFont = guiCreateFont( "fonts/calibri.ttf", 15 ) guiSetFont ( newsBtn, newsBtnFont ) newsButton = guiCreateStaticImage( 1106, 154, 78, 13, "img/btn.png", false, menu ) aboutBtn = guiCreateLabel( 0.810, 0.341, 1, 1, "О СЕРВЕРЕ", true, menuFg) aboutBtnFont = guiCreateFont( "fonts/calibri.ttf", 15 ) guiSetFont ( aboutBtn, aboutBtnFont ) aboutButton = guiCreateStaticImage( 1213, 154, 87, 13, "img/btn.png", false, menu ) showCursor(true) showChat(false) setPlayerHudComponentVisible("all", false) end P.S. В начале уже пытался поправить эту проблему, но получилось мягко говоря не очень. Подскажите пожалуйста как оптимизировать меню без танцев с подбором новых значений?
  15. День добрый,столкнулся с такой проблемкой: Выполняю запрос на получение данных из БД function authUserDB(userName, userPassword, thePlayer) dbExec( bd,"SELECT `password` FROM Players WHERE nick='??'",userName) local Players = dbPoll(dbQuery(bd, "SELECT * FROM `Players`"), -1) for Index, PlayerData in ipairs(Players) do if userName == userName and userPassword == PlayerData.password then if (client) then spawnPlayer(client, 1721.7834, -1927.0063, 13.5672) setPlayerSkin(client,0) fadeCamera(client, true) setCameraTarget(client, client) triggerClientEvent(getRootElement(),"hideLogin",client) dbExec( bd,"SELECT `id` FROM Players WHERE nick='??'",client) local Players = dbPoll(dbQuery(bd, "SELECT * FROM `Players`"), -1) for Index, PlayerData in ipairs(Players) do setElementData ( source, "ID", PlayerData.id ) outputChatBox("С возвращением на на ****** RP, "..userName.."! Ваш ID "..PlayerData.id..".", client) end end else outputChatBox("Неправильные логин и пароль. Пожалуйста, переподсоединитесь и попробуйте еще раз.",client) end end end addEvent("submitLogin",true) addEventHandler("submitLogin",root,authUserDB) Дело в том,что ответ приходит несколько раз,и количество повторов зависит от количества записей в БД. Подскажите пожалуйста где я накосячил)
  16. Доброго времени суток! Столкнулся с такой проблемкой: Нужно получить id игрока из базы данных. Отсылаю такой запрос: dbExec( bd,"SELECT `id` FROM Players WHERE nick='??'",PlayerName) Подскажите пожалуйста как вытащить полученный id.
  17. Доброго времени суток уважаемые форумчане,столкнулся я с такой проблемой: Скачал последнюю версию мода GTA CR и решил поставить на него MTA... По началу клиент просто крашился при запуске,после того как я поставил совместимость с XP SP3 вылеты при запуске прекратились,клиент запустился. НО,когда я пробую подключиться к локальному серверу или запустить редактор карт клиент крашится. Подскажите пожалуйста,решается ли как-нибудь эта проблема? P.S. Весь день потратил на решение проблемы и так ничего и не вышло,а поиграть в мод CR в MTA очень хочется
  18. Доброго времени суток. Пытался выполнить запрос к функции со стороны клиента Код клиента: elseif command == "/test" then local thePlayer = getPlayerSkin ( getLocalPlayer()) triggerServerEvent("onClientCallsServerFunction", thePlayer, thePlayer, openls_gate) return true Код сервера: function openls_gate(thePlayer) local p_model = getElementModel( thePlayer ) if ( p_model == 285 ) or ( p_model == 288 ) or ( p_model == 265 ) then moveObject (ls_gate1, 1000, 1541.8000488281, -1627.9000244141, 11.699999809265, 0, 0, 0 ) outputChatBox ("Ворота открыты", thePlayer, 230, 100, 100 ) end end addCommandHandler ( "lsopen", openls_gate ) addEvent("onClientCallsServerFunction", true) addEventHandler("onClientCallsServerFunction", thePlayer , openls_gate) Подскажите пожалуйста где я накосячил ибо скрипт не выполняется(
  19. Доброго времени суток! У меня возникла проблема с настройкой slothbot function Spawnsoldier () local x,y,z = 0,0,5.75 local rot=0 local skin=285 local interior=0 local dimension= 0 local leader= Player local enemy=false local team=false local weapon=0 local mode="following" local modesubject= x,y,z call (getResourceFromName("slothbot"), "spawnBot", 0,0,12.75, rot, skin, interior, dimension, false, 10, following, modesubject) end addEventHandler ( "onResourceStart", getResourceRootElement(getThisResource()), Spawnsoldier) Суть проблемы: Бот атакует игрока Кто может поправьте)))))
×
×
  • Create New...