public static void AddToCompilationStack(InkCompiler.CompilationStackItem compilationStackItem) { if (!instance.compilationStack.Contains(compilationStackItem)) { instance.compilationStack.Add(compilationStackItem); instance.Save(true); } }
public static void AddToCompilationStack(InkCompiler.CompilationStackItem compilationStackItem) { if (!InkLibrary.Instance.compilationStack.Contains(compilationStackItem)) { InkLibrary.Instance.compilationStack.Add(compilationStackItem); SaveToFile(); } }
private static void TryCompileNextFileInStack() { if (!compiling) { return; } InkCompiler.CompilationStackItem fileToCompile = null; foreach (var x in instance.compilationStack) { if (x.state == CompilationStackItem.State.Compiling) { return; } if (x.state == CompilationStackItem.State.Queued) { fileToCompile = x; break; } } if (fileToCompile != null) { if (fileToCompile.immediate) { CompileInkThreaded(fileToCompile); } else { if (EditorApplication.isCompiling) { Debug.LogWarning("Was compiling scripts when ink compilation started! This seems to cause the thread to cancel and complete, but the work isn't done. It may cause a timeout."); } ThreadPool.QueueUserWorkItem(CompileInkThreaded, fileToCompile); } } else { } }