* Refactored Permissions into ScenePresence as requested by MW

* Un-hackerized generating the client_flags 
* Now handling the ObjectPermissions Update packet 
* Warning: Backup your prim before updating.  If you fail to do so and something goes wrong then, All Yr prim are belong to us!
This commit is contained in:
Teravus Ovares
2007-12-05 06:44:32 +00:00
parent a24b6fe924
commit bb824eadee
10 changed files with 321 additions and 132 deletions

View File

@@ -555,7 +555,7 @@ namespace OpenSim.Region.Environment.Scenes
public void MoveObject(LLUUID objectID, LLVector3 offset, LLVector3 pos, IClientAPI remoteClient)
{
if (PermissionsMngr.CanEditObject(remoteClient.AgentId, objectID))
if (PermissionsMngr.CanEditObject(remoteClient.AgentId, objectID) || PermissionsMngr.AnyoneCanMovePermission(remoteClient.AgentId, objectID))
{
SceneObjectGroup group = GetGroupByPrim(objectID);
if (group != null)
@@ -729,7 +729,7 @@ namespace OpenSim.Region.Environment.Scenes
if (originPrim != null)
{
if (PermissionsMngr.CanCopyObject(AgentID, originPrim.UUID))
if (PermissionsMngr.CanCopyObject(AgentID, originPrim.UUID) || PermissionsMngr.AnyoneCanCopyPermission(AgentID, originPrim.UUID))
{
SceneObjectGroup copy = originPrim.Copy(AgentID, GroupID);
copy.AbsolutePosition = copy.AbsolutePosition + offset;