Thanks to Alondria for:
llResetScript() is now functional. With this patch, Kan-script 0000003 should run. Noted the llListen(0,"","","") errored due to "" != UUID - patched to set to NULL_KEY which then works to listen to everything.afrisby
parent
100fb6a0b1
commit
a0a189aed2
|
@ -292,6 +292,10 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine.Compiler
|
|||
|
||||
public int llListen(int channelID, string name, string ID, string msg)
|
||||
{
|
||||
if (ID == "")
|
||||
{
|
||||
ID = LLUUID.Zero.ToString();
|
||||
}
|
||||
IWorldComm wComm = m_ScriptEngine.World.RequestModuleInterface<IWorldComm>();
|
||||
return wComm.Listen(m_localID, m_itemID, m_host.UUID, channelID, name, ID, msg);
|
||||
}
|
||||
|
|
|
@ -127,18 +127,16 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine
|
|||
{
|
||||
if (loadQueue.Count == 0 && unloadQueue.Count == 0)
|
||||
Thread.Sleep(scriptLoadUnloadThread_IdleSleepms);
|
||||
|
||||
if (loadQueue.Count > 0)
|
||||
{
|
||||
LoadStruct item = loadQueue.Dequeue();
|
||||
_StartScript(item.localID, item.itemID, item.script);
|
||||
}
|
||||
|
||||
if (unloadQueue.Count > 0)
|
||||
{
|
||||
UnloadStruct item = unloadQueue.Dequeue();
|
||||
_StopScript(item.localID, item.itemID);
|
||||
}
|
||||
if (loadQueue.Count > 0)
|
||||
{
|
||||
LoadStruct item = loadQueue.Dequeue();
|
||||
_StartScript(item.localID, item.itemID, item.script);
|
||||
}
|
||||
}
|
||||
}
|
||||
catch (ThreadAbortException tae)
|
||||
|
@ -279,13 +277,18 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine
|
|||
|
||||
try
|
||||
{
|
||||
|
||||
// Compile (We assume LSL)
|
||||
ScriptSource = LSLCompiler.CompileFromLSLText(Script);
|
||||
//Console.WriteLine("Compilation of " + FileName + " done");
|
||||
// * Insert yield into code
|
||||
ScriptSource = ProcessYield(ScriptSource);
|
||||
|
||||
if (!Script.EndsWith("dll"))
|
||||
{
|
||||
// Compile (We assume LSL)
|
||||
ScriptSource = LSLCompiler.CompileFromLSLText(Script);
|
||||
//Console.WriteLine("Compilation of " + FileName + " done");
|
||||
// * Insert yield into code
|
||||
ScriptSource = ProcessYield(ScriptSource);
|
||||
}
|
||||
else
|
||||
{
|
||||
ScriptSource = Script;
|
||||
}
|
||||
|
||||
#if DEBUG
|
||||
long before;
|
||||
|
|
Loading…
Reference in New Issue