diff options
Diffstat (limited to '')
-rw-r--r-- | OpenSim/Framework/PrimitiveBaseShape.cs | 8 | ||||
-rw-r--r-- | OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs | 18 |
2 files changed, 19 insertions, 7 deletions
diff --git a/OpenSim/Framework/PrimitiveBaseShape.cs b/OpenSim/Framework/PrimitiveBaseShape.cs index 96d78d3..98d1bdd 100644 --- a/OpenSim/Framework/PrimitiveBaseShape.cs +++ b/OpenSim/Framework/PrimitiveBaseShape.cs | |||
@@ -348,7 +348,7 @@ namespace OpenSim.Framework | |||
348 | case 2: // torus with hollow (a sl viewer whould see 4 faces on a hollow sphere) | 348 | case 2: // torus with hollow (a sl viewer whould see 4 faces on a hollow sphere) |
349 | shape.ProfileCurve = (byte)ProfileShape.Circle | (byte)HollowShape.Triangle; | 349 | shape.ProfileCurve = (byte)ProfileShape.Circle | (byte)HollowShape.Triangle; |
350 | shape.PathCurve = (byte)Extrusion.Curve1; | 350 | shape.PathCurve = (byte)Extrusion.Curve1; |
351 | shape.ProfileHollow = 1; | 351 | shape.ProfileHollow = 27500; |
352 | break; | 352 | break; |
353 | 353 | ||
354 | case 3: // cylinder | 354 | case 3: // cylinder |
@@ -359,7 +359,7 @@ namespace OpenSim.Framework | |||
359 | case 4: // cylinder with hollow | 359 | case 4: // cylinder with hollow |
360 | shape.ProfileCurve = (byte)ProfileShape.Circle | (byte)HollowShape.Triangle; | 360 | shape.ProfileCurve = (byte)ProfileShape.Circle | (byte)HollowShape.Triangle; |
361 | shape.PathCurve = (byte)Extrusion.Straight; | 361 | shape.PathCurve = (byte)Extrusion.Straight; |
362 | shape.ProfileHollow = 1; | 362 | shape.ProfileHollow = 27500; |
363 | break; | 363 | break; |
364 | 364 | ||
365 | case 5: // prism | 365 | case 5: // prism |
@@ -375,13 +375,13 @@ namespace OpenSim.Framework | |||
375 | case 7: // box with hollow | 375 | case 7: // box with hollow |
376 | shape.ProfileCurve = (byte)ProfileShape.Square | (byte)HollowShape.Triangle; | 376 | shape.ProfileCurve = (byte)ProfileShape.Square | (byte)HollowShape.Triangle; |
377 | shape.PathCurve = (byte)Extrusion.Straight; | 377 | shape.PathCurve = (byte)Extrusion.Straight; |
378 | shape.ProfileHollow = 1; | 378 | shape.ProfileHollow = 27500; |
379 | break; | 379 | break; |
380 | 380 | ||
381 | default: // 8 faces box with cut | 381 | default: // 8 faces box with cut |
382 | shape.ProfileCurve = (byte)ProfileShape.Square | (byte)HollowShape.Triangle; | 382 | shape.ProfileCurve = (byte)ProfileShape.Square | (byte)HollowShape.Triangle; |
383 | shape.PathCurve = (byte)Extrusion.Straight; | 383 | shape.PathCurve = (byte)Extrusion.Straight; |
384 | shape.ProfileBegin = 1; | 384 | shape.ProfileBegin = 12500; |
385 | break; | 385 | break; |
386 | } | 386 | } |
387 | 387 | ||
diff --git a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs index c44c741..f068cef 100644 --- a/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs +++ b/OpenSim/Region/ClientStack/Linden/UDP/LLClientView.cs | |||
@@ -5856,7 +5856,6 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
5856 | update.State = part.Shape.State; // not sure about this | 5856 | update.State = part.Shape.State; // not sure about this |
5857 | } | 5857 | } |
5858 | 5858 | ||
5859 | |||
5860 | update.ObjectData = objectData; | 5859 | update.ObjectData = objectData; |
5861 | update.ParentID = part.ParentID; | 5860 | update.ParentID = part.ParentID; |
5862 | update.PathBegin = part.Shape.PathBegin; | 5861 | update.PathBegin = part.Shape.PathBegin; |
@@ -5877,13 +5876,26 @@ namespace OpenSim.Region.ClientStack.LindenUDP | |||
5877 | update.ProfileBegin = part.Shape.ProfileBegin; | 5876 | update.ProfileBegin = part.Shape.ProfileBegin; |
5878 | update.ProfileCurve = part.Shape.ProfileCurve; | 5877 | update.ProfileCurve = part.Shape.ProfileCurve; |
5879 | 5878 | ||
5880 | if(part.Shape.SculptType == (byte)SculptType.Mesh) // filter out hack | 5879 | ushort profileBegin = part.Shape.ProfileBegin; |
5880 | ushort profileHollow = part.Shape.ProfileHollow; | ||
5881 | |||
5882 | if(part.Shape.SculptType == (byte)SculptType.Mesh) // filter out hack | ||
5883 | { | ||
5881 | update.ProfileCurve = (byte)(part.Shape.ProfileCurve & 0x0f); | 5884 | update.ProfileCurve = (byte)(part.Shape.ProfileCurve & 0x0f); |
5885 | // fix old values that confused viewers | ||
5886 | if(profileBegin == 1) | ||
5887 | profileBegin = 12500; | ||
5888 | if(profileHollow == 1) | ||
5889 | profileHollow = 27500; | ||
5890 | } | ||
5882 | else | 5891 | else |
5892 | { | ||
5883 | update.ProfileCurve = part.Shape.ProfileCurve; | 5893 | update.ProfileCurve = part.Shape.ProfileCurve; |
5894 | } | ||
5884 | 5895 | ||
5896 | update.ProfileHollow = profileHollow; | ||
5897 | update.ProfileBegin = profileBegin; | ||
5885 | update.ProfileEnd = part.Shape.ProfileEnd; | 5898 | update.ProfileEnd = part.Shape.ProfileEnd; |
5886 | update.ProfileHollow = part.Shape.ProfileHollow; | ||
5887 | update.PSBlock = part.ParticleSystem ?? Utils.EmptyBytes; | 5899 | update.PSBlock = part.ParticleSystem ?? Utils.EmptyBytes; |
5888 | update.TextColor = part.GetTextColor().GetBytes(false); | 5900 | update.TextColor = part.GetTextColor().GetBytes(false); |
5889 | update.TextureAnim = part.TextureAnimation ?? Utils.EmptyBytes; | 5901 | update.TextureAnim = part.TextureAnimation ?? Utils.EmptyBytes; |