MrDante Posted August 26, 2015 Posted August 26, 2015 Alguem me Ajuda! Está Dando Erro na Linha 8 function getPlayerFromPartialName(thePlayer,commandName,sendToName,...) 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, 3, true) then return player else outputChatBox("O "getPlayerName(source)"#00ff00 Está Revistando o Jogador"getPlayerName(thePlayer)) local players = getElementsByType ( "player" ) for theKey,thePlayer in ipairs(players) do local level = getPlayerWantedLevel ( thePlayer ) if ( level > 0 ) then outputChatBox ( getPlayerName ( thePlayer ) .. " Está com " .. level .. " de procurado!" ) end end end addCommandHandler("revistar", getPlayerFromPartialName)
RenanPG Posted August 26, 2015 Posted August 26, 2015 Coloque isso na linha 8. outputChatBox("O " .. getPlayerName(source) .. "#00ff00 Está Revistando o Jogador" .. getPlayerName(thePlayer))
n3wage Posted August 26, 2015 Posted August 26, 2015 Você misturou a função getPlayerFromPartialName com a parte de revistar o jogador, o certo seria criar outra função, Comentei o código inteiro para você entender 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 function revistar_jogador ( thePlayer, comando, nick ) -- definimos a função revistar_jogador --[[ Como você adicionou um comando, a função ganha 2 parametros thePlayer = Jogador que digitou o comando comando = Comando digitado o parametro nick foi definido por nós. --]] if nick then -- checamos se nick (o parametro que indica o nick do jogador a ser revistado) foi digitado if getPlayerFromPartialName ( nick ) then -- checamos se existe um player com o nick digitado local player_a_ser_revistado = getPlayerFromPartialName ( nick ) -- definimos player_a_ser_revistado como o player a ser revistado.. local nick_do_jogador = getPlayerName ( player_a_ser_revistado ) -- pegamos o nick do jogador local nick_do_policial = getPlayerName ( thePlayer ) -- pegamos o nick do policial (quem digitou o comando) local estrelas_de_procurado = getPlayerWantedLevel ( player_a_ser_revistado ) -- obtemos o nivel de procurado do 'bandido' outputChatBox( "O "..nick_do_policial.."#00ff00 Está Revistando o Jogador "..nick_do_jogador, root, 255, 255, 255, true ) -- Mandamos a mensagem para todos do servidor (root = todos) outputChatBox ( "Nivel de procurado de "..nick_do_jogador..": "..estrelas_de_procurado, thePlayer, 255, 255, 255, true ) -- Mandamos outra mensagem dessa vez apenas para quem digitou o comando end end end addCommandHandler ( "revistar", revistar_jogador ) -- adicionar o comando Qualquer dúvida poste aqui.
MrDante Posted August 27, 2015 Author Posted August 27, 2015 obrigadao amigo, estava precisando mesmo de uma ajuda sim sou inciante em scripts , mas tbm ou pergunta, qual comando que posso usar para só tal acl poder usar esse comando?
n3wage Posted August 27, 2015 Posted August 27, 2015 obrigadao amigo, estava precisando mesmo de uma ajuda sim sou inciante em scripts , mas tbm ou pergunta, qual comando que posso usar para só tal acl poder usar esse comando? isObjectInACLGroup (clique e olhe o primeiro exemplo).
MrDante Posted August 28, 2015 Author Posted August 28, 2015 agora me veio mais um erro attemp condenate local' accname' (a boolean value) local accName = getAccountName ( getPlayerAccount ( thePlayer ) ) if isObjectInACLGroup ("user."..accName, aclGetGroup ( "Admin" ) ) or isObjectInACLGroup ("user."..accName, aclGetGroup ( "ROTA" ) ) or isObjectInACLGroup ("user."..accName, aclGetGroup ( "ROCAM" ) ) or isObjectInACLGroup ("user."..accName, aclGetGroup ( "FT" ) ) or isObjectInACLGroup ("user."..accName, aclGetGroup ( "PM" ) ) then end
DNL291 Posted August 28, 2015 Posted August 28, 2015 Deve ser 'thePlayer' não retornando um elemento-jogador.
MrDante Posted August 29, 2015 Author Posted August 29, 2015 function revistar_jogador ( thePlayer, comando, nick ) if nick then if getPlayerFromPartialName ( nick ) then local player_a_ser_revistado = getPlayerFromPartialName ( nick ) local nick_do_jogador = getPlayerName ( player_a_ser_revistado ) local nick_do_policial = getPlayerName ( thePlayer ) local estrelas_de_procurado = getPlayerWantedLevel ( player_a_ser_revistado ) outputChatBox( "#A09E9EO Policial"..nick_do_policial.."#A09E9E Está Revistando o #FC0303Jogador "..nick_do_jogador, root, 255, 255, 255, true ) outputChatBox ("#A09E9EO Nivel de #FC0303procurado #A09E9EO de "..nick_do_jogador..": "..estrelas_de_procurado, thePlayer, 255, 255, 255, true ) end end end addCommandHandler ( "revistar", revistar_jogador ) enfim não consigo colocar acl nessa função, preciso colocar algo a mais na função?
n3wage Posted August 29, 2015 Posted August 29, 2015 enfim não consigo colocar acl nessa função, preciso colocar algo a mais na função? Precisa colocar mais um if checando se o jogador está em determinada ACL. Usando o exemplo da wiki: function revistar_jogador ( thePlayer, comando, nick ) local accName = getAccountName ( getPlayerAccount ( thePlayer ) ) if isObjectInACLGroup ("user."..accName, aclGetGroup ( "Admin" ) ) then -- Troque Admin por sua ACL if nick then if getPlayerFromPartialName ( nick ) then local player_a_ser_revistado = getPlayerFromPartialName ( nick ) local nick_do_jogador = getPlayerName ( player_a_ser_revistado ) local nick_do_policial = getPlayerName ( thePlayer ) local estrelas_de_procurado = getPlayerWantedLevel ( player_a_ser_revistado ) outputChatBox( "#A09E9EO Policial"..nick_do_policial.."#A09E9E Está Revistando o #FC0303Jogador "..nick_do_jogador, root, 255, 255, 255, true ) outputChatBox ("#A09E9EO Nivel de #FC0303procurado #A09E9EO de "..nick_do_jogador..": "..estrelas_de_procurado, thePlayer, 255, 255, 255, true ) end end end end addCommandHandler ( "revistar", revistar_jogador )
MrDante Posted August 29, 2015 Author Posted August 29, 2015 Deu um problema, ele n funciona quando eu digita /revistar, mas funciona quando digita /revistar [nome do jogador]
n3wage Posted August 29, 2015 Posted August 29, 2015 Deu um problema, ele n funciona quando eu digita /revistar, mas funciona quando digita /revistar [nome do jogador] Isso não é um problema, o código foi feito para ser assim. if nick then --[[ ^ aqui checamos se o jogador digitou algum nick, se não digitou nada acontecerá --]]
MrDante Posted August 29, 2015 Author Posted August 29, 2015 bom mas era pra tal acl usar se não todos que não são policias podem
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