diff options
author | Tedd Hansen | 2007-08-12 19:04:07 +0000 |
---|---|---|
committer | Tedd Hansen | 2007-08-12 19:04:07 +0000 |
commit | ed1208d04378b2ef9928ed270c99f4f99f3a30d5 (patch) | |
tree | b801ad73f59f7c055fde2f3b75022735b1a8051d /OpenSim/Region/ScriptEngine/DotNetEngine/ScriptManager.cs | |
parent | ScriptManager now uses LSL-compiler. (diff) | |
download | opensim-SC_OLD-ed1208d04378b2ef9928ed270c99f4f99f3a30d5.zip opensim-SC_OLD-ed1208d04378b2ef9928ed270c99f4f99f3a30d5.tar.gz opensim-SC_OLD-ed1208d04378b2ef9928ed270c99f4f99f3a30d5.tar.bz2 opensim-SC_OLD-ed1208d04378b2ef9928ed270c99f4f99f3a30d5.tar.xz |
ScriptEngine successfully compiles script, we are now even further than LSO was.
Also added C# script support.
Diffstat (limited to 'OpenSim/Region/ScriptEngine/DotNetEngine/ScriptManager.cs')
-rw-r--r-- | OpenSim/Region/ScriptEngine/DotNetEngine/ScriptManager.cs | 22 |
1 files changed, 15 insertions, 7 deletions
diff --git a/OpenSim/Region/ScriptEngine/DotNetEngine/ScriptManager.cs b/OpenSim/Region/ScriptEngine/DotNetEngine/ScriptManager.cs index 832807d..c34889a 100644 --- a/OpenSim/Region/ScriptEngine/DotNetEngine/ScriptManager.cs +++ b/OpenSim/Region/ScriptEngine/DotNetEngine/ScriptManager.cs | |||
@@ -114,15 +114,23 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine | |||
114 | FileName = ScriptID; | 114 | FileName = ScriptID; |
115 | 115 | ||
116 | // * Does script need compile? Send it to LSL compiler first. (TODO: Use (and clean) compiler cache) | 116 | // * Does script need compile? Send it to LSL compiler first. (TODO: Use (and clean) compiler cache) |
117 | if (FileName.ToLower().EndsWith(".lsl")) | 117 | Common.SendToDebug("ScriptManager Script extension: " + System.IO.Path.GetExtension(FileName).ToLower()); |
118 | switch (System.IO.Path.GetExtension(FileName).ToLower()) | ||
118 | { | 119 | { |
119 | Common.SendToDebug("ScriptManager Script is LSL, compiling to .Net Assembly"); | 120 | case ".txt": |
120 | // Create a new instance of the compiler (currently we don't want reuse) | 121 | case ".lsl": |
121 | OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL.Compiler LSLCompiler = new OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL.Compiler(); | 122 | case ".cs": |
122 | // Compile | 123 | Common.SendToDebug("ScriptManager Script is CS/LSL, compiling to .Net Assembly"); |
123 | FileName = LSLCompiler.Compile(FileName); | 124 | // Create a new instance of the compiler (currently we don't want reuse) |
125 | OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL.Compiler LSLCompiler = new OpenSim.Region.ScriptEngine.DotNetEngine.Compiler.LSL.Compiler(); | ||
126 | // Compile | ||
127 | FileName = LSLCompiler.Compile(FileName); | ||
128 | break; | ||
129 | default: | ||
130 | throw new Exception("Unknown script type."); | ||
124 | } | 131 | } |
125 | 132 | ||
133 | Common.SendToDebug("Compilation done"); | ||
126 | // * Insert yield into code | 134 | // * Insert yield into code |
127 | FileName = ProcessYield(FileName); | 135 | FileName = ProcessYield(FileName); |
128 | 136 | ||
@@ -197,7 +205,7 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine | |||
197 | Type t; | 205 | Type t; |
198 | //try | 206 | //try |
199 | //{ | 207 | //{ |
200 | t = a.GetType("LSL_ScriptObject", true); | 208 | t = a.GetType("SecondLife.Script", true); |
201 | //} | 209 | //} |
202 | //catch (Exception e) | 210 | //catch (Exception e) |
203 | //{ | 211 | //{ |