예제 #1
0
 public static void RunScriptToCompletion(GossipVM engine, CompiledScript compiledScript)
 {
     engine.RunScript(compiledScript);
     while (engine.HasRunningScripts())
     {
         Thread.Sleep(16);
         engine.Update(16);
     }
 }
 public ScriptExecutionContext(CompiledScript script, LocalState localState)
 {
     m_Script = script;
     m_LocalState = localState;
 }
예제 #3
0
        public Boolean RunScript(CompiledScript compiledScript)
        {
            if (compiledScript == null)
                return false;

            // Step 3 Run the script
            ScriptResult result = compiledScript.Update(this);

            // Step 4 If the script has not finished queue it
            if (result != ScriptResult.Ok &&
                result != ScriptResult.EndProcess &&
                result != ScriptResult.ChangedNode)
            {
                CurrentActiveScripts.Add(compiledScript);
            }
            return true;
        }