ODutii Posted August 2, 2019 Posted August 2, 2019 Estou com um problema que não consigo resolver, no client side, quando clico, o painel vai desaparecer ao clicar em trabalhar, so que no server side, quero que quando eu clico aparece uma mensagem, pode me ajudar? (OBS: O Painel está funcionando tudo certinho, mesmo eu excluindo esses funcoes, ele ira continuar funcionando.)CLIENT SIDE function TrabTaxista (_,state)if painel == true thenif ( state == "down" ) thenif ( isCursorOnElement(615, 224, 128, 32)) then removeEventHandler("onClientRender", root, Dx) showCursor(false)endendendendaddEventHandler ("onClientClick", root, TrabTaxista)addEvent("TrabTaxi", true)addEventHandler("TrabTaxi", root, TrabTaxista) SERVER SIDE --Acho que o erro está aqui (MINHA DÚVIDA: Mensagem não está aparecendo) function TrabTaxista(source,player) triggerClientEvent(source, "TrabTaxi", source) outputChatBox("Agora é taxista",player,255,255,255,true)endaddEventHandler ("onClientClick", player, TrabTaxista)
DNL291 Posted August 2, 2019 Posted August 2, 2019 onClientClick é um evento do lado client apenas. Obs: quando for postar seu código, utilize o botão <>, cole o código e selecione a linguagem. Leia este tópico por favor. @ODutii Please do not PM me with scripting related question nor support, use the forums instead.
Moderators Lord Henry Posted August 2, 2019 Moderators Posted August 2, 2019 Você está usando o evento onClientClick em um script server-side. Mas esse evento só funciona em script client-side. Eu te ajudei ou achou meu comentário útil? Não esqueça de deixar um Thanks! Minhas contribuições para a comunidade: LordHenry - MTA Wiki Profile Inscreva-se no meu canal do YouTube: Lord Henry - Entertainment Discord Oficial do MTA: https://mtasa.com/discord Blacklist e Whitelist de Scripters: Planilha Por favor, não me envie mensagens privadas solicitando suporte. Crie um tópico no fórum em vez disso.
ODutii Posted August 2, 2019 Author Posted August 2, 2019 Eu percebi isso, so que oque estou tentando achar, no server side: function TrabTaxista(source) triggerClientEvent(source, "TrabTaxi", source) outputChatBox("Agora é taxista",source,255,255,255,true) end addEventHandler ("onClientClick", root, TrabTaxista) esse ai encima é o server side, ali no event handler, oque é coloco?
#DeltaSCR Posted August 2, 2019 Posted August 2, 2019 Qual seu objetivo mesmo? Minha resposta te ajudou? Por favor, não esqueça de avaliar - #DeltaSCR Minha página no Facebook: Delta Scripting - MTA "Viribus et honor"
ODutii Posted August 2, 2019 Author Posted August 2, 2019 SERVER-SIDE function TrabTaxista(source, player) triggerClientEvent(source, "TrabTaxi", source) outputChatBox("Agora é taxista",player,255,255,255,true) end addEvent("TrabTaxi", true) addEventHandler("TrabTaxi", root, TrabTaxista) CLIENT SIDE function TrabTaxista (_,state) if painel == true then if ( state == "down" ) then if ( isCursorOnElement(615, 224, 128, 32)) then removeEventHandler("onClientRender", root, Dx) showCursor(false) end end end end addEventHandler ("onClientClick", root, TrabTaxista) addEvent("TrabTaxi", true) addEventHandler("TrabTaxi", root, TrabTaxista) no client Quando o jogador clicar no botão do meu painel, o painel vai fechar, e no server side, quando apertar no mesmo botao, para mandar uma mensagem para ele, estou tentando consertar isso e não está funcionado Client side> Clicar botão taxi e fechar painel Server side> clicar botão taxi e mandar msg
#DeltaSCR Posted August 2, 2019 Posted August 2, 2019 Olha só cara, nessa parte de clicar em botões, vamos usar somente client-side. Você quer que execute as duas funcionalidades no mesmo botão? Minha resposta te ajudou? Por favor, não esqueça de avaliar - #DeltaSCR Minha página no Facebook: Delta Scripting - MTA "Viribus et honor"
ODutii Posted August 2, 2019 Author Posted August 2, 2019 + ou - isso, eu queria fazer funções sobre a Acl, e no client-side isso não funciona, ja tentei fazer muito, e pra min so funcionou no server-siude, então estou tentando fazer para que no client side ao clicar ele feche o botão e no server-side eu faça as funções
#DeltaSCR Posted August 2, 2019 Posted August 2, 2019 Pelo o que eu entendi, o que vc quer fazer é mais ou menos isso ae: function executions(button, state, absoluteX, absoluteY, worldX, worldY, worldZ, clickedElement) if painel == true then if button == "left" and state == "down" then outputChatBox("Você agora trabalha de Taxi", 255, 255, 255) removeEventHandler("onClientRender", root, Dx) painel = false showCursor(false) end end end addEventHandler("onClientClick", root, executions) Minha resposta te ajudou? Por favor, não esqueça de avaliar - #DeltaSCR Minha página no Facebook: Delta Scripting - MTA "Viribus et honor"
ODutii Posted August 2, 2019 Author Posted August 2, 2019 1 minute ago, #DeltaSCR said: Pelo o que eu entendi, o que vc quer fazer é mais ou menos isso ae: function executions(button, state, absoluteX, absoluteY, worldX, worldY, worldZ, clickedElement) if painel == true then if button == "left" and state == "down" then outputChatBox("Você agora trabalha de Taxi", 255, 255, 255) removeEventHandler("onClientRender", root, Dx) painel = false showCursor(false) end end end addEventHandler("onClientClick", root, executions) Se eu usar o isObjectInAcl vai funcionar?
#DeltaSCR Posted August 2, 2019 Posted August 2, 2019 8 minutes ago, ODutii said: Se eu usar o isObjectInAcl vai funcionar? Não! Funções de ACL são somente server-side. 1 Minha resposta te ajudou? Por favor, não esqueça de avaliar - #DeltaSCR Minha página no Facebook: Delta Scripting - MTA "Viribus et honor"
Moderators Lord Henry Posted August 2, 2019 Moderators Posted August 2, 2019 (edited) É mais fácil simplesmente abrir o painel pelo servidor com um triggerClientEvent. Só que antes desse trigger, fazer a verificação de ACL. Dessa forma, quem não estiver na ACL não vai nem conseguir abrir o painel. Edited August 2, 2019 by Lord Henry 1 Eu te ajudei ou achou meu comentário útil? Não esqueça de deixar um Thanks! Minhas contribuições para a comunidade: LordHenry - MTA Wiki Profile Inscreva-se no meu canal do YouTube: Lord Henry - Entertainment Discord Oficial do MTA: https://mtasa.com/discord Blacklist e Whitelist de Scripters: Planilha Por favor, não me envie mensagens privadas solicitando suporte. Crie um tópico no fórum em vez disso.
ODutii Posted August 2, 2019 Author Posted August 2, 2019 (edited) Obrigado pela ajuda, a mensagem foi! Já foi um passo! Muito obrigado! Agora é lutar pra conseguir add na acl kk Daí pra quando clicar, no server-side, qual é os scripts para add na acl... ? Edited August 2, 2019 by ODutii a
Moderators Lord Henry Posted August 2, 2019 Moderators Posted August 2, 2019 (edited) Esqueça a ideia de clicar no painel pelo server-side. Como eu falei, faça a verificação de ACL antes de abrir o painel, ao invés de verificar ao clicar no botão. Edited August 2, 2019 by Lord Henry Eu te ajudei ou achou meu comentário útil? Não esqueça de deixar um Thanks! Minhas contribuições para a comunidade: LordHenry - MTA Wiki Profile Inscreva-se no meu canal do YouTube: Lord Henry - Entertainment Discord Oficial do MTA: https://mtasa.com/discord Blacklist e Whitelist de Scripters: Planilha Por favor, não me envie mensagens privadas solicitando suporte. Crie um tópico no fórum em vez disso.
ODutii Posted August 2, 2019 Author Posted August 2, 2019 ( SERVER SIDE ) function taxx(thePlayer) local accName = getAccountName ( getPlayerAccount (thePlayer) ) if aclGroupAddObject (aclGetGroup("Taxista"), "user."..accName) then outputChatBox("Added",thePlayer,255,255,255,true) end end addEvent("trabtax", true) addEventHandler("trabtax", root, taxx) ( CLIENT SIDE ) function TrabTaxista (_,state) if painel == true then if ( state == "down" ) then if ( isCursorOnElement(615, 224, 128, 32)) then removeEventHandler("onClientRender", root, Dx) showCursor(false) outputChatBox("Agora é taxista",255,255,255,true) painel = false triggerClientEvent ("trabtax", getLocalPlayer()) end end end end addEventHandler ("onClientClick", root, TrabTaxista) Não está adicionando na Acl... qual o erro
Jonas^ Posted August 2, 2019 Posted August 2, 2019 Você esta usando triggerClientEvent no mesmo lado, nunca vai funcionar, fiz um upgrade no seu código: Client function TrabTaxista (_, state) if painel == true then if (state == "down") then if (isCursorOnElement (615, 224, 128, 32)) then removeEventHandler ("onClientRender", root, Dx) showCursor (false) painel = false triggerServerEvent ("trabtax", getLocalPlayer()) -- outputChatBox ("Agora é taxista", 255, 255, 255) -- triggerClientEvent ("trabtax", getLocalPlayer()) -- Erro aqui, ''triggerClientEvent''. end end end end addEventHandler ("onClientClick", root, TrabTaxista) Server function taxx () if (isObjectInACLGroup ("user."..getAccountName (getPlayerAccount (client)), aclGetGroup("Taxista"))) then -- Se o jogador já estiver na acl, então: outputChatBox ("Erro! Você já está no trabalho de taxista!", client, 255, 30, 30) else -- Senão: aclGroupAddObject (aclGetGroup("Taxista"), "user."..getAccountName (getPlayerAccount (client))) -- Adiciona o jogador na acl. outputChatBox ("Parabéns! Agora você é um taxista!", client, 0, 255, 0) end end addEvent ("trabtax", true) addEventHandler ("trabtax", root, taxx) 1
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