static int CallLuaFunc(IntPtr L)
    {
        try
        {
            int count = LuaDLL.lua_gettop(L);

            if (count == 2 && TypeChecker.CheckTypes(L, 1, typeof(Lit.Unity.LitLua), typeof(string)))
            {
                Lit.Unity.LitLua obj  = (Lit.Unity.LitLua)ToLua.ToObject(L, 1);
                string           arg0 = ToLua.ToString(L, 2);
                obj.CallLuaFunc(arg0);
                return(0);
            }
            else if (count == 3 && TypeChecker.CheckTypes(L, 1, typeof(Lit.Unity.LitLua), typeof(string), typeof(object)))
            {
                Lit.Unity.LitLua obj  = (Lit.Unity.LitLua)ToLua.ToObject(L, 1);
                string           arg0 = ToLua.ToString(L, 2);
                object           arg1 = ToLua.ToVarObject(L, 3);
                obj.CallLuaFunc(arg0, arg1);
                return(0);
            }
            else
            {
                return(LuaDLL.luaL_throw(L, "invalid arguments to method: Lit.Unity.LitLua.CallLuaFunc"));
            }
        }
        catch (Exception e)
        {
            return(LuaDLL.toluaL_exception(L, e));
        }
    }
Exemplo n.º 2
0
 public void DoHandler()
 {
     target.CallLuaFunc(func_name);
 }