groups work, with inheritance, still need to remove order by

This commit is contained in:
Zack Piispanen 2011-07-20 20:55:49 -04:00
parent 7bac787aa5
commit cfcc0e7276
3 changed files with 22 additions and 19 deletions

View file

@ -55,20 +55,27 @@ namespace TShockAPI
public void AddPermission(string permission)
{
recursePermissions(permission);
recursePermissions(permission, new List<String>());
}
public void recursePermissions( string permission ){
if( TShock.Groups.GroupExists( permission ) )
public void recursePermissions( string permission, List<String> used){
if (used.Contains(permission))
{
Group g = Tools.GetGroup( permission );
foreach( string perm in g.permissions )
return;
}
else if( TShock.Groups.GroupExists( permission ) )
{
used.Add(permission);
Group g = Tools.GetGroup(permission);
foreach (string perm in g.permissions)
{
recursePermissions( perm );
recursePermissions(perm, used);
}
}
else
{
permissions.Add(permission);
}
}
}