diff options
author | Melanie | 2009-12-06 00:02:24 +0000 |
---|---|---|
committer | Melanie | 2009-12-06 02:53:34 +0000 |
commit | e3a22ff37da47405d2ad2a656970f501e1a7673c (patch) | |
tree | d3e1e83fd11b1a2939007bf22da41f3e38c298a8 /OpenSim/Region/ScriptEngine/Shared | |
parent | Cause better packing of ObjectProperties (diff) | |
download | opensim-SC_OLD-e3a22ff37da47405d2ad2a656970f501e1a7673c.zip opensim-SC_OLD-e3a22ff37da47405d2ad2a656970f501e1a7673c.tar.gz opensim-SC_OLD-e3a22ff37da47405d2ad2a656970f501e1a7673c.tar.bz2 opensim-SC_OLD-e3a22ff37da47405d2ad2a656970f501e1a7673c.tar.xz |
Eliminate multiple updates on link/unlink
Diffstat (limited to 'OpenSim/Region/ScriptEngine/Shared')
-rw-r--r-- | OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs index d235bac..9a905f1 100644 --- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs +++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs | |||
@@ -3523,6 +3523,8 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
3523 | { | 3523 | { |
3524 | parentPrim.DelinkFromGroup(part.LocalId, true); | 3524 | parentPrim.DelinkFromGroup(part.LocalId, true); |
3525 | } | 3525 | } |
3526 | parentPrim.HasGroupChanged = true; | ||
3527 | parentPrim.ScheduleGroupForFullUpdate(); | ||
3526 | parentPrim.TriggerScriptChangedEvent(Changed.LINK); | 3528 | parentPrim.TriggerScriptChangedEvent(Changed.LINK); |
3527 | 3529 | ||
3528 | if (parts.Count > 0) | 3530 | if (parts.Count > 0) |
@@ -3534,6 +3536,8 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
3534 | part.UpdateFlag = 0; | 3536 | part.UpdateFlag = 0; |
3535 | newRoot.ParentGroup.LinkToGroup(part.ParentGroup); | 3537 | newRoot.ParentGroup.LinkToGroup(part.ParentGroup); |
3536 | } | 3538 | } |
3539 | newRoot.ParentGroup.HasGroupChanged = true; | ||
3540 | newRoot.ParentGroup.ScheduleGroupForFullUpdate(); | ||
3537 | } | 3541 | } |
3538 | } | 3542 | } |
3539 | else | 3543 | else |
@@ -3542,6 +3546,8 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
3542 | return; | 3546 | return; |
3543 | 3547 | ||
3544 | parentPrim.DelinkFromGroup(childPrim.LocalId, true); | 3548 | parentPrim.DelinkFromGroup(childPrim.LocalId, true); |
3549 | parentPrim.HasGroupChanged = true; | ||
3550 | parentPrim.ScheduleGroupForFullUpdate(); | ||
3545 | parentPrim.TriggerScriptChangedEvent(Changed.LINK); | 3551 | parentPrim.TriggerScriptChangedEvent(Changed.LINK); |
3546 | } | 3552 | } |
3547 | } | 3553 | } |
@@ -3561,6 +3567,8 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
3561 | parentPrim.DelinkFromGroup(part.LocalId, true); | 3567 | parentPrim.DelinkFromGroup(part.LocalId, true); |
3562 | parentPrim.TriggerScriptChangedEvent(Changed.LINK); | 3568 | parentPrim.TriggerScriptChangedEvent(Changed.LINK); |
3563 | } | 3569 | } |
3570 | parentPrim.HasGroupChanged = true; | ||
3571 | parentPrim.ScheduleGroupForFullUpdate(); | ||
3564 | } | 3572 | } |
3565 | 3573 | ||
3566 | public LSL_String llGetLinkKey(int linknum) | 3574 | public LSL_String llGetLinkKey(int linknum) |