aclSetRight | Multi Theft Auto: Wiki Skip to content

aclSetRight

Client-side
Server-side
Shared

Pair: aclGetRight

This functions changes or adds the given right in the given ACL. The access can be true or false and specifies whether the ACL gives access to the right or not.

OOP Syntax Help! I don't understand this!

  • Method: acl:setRight(...)

Syntax

bool aclSetRight ( acl theAcl, string rightName, bool hasAccess )
Required Arguments
  • theAcl: The ACL to change the right of.
  • rightName: The right to add/change the access property of. It must be prefixed with function. or command. or general. or resource..
  • hasAccess: Whether the access should be set to true or false.

Returns

  • bool: result

Returns true if the access was successfully changed, false or nil if it failed for some reason, ie. invalid ACL or the rightName is invalid.

Code Examples

server

This example adds a command setaclright with which you can easily add new rights to specified access control lists.

local function setACLRight(thePlayer, commandName, aclName, rightName, access)
-- turn the boolean string to lower case
access = string.lower ( access )
-- access has to be either true or false (booleans)
if (access ~= "true" and access ~= "false") then
-- print out error message to debug window
return outputDebugString("Invalid access; true and false are only accepted", 1)
end
-- change the access to boolean
access = access == "true"
local ourACL = aclGet(aclName)
-- if there is no previous ACL with this name, we need to create one
if (not ourACL) then
ourACL = aclCreate(aclName)
end
-- and finally let's set the right
aclSetRight(ourACL, rightName, access)
-- don't forget to save the ACL after it has been modified
aclSave()
end
addCommandHandler("setaclright", setACLRight)