ZH-CN/AclGetGroup
Jump to navigation
Jump to search
此函数用于获取具有给定名称的ACL组.如果需要大多数组,应该考虑使用aclGroupList来获得包含所有组的表.
语法
aclgroup aclGetGroup ( string groupName )
OOP 语法 什么是OOP?
- 提示: This function is a static function underneath the ACL Group class.
- 方法: ACLGroup.get(...)
必填参数
- groupName: 从中获取ACL组的名称
返回值
返回ACL组(如果可以找到).如果它不存在或由于某种原因失败,则返回false/nil.
示例
例子 1: 这个例子使每个玩家都能使用一个名为“giveAccountAdminRights”的命令,该命令会将一个特定的账户名作为ACL对象添加到“Admin”组中.
function giveAdminRights (playerSource, commandName, accountName) --添加函数giveAdminRights并指定其参数
if accountName then --if there was an accountName entered then
aclGroupAddObject (aclGetGroup("Admin"), "user."..accountName)) --使用“user.[accountName]”格式将ACL对象添加到ACL组“Admin”
outputChatBox ("Account '"..accountName.."' succesfully added to the admin group", playerSource) --向输入命令的玩家输出一个通知,通知其acocunt已成功添加
else --否则,将错误消息和命令的正确语法输出给输入它的玩家
outputChatBox ("No account name specified.", playerSource)
outputChatBox ("Correct syntax: /giveAccountAdminRights [accountName]", playerSource)
end
end
addCommandHandler ("giveAccountAdminRights", giveAdminRights) --添加一个命令“giveAccountAdminRights”并将函数“giveAdminRights”添加到其中
例子 2: 此示例显示聊天框中所有在线管理员的列表(假设ACL中的管理员组名为“admin”):
players = getElementsByType ( "player" )
admins = ""
for k,v in ipairs(players) do
local accountname = ""
if (isGuestAccount(getPlayerAccount(v)) == false) then
accountname = getAccountName (getPlayerAccount(v))
if isObjectInACLGroup ( "user." .. accountname, aclGetGroup ( "admin" ) ) then
if (admins == "") then
admins = getPlayerName(v)
else
admins = admins .. ", " .. getPlayerName(v)
end
end
end
end
outputChatBox( "Online Admins:", getRootElement(), 255, 255, 0)
outputChatBox( " " .. tostring ( admins ), getRootElement(), 255, 255, 0)
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