IEnumerator LoadBundle(Action onBundleLoaded) { string bundlePath = Util.DataPath + "lua/"; if (!System.IO.Directory.Exists(bundlePath)) { System.IO.Directory.CreateDirectory(bundlePath); } System.IO.DirectoryInfo dirInfo = new System.IO.DirectoryInfo(bundlePath); System.IO.FileInfo[] files = dirInfo.GetFiles("*.unity3d", System.IO.SearchOption.AllDirectories); if (bundleProgress != null) { bundleProgress(0); } for (int i = 0; i < files.Length; ++i) { var fileName = files[i].FullName.Replace('\\', '/'); var dataPath = Util.DataPath.Replace('\\', '/'); string bundle = fileName.Replace(dataPath, ""); loader.AddBundle(bundle); if (bundleProgress != null) { bundleProgress((float)i / (float)files.Length); } yield return(0); } if (onBundleLoaded != null) { onBundleLoaded(); } }
/// <summary> /// 初始化LuaBundle /// </summary> void InitLuaBundle() { if (loader.beZip) { loader.AddBundle(AppConst.LuaBundleName); } }
/// <summary> /// 初始化LuaBundle /// </summary> void InitLuaBundle() { if (loader.beZip) { loader.AddBundle("Lua/Lua.unity3d"); loader.AddBundle("Lua/Lua_math.unity3d"); loader.AddBundle("Lua/Lua_system.unity3d"); loader.AddBundle("Lua/Lua_u3d.unity3d"); loader.AddBundle("Lua/Lua_Common.unity3d"); loader.AddBundle("Lua/Lua_Logic.unity3d"); loader.AddBundle("Lua/Lua_View.unity3d"); loader.AddBundle("Lua/Lua_Controller.unity3d"); } }
/// <summary> /// 初始化LuaBundle ///导入 lua 文件夹下 所有 *.unity3d文件 /// </summary> void InitLuaBundle() { string path = Util.DataPath + "lua"; if (loader.beZip && Directory.Exists(path)) { DirectoryInfo root = new DirectoryInfo(path); foreach (FileInfo f in root.GetFiles()) { if (f.Name.EndsWith(".unity3d")) { loader.AddBundle("lua/" + f.Name); } } } }
/// <summary> /// 初始化LuaBundle /// </summary> void InitLuaBundle() { if (loader.beZip) { // 获取当前平台的 StreamingAssets 路径 // 但是有个问题 安卓平台的 StreamingAssets 无法获取 // 但又由于 StreamingAssets 会解包到对应的 DataPath 位置下 所以采用 DataPath 来读取 lua 文件 资源 string path = Util.DataPath; Debug.Log("加载LuaBundle对应的路径" + path); string[] files = Directory.GetFiles(path + "/lua", "*.unity3d"); for (int i = 0; i < files.Length; i++) { loader.AddBundle(files[i].Replace(path + "/", "").Replace("\\", "/")); } } }
/// <summary> /// 初始化LuaBundle /// </summary> void InitLuaBundle() { loader.ClearZipMap(); if (loader.beZip) { string[] dirs = Directory.GetFiles(Util.DataPath + "lua", "*", SearchOption.TopDirectoryOnly); foreach (var file in dirs) { string name = file.Replace("\\", "/"); if (name.EndsWith(AppConst.ExtName) && !name.EndsWith(".meta")) { loader.AddBundle(name); } } } }
/// <summary> /// 初始化Lua代码加载路径 /// </summary> void InitLuaPath() { #if UNITY_EDITOR if (EditorUtil.DevelopMode) { string rootPath = AppConst.FrameworkRoot; lua.AddSearchPath(rootPath + "/Lua"); lua.AddSearchPath(rootPath + "/ToLua/Lua"); return; } #endif if (loader.beZip) { //在lua目录中添加新文件夹必须在这里添加对应的assetbundle,但这样每次改代码不人性化。 //1.可以优化为在打包是就生成所有lua脚本打包文件的列表(.unity3d列表),在这里依次Addbundle。 //2.遍历lua目录下所有的.unity3d文件并加载。现在选择了第二种方法。Lorry 2018-2-20 string[] names = Directory.GetFiles(Util.DataPath + "lua", "*.unity3d"); for (int i = 0; i < names.Length; i++) { names[i] = names[i].Replace('\\', '/').Replace(Util.DataPath, ""); loader.AddBundle(names[i]); } //loader.AddBundle("lua/lua.unity3d"); ////loader.AddBundle("lua/lua_math.unity3d"); //loader.AddBundle("lua/lua_common.unity3d"); //loader.AddBundle("lua/lua_controller.unity3d"); //loader.AddBundle("lua/lua_logic.unity3d"); //loader.AddBundle("lua/lua_misc.unity3d"); //loader.AddBundle("lua/lua_protobuf.unity3d"); //loader.AddBundle("lua/lua_system.unity3d"); //loader.AddBundle("lua/lua_system_reflection.unity3d"); //loader.AddBundle("lua/lua_unityengine.unity3d"); //loader.AddBundle("lua/lua_view.unity3d"); //loader.AddBundle("lua/lua_3rd_cjson.unity3d"); //loader.AddBundle("lua/lua_3rd_luabitop.unity3d"); //loader.AddBundle("lua/lua_3rd_pbc.unity3d"); //loader.AddBundle("lua/lua_3rd_pblua.unity3d"); //loader.AddBundle("lua/lua_3rd_sproto.unity3d"); } else { lua.AddSearchPath(Util.DataPath + "lua"); } }
/// <summary> /// 初始化LuaBundle /// </summary> void InitLuaBundle() { if (loader.beZip) { string[] list = Directory.GetFiles(Util.DataPath + "lua/", "*" + AppConst.ExtName, SearchOption.AllDirectories); for (int i = 0; i < list.Length; i++) { if (string.IsNullOrEmpty(list[i])) { continue; } string[] paths = list[i].Split('/'); if (paths.Length > 0) { loader.AddBundle("lua/" + paths[paths.Length - 1]); } } // loader.AddBundle("lua/lua.unity3d"); // loader.AddBundle("lua/lua_math.unity3d"); // loader.AddBundle("lua/lua_system.unity3d"); // loader.AddBundle("lua/lua_system_reflection.unity3d"); // loader.AddBundle("lua/lua_unityengine.unity3d"); // loader.AddBundle("lua/lua_common.unity3d"); // loader.AddBundle("lua/lua_logic.unity3d"); // loader.AddBundle("lua/lua_view.unity3d"); // loader.AddBundle("lua/lua_controller.unity3d"); // loader.AddBundle("lua/lua_misc.unity3d"); // loader.AddBundle("lua/lua_protobuf.unity3d"); // loader.AddBundle("lua/lua_3rd_cjson.unity3d"); // loader.AddBundle("lua/lua_3rd_luabitop.unity3d"); // loader.AddBundle("lua/lua_3rd_pbc.unity3d"); // loader.AddBundle("lua/lua_3rd_pblua.unity3d"); // loader.AddBundle("lua/lua_3rd_sproto.unity3d"); } }
/// <summary> /// 初始化LuaBundle /// </summary> void InitLuaBundle() { if (loader.beZip) { loader.AddBundle("Lua/Lua.unity3d"); loader.AddBundle("Lua/Lua_math.unity3d"); loader.AddBundle("Lua/Lua_system.unity3d"); loader.AddBundle("Lua/Lua_u3d.unity3d"); loader.AddBundle("Lua/Lua_Common.unity3d"); loader.AddBundle("Lua/Lua_Logic.unity3d"); loader.AddBundle("Lua/Lua_View.unity3d"); loader.AddBundle("Lua/Lua_Controller.unity3d"); loader.AddBundle("Lua/Lua_Misc.unity3d"); loader.AddBundle("Lua/Lua_protobuf.unity3d"); loader.AddBundle("Lua/Lua_3rd_cjson.unity3d"); loader.AddBundle("Lua/Lua_3rd_luabitop.unity3d"); loader.AddBundle("Lua/Lua_3rd_pbc.unity3d"); loader.AddBundle("Lua/Lua_3rd_pblua.unity3d"); loader.AddBundle("Lua/Lua_3rd_sproto.unity3d"); } }
/// <summary> /// 初始化LuaBundle /// </summary> void InitLuaBundle() { if (loader.beZip) { loader.AddBundle("lua/lua.unity3d"); loader.AddBundle("lua/lua_math.unity3d"); loader.AddBundle("lua/lua_system.unity3d"); loader.AddBundle("lua/lua_system_reflection.unity3d"); loader.AddBundle("lua/lua_unityengine.unity3d"); loader.AddBundle("lua/lua_common.unity3d"); loader.AddBundle("lua/lua_logic.unity3d"); loader.AddBundle("lua/lua_view.unity3d"); loader.AddBundle("lua/lua_controller.unity3d"); loader.AddBundle("lua/lua_misc.unity3d"); /** add custom lua bundle or iterate game folder */ loader.AddBundle("lua/lua_game_utility.unity3d"); #if UNITY_EDITOR var dirs = System.IO.Directory.GetDirectories(AppConst.FrameworkRoot + "/Lua/Game/UI"); foreach (var dir in dirs) { var dirNodes = dir.Split('\\', '/'); string dirName = dirNodes[dirNodes.Length - 1]; string bundleName = "lua/lua_game_ui_" + dirName + ".unity3d"; Debug.Log("$$ Add bundle" + bundleName); loader.AddBundle(bundleName); } #else #endif loader.AddBundle("lua/lua_protobuf.unity3d"); loader.AddBundle("lua/lua_3rd_cjson.unity3d"); loader.AddBundle("lua/lua_3rd_luabitop.unity3d"); loader.AddBundle("lua/lua_3rd_pbc.unity3d"); loader.AddBundle("lua/lua_3rd_pblua.unity3d"); loader.AddBundle("lua/lua_3rd_sproto.unity3d"); } }
/// <summary> /// 初始化LuaBundle /// </summary> void InitLuaBundle() { if (loader.beZip) { loader.AddBundle("lua/lua.unity3d"); loader.AddBundle("lua/lua_math.unity3d"); loader.AddBundle("lua/lua_system.unity3d"); loader.AddBundle("lua/lua_system_reflection.unity3d"); loader.AddBundle("lua/lua_unityengine.unity3d"); loader.AddBundle("lua/lua_Common.unity3d"); loader.AddBundle("lua/lua_Logic.unity3d"); loader.AddBundle("lua/lua_View.unity3d"); loader.AddBundle("lua/lua_Controller.unity3d"); loader.AddBundle("lua/lua_Misc.unity3d"); loader.AddBundle("lua/lua_kbe.unity3d"); loader.AddBundle("lua/lua_kbe_Interface.unity3d"); loader.AddBundle("lua/lua_KbePlugins.unity3d"); loader.AddBundle("lua/lua_protobuf.unity3d"); loader.AddBundle("lua/lua_3rd_cjson.unity3d"); loader.AddBundle("lua/lua_3rd_luabitop.unity3d"); loader.AddBundle("lua/lua_3rd_pbc.unity3d"); loader.AddBundle("lua/lua_3rd_pblua.unity3d"); loader.AddBundle("lua/lua_3rd_sproto.unity3d"); } }
/// <summary> /// 初始化LuaBundle /// </summary> void InitLuaBundle() { if (loader.beZip) { loader.AddBundle("lua/lua.unity3d"); loader.AddBundle("lua/lua_math.unity3d"); loader.AddBundle("lua/lua_system.unity3d"); loader.AddBundle("lua/lua_system_reflection.unity3d"); loader.AddBundle("lua/lua_unityengine.unity3d"); loader.AddBundle("lua/lua_common.unity3d"); loader.AddBundle("lua/lua_misc.unity3d"); loader.AddBundle("lua/lua_protobuf.unity3d"); loader.AddBundle("lua/lua_skgame.unity3d"); loader.AddBundle("lua/lua_skgame_proto.unity3d"); loader.AddBundle("lua/lua_skgame_base.unity3d"); loader.AddBundle("lua/lua_skgame_luanet.unity3d"); loader.AddBundle("lua/lua_skgame_common.unity3d"); loader.AddBundle("lua/lua_skgame_config.unity3d"); loader.AddBundle("lua/lua_skgame_modules.unity3d"); //动态添加 modules下的代码(GameManager 加载的模块lua) string[] modules = AppFacade.Instance.AddManager <GameManager>(ManagerName.Game).moduleABPaths.ToArray(); int len = modules.Length; for (int i = 0; i < len; i++) { loader.AddBundle(modules[i]); } } }
/// <summary> /// 初始化LuaBundle /// </summary> void InitLuaBundle() { if (loader.beZip) { loader.AddBundle("lua" + AppConst.ExtName); loader.AddBundle("lua_system" + AppConst.ExtName); loader.AddBundle("lua_system_reflection" + AppConst.ExtName); loader.AddBundle("lua_unityengine" + AppConst.ExtName); loader.AddBundle("lua_common" + AppConst.ExtName); loader.AddBundle("lua_logic" + AppConst.ExtName); loader.AddBundle("lua_view" + AppConst.ExtName); loader.AddBundle("lua_controller" + AppConst.ExtName); loader.AddBundle("lua_misc" + AppConst.ExtName); loader.AddBundle("lua_protobuf" + AppConst.ExtName); loader.AddBundle("lua_3rd_cjson" + AppConst.ExtName); loader.AddBundle("lua_3rd_luabitop" + AppConst.ExtName); loader.AddBundle("lua_3rd_pblua" + AppConst.ExtName); } }
/// <summary> /// 初始化LuaBundle /// </summary> void InitLuaBundle() { if (loader.beZip) { //Debug.Log("############# init bundle!"); loader.AddBundle("lua/lua.sab"); loader.AddBundle("lua/lua_math.sab"); loader.AddBundle("lua/lua_system.sab"); loader.AddBundle("lua/lua_system_reflection.sab"); loader.AddBundle("lua/lua_unityengine.sab"); loader.AddBundle("lua/lua_common.sab"); loader.AddBundle("lua/lua_logic.sab"); loader.AddBundle("lua/lua_view.sab"); loader.AddBundle("lua/lua_controller.sab"); loader.AddBundle("lua/lua_misc.sab"); loader.AddBundle("lua/lua_protobuf.sab"); loader.AddBundle("lua/lua_3rd_cjson.sab"); loader.AddBundle("lua/lua_3rd_luabitop.sab"); loader.AddBundle("lua/lua_3rd_pbc.sab"); loader.AddBundle("lua/lua_3rd_pblua.sab"); loader.AddBundle("lua/lua_3rd_sproto.sab"); } }
/// <summary> /// 初始化LuaBundle /// </summary> void InitLuaBundle() { if (loader.beZip) { loader.AddBundle("game.unity3d", "game/"); loader.AddBundle("game_src.unity3d", "game/"); loader.AddBundle("game_src_app_common.unity3d", "game/"); loader.AddBundle("game_src_app_common_queue.unity3d", "game/"); loader.AddBundle("game_src_app_conf_mgr.unity3d", "game/"); loader.AddBundle("game_src_app_etc.unity3d", "game/"); loader.AddBundle("game_src_app_etc_ox.unity3d", "game/"); loader.AddBundle("game_src_app_mgr.unity3d", "game/"); loader.AddBundle("game_src_app_net.unity3d", "game/"); loader.AddBundle("game_src_app_service.unity3d", "game/"); loader.AddBundle("game_src_controller.unity3d", "game/"); loader.AddBundle("game_src_easy.unity3d", "game/"); loader.AddBundle("game_src_easy_components.unity3d", "game/"); loader.AddBundle("game_src_easy_net.unity3d", "game/"); loader.AddBundle("game_src_easy_scene.unity3d", "game/"); loader.AddBundle("game_src_lib.unity3d", "game/"); loader.AddBundle("game_src_logic.unity3d", "game/"); loader.AddBundle("game_src_platform.unity3d", "game/"); loader.AddBundle("game_src_sys.unity3d", "game/"); loader.AddBundle("game_src_unity.unity3d", "game/"); loader.AddBundle("game_src_view.unity3d", "game/"); loader.AddBundle("lua.unity3d", "lua/"); loader.AddBundle("lua_cjson.unity3d", "lua/"); loader.AddBundle("lua_jit.unity3d", "lua/"); loader.AddBundle("lua_lpeg.unity3d", "lua/"); loader.AddBundle("lua_misc.unity3d", "lua/"); loader.AddBundle("lua_socket.unity3d", "lua/"); loader.AddBundle("lua_system.unity3d", "lua/"); loader.AddBundle("lua_system_reflection.unity3d", "lua/"); loader.AddBundle("lua_unityengine.unity3d", "lua/"); loader.AddBundle("lua_protobuf.unity3d", "lua/"); loader.AddBundle("lua_3rd_cjson.unity3d", "lua/"); loader.AddBundle("lua_3rd_luabitop.unity3d", "lua/"); loader.AddBundle("lua_3rd_pbc.unity3d", "lua/"); loader.AddBundle("lua_3rd_pblua.unity3d", "lua/"); loader.AddBundle("lua_3rd_sproto.unity3d", "lua/"); } }
/// <summary> /// 初始化LuaBundle /// </summary> void InitLuaBundle() { if (loader.beZip) { loader.AddBundle("lua/lua.unity3d"); loader.AddBundle("lua/lua_math.unity3d"); loader.AddBundle("lua/lua_system.unity3d"); loader.AddBundle("lua/lua_system_reflection.unity3d"); loader.AddBundle("lua/lua_unityengine.unity3d"); loader.AddBundle("lua/lua_common.unity3d"); loader.AddBundle("lua/lua_logic.unity3d"); loader.AddBundle("lua/lua_misc.unity3d"); loader.AddBundle("lua/lua_3rd_luapb.unity3d"); loader.AddBundle("lua/lua_3rd_luapb_pb.unity3d"); loader.AddBundle("lua/lua_3rd_luapb_pb_proto.unity3d"); loader.AddBundle("lua/lua_3rd_luapb_pb_standard.unity3d"); loader.AddBundle("lua/lua_3rd_luapb_socket.unity3d"); loader.AddBundle("lua/lua_3rd_luabitop.unity3d"); loader.AddBundle("lua/lua_cjson.unity3d"); loader.AddBundle("lua/lua_game.unity3d"); loader.AddBundle("lua/lua_game_base.unity3d"); loader.AddBundle("lua/lua_game_data.unity3d"); } }
/// <summary> /// 初始化LuaBundle /// </summary> void InitLuaBundle() { if (loader.beZip) { loader.AddBundle("lua/lua.unity3d"); loader.AddBundle("lua/lua_math.unity3d"); loader.AddBundle("lua/lua_system.unity3d"); loader.AddBundle("lua/lua_system_reflection.unity3d"); loader.AddBundle("lua/lua_unityengine.unity3d"); loader.AddBundle("lua/lua_common.unity3d"); loader.AddBundle("lua/lua_logic.unity3d"); loader.AddBundle("lua/lua_view.unity3d"); loader.AddBundle("lua/lua_controller.unity3d"); loader.AddBundle("lua/lua_misc.unity3d"); loader.AddBundle("lua/lua_protobuf.unity3d"); loader.AddBundle("lua/lua_3rd_cjson.unity3d"); loader.AddBundle("lua/lua_3rd_luabitop.unity3d"); loader.AddBundle("lua/lua_3rd_pbc.unity3d"); loader.AddBundle("lua/lua_3rd_pblua.unity3d"); loader.AddBundle("lua/lua_3rd_sproto.unity3d"); } }
/// <summary> /// 初始化LuaBundle /// </summary> void InitLuaBundle() { if (loader.beZip) { loader.AddBundle("lua/lua.unity3d"); loader.AddBundle("lua/lua_math.unity3d"); loader.AddBundle("lua/lua_system.unity3d"); loader.AddBundle("lua/lua_system_reflection.unity3d"); loader.AddBundle("lua/lua_unityengine.unity3d"); loader.AddBundle("lua/lua_common.unity3d"); loader.AddBundle("lua/lua_Logic.unity3d"); loader.AddBundle("lua/lua_misc.unity3d"); loader.AddBundle("lua/lua_protobuf.unity3d"); loader.AddBundle("lua/lua_3rd_cjson.unity3d"); loader.AddBundle("lua/lua_3rd_luabitop.unity3d"); loader.AddBundle("lua/lua_3rd_pbc.unity3d"); loader.AddBundle("lua/lua_3rd_pblua.unity3d"); loader.AddBundle("lua/lua_3rd_sproto.unity3d"); //自定义加载 loader.AddBundle("lua/lua_chat.unity3d"); loader.AddBundle("lua/lua_escaperoom.unity3d"); loader.AddBundle("lua/lua_escaperoom_class.unity3d"); loader.AddBundle("lua/lua_escaperoom_common.unity3d"); loader.AddBundle("lua/lua_escaperoom_config.unity3d"); loader.AddBundle("lua/lua_escaperoom_logic.unity3d"); loader.AddBundle("lua/lua_escaperoom_model.unity3d"); loader.AddBundle("lua/lua_escaperoom_manager.unity3d"); loader.AddBundle("lua/lua_escaperoom_ui_chat.unity3d"); } }