Jump to content

Há alguma maneira de remover todas as tags do ACLGROUP quando o player deslogar? (ou selecionar 1 por 1)


Recommended Posts

  • Moderators

Olá e bem-vindo ao fórum. Para manter o local organizado temos os respectivos sub-fóruns, por isso, sempre que criar um tópico por favor crie-o dentro do sub-fórum Portuguese / Português

Você pode encontrá-lo pela página inicial do fórum da forma mostrada abaixo: 

spacer.png

Isso evitará o trabalho que os moderadores têm diariamente de mover posts para os locais certos. 

Sempre que criar um novo tópico, certifique-se que esteja na devida categoria. No sub-fórum Português ficam todas postagens na linguagem portuguesa, enquanto que fora da categoria Other languages só é permitido posts em inglês. Por isso, sempre que responder um tópico, preste atenção a isso.


Quanto ao seu problema @Bruno R dos Santos você quer o que exatamente? Quando o jogador desloga da conta, ele automaticamente perde as permissões de sua antiga conta, pois no logout a conta atual passa a ser a 'conta' guest.


Pode ser que ainda fique algum tipo de permissão contida em elementData (setElementData), então você pode removê-la com removeElementData (server) ou setElementData(element, key, false)
Para remove uma conta da ACL você vai precisar desta função: aclGroupRemoveObject

Link to comment
1 hour ago, DNL291 said:

Olá e bem-vindo ao fórum. Para manter o local organizado temos os respectivos sub-fóruns, por isso, sempre que criar um tópico por favor crie-o dentro do sub-fórum Portuguese / Português

Você pode encontrá-lo pela página inicial do fórum da forma mostrada abaixo: 

spacer.png

Isso evitará o trabalho que os moderadores têm diariamente de mover posts para os locais certos. 

Sempre que criar um novo tópico, certifique-se que esteja na devida categoria. No sub-fórum Português ficam todas postagens na linguagem portuguesa, enquanto que fora da categoria Other languages só é permitido posts em inglês. Por isso, sempre que responder um tópico, preste atenção a isso.


Quanto ao seu problema @Bruno R dos Santos você quer o que exatamente? Quando o jogador desloga da conta, ele automaticamente perde as permissões de sua antiga conta, pois no logout a conta atual passa a ser a 'conta' guest.


Pode ser que ainda fique algum tipo de permissão contida em elementData (setElementData), então você pode removê-la com removeElementData (server) ou setElementData(element, key, false)
Para remove uma conta da ACL você vai precisar desta função: aclGroupRemoveObject

ah, eu tentei postar no lugar mais correto possivel, desculpa.


Então, o que eu queria fazer é que quando o Jogador deslogasse, ele iria sair de alguns groupACL automaticamente.

Link to comment
  • Other Languages Moderators
local temporaryACLGroups = {"Moderator", "Hacker", "Police"} -- nome dos grupos da ACL que serão removidos da conta do jogador, caso ele possua

addEventHandler("onPlayerQuit", root, function()
    local account = getPlayerAccount(source)

    if isGuestAccount(account) then
        return false
    end

    for i = 1, #temporaryACLGroups do
        local aclName = temporaryACLGroups[i]
        local aclGroup = aclGetGroup(aclName)

        if aclGroup then
            if isObjectInACLGroup("user." .. getAccountName(account), aclGroup) then
                aclGroupRemoveObject(aclGroup, "user." .. getAccountName(account))
            end
        end
    end
end)

Faça assim. Não testei, mas deve funcionar perfeitamente.

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...