diff options
Diffstat (limited to 'OpenSim/Region/Environment/Scenes/Scene.cs')
-rw-r--r-- | OpenSim/Region/Environment/Scenes/Scene.cs | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/OpenSim/Region/Environment/Scenes/Scene.cs b/OpenSim/Region/Environment/Scenes/Scene.cs index 282e548..dcc3e16 100644 --- a/OpenSim/Region/Environment/Scenes/Scene.cs +++ b/OpenSim/Region/Environment/Scenes/Scene.cs | |||
@@ -544,11 +544,14 @@ namespace OpenSim.Region.Environment.Scenes | |||
544 | /// <param name="ownerID"></param> | 544 | /// <param name="ownerID"></param> |
545 | public void AddNewPrim(LLUUID ownerID, LLVector3 pos, PrimitiveBaseShape shape) | 545 | public void AddNewPrim(LLUUID ownerID, LLVector3 pos, PrimitiveBaseShape shape) |
546 | { | 546 | { |
547 | SceneObjectGroup sceneOb = new SceneObjectGroup(this, this.m_regionHandle, ownerID, PrimIDAllocate(), pos, shape); | 547 | if (this.PermissionsMngr.CanRezObject(ownerID, pos)) |
548 | AddEntity(sceneOb); | 548 | { |
549 | SceneObjectPart rootPart = sceneOb.GetChildPart(sceneOb.UUID); | 549 | SceneObjectGroup sceneOb = new SceneObjectGroup(this, this.m_regionHandle, ownerID, PrimIDAllocate(), pos, shape); |
550 | rootPart.PhysActor =phyScene.AddPrim(new PhysicsVector(pos.X, pos.Y, pos.Z), new PhysicsVector(shape.Scale.X, shape.Scale.Y, shape.Scale.Z), | 550 | AddEntity(sceneOb); |
551 | new Axiom.Math.Quaternion()); | 551 | SceneObjectPart rootPart = sceneOb.GetChildPart(sceneOb.UUID); |
552 | rootPart.PhysActor = phyScene.AddPrim(new PhysicsVector(pos.X, pos.Y, pos.Z), new PhysicsVector(shape.Scale.X, shape.Scale.Y, shape.Scale.Z), | ||
553 | new Axiom.Math.Quaternion()); | ||
554 | } | ||
552 | } | 555 | } |
553 | 556 | ||
554 | public void RemovePrim(uint localID, LLUUID avatar_deleter) | 557 | public void RemovePrim(uint localID, LLUUID avatar_deleter) |