少年修仙传客户端基础资源
client_Wu Xijin
2018-11-10 3948cc1b09d113cc6243859d7f011015d9a76ee0
4340 【前端】支持xlua方便IOS提审
2个文件已修改
2个文件已添加
108 ■■■■■ 已修改文件
Assets/Editor/Tool/BuildExtersion.cs 25 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Assets/Editor/Tool/LuaBuildHelper.cs 44 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Assets/Editor/Tool/LuaBuildHelper.cs.meta 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Assets/Editor/Tool/UpdateAssetBundleName.cs 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Assets/Editor/Tool/BuildExtersion.cs
@@ -99,6 +99,31 @@
            Debug.Log(ex);
            EditorApplication.Exit(1);
        }
    }
    public static void BuildLua()
    {
        try
        {
            var buildParameters = new BuildParameters();
            if (!buildParameters.error)
            {
                LuaBuildHelper.OnPreBuild();
                UpdateLuaSetting.SetAllLuaAssetBundleName();
                ExcuteBuildAsset("lua", buildParameters);
                LuaBuildHelper.OnPostBuild();
            }
            else
            {
                EditorApplication.Exit(1);
            }
        }
        catch (Exception ex)
        {
            Debug.Log("打包lua失败");
            Debug.Log(ex);
            EditorApplication.Exit(1);
        }
    }
    public static void BuildAudio()
Assets/Editor/Tool/LuaBuildHelper.cs
New file
@@ -0,0 +1,44 @@
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEditor;
using System.IO;
public class LuaBuildHelper
{
    public static void OnPreBuild()
    {
        var path = ResourcesPath.LUA_FODLER;
        var fileInfos = new List<FileInfo>();
        FileExtersion.GetAllDirectoryFileInfos(ResourcesPath.LUA_FODLER, fileInfos);
        foreach (var item in fileInfos)
        {
            var from = item.FullName;
            var extension = Path.GetExtension(from);
            if (extension == ".lua")
            {
                var to = Path.ChangeExtension(from, ".txt");
                File.Copy(from, to, true);
            }
        }
    }
    public static void OnPostBuild()
    {
        var path = ResourcesPath.LUA_FODLER;
        var fileInfos = new List<FileInfo>();
        FileExtersion.GetAllDirectoryFileInfos(ResourcesPath.LUA_FODLER, fileInfos);
        foreach (var item in fileInfos)
        {
            var file = item.FullName;
            var extension = Path.GetExtension(file);
            if (extension == ".txt")
            {
                File.Delete(file);
            }
        }
    }
}
Assets/Editor/Tool/LuaBuildHelper.cs.meta
New file
@@ -0,0 +1,12 @@
fileFormatVersion: 2
guid: 238061b41c4e67446bec78df043c05f2
timeCreated: 1541817699
licenseType: Pro
MonoImporter:
  serializedVersion: 2
  defaultReferences: []
  executionOrder: 0
  icon: {instanceID: 0}
  userData:
  assetBundleName:
  assetBundleVariant:
Assets/Editor/Tool/UpdateAssetBundleName.cs
@@ -242,3 +242,30 @@
        AssetDatabase.Refresh();
    }
}
public class UpdateLuaSetting
{
    static string rootPath = Application.dataPath + "/ResourcesOut/Lua/";
    static string assetPath = "Assets/ResourcesOut/Lua/";
    [MenuItem("程序/设置资源包名/更新Lua(All) AssetBundleName")]
    public static void SetAllLuaAssetBundleName()
    {
        var allFiles = new DirectoryInfo(rootPath).GetFiles("*.txt", SearchOption.AllDirectories);
        var amendRootPath = rootPath.Replace("\\", "/");
        foreach (var file in allFiles)
        {
            var directoryName = file.DirectoryName.Replace("\\", "/");
            var relativeDirectory = directoryName.Replace(amendRootPath, "");
            var importerPath = assetPath + relativeDirectory + Path.DirectorySeparatorChar + file.Name;
            var importer = AssetImporter.GetAtPath(importerPath);
            importer.assetBundleName = "lua/" + relativeDirectory.ToLower();
            EditorUtility.SetDirty(importer);
        }
        AssetDatabase.SaveAssets();
        AssetDatabase.Refresh();
    }
}