diff options
Diffstat (limited to 'OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs')
-rw-r--r-- | OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs | 132 |
1 files changed, 66 insertions, 66 deletions
diff --git a/OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs b/OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs index 14bfde0..332d160 100644 --- a/OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs +++ b/OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs | |||
@@ -86,11 +86,11 @@ namespace OpenSim.Region.Environment.Scenes | |||
86 | private PrimCountTaintedDelegate handlerPrimCountTainted = null; | 86 | private PrimCountTaintedDelegate handlerPrimCountTainted = null; |
87 | 87 | ||
88 | /// <summary> | 88 | /// <summary> |
89 | /// Signal whether the non-inventory attributes of any prims in the group have changed | 89 | /// Signal whether the non-inventory attributes of any prims in the group have changed |
90 | /// since the group's last persistent backup | 90 | /// since the group's last persistent backup |
91 | /// </summary> | 91 | /// </summary> |
92 | public bool HasGroupChanged = false; | 92 | public bool HasGroupChanged = false; |
93 | 93 | ||
94 | 94 | ||
95 | 95 | ||
96 | private LLVector3 lastPhysGroupPos; | 96 | private LLVector3 lastPhysGroupPos; |
@@ -119,7 +119,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
119 | /// but not sure a object should have this | 119 | /// but not sure a object should have this |
120 | /// as what does it tell us? that some avatar has selected it (but not what Avatar/user) | 120 | /// as what does it tell us? that some avatar has selected it (but not what Avatar/user) |
121 | /// think really there should be a list (or whatever) in each scenepresence | 121 | /// think really there should be a list (or whatever) in each scenepresence |
122 | /// saying what prim(s) that user has selected. | 122 | /// saying what prim(s) that user has selected. |
123 | /// </summary> | 123 | /// </summary> |
124 | protected bool m_isSelected = false; | 124 | protected bool m_isSelected = false; |
125 | 125 | ||
@@ -134,7 +134,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
134 | } | 134 | } |
135 | 135 | ||
136 | /// <summary> | 136 | /// <summary> |
137 | /// | 137 | /// |
138 | /// </summary> | 138 | /// </summary> |
139 | public int PrimCount | 139 | public int PrimCount |
140 | { | 140 | { |
@@ -153,7 +153,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
153 | } | 153 | } |
154 | 154 | ||
155 | /// <summary> | 155 | /// <summary> |
156 | /// | 156 | /// |
157 | /// </summary> | 157 | /// </summary> |
158 | public LLVector3 GroupCentrePoint | 158 | public LLVector3 GroupCentrePoint |
159 | { | 159 | { |
@@ -215,7 +215,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
215 | part.GroupPosition = val; | 215 | part.GroupPosition = val; |
216 | } | 216 | } |
217 | } | 217 | } |
218 | 218 | ||
219 | //if (m_rootPart.PhysActor != null) | 219 | //if (m_rootPart.PhysActor != null) |
220 | //{ | 220 | //{ |
221 | //m_rootPart.PhysActor.Position = | 221 | //m_rootPart.PhysActor.Position = |
@@ -225,7 +225,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
225 | //} | 225 | //} |
226 | } | 226 | } |
227 | } | 227 | } |
228 | 228 | ||
229 | public override uint LocalId | 229 | public override uint LocalId |
230 | { | 230 | { |
231 | get | 231 | get |
@@ -316,17 +316,17 @@ namespace OpenSim.Region.Environment.Scenes | |||
316 | #region Constructors | 316 | #region Constructors |
317 | 317 | ||
318 | /// <summary> | 318 | /// <summary> |
319 | /// | 319 | /// |
320 | /// </summary> | 320 | /// </summary> |
321 | public SceneObjectGroup() | 321 | public SceneObjectGroup() |
322 | { | 322 | { |
323 | } | 323 | } |
324 | 324 | ||
325 | /// <summary> | 325 | /// <summary> |
326 | /// This constructor creates a SceneObjectGroup using a pre-existing SceneObjectPart. | 326 | /// This constructor creates a SceneObjectGroup using a pre-existing SceneObjectPart. |
327 | /// The original SceneObjectPart will be used rather than a copy, preserving | 327 | /// The original SceneObjectPart will be used rather than a copy, preserving |
328 | /// its existing localID and UUID. | 328 | /// its existing localID and UUID. |
329 | /// </summary> | 329 | /// </summary> |
330 | public SceneObjectGroup(Scene scene, ulong regionHandle, SceneObjectPart part) | 330 | public SceneObjectGroup(Scene scene, ulong regionHandle, SceneObjectPart part) |
331 | { | 331 | { |
332 | m_scene = scene; | 332 | m_scene = scene; |
@@ -416,7 +416,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
416 | } | 416 | } |
417 | 417 | ||
418 | /// <summary> | 418 | /// <summary> |
419 | /// | 419 | /// |
420 | /// </summary> | 420 | /// </summary> |
421 | public SceneObjectGroup(string xmlData) | 421 | public SceneObjectGroup(string xmlData) |
422 | { | 422 | { |
@@ -464,7 +464,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
464 | } | 464 | } |
465 | 465 | ||
466 | /// <summary> | 466 | /// <summary> |
467 | /// | 467 | /// |
468 | /// </summary> | 468 | /// </summary> |
469 | public SceneObjectGroup(Scene scene, ulong regionHandle, LLUUID ownerID, uint localID, LLVector3 pos, | 469 | public SceneObjectGroup(Scene scene, ulong regionHandle, LLUUID ownerID, uint localID, LLVector3 pos, |
470 | LLQuaternion rot, PrimitiveBaseShape shape) | 470 | LLQuaternion rot, PrimitiveBaseShape shape) |
@@ -486,7 +486,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
486 | } | 486 | } |
487 | 487 | ||
488 | /// <summary> | 488 | /// <summary> |
489 | /// | 489 | /// |
490 | /// </summary> | 490 | /// </summary> |
491 | public SceneObjectGroup(Scene scene, ulong regionHandle, LLUUID ownerID, uint localID, LLVector3 pos, | 491 | public SceneObjectGroup(Scene scene, ulong regionHandle, LLUUID ownerID, uint localID, LLVector3 pos, |
492 | PrimitiveBaseShape shape) | 492 | PrimitiveBaseShape shape) |
@@ -576,7 +576,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
576 | 576 | ||
577 | EntityIntersection inter = part.TestIntersectionOBB(hRay, parentrotation,frontFacesOnly, faceCenters); | 577 | EntityIntersection inter = part.TestIntersectionOBB(hRay, parentrotation,frontFacesOnly, faceCenters); |
578 | 578 | ||
579 | // This may need to be updated to the maximum draw distance possible.. | 579 | // This may need to be updated to the maximum draw distance possible.. |
580 | // We might (and probably will) be checking for prim creation from other sims | 580 | // We might (and probably will) be checking for prim creation from other sims |
581 | // when the camera crosses the border. | 581 | // when the camera crosses the border. |
582 | float idist = Constants.RegionSize; | 582 | float idist = Constants.RegionSize; |
@@ -676,7 +676,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
676 | } | 676 | } |
677 | 677 | ||
678 | /// <summary> | 678 | /// <summary> |
679 | /// | 679 | /// |
680 | /// </summary> | 680 | /// </summary> |
681 | /// <param name="part"></param> | 681 | /// <param name="part"></param> |
682 | private void SetPartAsRoot(SceneObjectPart part) | 682 | private void SetPartAsRoot(SceneObjectPart part) |
@@ -693,7 +693,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
693 | DetachFromBackup(this); | 693 | DetachFromBackup(this); |
694 | m_rootPart.m_attachedAvatar = agentID; | 694 | m_rootPart.m_attachedAvatar = agentID; |
695 | 695 | ||
696 | 696 | ||
697 | if (m_rootPart.PhysActor != null) | 697 | if (m_rootPart.PhysActor != null) |
698 | { | 698 | { |
699 | m_scene.PhysicsScene.RemovePrim(m_rootPart.PhysActor); | 699 | m_scene.PhysicsScene.RemovePrim(m_rootPart.PhysActor); |
@@ -753,7 +753,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
753 | AttachToBackup(); | 753 | AttachToBackup(); |
754 | m_rootPart.ScheduleFullUpdate(); | 754 | m_rootPart.ScheduleFullUpdate(); |
755 | m_rootPart.ClearUndoState(); | 755 | m_rootPart.ClearUndoState(); |
756 | 756 | ||
757 | } | 757 | } |
758 | public void DetachToInventoryPrep() | 758 | public void DetachToInventoryPrep() |
759 | { | 759 | { |
@@ -764,7 +764,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
764 | //detachedpos = avatar.AbsolutePosition; | 764 | //detachedpos = avatar.AbsolutePosition; |
765 | avatar.RemoveAttachment(this); | 765 | avatar.RemoveAttachment(this); |
766 | } | 766 | } |
767 | 767 | ||
768 | m_rootPart.m_attachedAvatar = LLUUID.Zero; | 768 | m_rootPart.m_attachedAvatar = LLUUID.Zero; |
769 | m_rootPart.SetParentLocalId(0); | 769 | m_rootPart.SetParentLocalId(0); |
770 | //m_rootPart.SetAttachmentPoint((byte)0); | 770 | //m_rootPart.SetAttachmentPoint((byte)0); |
@@ -773,10 +773,10 @@ namespace OpenSim.Region.Environment.Scenes | |||
773 | //m_rootPart.ApplyPhysics(m_rootPart.GetEffectiveObjectFlags(), m_scene.m_physicalPrim); | 773 | //m_rootPart.ApplyPhysics(m_rootPart.GetEffectiveObjectFlags(), m_scene.m_physicalPrim); |
774 | //AttachToBackup(); | 774 | //AttachToBackup(); |
775 | //m_rootPart.ScheduleFullUpdate(); | 775 | //m_rootPart.ScheduleFullUpdate(); |
776 | 776 | ||
777 | } | 777 | } |
778 | /// <summary> | 778 | /// <summary> |
779 | /// | 779 | /// |
780 | /// </summary> | 780 | /// </summary> |
781 | /// <param name="part"></param> | 781 | /// <param name="part"></param> |
782 | private void SetPartAsNonRoot(SceneObjectPart part) | 782 | private void SetPartAsNonRoot(SceneObjectPart part) |
@@ -802,7 +802,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
802 | } | 802 | } |
803 | 803 | ||
804 | /// <summary> | 804 | /// <summary> |
805 | /// Added as a way for the storage provider to reset the scene, | 805 | /// Added as a way for the storage provider to reset the scene, |
806 | /// most likely a better way to do this sort of thing but for now... | 806 | /// most likely a better way to do this sort of thing but for now... |
807 | /// </summary> | 807 | /// </summary> |
808 | /// <param name="scene"></param> | 808 | /// <param name="scene"></param> |
@@ -813,7 +813,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
813 | } | 813 | } |
814 | 814 | ||
815 | /// <summary> | 815 | /// <summary> |
816 | /// | 816 | /// |
817 | /// </summary> | 817 | /// </summary> |
818 | /// <param name="part"></param> | 818 | /// <param name="part"></param> |
819 | public void AddPart(SceneObjectPart part) | 819 | public void AddPart(SceneObjectPart part) |
@@ -826,7 +826,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
826 | try | 826 | try |
827 | { | 827 | { |
828 | m_parts.Add(part.UUID, part); | 828 | m_parts.Add(part.UUID, part); |
829 | 829 | ||
830 | } | 830 | } |
831 | catch (Exception e) | 831 | catch (Exception e) |
832 | { | 832 | { |
@@ -836,7 +836,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
836 | } | 836 | } |
837 | 837 | ||
838 | /// <summary> | 838 | /// <summary> |
839 | /// | 839 | /// |
840 | /// </summary> | 840 | /// </summary> |
841 | public void UpdateParentIDs() | 841 | public void UpdateParentIDs() |
842 | { | 842 | { |
@@ -847,7 +847,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
847 | if (part.UUID != m_rootPart.UUID) | 847 | if (part.UUID != m_rootPart.UUID) |
848 | { | 848 | { |
849 | part.ParentID = m_rootPart.LocalId; | 849 | part.ParentID = m_rootPart.LocalId; |
850 | 850 | ||
851 | } | 851 | } |
852 | } | 852 | } |
853 | } | 853 | } |
@@ -860,7 +860,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
860 | foreach (SceneObjectPart part in m_parts.Values) | 860 | foreach (SceneObjectPart part in m_parts.Values) |
861 | { | 861 | { |
862 | part.UUID = LLUUID.Random(); | 862 | part.UUID = LLUUID.Random(); |
863 | 863 | ||
864 | } | 864 | } |
865 | } | 865 | } |
866 | } | 866 | } |
@@ -897,7 +897,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
897 | { | 897 | { |
898 | SceneObjectPart part = GetChildPart(localId); | 898 | SceneObjectPart part = GetChildPart(localId); |
899 | OnGrabPart(part, offsetPos, remoteClient); | 899 | OnGrabPart(part, offsetPos, remoteClient); |
900 | 900 | ||
901 | } | 901 | } |
902 | } | 902 | } |
903 | 903 | ||
@@ -905,7 +905,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
905 | { | 905 | { |
906 | part.StoreUndoState(); | 906 | part.StoreUndoState(); |
907 | part.OnGrab(offsetPos, remoteClient); | 907 | part.OnGrab(offsetPos, remoteClient); |
908 | 908 | ||
909 | } | 909 | } |
910 | 910 | ||
911 | public virtual void OnGrabGroup(LLVector3 offsetPos, IClientAPI remoteClient) | 911 | public virtual void OnGrabGroup(LLVector3 offsetPos, IClientAPI remoteClient) |
@@ -1068,7 +1068,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
1068 | #region Events | 1068 | #region Events |
1069 | 1069 | ||
1070 | /// <summary> | 1070 | /// <summary> |
1071 | /// | 1071 | /// |
1072 | /// </summary> | 1072 | /// </summary> |
1073 | public void TriggerTainted() | 1073 | public void TriggerTainted() |
1074 | { | 1074 | { |
@@ -1198,7 +1198,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
1198 | 1198 | ||
1199 | dupe.RootPart.DoPhysicsPropertyUpdate(dupe.RootPart.PhysActor.IsPhysical, true); | 1199 | dupe.RootPart.DoPhysicsPropertyUpdate(dupe.RootPart.PhysActor.IsPhysical, true); |
1200 | } | 1200 | } |
1201 | // Now we've made a copy that replaces this one, we need to | 1201 | // Now we've made a copy that replaces this one, we need to |
1202 | // switch the owner to the person who did the copying | 1202 | // switch the owner to the person who did the copying |
1203 | // Second Life copies an object and duplicates the first one in it's place | 1203 | // Second Life copies an object and duplicates the first one in it's place |
1204 | // So, we have to make a copy of this one, set it in it's place then set the owner on this one | 1204 | // So, we have to make a copy of this one, set it in it's place then set the owner on this one |
@@ -1227,7 +1227,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
1227 | } | 1227 | } |
1228 | 1228 | ||
1229 | /// <summary> | 1229 | /// <summary> |
1230 | /// | 1230 | /// |
1231 | /// </summary> | 1231 | /// </summary> |
1232 | /// <param name="part"></param> | 1232 | /// <param name="part"></param> |
1233 | /// <param name="cAgentID"></param> | 1233 | /// <param name="cAgentID"></param> |
@@ -1359,7 +1359,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
1359 | } | 1359 | } |
1360 | 1360 | ||
1361 | /// <summary> | 1361 | /// <summary> |
1362 | /// | 1362 | /// |
1363 | /// </summary> | 1363 | /// </summary> |
1364 | /// <param name="part"></param> | 1364 | /// <param name="part"></param> |
1365 | /// <param name="cAgentID"></param> | 1365 | /// <param name="cAgentID"></param> |
@@ -1373,14 +1373,14 @@ namespace OpenSim.Region.Environment.Scenes | |||
1373 | { | 1373 | { |
1374 | m_parts.Add(newPart.UUID, newPart); | 1374 | m_parts.Add(newPart.UUID, newPart); |
1375 | } | 1375 | } |
1376 | 1376 | ||
1377 | SetPartAsNonRoot(newPart); | 1377 | SetPartAsNonRoot(newPart); |
1378 | 1378 | ||
1379 | } | 1379 | } |
1380 | 1380 | ||
1381 | /// <summary> | 1381 | /// <summary> |
1382 | /// Reset the LLUUIDs for all the prims that make up this group. | 1382 | /// Reset the LLUUIDs for all the prims that make up this group. |
1383 | /// | 1383 | /// |
1384 | /// This is called by methods which want to add a new group to an existing scene, in order | 1384 | /// This is called by methods which want to add a new group to an existing scene, in order |
1385 | /// to ensure that there are no clashes with groups already present. | 1385 | /// to ensure that there are no clashes with groups already present. |
1386 | /// </summary> | 1386 | /// </summary> |
@@ -1398,7 +1398,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
1398 | } | 1398 | } |
1399 | 1399 | ||
1400 | /// <summary> | 1400 | /// <summary> |
1401 | /// | 1401 | /// |
1402 | /// </summary> | 1402 | /// </summary> |
1403 | /// <param name="part"></param> | 1403 | /// <param name="part"></param> |
1404 | public void ServiceObjectPropertiesFamilyRequest(IClientAPI remoteClient, LLUUID AgentID, uint RequestFlags) | 1404 | public void ServiceObjectPropertiesFamilyRequest(IClientAPI remoteClient, LLUUID AgentID, uint RequestFlags) |
@@ -1425,7 +1425,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
1425 | /// </summary> | 1425 | /// </summary> |
1426 | public override void Update() | 1426 | public override void Update() |
1427 | { | 1427 | { |
1428 | 1428 | ||
1429 | lock (m_parts) | 1429 | lock (m_parts) |
1430 | { | 1430 | { |
1431 | //if (m_rootPart.m_IsAttachment) | 1431 | //if (m_rootPart.m_IsAttachment) |
@@ -1436,7 +1436,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
1436 | //} | 1436 | //} |
1437 | //return; | 1437 | //return; |
1438 | //} | 1438 | //} |
1439 | 1439 | ||
1440 | if (Util.GetDistanceTo(lastPhysGroupPos, AbsolutePosition) > 0.02) | 1440 | if (Util.GetDistanceTo(lastPhysGroupPos, AbsolutePosition) > 0.02) |
1441 | { | 1441 | { |
1442 | m_rootPart.UpdateFlag = 1; | 1442 | m_rootPart.UpdateFlag = 1; |
@@ -1447,10 +1447,10 @@ namespace OpenSim.Region.Environment.Scenes | |||
1447 | //if (part.UpdateFlag == 0) part.UpdateFlag = 1; | 1447 | //if (part.UpdateFlag == 0) part.UpdateFlag = 1; |
1448 | //} | 1448 | //} |
1449 | 1449 | ||
1450 | 1450 | ||
1451 | 1451 | ||
1452 | checkAtTargets(); | 1452 | checkAtTargets(); |
1453 | 1453 | ||
1454 | 1454 | ||
1455 | if ((Math.Abs(lastPhysGroupRot.W - GroupRotation.W) > 0.1) | 1455 | if ((Math.Abs(lastPhysGroupRot.W - GroupRotation.W) > 0.1) |
1456 | || (Math.Abs(lastPhysGroupRot.X - GroupRotation.X) > 0.1) | 1456 | || (Math.Abs(lastPhysGroupRot.X - GroupRotation.X) > 0.1) |
@@ -1508,7 +1508,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
1508 | } | 1508 | } |
1509 | 1509 | ||
1510 | /// <summary> | 1510 | /// <summary> |
1511 | /// | 1511 | /// |
1512 | /// </summary> | 1512 | /// </summary> |
1513 | public void ScheduleGroupForTerseUpdate() | 1513 | public void ScheduleGroupForTerseUpdate() |
1514 | { | 1514 | { |
@@ -1524,7 +1524,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
1524 | } | 1524 | } |
1525 | 1525 | ||
1526 | /// <summary> | 1526 | /// <summary> |
1527 | /// | 1527 | /// |
1528 | /// </summary> | 1528 | /// </summary> |
1529 | public void SendGroupFullUpdate() | 1529 | public void SendGroupFullUpdate() |
1530 | { | 1530 | { |
@@ -1545,7 +1545,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
1545 | } | 1545 | } |
1546 | 1546 | ||
1547 | /// <summary> | 1547 | /// <summary> |
1548 | /// | 1548 | /// |
1549 | /// </summary> | 1549 | /// </summary> |
1550 | public void SendGroupTerseUpdate() | 1550 | public void SendGroupTerseUpdate() |
1551 | { | 1551 | { |
@@ -1669,7 +1669,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
1669 | { | 1669 | { |
1670 | if (objectGroup.RootPart.UpdateFlag > 0) | 1670 | if (objectGroup.RootPart.UpdateFlag > 0) |
1671 | { | 1671 | { |
1672 | // I've never actually seen this happen, though I think it's theoretically possible | 1672 | // I've never actually seen this happen, though I think it's theoretically possible |
1673 | m_log.WarnFormat( | 1673 | m_log.WarnFormat( |
1674 | "[SCENE OBJECT GROUP]: Aborted linking {0}, {1} to {2}, {3} as it has yet to finish delinking", | 1674 | "[SCENE OBJECT GROUP]: Aborted linking {0}, {1} to {2}, {3} as it has yet to finish delinking", |
1675 | objectGroup.RootPart.Name, objectGroup.RootPart.UUID, RootPart.Name, RootPart.UUID); | 1675 | objectGroup.RootPart.Name, objectGroup.RootPart.UUID, RootPart.Name, RootPart.UUID); |
@@ -1678,7 +1678,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
1678 | } | 1678 | } |
1679 | 1679 | ||
1680 | // m_log.DebugFormat( | 1680 | // m_log.DebugFormat( |
1681 | // "[SCENE OBJECT GROUP]: Linking group with root part {0}, {1} to group with root part {2}, {3}", | 1681 | // "[SCENE OBJECT GROUP]: Linking group with root part {0}, {1} to group with root part {2}, {3}", |
1682 | // objectGroup.RootPart.Name, objectGroup.RootPart.UUID, RootPart.Name, RootPart.UUID); | 1682 | // objectGroup.RootPart.Name, objectGroup.RootPart.UUID, RootPart.Name, RootPart.UUID); |
1683 | 1683 | ||
1684 | SceneObjectPart linkPart = objectGroup.m_rootPart; | 1684 | SceneObjectPart linkPart = objectGroup.m_rootPart; |
@@ -1747,19 +1747,19 @@ namespace OpenSim.Region.Environment.Scenes | |||
1747 | } | 1747 | } |
1748 | 1748 | ||
1749 | /// <summary> | 1749 | /// <summary> |
1750 | /// Delink the given prim from this group. The delinked prim is established as | 1750 | /// Delink the given prim from this group. The delinked prim is established as |
1751 | /// an independent SceneObjectGroup. | 1751 | /// an independent SceneObjectGroup. |
1752 | /// </summary> | 1752 | /// </summary> |
1753 | /// <param name="partID"></param> | 1753 | /// <param name="partID"></param> |
1754 | public void DelinkFromGroup(uint partID) | 1754 | public void DelinkFromGroup(uint partID) |
1755 | { | 1755 | { |
1756 | SceneObjectPart linkPart = GetChildPart(partID); | 1756 | SceneObjectPart linkPart = GetChildPart(partID); |
1757 | 1757 | ||
1758 | if (null != linkPart) | 1758 | if (null != linkPart) |
1759 | { | 1759 | { |
1760 | linkPart.ClearUndoState(); | 1760 | linkPart.ClearUndoState(); |
1761 | // m_log.DebugFormat( | 1761 | // m_log.DebugFormat( |
1762 | // "[SCENE OBJECT GROUP]: Delinking part {0}, {1} from group with root part {2}, {3}", | 1762 | // "[SCENE OBJECT GROUP]: Delinking part {0}, {1} from group with root part {2}, {3}", |
1763 | // linkPart.Name, linkPart.UUID, RootPart.Name, RootPart.UUID); | 1763 | // linkPart.Name, linkPart.UUID, RootPart.Name, RootPart.UUID); |
1764 | 1764 | ||
1765 | LLQuaternion worldRot = linkPart.GetWorldRotation(); | 1765 | LLQuaternion worldRot = linkPart.GetWorldRotation(); |
@@ -1777,8 +1777,8 @@ namespace OpenSim.Region.Environment.Scenes | |||
1777 | m_scene.PhysicsScene.RemovePrim(linkPart.PhysActor); | 1777 | m_scene.PhysicsScene.RemovePrim(linkPart.PhysActor); |
1778 | } | 1778 | } |
1779 | 1779 | ||
1780 | // We need to reset the child part's position | 1780 | // We need to reset the child part's position |
1781 | // ready for life as a separate object after being a part of another object | 1781 | // ready for life as a separate object after being a part of another object |
1782 | Quaternion parentRot | 1782 | Quaternion parentRot |
1783 | = new Quaternion( | 1783 | = new Quaternion( |
1784 | m_rootPart.RotationOffset.W, | 1784 | m_rootPart.RotationOffset.W, |
@@ -1933,7 +1933,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
1933 | m_rootPart.TouchName, new byte[0], m_rootPart.SitName, m_rootPart.Name, m_rootPart.Description, | 1933 | m_rootPart.TouchName, new byte[0], m_rootPart.SitName, m_rootPart.Name, m_rootPart.Description, |
1934 | m_rootPart.OwnerMask, m_rootPart.NextOwnerMask, m_rootPart.GroupMask, m_rootPart.EveryoneMask, | 1934 | m_rootPart.OwnerMask, m_rootPart.NextOwnerMask, m_rootPart.GroupMask, m_rootPart.EveryoneMask, |
1935 | m_rootPart.BaseMask); | 1935 | m_rootPart.BaseMask); |
1936 | 1936 | ||
1937 | } | 1937 | } |
1938 | 1938 | ||
1939 | /// <summary> | 1939 | /// <summary> |
@@ -1998,13 +1998,13 @@ namespace OpenSim.Region.Environment.Scenes | |||
1998 | } | 1998 | } |
1999 | 1999 | ||
2000 | /// <summary> | 2000 | /// <summary> |
2001 | /// | 2001 | /// |
2002 | /// </summary> | 2002 | /// </summary> |
2003 | /// <param name="localID"></param> | 2003 | /// <param name="localID"></param> |
2004 | /// <param name="type"></param> | 2004 | /// <param name="type"></param> |
2005 | /// <param name="inUse"></param> | 2005 | /// <param name="inUse"></param> |
2006 | /// <param name="data"></param> | 2006 | /// <param name="data"></param> |
2007 | /// | 2007 | /// |
2008 | public void UpdatePrimFlags(uint localID, ushort type, bool inUse, byte[] data) | 2008 | public void UpdatePrimFlags(uint localID, ushort type, bool inUse, byte[] data) |
2009 | { | 2009 | { |
2010 | SceneObjectPart part = GetChildPart(localID); | 2010 | SceneObjectPart part = GetChildPart(localID); |
@@ -2046,7 +2046,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
2046 | } | 2046 | } |
2047 | 2047 | ||
2048 | /// <summary> | 2048 | /// <summary> |
2049 | /// | 2049 | /// |
2050 | /// </summary> | 2050 | /// </summary> |
2051 | /// <param name="localID"></param> | 2051 | /// <param name="localID"></param> |
2052 | /// <param name="textureEntry"></param> | 2052 | /// <param name="textureEntry"></param> |
@@ -2071,7 +2071,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
2071 | #region Shape | 2071 | #region Shape |
2072 | 2072 | ||
2073 | /// <summary> | 2073 | /// <summary> |
2074 | /// | 2074 | /// |
2075 | /// </summary> | 2075 | /// </summary> |
2076 | /// <param name="shapeBlock"></param> | 2076 | /// <param name="shapeBlock"></param> |
2077 | public void UpdateShape(ObjectShapePacket.ObjectDataBlock shapeBlock, uint localID) | 2077 | public void UpdateShape(ObjectShapePacket.ObjectDataBlock shapeBlock, uint localID) |
@@ -2091,7 +2091,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
2091 | #region Resize | 2091 | #region Resize |
2092 | 2092 | ||
2093 | /// <summary> | 2093 | /// <summary> |
2094 | /// | 2094 | /// |
2095 | /// </summary> | 2095 | /// </summary> |
2096 | /// <param name="scale"></param> | 2096 | /// <param name="scale"></param> |
2097 | /// <param name="localID"></param> | 2097 | /// <param name="localID"></param> |
@@ -2169,7 +2169,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
2169 | #region Position | 2169 | #region Position |
2170 | 2170 | ||
2171 | /// <summary> | 2171 | /// <summary> |
2172 | /// | 2172 | /// |
2173 | /// </summary> | 2173 | /// </summary> |
2174 | /// <param name="pos"></param> | 2174 | /// <param name="pos"></param> |
2175 | public void UpdateGroupPosition(LLVector3 pos) | 2175 | public void UpdateGroupPosition(LLVector3 pos) |
@@ -2189,7 +2189,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
2189 | } | 2189 | } |
2190 | 2190 | ||
2191 | /// <summary> | 2191 | /// <summary> |
2192 | /// | 2192 | /// |
2193 | /// </summary> | 2193 | /// </summary> |
2194 | /// <param name="pos"></param> | 2194 | /// <param name="pos"></param> |
2195 | /// <param name="localID"></param> | 2195 | /// <param name="localID"></param> |
@@ -2210,7 +2210,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
2210 | } | 2210 | } |
2211 | 2211 | ||
2212 | /// <summary> | 2212 | /// <summary> |
2213 | /// | 2213 | /// |
2214 | /// </summary> | 2214 | /// </summary> |
2215 | /// <param name="pos"></param> | 2215 | /// <param name="pos"></param> |
2216 | private void UpdateRootPosition(LLVector3 pos) | 2216 | private void UpdateRootPosition(LLVector3 pos) |
@@ -2255,7 +2255,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
2255 | #region Rotation | 2255 | #region Rotation |
2256 | 2256 | ||
2257 | /// <summary> | 2257 | /// <summary> |
2258 | /// | 2258 | /// |
2259 | /// </summary> | 2259 | /// </summary> |
2260 | /// <param name="rot"></param> | 2260 | /// <param name="rot"></param> |
2261 | public void UpdateGroupRotation(LLQuaternion rot) | 2261 | public void UpdateGroupRotation(LLQuaternion rot) |
@@ -2272,7 +2272,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
2272 | } | 2272 | } |
2273 | 2273 | ||
2274 | /// <summary> | 2274 | /// <summary> |
2275 | /// | 2275 | /// |
2276 | /// </summary> | 2276 | /// </summary> |
2277 | /// <param name="pos"></param> | 2277 | /// <param name="pos"></param> |
2278 | /// <param name="rot"></param> | 2278 | /// <param name="rot"></param> |
@@ -2291,7 +2291,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
2291 | } | 2291 | } |
2292 | 2292 | ||
2293 | /// <summary> | 2293 | /// <summary> |
2294 | /// | 2294 | /// |
2295 | /// </summary> | 2295 | /// </summary> |
2296 | /// <param name="rot"></param> | 2296 | /// <param name="rot"></param> |
2297 | /// <param name="localID"></param> | 2297 | /// <param name="localID"></param> |
@@ -2312,7 +2312,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
2312 | } | 2312 | } |
2313 | 2313 | ||
2314 | /// <summary> | 2314 | /// <summary> |
2315 | /// | 2315 | /// |
2316 | /// </summary> | 2316 | /// </summary> |
2317 | /// <param name="rot"></param> | 2317 | /// <param name="rot"></param> |
2318 | private void UpdateRootRotation(LLQuaternion rot) | 2318 | private void UpdateRootRotation(LLQuaternion rot) |
@@ -2463,7 +2463,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
2463 | // Reusing att.tolerance to hold the index of the target in the targets dictionary | 2463 | // Reusing att.tolerance to hold the index of the target in the targets dictionary |
2464 | // to avoid deadlocking the sim. | 2464 | // to avoid deadlocking the sim. |
2465 | m_scene.TriggerAtTargetEvent(localids[ctr], (uint)att.tolerance, att.targetPos, m_rootPart.GroupPosition); | 2465 | m_scene.TriggerAtTargetEvent(localids[ctr], (uint)att.tolerance, att.targetPos, m_rootPart.GroupPosition); |
2466 | 2466 | ||
2467 | 2467 | ||
2468 | } | 2468 | } |
2469 | } | 2469 | } |