Luccas Posted May 8, 2019 Share Posted May 8, 2019 Olá eu tento fazer para que mostra o dinheiro do jogador (Isso eu já conseguir) e mostre se ele tem cnh mais essa parte de mostrar se ele tem cnh não conseguir me ajudem? Código: function revistar_jogador1 ( thePlayer, comando, nick ) if nick then if getPlayerFromPartialName ( nick ) then local accName = getAccountName ( getPlayerAccount ( thePlayer ) ) if isObjectInACLGroup ("user."..accName, aclGetGroup ( "Policial" ) ) then -- Acl Pra Quem Pode Usar o Comando local player_a_ser_revistado = getPlayerFromPartialName ( nick ) local Hab1 = getElementData ( player_a_ser_revistado, "DNL:Categoria(A)" ) local dinheiro_do_jogador = getPlayerMoney ( playerMoney ) local nick_do_jogador = getPlayerName ( player_a_ser_revistado ) local nick_do_policial = getPlayerName ( thePlayer ) local estrelas_de_procurado = getPlayerWantedLevel ( player_a_ser_revistado ) local policiax, policiay, policiaz = getElementPosition ( thePlayer ) -- Encontrar posição do policial local revistadox, revistadoy, revistadoz = getElementPosition ( player_a_ser_revistado ) -- Encontrar posição de quem sera revistado local dist = getDistanceBetweenPoints3D ( policiax, policiay, policiaz, revistadox, revistadoy, revistadoz ) -- Calcular a distancia entre os dois elementos if ( dist > 5 ) then -- se a distancia for 5 executara a função a seguir outputChatBox("Chegue mais perto para executar o comando", thePlayer, 255, 255, 255, true) -- Chat Box elseif ( dist < 4 )then -- Caso ao contrario a distancia for 4 executara a função a seguir setPedAnimation( thePlayer, "POLICE", "plc_drgbst_01", 3100, true, false, false, false) --outputChatBox("#000000[#ff0000POLICIA#000000] #c1c1c1O #ff0000Policial #ffffff"..nick_do_policial.." #c1c1c1esta #ff0000Revistando #c1c1c1o #ff0000Suspeito "..nick_do_jogador.."", root, 255, 255, 255, true) -- Chat Box setTimer ( function() outputChatBox("#bebebeInformações do cidadão", thePlayer, 255, 255, 255, true) outputChatBox("#bebebeDinheiro: "..getElementData(player_a_ser_revistado,"playerMoney"), thePlayer, 255, 255, 255, true) outputChatBox("#bebebeTeste: "..getElementData(player_a_ser_revistado,"DNL:Categoria(A)"), thePlayer, 255, 255, 255, true) end, 3390, 1 ) triggerClientEvent(thePlayer, "doShowDXProgressBar", thePlayer) -- Chamar evento do client end else outputChatBox("Somente policiais podem usar esse comando!", thePlayer, 255, 255, 255, true) -- Se voce nao for da acl voce nao tera permissao a este comando end end end end addCommandHandler ( "vercnh", revistar_jogador1 ) Link to comment
#DeltaSCR Posted May 8, 2019 Share Posted May 8, 2019 (edited) Tente assim: Apontei as correções no próprio código. OBS: Não testado. function revistar_jogador1 (thePlayer, comando, nick) if nick then if getPlayerFromPartialName (nick) then local accName = getAccountName (getPlayerAccount (thePlayer)) if isObjectInACLGroup ("user."..accName, aclGetGroup("Policial")) then --// Somente quem estiver na ACL "Policia" poderá usar o comando. local player_a_ser_revistado = getPlayerFromPartialName(nick) local dinheiro_do_jogador = getPlayerMoney (player_a_ser_revistado) --// Você estava usando "playerMoney" como elemento. local nick_do_jogador = getPlayerName(player_a_ser_revistado) local nick_do_policial = getPlayerName(thePlayer) local estrelas_de_procurado = getPlayerWantedLevel(player_a_ser_revistado) local policiax, policiay, policiaz = getElementPosition (thePlayer) --// Encontrar posição do policial local revistadox, revistadoy, revistadoz = getElementPosition ( layer_a_ser_revistado) --// Encontrar posição de quem será revistado local dist = getDistanceBetweenPoints3D (policiax, policiay, policiaz, revistadox, revistadoy, revistadoz) --// Calcular a distancia entre os dois elementos if dist <= 5 then setPedAnimation(thePlayer, "POLICE", "plc_drgbst_01", 3100, true, false, false, false) -- outputChatBox("[#ff0000POLICIA#000000] #c1c1c1O #ff0000Policial #ffffff"..nick_do_policial.." #c1c1c1esta #ff0000Revistando #c1c1c1o #ff0000Suspeito "..nick_do_jogador.."", root, 0, 0, 0, true) --// ChatBox setTimer (function() outputChatBox("Informações do cidadão", thePlayer, 190, 190, 190) outputChatBox("Dinheiro: "..dinheiro_do_jogador..""), thePlayer, 190, 190, 190) --// Você estava tentando obter o dinheiro do player por Data. if (getElementData(player_a_ser_revistado, "DNL:Categoria(A)")) then outputChatBox("CNH: Possui", thePlayer, 190, 190, 190) else outputChatBox("CNH: Não possui", thePlayer, 190, 190, 190) end end, 3390, 1) triggerClientEvent(thePlayer, "doShowDXProgressBar", thePlayer) --// Chamar evento do client else outputChatBox("Chegue mais perto jogador pera revistá-lo", thePlayer) end else outputChatBox("Somente policiais podem usar esse comando", thePlayer, 255, 255, 255, true) --// Se quem deu o comando não estiver na ACL, passa um chatbox para o mesmo. end --// Estava faltando esse "end" para fechar teu escopo. end end end addCommandHandler("vercnh", revistar_jogador1) Edited May 8, 2019 by #DeltaSCR Bugs na Identação Link to comment
DNL291 Posted May 8, 2019 Share Posted May 8, 2019 (edited) Não se esqueça que a função getPlayerFromPartialName não é uma função do próprio MTA, você deve incluí-la no seu código: function getPlayerFromPartialName(name) local name = name and name:gsub("#%x%x%x%x%x%x", ""):lower() or nil if name then for _, player in ipairs(getElementsByType("player")) do local name_ = getPlayerName(player):gsub("#%x%x%x%x%x%x", ""):lower() if name_:find(name, 1, true) then return player end end end end O comando de depuração /debugscript 3 também é necessário para você encontrar os erros de execução no código. E também o element-data da cnh não vai existir no seu servidor de uma forma mágica, você deve ter esse script da habilitação no seu servidor e tenha certeza que o element-data esteja funcionando como esperado. @Luccas Edited May 8, 2019 by DNL291 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