Implement ForceOwnerPermissive and God TakeCopy
parent
8887bde499
commit
c65b10caa2
|
@ -1515,6 +1515,12 @@ namespace OpenSim.Region.Environment.Scenes
|
||||||
permissionToTake = ExternalChecks.ExternalChecksCanTakeCopyObject(((SceneObjectGroup)selectedEnt).UUID, remoteClient.AgentId);
|
permissionToTake = ExternalChecks.ExternalChecksCanTakeCopyObject(((SceneObjectGroup)selectedEnt).UUID, remoteClient.AgentId);
|
||||||
permissionToDelete = false; //Just taking copy!
|
permissionToDelete = false; //Just taking copy!
|
||||||
|
|
||||||
|
}
|
||||||
|
else if (DeRezPacket.AgentBlock.Destination == 5) //God take copy
|
||||||
|
{
|
||||||
|
permissionToTake = ExternalChecks.ExternalChecksCanBeGodLike(remoteClient.AgentId);
|
||||||
|
permissionToDelete = false; //Just taking copy!
|
||||||
|
|
||||||
}
|
}
|
||||||
else if (DeRezPacket.AgentBlock.Destination == 4) //Take
|
else if (DeRezPacket.AgentBlock.Destination == 4) //Take
|
||||||
{
|
{
|
||||||
|
|
|
@ -733,6 +733,15 @@ namespace OpenSim.Region.Environment.Scenes
|
||||||
TriggerScriptChangedEvent(Changed.OWNER);
|
TriggerScriptChangedEvent(Changed.OWNER);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void ApplyGodPermissions(uint perms)
|
||||||
|
{
|
||||||
|
foreach (TaskInventoryItem item in m_taskInventory.Values)
|
||||||
|
{
|
||||||
|
item.CurrentPermissions = perms;
|
||||||
|
item.BasePermissions = perms;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public bool ContainsScripts()
|
public bool ContainsScripts()
|
||||||
{
|
{
|
||||||
foreach (TaskInventoryItem item in m_taskInventory.Values)
|
foreach (TaskInventoryItem item in m_taskInventory.Values)
|
||||||
|
|
|
@ -3037,6 +3037,14 @@ namespace OpenSim.Region.Environment.Scenes
|
||||||
{
|
{
|
||||||
switch (field)
|
switch (field)
|
||||||
{
|
{
|
||||||
|
case 1:
|
||||||
|
if (god)
|
||||||
|
{
|
||||||
|
_baseMask = ApplyMask(_baseMask, set, mask);
|
||||||
|
ApplyGodPermissions(_baseMask);
|
||||||
|
}
|
||||||
|
|
||||||
|
break;
|
||||||
case 2:
|
case 2:
|
||||||
_ownerMask = ApplyMask(_ownerMask, set, mask) &
|
_ownerMask = ApplyMask(_ownerMask, set, mask) &
|
||||||
baseMask;
|
baseMask;
|
||||||
|
|
Loading…
Reference in New Issue