Jump to content

como faço para que a função remova acl joinquit


Recommended Posts

19 hours ago, Ipanema Roleplay said:

olá boa tarde comunidade, preciso de ajuda para resolver esse script 

no  caso queria que essa função remove-se a acl do player ao ''deslogar'' [JoinQuit]  do servidor .

 

function deladm (playerSource, accountName)
	if accountName then 
		aclGroupRemoveObject (aclGetGroup("Policia"), "user.*"..accountName) 
	end
end
function deladm (source)
local accountName = getAccountName (getPlayerAccount(source))
	if not isGuestAccount(accountName) then 
        if isObjectInACLGroup("user."..accountName, aclGetGroup("Policia")) then
		aclGroupRemoveObject (aclGetGroup("Policia"), "user."..accountName) 
    	end
	end
end
addEventHandler("onPlayerQuit", deladm)

tenta assim, n sei se ta certo

Link to comment
9 hours ago, SciptNovato said:
function deladm (source)
local accountName = getAccountName (getPlayerAccount(source))
	if not isGuestAccount(accountName) then 
        if isObjectInACLGroup("user."..accountName, aclGetGroup("Policia")) then
		aclGroupRemoveObject (aclGetGroup("Policia"), "user."..accountName) 
    	end
	end
end
addEventHandler("onPlayerQuit", deladm)

tenta assim, n sei se ta certo

Dessa maneira não ira definir, o segundo argumento que você tem que definir ali no addEventHandler é o elemento que ira acionar essa função.
Tente assim:

 

Spoiler
addEventHandler("onPlayerQuit", root,
function ()
    local conta = getPlayerAccount(source)
    if conta and not isGuestAccount(conta) then 
        local accountName = getAccountName (conta)
        if isObjectInACLGroup("user."..accountName, aclGetGroup("Policia")) then
            aclGroupRemoveObject (aclGetGroup("Policia"), "user."..accountName) 
        end
    end
end)

 

 

Edited by Blaack
Link to comment
  • 2 weeks later...

Parece que essa função está tentando remover o jogador do grupo "Policia" ao sair do servidor. Para fazer isso, ela está usando a função "aclGroupRemoveObject", que remove um objeto (neste caso, o jogador) de um grupo da ACL (Lista de Controle de Acesso).

Aqui está como a função poderia ser escrita para remover o jogador do grupo "Policia" ao sair do servidor:

function deladm(playerSource)
    local accountName = getAccountName(getPlayerAccount(playerSource))
    if accountName and isObjectInACLGroup("user."..accountName, aclGetGroup("Policia")) then
        aclGroupRemoveObject(aclGetGroup("Policia"), "user."..accountName)
    end
end
addEventHandler("onPlayerQuit", root, deladm)

Aqui está o que foi alterado:

  • A função agora é um manipulador de evento que é acionado quando um jogador sai do servidor. A função recebe o jogador como argumento automático (playerSource).
  • A função obtém o nome da conta do jogador usando a função "getAccountName", que é mais confiável do que o argumento accountName passado para a função original.
  • A função verifica se o jogador está no grupo "Policia" usando a função "isObjectInACLGroup".
  • Se o jogador estiver no grupo "Policia", a função remove o jogador do grupo usando "aclGroupRemoveObject".
Link to comment

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...