aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/ScriptEngine
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region/ScriptEngine')
-rw-r--r--OpenSim/Region/ScriptEngine/Common/LSL_BuiltIn_Commands.cs25
-rw-r--r--OpenSim/Region/ScriptEngine/Common/ScriptEngineBase/EventManager.cs5
2 files changed, 23 insertions, 7 deletions
diff --git a/OpenSim/Region/ScriptEngine/Common/LSL_BuiltIn_Commands.cs b/OpenSim/Region/ScriptEngine/Common/LSL_BuiltIn_Commands.cs
index 1968f8e..03851b6 100644
--- a/OpenSim/Region/ScriptEngine/Common/LSL_BuiltIn_Commands.cs
+++ b/OpenSim/Region/ScriptEngine/Common/LSL_BuiltIn_Commands.cs
@@ -454,6 +454,19 @@ namespace OpenSim.Region.ScriptEngine.Common
454 return SensedUUID; 454 return SensedUUID;
455 } 455 }
456 } 456 }
457 else
458 {
459 ScriptManager sm;
460 IScript script = null;
461
462 if ((sm = m_ScriptEngine.m_ScriptManager) != null)
463 if (sm.Scripts.ContainsKey(m_localID))
464 if ((script = sm.GetScript(m_localID, m_itemID)) != null)
465 if (script.llDetectParams._key[0] != null)
466 return new LLUUID(
467 script.llDetectParams._key[0]
468 );
469 }
457 return LLUUID.Zero; 470 return LLUUID.Zero;
458 } 471 }
459 472
@@ -1974,7 +1987,7 @@ namespace OpenSim.Region.ScriptEngine.Common
1974 1987
1975 object[] resobj = new object[] 1988 object[] resobj = new object[]
1976 { 1989 {
1977 m_host.LinkNum, num, msg, id 1990 m_host.LinkNum + 1, num, msg, id
1978 }; 1991 };
1979 1992
1980 m_ScriptEngine.m_EventQueueManager.AddToScriptQueue( 1993 m_ScriptEngine.m_EventQueueManager.AddToScriptQueue(
@@ -2001,7 +2014,7 @@ namespace OpenSim.Region.ScriptEngine.Common
2001 partItemID = item.ItemID; 2014 partItemID = item.ItemID;
2002 Object[] resobj = new object[] 2015 Object[] resobj = new object[]
2003 { 2016 {
2004 m_host.LinkNum, num, msg, id 2017 m_host.LinkNum + 1, num, msg, id
2005 }; 2018 };
2006 2019
2007 m_ScriptEngine.m_EventQueueManager.AddToScriptQueue( 2020 m_ScriptEngine.m_EventQueueManager.AddToScriptQueue(
@@ -2029,7 +2042,7 @@ namespace OpenSim.Region.ScriptEngine.Common
2029 partItemID = item.ItemID; 2042 partItemID = item.ItemID;
2030 Object[] resobj = new object[] 2043 Object[] resobj = new object[]
2031 { 2044 {
2032 m_host.LinkNum, num, msg, id 2045 m_host.LinkNum + 1, num, msg, id
2033 }; 2046 };
2034 2047
2035 m_ScriptEngine.m_EventQueueManager.AddToScriptQueue( 2048 m_ScriptEngine.m_EventQueueManager.AddToScriptQueue(
@@ -2059,7 +2072,7 @@ namespace OpenSim.Region.ScriptEngine.Common
2059 partItemID = item.ItemID; 2072 partItemID = item.ItemID;
2060 Object[] resobj = new object[] 2073 Object[] resobj = new object[]
2061 { 2074 {
2062 m_host.LinkNum, num, msg, id 2075 m_host.LinkNum + 1, num, msg, id
2063 }; 2076 };
2064 2077
2065 m_ScriptEngine.m_EventQueueManager.AddToScriptQueue( 2078 m_ScriptEngine.m_EventQueueManager.AddToScriptQueue(
@@ -2077,7 +2090,7 @@ namespace OpenSim.Region.ScriptEngine.Common
2077 2090
2078 Object[] respObjThis = new object[] 2091 Object[] respObjThis = new object[]
2079 { 2092 {
2080 m_host.LinkNum, num, msg, id 2093 m_host.LinkNum + 1, num, msg, id
2081 }; 2094 };
2082 2095
2083 m_ScriptEngine.m_EventQueueManager.AddToScriptQueue( 2096 m_ScriptEngine.m_EventQueueManager.AddToScriptQueue(
@@ -2102,7 +2115,7 @@ namespace OpenSim.Region.ScriptEngine.Common
2102 partItemID = item.ItemID; 2115 partItemID = item.ItemID;
2103 Object[] resObjDef = new object[] 2116 Object[] resObjDef = new object[]
2104 { 2117 {
2105 m_host.LinkNum, num, msg, id 2118 m_host.LinkNum + 1, num, msg, id
2106 }; 2119 };
2107 2120
2108 m_ScriptEngine.m_EventQueueManager.AddToScriptQueue( 2121 m_ScriptEngine.m_EventQueueManager.AddToScriptQueue(
diff --git a/OpenSim/Region/ScriptEngine/Common/ScriptEngineBase/EventManager.cs b/OpenSim/Region/ScriptEngine/Common/ScriptEngineBase/EventManager.cs
index 763cc76..2f2b384 100644
--- a/OpenSim/Region/ScriptEngine/Common/ScriptEngineBase/EventManager.cs
+++ b/OpenSim/Region/ScriptEngine/Common/ScriptEngineBase/EventManager.cs
@@ -90,7 +90,10 @@ namespace OpenSim.Region.ScriptEngine.Common.ScriptEngineBase
90 public void touch_start(uint localID, LLVector3 offsetPos, IClientAPI remoteClient) 90 public void touch_start(uint localID, LLVector3 offsetPos, IClientAPI remoteClient)
91 { 91 {
92 // Add to queue for all scripts in ObjectID object 92 // Add to queue for all scripts in ObjectID object
93 myScriptEngine.m_EventQueueManager.AddToObjectQueue(localID, "touch_start", EventQueueManager.llDetectNull, new object[] { (int)1 }); 93 EventQueueManager.Queue_llDetectParams_Struct detstruct = new EventQueueManager.Queue_llDetectParams_Struct();
94 detstruct._key = new LSL_Types.key[1];
95 detstruct._key[0] = new LSL_Types.key(remoteClient.AgentId.ToString());
96 myScriptEngine.m_EventQueueManager.AddToObjectQueue(localID, "touch_start", detstruct, new object[] { (int)1 });
94 } 97 }
95 98
96 public void OnRezScript(uint localID, LLUUID itemID, string script) 99 public void OnRezScript(uint localID, LLUUID itemID, string script)