diff options
Diffstat (limited to 'OpenSim/Region/Environment/Scenes/InnerScene.cs')
-rw-r--r-- | OpenSim/Region/Environment/Scenes/InnerScene.cs | 25 |
1 files changed, 23 insertions, 2 deletions
diff --git a/OpenSim/Region/Environment/Scenes/InnerScene.cs b/OpenSim/Region/Environment/Scenes/InnerScene.cs index f29e1f3..80e71c8 100644 --- a/OpenSim/Region/Environment/Scenes/InnerScene.cs +++ b/OpenSim/Region/Environment/Scenes/InnerScene.cs | |||
@@ -1275,14 +1275,35 @@ namespace OpenSim.Region.Environment.Scenes | |||
1275 | /// </summary> | 1275 | /// </summary> |
1276 | /// <param name="primLocalID"></param> | 1276 | /// <param name="primLocalID"></param> |
1277 | /// <param name="shapeBlock"></param> | 1277 | /// <param name="shapeBlock"></param> |
1278 | public void UpdatePrimShape(LLUUID agentID, uint primLocalID, ObjectShapePacket.ObjectDataBlock shapeBlock) | 1278 | public void UpdatePrimShape(LLUUID agentID, uint primLocalID, UpdateShapeArgs shapeBlock) |
1279 | { | 1279 | { |
1280 | SceneObjectGroup group = GetGroupByPrim(primLocalID); | 1280 | SceneObjectGroup group = GetGroupByPrim(primLocalID); |
1281 | if (group != null) | 1281 | if (group != null) |
1282 | { | 1282 | { |
1283 | if (m_parentScene.Permissions.CanEditObjectPosition(agentID, group.GetPartsFullID(primLocalID))) | 1283 | if (m_parentScene.Permissions.CanEditObjectPosition(agentID, group.GetPartsFullID(primLocalID))) |
1284 | { | 1284 | { |
1285 | group.UpdateShape(shapeBlock, primLocalID); | 1285 | ObjectShapePacket.ObjectDataBlock shapeData = new ObjectShapePacket.ObjectDataBlock(); |
1286 | shapeData.ObjectLocalID = shapeBlock.ObjectLocalID; | ||
1287 | shapeData.PathBegin = shapeBlock.PathBegin; | ||
1288 | shapeData.PathCurve = shapeBlock.PathCurve; | ||
1289 | shapeData.PathEnd = shapeBlock.PathEnd; | ||
1290 | shapeData.PathRadiusOffset = shapeBlock.PathRadiusOffset; | ||
1291 | shapeData.PathRevolutions = shapeBlock.PathRevolutions; | ||
1292 | shapeData.PathScaleX = shapeBlock.PathScaleX; | ||
1293 | shapeData.PathScaleY = shapeBlock.PathScaleY; | ||
1294 | shapeData.PathShearX = shapeBlock.PathShearX; | ||
1295 | shapeData.PathShearY = shapeBlock.PathShearY; | ||
1296 | shapeData.PathSkew = shapeBlock.PathSkew; | ||
1297 | shapeData.PathTaperX = shapeBlock.PathTaperX; | ||
1298 | shapeData.PathTaperY = shapeBlock.PathTaperY; | ||
1299 | shapeData.PathTwist = shapeBlock.PathTwist; | ||
1300 | shapeData.PathTwistBegin = shapeBlock.PathTwistBegin; | ||
1301 | shapeData.ProfileBegin = shapeBlock.ProfileBegin; | ||
1302 | shapeData.ProfileCurve = shapeBlock.ProfileCurve; | ||
1303 | shapeData.ProfileEnd = shapeBlock.ProfileEnd; | ||
1304 | shapeData.ProfileHollow = shapeBlock.ProfileHollow; | ||
1305 | |||
1306 | group.UpdateShape(shapeData, primLocalID); | ||
1286 | } | 1307 | } |
1287 | } | 1308 | } |
1288 | } | 1309 | } |