public static int Print(IntPtr L) { int nargs = LuaAPI.GetTop(L); string s = "LUA: "; for (int i = 1; i <= nargs; i++) { if (LuaAPI.IsString(L, i)) { s += ToString(L, i); if (i != nargs) { s += "\t"; } } } Debug.Log(s); return(0); }
public void RegisterFuncByMethodInfo(MethodInfo m, LuaAPI.lua_CFunction cfunc) { if (m == null) { return; // FIX add warnning } else { methods_.Add(m); paramters_.Add(m.GetParameters()); int a = LuaInstance.MergeInt(register_funtion_, classIndex); lua_.PushInteger(a); LuaAPI.lua_pushcclosure(lua_.GetLuaPtr(), cfunc, 1); lua_.SetField(1, m.Name); register_funtion_++; } }
public static int BroadcastMessage(System.IntPtr L) { int nargs = LuaAPI.GetTop(L); if (nargs == 4 && LuaAPI.IsObject(L, 1) && LuaAPI.IsString(L, 2) && LuaAPI.IsObject(L, 3) && LuaAPI.IsNumber(L, 4)) { UnityEngine.Component arg0 = (UnityEngine.Component)LuaCallback.ToObject(L, 1); System.String arg1 = (System.String)LuaCallback.ToString(L, 2); System.Object arg2 = (System.Object)LuaCallback.ToObject(L, 3); UnityEngine.SendMessageOptions arg3 = (UnityEngine.SendMessageOptions)LuaCallback.ToNumber(L, 4); arg0.BroadcastMessage(arg1, arg2, arg3); return(0); } if (nargs == 3 && LuaAPI.IsObject(L, 1) && LuaAPI.IsString(L, 2) && LuaAPI.IsObject(L, 3)) { UnityEngine.Component arg0 = (UnityEngine.Component)LuaCallback.ToObject(L, 1); System.String arg1 = (System.String)LuaCallback.ToString(L, 2); System.Object arg2 = (System.Object)LuaCallback.ToObject(L, 3); arg0.BroadcastMessage(arg1, arg2); return(0); } if (nargs == 2 && LuaAPI.IsObject(L, 1) && LuaAPI.IsString(L, 2)) { UnityEngine.Component arg0 = (UnityEngine.Component)LuaCallback.ToObject(L, 1); System.String arg1 = (System.String)LuaCallback.ToString(L, 2); arg0.BroadcastMessage(arg1); return(0); } if (nargs == 3 && LuaAPI.IsObject(L, 1) && LuaAPI.IsString(L, 2) && LuaAPI.IsNumber(L, 3)) { UnityEngine.Component arg0 = (UnityEngine.Component)LuaCallback.ToObject(L, 1); System.String arg1 = (System.String)LuaCallback.ToString(L, 2); UnityEngine.SendMessageOptions arg2 = (UnityEngine.SendMessageOptions)LuaCallback.ToNumber(L, 3); arg0.BroadcastMessage(arg1, arg2); return(0); } return(0); }
public void Init() { _luaState = LuaAPI.NewState(); _luaState.L_OpenLibs(); _luaState.L_RequireF("LuaLib", LuaLib.Init, false); LuaLib.InitGlobal(_luaState); LuaLib.RegisterLightUserDataLuaInterface(); _luaState.Pop(_luaState.GetTop()); // 添加错误log函数 _luaState.PushCSharpFunction(Traceback); _traceBackIndex = _luaState.GetTop(); // 加载Constants.lua var status = _luaState.L_DoFile("Constants.lua"); if (status != ThreadStatus.LUA_OK) { throw new Exception(_luaState.ToString(-1)); } InitGlobalFields(); }
public static int IsInvoking(System.IntPtr L) { int nargs = LuaAPI.GetTop(L); if (nargs == 1 && LuaAPI.IsObject(L, 1)) { UnityEngine.MonoBehaviour arg0 = (UnityEngine.MonoBehaviour)LuaCallback.ToObject(L, 1); System.Boolean res = arg0.IsInvoking(); LuaCallback.PushBool(L, res); return(1); } if (nargs == 2 && LuaAPI.IsObject(L, 1) && LuaAPI.IsString(L, 2)) { UnityEngine.MonoBehaviour arg0 = (UnityEngine.MonoBehaviour)LuaCallback.ToObject(L, 1); System.String arg1 = (System.String)LuaCallback.ToString(L, 2); System.Boolean res = arg0.IsInvoking(arg1); LuaCallback.PushBool(L, res); return(1); } return(0); }
public static int CancelInvoke(System.IntPtr L) { int nargs = LuaAPI.GetTop(L); if (nargs == 1 && LuaAPI.IsObject(L, 1)) { UnityEngine.MonoBehaviour arg0 = (UnityEngine.MonoBehaviour)LuaCallback.ToObject(L, 1); arg0.CancelInvoke(); return(0); } if (nargs == 2 && LuaAPI.IsObject(L, 1) && LuaAPI.IsString(L, 2)) { UnityEngine.MonoBehaviour arg0 = (UnityEngine.MonoBehaviour)LuaCallback.ToObject(L, 1); System.String arg1 = (System.String)LuaCallback.ToString(L, 2); arg0.CancelInvoke(arg1); return(0); } return(0); }
public static int DestroyImmediate(System.IntPtr L) { int nargs = LuaAPI.GetTop(L); if (nargs == 2 && LuaAPI.IsObject(L, 1) && LuaAPI.IsBool(L, 2)) { UnityEngine.Object arg0 = (UnityEngine.Object)LuaCallback.ToObject(L, 1); System.Boolean arg1 = (System.Boolean)LuaCallback.ToBool(L, 2); UnityEngine.Object.DestroyImmediate(arg0, arg1); return(0); } if (nargs == 1 && LuaAPI.IsObject(L, 1)) { UnityEngine.Object arg0 = (UnityEngine.Object)LuaCallback.ToObject(L, 1); UnityEngine.Object.DestroyImmediate(arg0); return(0); } return(0); }
public static int Destroy(System.IntPtr L) { int nargs = LuaAPI.GetTop(L); if (nargs == 2 && LuaAPI.IsObject(L, 1) && LuaAPI.IsNumber(L, 2)) { UnityEngine.Object arg0 = (UnityEngine.Object)LuaCallback.ToObject(L, 1); System.Single arg1 = (System.Single)LuaCallback.ToNumber(L, 2); UnityEngine.Object.Destroy(arg0, arg1); return(0); } if (nargs == 1 && LuaAPI.IsObject(L, 1)) { UnityEngine.Object arg0 = (UnityEngine.Object)LuaCallback.ToObject(L, 1); UnityEngine.Object.Destroy(arg0); return(0); } return(0); }
private bool Load() { string LuaFile = "config.lua"; Lua = LuaAPI.NewState(); Lua.L_OpenLibs(); ThreadStatus status = Lua.L_DoFile(LuaFile); if (status != ThreadStatus.LUA_OK) { Debug.LogError("Load Lua File Error!"); return(false); } if (!Lua.IsTable(-1)) { Debug.LogError("Load Lua File Error!"); return(false); } this.CacheToGlobalConfig(); return(true); }
public static int LookAt(System.IntPtr L) { int nargs = LuaAPI.GetTop(L); if (nargs == 3 && LuaAPI.IsObject(L, 1) && LuaAPI.IsObject(L, 2) && LuaAPI.IsVector3(L, 3)) { UnityEngine.Transform arg0 = (UnityEngine.Transform)LuaCallback.ToObject(L, 1); UnityEngine.Transform arg1 = (UnityEngine.Transform)LuaCallback.ToObject(L, 2); UnityEngine.Vector3 arg2 = (UnityEngine.Vector3)LuaCallback.ToVector3(L, 3); arg0.LookAt(arg1, arg2); return(0); } if (nargs == 2 && LuaAPI.IsObject(L, 1) && LuaAPI.IsObject(L, 2)) { UnityEngine.Transform arg0 = (UnityEngine.Transform)LuaCallback.ToObject(L, 1); UnityEngine.Transform arg1 = (UnityEngine.Transform)LuaCallback.ToObject(L, 2); arg0.LookAt(arg1); return(0); } if (nargs == 3 && LuaAPI.IsObject(L, 1) && LuaAPI.IsVector3(L, 2) && LuaAPI.IsVector3(L, 3)) { UnityEngine.Transform arg0 = (UnityEngine.Transform)LuaCallback.ToObject(L, 1); UnityEngine.Vector3 arg1 = (UnityEngine.Vector3)LuaCallback.ToVector3(L, 2); UnityEngine.Vector3 arg2 = (UnityEngine.Vector3)LuaCallback.ToVector3(L, 3); arg0.LookAt(arg1, arg2); return(0); } if (nargs == 2 && LuaAPI.IsObject(L, 1) && LuaAPI.IsVector3(L, 2)) { UnityEngine.Transform arg0 = (UnityEngine.Transform)LuaCallback.ToObject(L, 1); UnityEngine.Vector3 arg1 = (UnityEngine.Vector3)LuaCallback.ToVector3(L, 2); arg0.LookAt(arg1); return(0); } return(0); }
public void Action(float a) { #if THREAD_SAFE || HOTFIX_ENABLE lock (luaEnv.luaEnvLock) { #endif var L = luaEnv.L; var translator = luaEnv.translator; int oldTop = LuaAPI.lua_gettop(L); int errFunc = LuaAPI.load_error_func(L, luaEnv.errorFuncRef); LuaAPI.lua_getref(L, luaReference); LuaAPI.lua_pushnumber(L, a); int error = LuaAPI.lua_pcall(L, 1, 0, errFunc); if (error != 0) { luaEnv.ThrowExceptionFromError(oldTop); } LuaAPI.lua_settop(L, oldTop); #if THREAD_SAFE || HOTFIX_ENABLE } #endif }
public static int GetComponent(System.IntPtr L) { int nargs = LuaAPI.GetTop(L); if (nargs == 2 && LuaAPI.IsObject(L, 1) && LuaAPI.IsNumber(L, 2)) { UnityEngine.Component arg0 = (UnityEngine.Component)LuaCallback.ToObject(L, 1); System.Type arg1 = (System.Type)LuaCallback.ToType(L, 2); UnityEngine.Component res = arg0.GetComponent(arg1); LuaCallback.PushObject(L, res); return(1); } if (nargs == 2 && LuaAPI.IsObject(L, 1) && LuaAPI.IsString(L, 2)) { UnityEngine.Component arg0 = (UnityEngine.Component)LuaCallback.ToObject(L, 1); System.String arg1 = (System.String)LuaCallback.ToString(L, 2); UnityEngine.Component res = arg0.GetComponent(arg1); LuaCallback.PushObject(L, res); return(1); } return(0); }
public static int SetParent(System.IntPtr L) { int nargs = LuaAPI.GetTop(L); if (nargs == 2 && LuaAPI.IsObject(L, 1) && LuaAPI.IsObject(L, 2)) { UnityEngine.Transform arg0 = (UnityEngine.Transform)LuaCallback.ToObject(L, 1); UnityEngine.Transform arg1 = (UnityEngine.Transform)LuaCallback.ToObject(L, 2); arg0.SetParent(arg1); return(0); } if (nargs == 3 && LuaAPI.IsObject(L, 1) && LuaAPI.IsObject(L, 2) && LuaAPI.IsBool(L, 3)) { UnityEngine.Transform arg0 = (UnityEngine.Transform)LuaCallback.ToObject(L, 1); UnityEngine.Transform arg1 = (UnityEngine.Transform)LuaCallback.ToObject(L, 2); System.Boolean arg2 = (System.Boolean)LuaCallback.ToBool(L, 3); arg0.SetParent(arg1, arg2); return(0); } return(0); }
public static int GetComponentsInChildren(System.IntPtr L) { int nargs = LuaAPI.GetTop(L); if (nargs == 3 && LuaAPI.IsObject(L, 1) && LuaAPI.IsNumber(L, 2) && LuaAPI.IsBool(L, 3)) { UnityEngine.Component arg0 = (UnityEngine.Component)LuaCallback.ToObject(L, 1); System.Type arg1 = (System.Type)LuaCallback.ToType(L, 2); System.Boolean arg2 = (System.Boolean)LuaCallback.ToBool(L, 3); UnityEngine.Component[] res = arg0.GetComponentsInChildren(arg1, arg2); LuaCallback.PushArray(L, res); return(1); } if (nargs == 2 && LuaAPI.IsObject(L, 1) && LuaAPI.IsNumber(L, 2)) { UnityEngine.Component arg0 = (UnityEngine.Component)LuaCallback.ToObject(L, 1); System.Type arg1 = (System.Type)LuaCallback.ToType(L, 2); UnityEngine.Component[] res = arg0.GetComponentsInChildren(arg1); LuaCallback.PushArray(L, res); return(1); } return(0); }
public static int GetComponents(System.IntPtr L) { int nargs = LuaAPI.GetTop(L); if (nargs == 2 && LuaAPI.IsObject(L, 1) && LuaAPI.IsNumber(L, 2)) { UnityEngine.Component arg0 = (UnityEngine.Component)LuaCallback.ToObject(L, 1); System.Type arg1 = (System.Type)LuaCallback.ToType(L, 2); UnityEngine.Component[] res = arg0.GetComponents(arg1); LuaCallback.PushArray(L, res); return(1); } if (nargs == 3 && LuaAPI.IsObject(L, 1) && LuaAPI.IsNumber(L, 2) && LuaAPI.IsObject(L, 3)) { UnityEngine.Component arg0 = (UnityEngine.Component)LuaCallback.ToObject(L, 1); System.Type arg1 = (System.Type)LuaCallback.ToType(L, 2); System.Collections.Generic.List <UnityEngine.Component> arg2 = (System.Collections.Generic.List <UnityEngine.Component>)LuaCallback.ToObject(L, 3); arg0.GetComponents(arg1, arg2); return(0); } return(0); }
private static int Print(RealStatePtr L) { try { int n = LuaAPI.lua_gettop(L); string s = String.Empty; if (0 != LuaAPI.xlua_getglobal(L, "tostring")) { return(LuaAPI.luaL_error(L, "can not get tostring in print:")); } for (int i = 1; i <= n; i++) { LuaAPI.lua_pushvalue(L, -1); /* function to be called */ LuaAPI.lua_pushvalue(L, i); /* value to print */ if (0 != LuaAPI.lua_pcall(L, 1, 1, 0)) { return(LuaAPI.lua_error(L)); } s += LuaAPI.lua_tostring(L, -1); if (i != n) { s += "\t"; } LuaAPI.lua_pop(L, 1); /* pop result */ } onNewOutput.Invoke(s); return(0); } catch (System.Exception e) { return(LuaAPI.luaL_error(L, "c# exception in print:" + e)); } }
public static int InverseTransformPoint(System.IntPtr L) { int nargs = LuaAPI.GetTop(L); if (nargs == 2 && LuaAPI.IsObject(L, 1) && LuaAPI.IsVector3(L, 2)) { UnityEngine.Transform arg0 = (UnityEngine.Transform)LuaCallback.ToObject(L, 1); UnityEngine.Vector3 arg1 = (UnityEngine.Vector3)LuaCallback.ToVector3(L, 2); UnityEngine.Vector3 res = arg0.InverseTransformPoint(arg1); LuaCallback.PushVector(L, res); return(1); } if (nargs == 4 && LuaAPI.IsObject(L, 1) && LuaAPI.IsNumber(L, 2) && LuaAPI.IsNumber(L, 3) && LuaAPI.IsNumber(L, 4)) { UnityEngine.Transform arg0 = (UnityEngine.Transform)LuaCallback.ToObject(L, 1); System.Single arg1 = (System.Single)LuaCallback.ToNumber(L, 2); System.Single arg2 = (System.Single)LuaCallback.ToNumber(L, 3); System.Single arg3 = (System.Single)LuaCallback.ToNumber(L, 4); UnityEngine.Vector3 res = arg0.InverseTransformPoint(arg1, arg2, arg3); LuaCallback.PushVector(L, res); return(1); } return(0); }
public static void Init() { SettingManager.Ins.PropertyChanged += OnSettingChanged; const string initScript = @"Vector3 = CS.UnityEngine.Vector3 Vector2 = CS.UnityEngine.Vector2 Color = CS.UnityEngine.Color IntVector2 = CS.Nes3D.Utils.IntVector2 IntVector3 = CS.Nes3D.Utils.IntVector3 "; FNames = new string[(int)Function.Count]; for (int i = 0; i < FNames.Length; i++) { FNames[i] = ((Function)i).ToString(); } session = new LuaEnv(); // overide default implementation of print function LuaAPI.lua_pushstdcallcfunction(session.L, Print); LuaAPI.xlua_setglobal(session.L, "print"); DoString(initScript); AssignSetting(); session.Global.Set("gamepad", Gamepads.Ins); session.Global.Set("gamepad1", Gamepads.Ins[0]); session.Global.Set("gamepad2", Gamepads.Ins[1]); session.Global.Set("Script", ScriptManager.Ins); session.Global.Set("Frame", FrameManager.Ins); session.Global.Set("clear", new Action(Clear)); }
public static bool CheckArgsCount(IntPtr L, int count) { return(LuaAPI.GetTop(L) == count); }
public static void PushVector3(IntPtr L, Vector3 v) { LuaAPI.PushVector3(L, v.x, v.y, v.z); }
public static void EndClass() { LuaAPI.EndClass(LuaEnv.L); }
public static void RegisterFunc(string funcname, LuaCFunction funccallback) { LuaAPI.RegisterFunc(LuaEnv.L, funcname, Marshal.GetFunctionPointerForDelegate(funccallback)); }
public static void BeginClass(string classname, string baseclassname) { LuaAPI.BeginClass(LuaEnv.L, classname, baseclassname); }
private LuaMgr() { m_luaState = LuaAPI.NewState(); m_luaState.L_OpenLibs(); }
// Use this for initialization void Start () { // pass boat reference to Lua API myLua = new LuaAPI(); GDLog.log("LuaConsole.cs: Lua instance created."); }
public ScriptManager(MainForm mainForm) { _luaAPI = new LuaAPI(mainForm); _scriptObjects = new Dictionary <string, NLua.Lua>(); }
public void Initialize() { Script.GlobalOptions.RethrowExceptionNested = true; if (File.Exists(Application.dataPath + "/lua/" + scriptPath)) { luaScript = new Script(); luaScript.Options.ScriptLoader = new MoonSharp.Interpreter.Loaders.FileSystemScriptLoader(); ((MoonSharp.Interpreter.Loaders.ScriptLoaderBase) luaScript.Options.ScriptLoader).ModulePaths = new string[] { Application.dataPath + "/lua/?", Application.dataPath + "/lua/?.lua" /*, * Application.dataPath + "/?", * Application.dataPath + "/?.lua"*/}; luaScript.Options.DebugPrint = Debug.Log; LuaAPI.Register(luaScript); luaScript.Globals["this"] = luaScript; luaScript.Globals["gameObject"] = gameObject; luaScript.Globals["sharedContext"] = new SharedContextProxy(sharedContext, luaScript); luaScript.Globals["Vector3"] = typeof(Vector3); luaScript.Globals["GO"] = typeof(GameObject); luaScript.Globals["destroy"] = (Action <UnityEngine.Object>)GameObject.Destroy; luaScript.Globals["Time"] = typeof(Time); luaScript.Globals["Input"] = typeof(Input); //luaScript.Globals["PhysicsAPI"] = typeof(PhysicsAPI); luaScript.Globals["Physics"] = typeof(Physics); luaScript.Globals["KeyCode"] = UserData.CreateStatic <KeyCode>(); luaScript.Globals["Random"] = typeof(UnityEngine.Random); luaScript.Globals["MoveAction"] = typeof(MoveAction); luaScript.Globals["ActionScripted"] = typeof(ActionScripted); luaScript.Globals["ActionGetAsleep"] = typeof(ActionGetAsleep); luaScript.Globals["ActionSleep"] = typeof(ActionSleep); luaScript.Globals["ActionExecuteAfterDelay"] = typeof(ActionExecuteAfterDelay); Entity entity = gameObject.GetComponent <Entity>(); if (entity != null) { luaScript.Globals["entity"] = entity; } if (simulation != null) { luaScript.Globals["simulation"] = simulation; } try { luaScript.DoFile(Application.dataPath + "/lua/" + scriptPath); } catch (ScriptRuntimeException ex) { Debug.LogError("[Initialize] Could not read script: " + ex.DecoratedMessage); } catch (SyntaxErrorException ex) { Debug.LogError("[Initialize] Could not read script: " + ex.DecoratedMessage); } } else { Debug.LogError("The specified script file <" + scriptPath + "> doesn't exist."); } }
public static int get_timeScale(IntPtr L) { Debug.Log(Time.timeScale); LuaAPI.PushNumber(L, UnityEngine.Time.timeScale); return(1); }
// Here is where we can present the console and handle input void OnGUI() { // button to toggle on/off the console if (GUI.Button(new Rect(0, 0, 110, 25), "Toggle Console")) { showConsole = !showConsole; GDLog.log("LuaConsole.cs: showConsole = " + showConsole.ToString()); } if (showConsole) { toolbarInt = GUI.Toolbar(new Rect(0, 30, 230, 25), toolbarInt, toolbarStrings); bool timeToExecute = false; // Check to see if user has pressed the "return" key if (Event.current.Equals(Event.KeyboardEvent("return"))) timeToExecute = true; float displayHeight = 0; // height of display float scrollHeight = 0; // height of scrollbar // calculate height of display and scrollbar based on // how many commands have been entered if (textHeight < 170) { displayHeight = textHeight; scrollHeight = 0; } else { displayHeight = 170; scrollHeight = textHeight; } // Create display area with (or possibly without) scrollbar scrollPosition = GUI.BeginScrollView(new Rect(5, 60, 500, displayHeight), scrollPosition, new Rect(0,0,0,scrollHeight)); GUI.TextArea(new Rect(0,0,500,textHeight), myDisplay); GUI.EndScrollView(); // Create the console for entering in commands GUI.SetNextControlName("the_console"); myConsole = GUI.TextField(new Rect(5, 60 + displayHeight, 500, 22), myConsole); // If nothing is typed in console, and console is out of focus, // display the default text if (UnityEngine.Event.current.type == EventType.Repaint) { if (GUI.GetNameOfFocusedControl() == "the_console") { if (myConsole == myConsoleDefault) myConsole = ""; } else { if (myConsole == "") myConsole = myConsoleDefault; } } // Ensures commands are only executed when "enter" is pressed // and the user has focus on the console if (timeToExecute && GUI.GetNameOfFocusedControl() != "the_console") timeToExecute = false; switch (toolbarInt) { // Single mode case 0: // detect if we are now exiting Lua Script mode if (!newScript) { myDisplay += "\n" + "**********EXITED: LUA SCRIPT NOT SAVED***********"; myMultiLineCommand = ""; textHeight += 15; scrollPosition = new Vector2(0, Mathf.Infinity); newScript = true; } if (timeToExecute) { myDisplay += "\n" + myConsole; if (!myLua.ExecuteCommand(myConsole)) { myDisplay += "\n" + "ERROR: INVALID COMMAND. REFER TO LOG FOR MORE DETAILS."; textHeight += 15; scrollPosition = new Vector2(0, Mathf.Infinity); myLua = new LuaAPI(); myConsole = ""; } else { myConsole = ""; } textHeight += 15; scrollPosition = new Vector2(0, Mathf.Infinity); } break; case 1: // detect if we are now exiting Lua Script mode if (!newScript) { myDisplay += "\n" + "**********EXITED: LUA SCRIPT NOT SAVED***********"; GDLog.log("LuaConsole.cs: Lua Script Not Saved"); myMultiLineCommand = ""; textHeight += 15; scrollPosition = new Vector2(0, Mathf.Infinity); newScript = true; } if (timeToExecute) { myDisplay += "\n" + myConsole; if (myConsole == "Execute()") { GDLog.log("LuaConsole.cs:" + myDisplay + " " + myConsole); if (!myLua.ExecuteCommand(myMultiLineCommand)) { myDisplay += "\n" + "ERROR: INVALID COMMAND. REFER TO LOG FOR MORE DETAILS."; myLua = new LuaAPI(); GDLog.log("LuaConsole.cs: New Lua instance created"); } else { myDisplay += "\n" + "Lua Command successfully executed!"; GDLog.log("LuaConsole.cs: Lua Command successfully executed."); } textHeight += 15; scrollPosition = new Vector2(0, Mathf.Infinity); myConsole = ""; myMultiLineCommand = ""; } else { if (myMultiLineCommand == "") myMultiLineCommand = myConsole; else myMultiLineCommand += "\n" + myConsole; myConsole = ""; } textHeight += 15; scrollPosition = new Vector2(0, Mathf.Infinity); } break; case 2: if (newScript) { myDisplay += "\n" + "**********BEGIN WRITING LUA SCRIPT**********"; textHeight += 15; scrollPosition = new Vector2(0, Mathf.Infinity); newScript = false; GDLog.log("LuaConsole.cs: New Lua script being created."); } if(GUI.Button(new Rect(300, 30, 150, 25), "Change Filename")) { LS.changeFileName(myMultiLineCommand); myDisplay += "\n" + "**filename Changed**"; textHeight += 15; } if (GUI.Button(new Rect(455, 30, 50, 25), "Save")) { try { LS.write(myMultiLineCommand); myDisplay += "\n" + "**********SUCCESS: LUA SCRIPT SAVED**********"; GDLog.log("LuaConsole.cs: Lua Script Saved"); } catch { myDisplay += "\n" + "**********ERROR: COULD NOT SAVE LUA SCRIPT***********"; GDLog.log("LuaConsole.cs: Lua script cannot be saved"); myLua = new LuaAPI(); } finally { toolbarInt = 0; // go back to single mode myMultiLineCommand = ""; textHeight += 15; scrollPosition = new Vector2(0, Mathf.Infinity); newScript = true; } } if (timeToExecute) { myDisplay += "\n" + myConsole; if (myMultiLineCommand == "") myMultiLineCommand = myConsole; else myMultiLineCommand += "\n" + myConsole; myConsole = ""; textHeight += 15; scrollPosition = new Vector2(0, Mathf.Infinity); } break; default: break; } } }
public LuaHolder() { mLuaState = LuaAPI.NewState(); mLuaState.L_OpenLibs(); }
public static int InvokeRepeating(System.IntPtr L) { int nargs = LuaAPI.GetTop(L); if (nargs == 4 && LuaAPI.IsObject(L, 1) && LuaAPI.IsString(L, 2) && LuaAPI.IsNumber(L, 3) && LuaAPI.IsNumber(L, 4)) { UnityEngine.MonoBehaviour arg0 = (UnityEngine.MonoBehaviour)LuaCallback.ToObject(L, 1); System.String arg1 = (System.String)LuaCallback.ToString(L, 2); System.Single arg2 = (System.Single)LuaCallback.ToNumber(L, 3); System.Single arg3 = (System.Single)LuaCallback.ToNumber(L, 4); arg0.InvokeRepeating(arg1, arg2, arg3); return(0); } return(0); }
public void Dispose() { LuaAPI.Close(L); }