diff options
author | Melanie | 2010-11-16 20:44:39 +0100 |
---|---|---|
committer | Melanie | 2010-11-16 20:44:39 +0100 |
commit | 4f15b8d4e6be1e1fe88ad32aa43595861d1005ad (patch) | |
tree | 5c6dd29543347ea43c2a46658a451b355fdbf528 /OpenSim/Region/CoreModules/Framework | |
parent | Can't detach an object from within the script thread because it will throw. (diff) | |
download | opensim-SC_OLD-4f15b8d4e6be1e1fe88ad32aa43595861d1005ad.zip opensim-SC_OLD-4f15b8d4e6be1e1fe88ad32aa43595861d1005ad.tar.gz opensim-SC_OLD-4f15b8d4e6be1e1fe88ad32aa43595861d1005ad.tar.bz2 opensim-SC_OLD-4f15b8d4e6be1e1fe88ad32aa43595861d1005ad.tar.xz |
Change the way attachments are persisted. Editing a worn attachment will now
save properly, as will the results of a resizer script working. Attachment
positions are no longer saved on each move, but instead are saved once on
logout. Attachment script states are saved as part of the attachment now
when detaching.
Diffstat (limited to 'OpenSim/Region/CoreModules/Framework')
-rw-r--r-- | OpenSim/Region/CoreModules/Framework/InventoryAccess/InventoryAccessModule.cs | 21 |
1 files changed, 13 insertions, 8 deletions
diff --git a/OpenSim/Region/CoreModules/Framework/InventoryAccess/InventoryAccessModule.cs b/OpenSim/Region/CoreModules/Framework/InventoryAccess/InventoryAccessModule.cs index 0700aa5..2e3db48 100644 --- a/OpenSim/Region/CoreModules/Framework/InventoryAccess/InventoryAccessModule.cs +++ b/OpenSim/Region/CoreModules/Framework/InventoryAccess/InventoryAccessModule.cs | |||
@@ -719,15 +719,20 @@ namespace OpenSim.Region.CoreModules.Framework.InventoryAccess | |||
719 | { | 719 | { |
720 | group.RootPart.Flags |= PrimFlags.Phantom; | 720 | group.RootPart.Flags |= PrimFlags.Phantom; |
721 | group.RootPart.IsAttachment = true; | 721 | group.RootPart.IsAttachment = true; |
722 | } | ||
723 | 722 | ||
724 | // If we're rezzing an attachment then don't ask | 723 | // If we're rezzing an attachment then don't ask |
725 | // AddNewSceneObject() to update the client since | 724 | // AddNewSceneObject() to update the client since |
726 | // we'll be doing that later on. Scheduling more than | 725 | // we'll be doing that later on. Scheduling more |
727 | // one full update during the attachment | 726 | // than one full update during the attachment |
728 | // process causes some clients to fail to display the | 727 | // process causes some clients to fail to display |
729 | // attachment properly. | 728 | // the attachment properly. |
730 | m_Scene.AddNewSceneObject(group, true, false); | 729 | // Also, don't persist attachments. |
730 | m_Scene.AddNewSceneObject(group, false, false); | ||
731 | } | ||
732 | else | ||
733 | { | ||
734 | m_Scene.AddNewSceneObject(group, true, false); | ||
735 | } | ||
731 | 736 | ||
732 | // if attachment we set it's asset id so object updates | 737 | // if attachment we set it's asset id so object updates |
733 | // can reflect that, if not, we set it's position in world. | 738 | // can reflect that, if not, we set it's position in world. |