DigDim Posted November 23, 2019 Share Posted November 23, 2019 Ola galera, eu tenho um comando que eu quero que só quem é console pode usar, mas a função isPlayerInACL não funciona, como posso exportar ela para ser usado no arquivo client.Lua ? -- server function isPlayerInACL(player, acl) if isElement(player) and getElementType(player) == "player" and aclGetGroup(acl or "") and not isGuestAccount(getPlayerAccount(player)) then local account = getPlayerAccount(player) return isObjectInACLGroup( "user.".. getAccountName(account), aclGetGroup(acl) ) end return false end -- client function TesteCMD(thePlayer) if isPlayerInACL(thePlayer, "Console") then outputChatBox("Acesso concedido") else outputChatBox("Acesso negado") end end addCommandHandler("teste", TesteCMD) Link to comment
Other Languages Moderators Lord Henry Posted November 23, 2019 Other Languages Moderators Share Posted November 23, 2019 Vai precisar fazer trigger duplo. Use o comando no cliente, então com um triggerServerEvent, verifique a ACL no servidor, se estiver na ACL, faz um triggerClientEvent para fazer o que o comando deveria fazer. É claro que, na maioria dos casos, é possível deixar o comando no server, junto com a verificação de ACL e então fazer um triggerClientEvent caso esteja na ACL. Link to comment
DigDim Posted November 23, 2019 Author Share Posted November 23, 2019 7 minutes ago, Lord Henry said: Vai precisar fazer trigger duplo. Use o comando no cliente, então com um triggerServerEvent, verifique a ACL no servidor, se estiver na ACL, faz um triggerClientEvent para fazer o que o comando deveria fazer. É claro que, na maioria dos casos, é possível deixar o comando no server, junto com a verificação de ACL e então fazer um triggerClientEvent caso esteja na ACL. Poderia me dar um exemplo ? sou novo em Lua. Link to comment
Other Languages Moderators Lord Henry Posted November 23, 2019 Other Languages Moderators Share Posted November 23, 2019 client: addCommandHandler ("testar", function (cmd) triggerServerEvent ("eventoS", resourceRoot) -- Pode ser QUASE qualquer nome. end) addEvent ("eventoC", true) -- Pode ser QUASE qualquer nome. addEventHandler ("eventoC", root, function () outputChatBox ("Comando funcionou.") end) server: addEvent ("eventoS", true) addEventHandler ("eventoS", root, function () local accName = getAccountName (getPlayerAccount (client)) -- Obtém o nome da conta do jogador que executou o triggerServerEvent lá no client. if isObjectInACLGroup ("user."..accName, aclGetGroup ("Console")) then -- Verifica se está na ACL Group Console, pode ser qualquer outro grupo. triggerClientEvent (client, "eventoC", source) -- Ativa esse evento no client. else outputChatBox ("Comando não funcionou.", client) end end) 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