#DeltaSCR Posted December 14, 2018 Share Posted December 14, 2018 Quais argumentos eu tenho que usar pra um chat aparecer somente para uma ACL especifica? Por exemplo, quando o player der o comando "/uber", aparecer o chat "o Jogador (nome) está precisando de um uber em (local)", mas que esse chat seja visivel somente pra quem ta na ACL da Uber Link to comment
miiguelz Posted December 14, 2018 Share Posted December 14, 2018 (edited) local accName = getAccountName ( getPlayerAccount (player) ) if isObjectInACLGroup ("user."..accName, aclGetGroup ( "ACL_NAME" ) ) then Edited December 14, 2018 by Mewjas Link to comment
#DeltaSCR Posted December 14, 2018 Author Share Posted December 14, 2018 1 minute ago, Mewjas said: local accName = getAccountName ( getPlayerAccount (player) ) if isObjectInACLGroup ("user."..accName, aclGetGroup ( "ACL_NAME" ) ) then Mas não teria que user nada como setElementVisebleTo? Link to comment
miiguelz Posted December 14, 2018 Share Posted December 14, 2018 (edited) Sim, Só coloquei a parte da verificação da ACL Uber, para fazer totalmente o que você quer teria que complementar mais, só deixei isto para amenizar seu trabalho. Edited December 14, 2018 by Mewjas Link to comment
#DeltaSCR Posted December 14, 2018 Author Share Posted December 14, 2018 1 minute ago, Mewjas said: Sim, Só coloquei a parte da verificação da ACL Uber, para fazer totalmente o que você quer teria que complementar mais, só deixei isto para amenizar seu trabalho. Tá mas tipo, qual elemento eu usaria no chatBox? Link to comment
Jonas^ Posted December 14, 2018 Share Posted December 14, 2018 Daria pra fazer isso fazendo um loop obtendo todos jogadores do server e verificar se cada jogador esta na Acl Uber se não tiver não ira aparecer o output Link to comment
#DeltaSCR Posted December 14, 2018 Author Share Posted December 14, 2018 Just now, OverKILL said: Daria pra fazer isso fazendo um loop obtendo todos jogadores do server e verificar se cada jogador esta na Acl Uber se não tiver não ira aparecer o output E como eu faria isso? Link to comment
miiguelz Posted December 14, 2018 Share Posted December 14, 2018 (edited) 2 minutes ago, OverKILL said: Daria pra fazer isso fazendo um loop obtendo todos jogadores do server e verificar se cada jogador esta na Acl Uber se não tiver não ira aparecer o output Ele não sabe "monta" todo código, basicamente ele está pedindo o código pronto. Edited December 14, 2018 by Mewjas Link to comment
#DeltaSCR Posted December 14, 2018 Author Share Posted December 14, 2018 Just now, Mewjas said: Ele não sabe "monta" todo código, basicamente ele está pedindo o código pronto. Obviamente se eu estou pedindo ajuda, é por que eu não sei Link to comment
Jonas^ Posted December 14, 2018 Share Posted December 14, 2018 Pra obter todos jogadores do tipo player você vai usar isto; getElementsByType ("player") Eu estou no celular fica difícil eu fazer o código pra você aqui mas é muito simples tem um tópico aqui na aba se programação em .lua que o varzn fez sobre loops o loordin explicou passo.a passo lá, procure que você ira entender se não conseguir quando eu chegar eh faço o código e comento e te mando. Link to comment
#DeltaSCR Posted December 14, 2018 Author Share Posted December 14, 2018 1 minute ago, OverKILL said: Pra obter todos jogadores do tipo player você vai usar isto; getElementsByType ("player") Eu estou no celular fica difícil eu fazer o código pra você aqui mas é muito simples tem um tópico aqui na aba se programação em .lua que o varzn fez sobre loops o loordin explicou passo.a passo lá, procure que você ira entender se não conseguir quando eu chegar eh faço o código e comento e te mando. Blz mn, tmj Link to comment
Jonas^ Posted December 14, 2018 Share Posted December 14, 2018 Desculpe os erros corretor Link to comment
#DeltaSCR Posted December 14, 2018 Author Share Posted December 14, 2018 2 minutes ago, OverKILL said: Desculpe os erros corretor Tranquilo mn Link to comment
Other Languages Moderators Lord Henry Posted December 14, 2018 Other Languages Moderators Share Posted December 14, 2018 14 minutes ago, OverKILL said: tem um tópico aqui na aba se programação em .lua que o varzn fez sobre loops o loordin explicou passo.a passo lá, procure que você ira entender Se refere a este? 1 Link to comment
Jonas^ Posted December 14, 2018 Share Posted December 14, 2018 2 minutes ago, Lord Henry said: Se refere a este? Essa peça ai mesmo que eu queria Link to comment
#DeltaSCR Posted December 14, 2018 Author Share Posted December 14, 2018 2 minutes ago, Lord Henry said: Se refere a este? eu dei uma olhada, mas não entendi muito bem, pq pelo o que eu consegui interpretar la não fala sobre acl Link to comment
Other Languages Moderators Lord Henry Posted December 14, 2018 Other Languages Moderators Share Posted December 14, 2018 1 minute ago, danblemes1 said: eu dei uma olhada, mas não entendi muito bem, pq pelo o que eu consegui interpretar la não fala sobre acl Lá fala de Loops, não de ACL. Mas o loop que tem lá é pra fazer algo em cada jogador do servidor. A única diferença é que em vez de vc dar um jetpack pra cada um, como foi feito no exemplo de lá, vc vai verificar a conta de cada player. Se estiver na ACL Group, manda o texto pra ele, se não estiver, não acontece nada. Link to comment
#DaNiLiN Posted December 14, 2018 Share Posted December 14, 2018 function PedirUber (source) local Jogadores = getElementsByType("player") -- Todos Jogadores Online for _,Jogad in ipairs(Jogadores) do -- Para cada elemento dessa table, faça o seguinte: local accName = getAccountName ( getPlayerAccount (Jogad) ) -- Contas do jogador if isObjectInACLGroup ("user."..accName, aclGetGroup ( "ACL_NAME" ) ) then -- se a Conta do jogador Estiver no grupo "ACL_NAME" Então o Output será executado apenas para o Grupo "ACL_NAME" local Cliente = getPlayerName(source) -- Nick do jogador que executou /uber outputChatBox ("Jogador "..Cliente.." #ffffffPediu Uber!", Jogad,255,255,255,true) -- Mensagem pra todos jogadores que está no grupo "ACL_NAME" end end end addCommandHandler("uber",PedirUber) Se tu tivesse Dado uma olhadinha no link que te mandaram acima iria ver que o loop estava pronto. Aqui apenas implementei aclGetGroup. 1 Link to comment
#DeltaSCR Posted December 14, 2018 Author Share Posted December 14, 2018 8 minutes ago, danilin said: function PedirUber (source) local Jogadores = getElementsByType("player") -- Todos Jogadores Online for _,Jogad in ipairs(Jogadores) do -- Para cada elemento dessa table, faça o seguinte: local accName = getAccountName ( getPlayerAccount (Jogad) ) -- Contas do jogador if isObjectInACLGroup ("user."..accName, aclGetGroup ( "ACL_NAME" ) ) then -- se a Conta do jogador Estiver no grupo "ACL_NAME" Então o Output será executado apenas para o Grupo "ACL_NAME" local Cliente = getPlayerName(source) -- Nick do jogador que executou /uber outputChatBox ("Jogador "..Cliente.." #ffffffPediu Uber!", Jogad,255,255,255,true) -- Mensagem pra todos jogadores que está no grupo "ACL_NAME" end end end addCommandHandler("uber",PedirUber) Se tu tivesse Dado uma olhadinha no link que te mandaram acima iria ver que o loop estava pronto. Aqui apenas implementei aclGetGroup. Vlw mn, vou testar aqui Link to comment
Other Languages Moderators Lord Henry Posted December 14, 2018 Other Languages Moderators Share Posted December 14, 2018 Só faltou indentar o código. 1 Link to comment
#DaNiLiN Posted December 14, 2018 Share Posted December 14, 2018 6 minutes ago, Lord Henry said: Só faltou indentar o código. Realmente.. KK Link to comment
#DeltaSCR Posted December 14, 2018 Author Share Posted December 14, 2018 (edited) Funcionou... Edited December 14, 2018 by danblemes1 Link to comment
Jonas^ Posted December 14, 2018 Share Posted December 14, 2018 Código devidamente identado, lordin tem tick e eu também: function PedirUber (source) local everybody = getElementsByType ("player") -- Todos Jogadores Online local accName = getAccountName (getPlayerAccount(jogadores)) -- Contas do jogador for _, jogadores in ipairs (everybody) do -- Para cada elemento dessa table, faça o seguinte: if isObjectInACLGroup ("user."..accName, aclGetGroup ( "ACL_NAME" )) then -- se a Conta do jogador Estiver no grupo "ACL_NAME" Então o Output será executado apenas para o Grupo "ACL_NAME" outputChatBox ("O(A) Jogador "..getPlayerName (source).." #ffffffPediu Uber!", jogadores, 255, 255, 255, true) -- Mensagem pra todos jogadores que está no grupo "ACL_NAME" end end end addCommandHandler("uber", PedirUber) Link to comment
Other Languages Moderators androksi Posted December 14, 2018 Other Languages Moderators Share Posted December 14, 2018 36 minutes ago, OverKILL said: Código devidamente identado, lordin tem tick e eu também: function PedirUber (source) local everybody = getElementsByType ("player") -- Todos Jogadores Online local accName = getAccountName (getPlayerAccount(jogadores)) -- Contas do jogador for _, jogadores in ipairs (everybody) do -- Para cada elemento dessa table, faça o seguinte: if isObjectInACLGroup ("user."..accName, aclGetGroup ( "ACL_NAME" )) then -- se a Conta do jogador Estiver no grupo "ACL_NAME" Então o Output será executado apenas para o Grupo "ACL_NAME" outputChatBox ("O(A) Jogador "..getPlayerName (source).." #ffffffPediu Uber!", jogadores, 255, 255, 255, true) -- Mensagem pra todos jogadores que está no grupo "ACL_NAME" end end end addCommandHandler("uber", PedirUber) A linha 3 deve estar abaixo da linha 4. Link to comment
Other Languages Moderators Lord Henry Posted December 14, 2018 Other Languages Moderators Share Posted December 14, 2018 Deixa que eu mesmo arrumo essa bagaça: function PedirUber (thePlayer) local everybody = getElementsByType ("player") -- Todos os jogadores conectados no servidor. for _, jogador in ipairs (everybody) do -- Para cada jogador da table everybody, faça: local accName = getAccountName (getPlayerAccount(jogador)) -- accName recebe a conta do jogador if isObjectInACLGroup ("user."..accName, aclGetGroup ("UBER")) then -- Se a conta do jogador estiver no grupo "UBER" então: outputChatBox ("O Jogador "..getPlayerName (thePlayer).." #ffffffpediu um Uber!", jogador, 255, 255, 255, true) -- Mensagem pra esse jogador que está na ACL Group. end -- Se não estiver, não manda nada pra ele. end end addCommandHandler ("uber", PedirUber) 1 1 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