VictorScripting Posted November 13, 2019 Share Posted November 13, 2019 Opa tudo bem galera? antes de tudo muito obrigado pela ajuda no tópico anterior. Então voltando ao assunto... Então pessoal estou fazendo um inventario + loja, é um passo longo para uma perna curta, e por isso preciso da ajuda da nossa queria comunidade. Estou com um problema pois quando clica em um objeto quero que mude algumas coisas no painel tentei fazer isso mais não aconteceu nada: function abasAlimentos() if isEventHandlerAdded("onClientRender", root, alimentos) then if isCursorOnElement(730, 216, 404, 27) then dxDrawRectangle(382, 346, 264, 1, tocolor(254, 254, 254, 255), false) dxDrawText("HAMBURGUER", 380, 304, 646, 340, tocolor(255, 255, 255, 255), 3.00, "default-bold", "center", "center", false, false, false, false, false) dxDrawText("Que tal um lanche?\n function abasAlimentos() if isEventHandlerAdded("onClientRender", root, inventario) then if isCursorOnElement(730, 216, 404, 27) then dxDrawRectangle(382, 346, 264, 1, tocolor(254, 254, 254, 255), false) dxDrawText("NENHUM ITEM", 380, 304, 646, 340, tocolor(255, 255, 255, 255), 3.00, "default-bold", "center", "center", false, false, false, false, false) dxDrawText("Que tal um lanche?\n Coma um\n HAMBRUGUER !", 377, 360, 646, 565, tocolor(0, 95, 253, 255), 1.50, "default-bold", "center", "top", false, false, false, false, false) dxDrawRectangle(382, 570, 264, 1, tocolor(254, 254, 254, 255), false) dxDrawRectangle(570, 578, 76, 34, tocolor(0, 28, 243, 255), false) dxDrawText("HAMBURGUER", 380, 574, 568, 614, tocolor(255, 255, 255, 255), 1.00, "default-bold", "center", "center", false, false, false, false, false) dxDrawText("USAR", 569, 577, 646, 612, tocolor(255, 255, 255, 255), 2.00, "default-bold", "center", "center", false, false, false, false, false) end end end addEventHandler("onClientClick", root, abasAlimentos) esse aí acima não está funciona antes dele eu fiz e funcionam olha: function abas() if isEventHandlerAdded("onClientRender", root, inventario) then if isCursorOnElement(770, 105, 64, 64) then dxDrawImage(770, 105, 64, 64, ":guieditor/images/alimentos.png", 0, 0, 0, tocolor(255, 255, 255, 255), false) addEventHandler("onClientRender", root, alimentos) end end end addEventHandler("onClientClick", root, abas) ja tentei olha na debug mais não diz nd OBS: LEMBRADO O PRIMEIRO CÓDIGO ACIMA É O QUE NÃO FUNCIONA. O SEGUNDO FUNCIONA !!!!!!!! Link to comment
beast99 Posted November 13, 2019 Share Posted November 13, 2019 Não se esqueça, poste codigos por completo sempre para nós podermos ajudar. No caso você colococou a função do isCursorOnElement? Link to comment
VictorScripting Posted November 13, 2019 Author Share Posted November 13, 2019 8 minutes ago, MesaDowN said: Não se esqueça, poste codigos por completo sempre para nós podermos ajudar. No caso você colococou a função do isCursorOnElement? sim usei esta : function isCursorOnElement( posX, posY, width, height ) if isCursorShowing( ) then local mouseX, mouseY = getCursorPosition( ) local clientW, clientH = guiGetScreenSize( ) local mouseX, mouseY = mouseX * clientW, mouseY * clientH if ( mouseX > posX and mouseX < ( posX + width ) and mouseY > posY and mouseY < ( posY + height ) ) then return true end end return false end o código que não está funcionando é essse : function abasAlimentos() if isEventHandlerAdded("onClientRender", root, alimentos) then -- se ele tiver na aba de alimentos if isCursorOnElement(730, 216, 404, 27) then -- no caso qui eu quero que se o tiver clicado dxDrawRectangle(382, 346, 264, 1, tocolor(254, 254, 254, 255), false) dxDrawText("NENHUM ITEM", 380, 304, 646, 340, tocolor(255, 255, 255, 255), 3.00, "default-bold", "center", "center", false, false, false, false, false) dxDrawText("ATUALMENTE NÃO HÁ\n NENHUM OBJETO\n SELECIONADO !", 377, 360, 646, 565, tocolor(0, 95, 253, 255), 1.50, "default-bold", "center", "top", false, false, false, false, false) dxDrawRectangle(382, 570, 264, 1, tocolor(254, 254, 254, 255), false) dxDrawRectangle(570, 578, 76, 34, tocolor(0, 28, 243, 255), false) dxDrawText("agua", 380, 574, 568, 614, tocolor(255, 255, 255, 255), 1.00, "default-bold", "center", "center", false, false, false, false, false) dxDrawText("USAR", 569, 577, 646, 612, tocolor(255, 255, 255, 255), 2.00, "default-bold", "center", "center", false, false, false, false, false) end end end addEventHandler("onClientClick", root, abasAlimentos) no caso eu quero disser que se o carinha clicar no objeto vai ficar uma demarcação no objeto e tbm vai mostrar suas informações ao lado pra vc entender melhor vou mostrar uma imagem do script, eu quero que quando clicar em um item quero que apareça suas informações https://imgur.com/a/tjnmMuR Link to comment
DNL291 Posted November 14, 2019 Share Posted November 14, 2019 Deixe as função do dx separada: function drawDX() dxDrawRectangle(382, 346, 264, 1, tocolor(254, 254, 254, 255), false) dxDrawText("NENHUM ITEM", 380, 304, 646, 340, tocolor(255, 255, 255, 255), 3.00, "default-bold", "center", "center", false, false, false, false, false) dxDrawText("ATUALMENTE NÃO HÁ\n NENHUM OBJETO\n SELECIONADO !", 377, 360, 646, 565, tocolor(0, 95, 253, 255), 1.50, "default-bold", "center", "top", false, false, false, false, false) dxDrawRectangle(382, 570, 264, 1, tocolor(254, 254, 254, 255), false) dxDrawRectangle(570, 578, 76, 34, tocolor(0, 28, 243, 255), false) dxDrawText("agua", 380, 574, 568, 614, tocolor(255, 255, 255, 255), 1.00, "default-bold", "center", "center", false, false, false, false, false) dxDrawText("USAR", 569, 577, 646, 612, tocolor(255, 255, 255, 255), 2.00, "default-bold", "center", "center", false, false, false, false, false) end Lembre-se que funções dx precisam ser renderizadas para sempre aparecer na tela; utilize com o evento onClientRender. No onClientClick você só fará verificações: Se o clique foi em certa área da tela if isCursorOnElement(X, Y, width, height) then Se o dx está visível E isMainMenuActive + isConsoleActive Verificar se o botão do cloque foi o botão esquerdo do mouse "left" (a menos que você queria outro, como botão direito "right") Feitas essas verificações no evento, o seu clique em 'botões DX' está feito. Se o seu clique for em um elemento do GTA, você pode obter o elemento clicado no parâmetro do evento onClientClick: string button, string state, int absoluteX, int absoluteY, float worldX, float worldY, float worldZ, element clickedWorld clickedWorld Link to comment
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now