aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/ClientStack
diff options
context:
space:
mode:
authorCharles Krinke2008-04-19 21:01:26 +0000
committerCharles Krinke2008-04-19 21:01:26 +0000
commit6865f1c67d8f4b6fa44ddd9f3040a29e9e180950 (patch)
tree5f8b65c2abac19e736c103b2773d5dc236e59d7d /OpenSim/Region/ClientStack
parent* Fix build break in previous revision (diff)
downloadopensim-SC-6865f1c67d8f4b6fa44ddd9f3040a29e9e180950.zip
opensim-SC-6865f1c67d8f4b6fa44ddd9f3040a29e9e180950.tar.gz
opensim-SC-6865f1c67d8f4b6fa44ddd9f3040a29e9e180950.tar.bz2
opensim-SC-6865f1c67d8f4b6fa44ddd9f3040a29e9e180950.tar.xz
Thank you kindly krtaylor for a patch to solve:
Linked objects won't scale together properly, only the root object scales. This happens with scaling both up and down or inputting numbers in the edit dialog.
Diffstat (limited to 'OpenSim/Region/ClientStack')
-rw-r--r--OpenSim/Region/ClientStack/ClientView.cs30
1 files changed, 24 insertions, 6 deletions
diff --git a/OpenSim/Region/ClientStack/ClientView.cs b/OpenSim/Region/ClientStack/ClientView.cs
index 89b0400..292f7f6 100644
--- a/OpenSim/Region/ClientStack/ClientView.cs
+++ b/OpenSim/Region/ClientStack/ClientView.cs
@@ -222,6 +222,7 @@ namespace OpenSim.Region.ClientStack
222 private UpdateVector handlerUpdatePrimSinglePosition = null; //OnUpdatePrimSinglePosition; 222 private UpdateVector handlerUpdatePrimSinglePosition = null; //OnUpdatePrimSinglePosition;
223 private UpdatePrimSingleRotation handlerUpdatePrimSingleRotation = null; //OnUpdatePrimSingleRotation; 223 private UpdatePrimSingleRotation handlerUpdatePrimSingleRotation = null; //OnUpdatePrimSingleRotation;
224 private UpdateVector handlerUpdatePrimScale = null; //OnUpdatePrimScale; 224 private UpdateVector handlerUpdatePrimScale = null; //OnUpdatePrimScale;
225 private UpdateVector handlerUpdatePrimGroupScale = null; //OnUpdateGroupScale;
225 private UpdateVector handlerUpdateVector = null; //OnUpdatePrimGroupPosition; 226 private UpdateVector handlerUpdateVector = null; //OnUpdatePrimGroupPosition;
226 private UpdatePrimRotation handlerUpdatePrimRotation = null; //OnUpdatePrimGroupRotation; 227 private UpdatePrimRotation handlerUpdatePrimRotation = null; //OnUpdatePrimGroupRotation;
227 private UpdatePrimGroupRotation handlerUpdatePrimGroupRotation = null; //OnUpdatePrimGroupMouseRotation; 228 private UpdatePrimGroupRotation handlerUpdatePrimGroupRotation = null; //OnUpdatePrimGroupMouseRotation;
@@ -712,6 +713,7 @@ namespace OpenSim.Region.ClientStack
712 public event UpdatePrimSingleRotation OnUpdatePrimSingleRotation; 713 public event UpdatePrimSingleRotation OnUpdatePrimSingleRotation;
713 public event UpdatePrimGroupRotation OnUpdatePrimGroupMouseRotation; 714 public event UpdatePrimGroupRotation OnUpdatePrimGroupMouseRotation;
714 public event UpdateVector OnUpdatePrimScale; 715 public event UpdateVector OnUpdatePrimScale;
716 public event UpdateVector OnUpdatePrimGroupScale;
715 public event StatusChange OnChildAgentStatus; 717 public event StatusChange OnChildAgentStatus;
716 public event GenericCall2 OnStopMovement; 718 public event GenericCall2 OnStopMovement;
717 public event Action<LLUUID> OnRemoveAvatar; 719 public event Action<LLUUID> OnRemoveAvatar;
@@ -2590,6 +2592,7 @@ namespace OpenSim.Region.ClientStack
2590 case 5: 2592 case 5:
2591 2593
2592 LLVector3 scale1 = new LLVector3(block.Data, 12); 2594 LLVector3 scale1 = new LLVector3(block.Data, 12);
2595 LLVector3 pos11 = new LLVector3(block.Data, 0);
2593 2596
2594 handlerUpdatePrimScale = OnUpdatePrimScale; 2597 handlerUpdatePrimScale = OnUpdatePrimScale;
2595 if (handlerUpdatePrimScale != null) 2598 if (handlerUpdatePrimScale != null)
@@ -2597,6 +2600,13 @@ namespace OpenSim.Region.ClientStack
2597 2600
2598 // Console.WriteLine("new scale is " + scale.X + " , " + scale.Y + " , " + scale.Z); 2601 // Console.WriteLine("new scale is " + scale.X + " , " + scale.Y + " , " + scale.Z);
2599 handlerUpdatePrimScale(localId, scale1, this); 2602 handlerUpdatePrimScale(localId, scale1, this);
2603
2604
2605 handlerUpdatePrimSinglePosition = OnUpdatePrimSinglePosition;
2606 if (handlerUpdatePrimSinglePosition != null)
2607 {
2608 handlerUpdatePrimSinglePosition(localId, pos11, this);
2609 }
2600 } 2610 }
2601 break; 2611 break;
2602 case 9: 2612 case 9:
@@ -2661,27 +2671,35 @@ namespace OpenSim.Region.ClientStack
2661 LLVector3 scale5 = new LLVector3(block.Data, 12); 2671 LLVector3 scale5 = new LLVector3(block.Data, 12);
2662 LLVector3 pos5 = new LLVector3(block.Data, 0); 2672 LLVector3 pos5 = new LLVector3(block.Data, 0);
2663 2673
2664 handlerUpdatePrimScale = OnUpdatePrimScale; 2674 handlerUpdatePrimGroupScale = OnUpdatePrimGroupScale;
2665 if (handlerUpdatePrimScale != null) 2675 if (handlerUpdatePrimGroupScale != null)
2666 { 2676 {
2667 2677
2668 // Console.WriteLine("new scale is " + scale.X + " , " + scale.Y + " , " + scale.Z ); 2678 // Console.WriteLine("new scale is " + scale.X + " , " + scale.Y + " , " + scale.Z );
2669 handlerUpdatePrimScale(localId, scale5, this); 2679 handlerUpdatePrimGroupScale(localId, scale5, this);
2680 handlerUpdateVector = OnUpdatePrimGroupPosition;
2670 2681
2671 handlerUpdatePrimSinglePosition = OnUpdatePrimSinglePosition; 2682 if (handlerUpdateVector != null)
2672 if (handlerUpdatePrimSinglePosition != null)
2673 { 2683 {
2674 handlerUpdatePrimSinglePosition(localId, pos5, this); 2684
2685 handlerUpdateVector(localId, pos5, this);
2675 } 2686 }
2676 } 2687 }
2677 break; 2688 break;
2678 case 21: 2689 case 21:
2679 LLVector3 scale6 = new LLVector3(block.Data, 12); 2690 LLVector3 scale6 = new LLVector3(block.Data, 12);
2691 LLVector3 pos6 = new LLVector3(block.Data, 0);
2692
2680 handlerUpdatePrimScale = OnUpdatePrimScale; 2693 handlerUpdatePrimScale = OnUpdatePrimScale;
2681 if (handlerUpdatePrimScale != null) 2694 if (handlerUpdatePrimScale != null)
2682 { 2695 {
2683 // Console.WriteLine("new scale is " + scale.X + " , " + scale.Y + " , " + scale.Z); 2696 // Console.WriteLine("new scale is " + scale.X + " , " + scale.Y + " , " + scale.Z);
2684 handlerUpdatePrimScale(localId, scale6, this); 2697 handlerUpdatePrimScale(localId, scale6, this);
2698 handlerUpdatePrimSinglePosition = OnUpdatePrimSinglePosition;
2699 if (handlerUpdatePrimSinglePosition != null)
2700 {
2701 handlerUpdatePrimSinglePosition(localId, pos6, this);
2702 }
2685 } 2703 }
2686 break; 2704 break;
2687 } 2705 }