Пример #1
0
    static int AsyncLoadBundleByName(IntPtr L)
    {
        try
        {
            ToLua.CheckArgsCount(L, 4);
            AssetLoader obj = (AssetLoader)ToLua.CheckObject(L, 1, typeof(AssetLoader));
            string arg0 = ToLua.CheckString(L, 2);
            AssetLoader.EAssetType arg1 = (AssetLoader.EAssetType)ToLua.CheckObject(L, 3, typeof(AssetLoader.EAssetType));
            System.Action<UnityEngine.AssetBundle> arg2 = null;
            LuaTypes funcType4 = LuaDLL.lua_type(L, 4);

            if (funcType4 != LuaTypes.LUA_TFUNCTION)
            {
                 arg2 = (System.Action<UnityEngine.AssetBundle>)ToLua.CheckObject(L, 4, typeof(System.Action<UnityEngine.AssetBundle>));
            }
            else
            {
                LuaFunction func = ToLua.ToLuaFunction(L, 4);
                arg2 = DelegateFactory.CreateDelegate(typeof(System.Action<UnityEngine.AssetBundle>), func) as System.Action<UnityEngine.AssetBundle>;
            }

            obj.AsyncLoadBundleByName(arg0, arg1, arg2);
            return 0;
        }
        catch(Exception e)
        {
            return LuaDLL.toluaL_exception(L, e);
        }
    }