ZH-CN/aclSetRight
		
		
		
		Jump to navigation
		Jump to search
		
此函数用于更改或添加给定ACL中的给定权限。访问可以是“true”或“false”,并指定ACL是否允许访问权限.
语法
bool aclSetRight ( acl theAcl, string rightName, bool hasAccess )
OOP 语法 什么是OOP?
- 方法: acl:setRight(...)
 - 对称函数: aclGetRight
 
必填参数
- theAcl: 要更改其权限的ACL
 - rightName: 添加/更改的访问属性的权限
 - hasAccess: 访问是否应设置为true或false
 
返回值
如果访问已成功更改,则返回“true”;如果由于某种原因(例如无效的ACL或rightname无效)而失败,则返回“false”或“nil”.
示例
此示例添加了命令“setaclright”,使用该命令可以轻松地向指定的访问控制列表添加新权限.
function setACLRight ( thePlayer, commandName, aclName, rightName, access )
    local ourACL = aclGet ( aclName )
    -- 如果以前没有具有此名称的ACL,则需要创建一个
    if not ourACL then
        ourACL = aclCreate ( aclName )
    end
    -- 将布尔字符串转换为小写
    access = string.lower ( access )
    -- 访问必须是true或false(布尔值)
    if not (access == "true" or access == "false") then
        -- 将错误消息发送到调试窗口
        return outputDebugString ( "Invalid access; true and false are only accepted", 1 )
    end
    -- 将访问权限更改为布尔值
    if access == "true" then
        access = true
    else 
        access = false
    end
    -- 最后让我们确定正确的方向
    aclSetRight ( ourACL, rightName, access )
    -- 不要忘记在修改ACL后保存它
    aclSave ()
end
addCommandHandler ( "setaclright", setACLRight )
See Also
- aclCreate
 - aclCreateGroup
 - aclDestroy
 - aclDestroyGroup
 - aclGet
 - aclGetGroup
 - aclGetName
 - aclGetRight
 - aclGroupAddACL
 - aclGroupAddObject
 - aclGroupGetName
 - aclGroupList
 - aclGroupListACL
 - aclGroupListObjects
 - aclGroupRemoveACL
 - aclGroupRemoveObject
 - aclList
 - aclListRights
 - aclReload
 - aclRemoveRight
 - aclSave
 - aclSetRight
 - hasObjectPermissionTo
 - isObjectInACLGroup