diff options
author | Melanie Thielker | 2008-07-19 04:05:34 +0000 |
---|---|---|
committer | Melanie Thielker | 2008-07-19 04:05:34 +0000 |
commit | bcf74416a1677584c069e4e0b9acf9015d8c5b6c (patch) | |
tree | 8c0b967fafbc21e93974760c0b32a0dd2119b930 /OpenSim/Region/ScriptEngine/Shared/Api | |
parent | Introduce a separate connection string for estates, which defaults to the one gi (diff) | |
download | opensim-SC-bcf74416a1677584c069e4e0b9acf9015d8c5b6c.zip opensim-SC-bcf74416a1677584c069e4e0b9acf9015d8c5b6c.tar.gz opensim-SC-bcf74416a1677584c069e4e0b9acf9015d8c5b6c.tar.bz2 opensim-SC-bcf74416a1677584c069e4e0b9acf9015d8c5b6c.tar.xz |
Fix prim link numbers (Mantis #1781)
Implements additional unlink modes (unlink root prim from link set, some
multi-set operations). Linking (single and mutiple) fully implemented.
Consistent numbering of links while in world. Link/delink with predictable
link numbering. Correct link numbers in LSL.
Not all multi-set ops implemented. Link numbers still change when taken and
re-rezzed.
Diffstat (limited to 'OpenSim/Region/ScriptEngine/Shared/Api')
-rw-r--r-- | OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs index decd2d0..c3255b1 100644 --- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs +++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs | |||
@@ -2487,7 +2487,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
2487 | 2487 | ||
2488 | if (m_host.ParentGroup.Children.Count > 1) | 2488 | if (m_host.ParentGroup.Children.Count > 1) |
2489 | { | 2489 | { |
2490 | return m_host.LinkNum + 1; | 2490 | return m_host.LinkNum; |
2491 | } | 2491 | } |
2492 | else | 2492 | else |
2493 | { | 2493 | { |
@@ -2923,7 +2923,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
2923 | 2923 | ||
2924 | object[] resobj = new object[] | 2924 | object[] resobj = new object[] |
2925 | { | 2925 | { |
2926 | new LSL_Types.LSLInteger(m_host.LinkNum + 1), new LSL_Types.LSLInteger(num), new LSL_Types.LSLString(msg), new LSL_Types.LSLString(id) | 2926 | new LSL_Types.LSLInteger(m_host.LinkNum), new LSL_Types.LSLInteger(num), new LSL_Types.LSLString(msg), new LSL_Types.LSLString(id) |
2927 | }; | 2927 | }; |
2928 | 2928 | ||
2929 | m_ScriptEngine.PostScriptEvent(partItemID, | 2929 | m_ScriptEngine.PostScriptEvent(partItemID, |
@@ -2947,7 +2947,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
2947 | partItemID = item.ItemID; | 2947 | partItemID = item.ItemID; |
2948 | Object[] resobj = new object[] | 2948 | Object[] resobj = new object[] |
2949 | { | 2949 | { |
2950 | new LSL_Types.LSLInteger(m_host.LinkNum + 1), new LSL_Types.LSLInteger(num), new LSL_Types.LSLString(msg), new LSL_Types.LSLString(id) | 2950 | new LSL_Types.LSLInteger(m_host.LinkNum), new LSL_Types.LSLInteger(num), new LSL_Types.LSLString(msg), new LSL_Types.LSLString(id) |
2951 | }; | 2951 | }; |
2952 | 2952 | ||
2953 | m_ScriptEngine.PostScriptEvent(partItemID, | 2953 | m_ScriptEngine.PostScriptEvent(partItemID, |
@@ -2975,7 +2975,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
2975 | partItemID = item.ItemID; | 2975 | partItemID = item.ItemID; |
2976 | Object[] resobj = new object[] | 2976 | Object[] resobj = new object[] |
2977 | { | 2977 | { |
2978 | new LSL_Types.LSLInteger(m_host.LinkNum + 1), new LSL_Types.LSLInteger(num), new LSL_Types.LSLString(msg), new LSL_Types.LSLString(id) | 2978 | new LSL_Types.LSLInteger(m_host.LinkNum), new LSL_Types.LSLInteger(num), new LSL_Types.LSLString(msg), new LSL_Types.LSLString(id) |
2979 | }; | 2979 | }; |
2980 | 2980 | ||
2981 | m_ScriptEngine.PostScriptEvent(partItemID, | 2981 | m_ScriptEngine.PostScriptEvent(partItemID, |
@@ -3005,7 +3005,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
3005 | partItemID = item.ItemID; | 3005 | partItemID = item.ItemID; |
3006 | Object[] resobj = new object[] | 3006 | Object[] resobj = new object[] |
3007 | { | 3007 | { |
3008 | new LSL_Types.LSLInteger(m_host.LinkNum + 1), new LSL_Types.LSLInteger(num), new LSL_Types.LSLString(msg), new LSL_Types.LSLString(id) | 3008 | new LSL_Types.LSLInteger(m_host.LinkNum), new LSL_Types.LSLInteger(num), new LSL_Types.LSLString(msg), new LSL_Types.LSLString(id) |
3009 | }; | 3009 | }; |
3010 | 3010 | ||
3011 | m_ScriptEngine.PostScriptEvent(partItemID, | 3011 | m_ScriptEngine.PostScriptEvent(partItemID, |
@@ -3029,7 +3029,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
3029 | 3029 | ||
3030 | object[] resobj = new object[] | 3030 | object[] resobj = new object[] |
3031 | { | 3031 | { |
3032 | new LSL_Types.LSLInteger(m_host.LinkNum + 1), new LSL_Types.LSLInteger(num), new LSL_Types.LSLString(msg), new LSL_Types.LSLString(id) | 3032 | new LSL_Types.LSLInteger(m_host.LinkNum), new LSL_Types.LSLInteger(num), new LSL_Types.LSLString(msg), new LSL_Types.LSLString(id) |
3033 | }; | 3033 | }; |
3034 | 3034 | ||
3035 | m_ScriptEngine.PostScriptEvent(partItemID, | 3035 | m_ScriptEngine.PostScriptEvent(partItemID, |
@@ -3045,7 +3045,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
3045 | foreach (SceneObjectPart partInst in m_host.ParentGroup.GetParts()) | 3045 | foreach (SceneObjectPart partInst in m_host.ParentGroup.GetParts()) |
3046 | { | 3046 | { |
3047 | 3047 | ||
3048 | if ((partInst.LinkNum + 1) == linknum) | 3048 | if ((partInst.LinkNum) == linknum) |
3049 | { | 3049 | { |
3050 | 3050 | ||
3051 | foreach (TaskInventoryItem item in partInst.TaskInventory.Values) | 3051 | foreach (TaskInventoryItem item in partInst.TaskInventory.Values) |
@@ -3056,7 +3056,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
3056 | partItemID = item.ItemID; | 3056 | partItemID = item.ItemID; |
3057 | Object[] resObjDef = new object[] | 3057 | Object[] resObjDef = new object[] |
3058 | { | 3058 | { |
3059 | new LSL_Types.LSLInteger(m_host.LinkNum + 1), new LSL_Types.LSLInteger(num), new LSL_Types.LSLString(msg), new LSL_Types.LSLString(id) | 3059 | new LSL_Types.LSLInteger(m_host.LinkNum), new LSL_Types.LSLInteger(num), new LSL_Types.LSLString(msg), new LSL_Types.LSLString(id) |
3060 | }; | 3060 | }; |
3061 | 3061 | ||
3062 | m_ScriptEngine.PostScriptEvent(partItemID, | 3062 | m_ScriptEngine.PostScriptEvent(partItemID, |
@@ -5046,7 +5046,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
5046 | { | 5046 | { |
5047 | foreach (SceneObjectPart partInst in m_host.ParentGroup.GetParts()) | 5047 | foreach (SceneObjectPart partInst in m_host.ParentGroup.GetParts()) |
5048 | { | 5048 | { |
5049 | if ((partInst.LinkNum + 1) == linknumber) | 5049 | if ((partInst.LinkNum) == linknumber) |
5050 | { | 5050 | { |
5051 | part = partInst; | 5051 | part = partInst; |
5052 | break; | 5052 | break; |