【热更】热更大小

dev_chengFeng
ZhangBiao 2021-02-22 11:56:05 +08:00
parent a7bd8323ad
commit daa0038197
1 changed files with 19 additions and 20 deletions

View File

@ -394,7 +394,7 @@ namespace GameEditor.FrameTool {
static List<ResourceFile> inDataList;
static DirectoryInfo pathInfo;
static decimal Size = 0;
static Dictionary<string, ResourceFile> inDataDic = new Dictionary<string, ResourceFile>();
static Dictionary<string, ResourceFile> exDataDic = new Dictionary<string, ResourceFile>();
[MenuItem("Build/HotfixSize")]
static void Init()
@ -478,6 +478,17 @@ namespace GameEditor.FrameTool {
ResourceFiles files = bundle.LoadAsset<ResourceFiles>("game");
exDataList = files.files;
bundle.Unload(true);
exDataList.Sort(delegate (ResourceFile a, ResourceFile b) { return a.crc.CompareTo(b.crc); });
for (int i = 0; i < exDataList.Count; i++)
{
if (!exDataDic.ContainsKey(exDataList[i].fileName))
{
exDataDic.Add(exDataList[i].fileName, exDataList[i]);
}else
{
exDataDic[exDataList[i].fileName] = exDataList[i];
}
}
}
//遍历内部unity3d数据
@ -487,35 +498,23 @@ namespace GameEditor.FrameTool {
ResourceFiles files = bundle.LoadAsset<ResourceFiles>("game");
inDataList = files.files;
bundle.Unload(true);
inDataList.Sort(delegate (ResourceFile a, ResourceFile b) { return a.crc.CompareTo(b.crc); });
for (int i = 0; i < inDataList.Count; i++)
{
if (!inDataDic.ContainsKey(inDataList[i].fileName))
{
inDataDic.Add(inDataList[i].fileName, inDataList[i]);
}else
{
inDataDic[inDataList[i].fileName] = inDataList[i];
}
}
}
//对比数据
private static void CompareData()
{
UnityEngine.Debug.Log("外部个数:" + exDataList.Count);
for (int i = 0; i < exDataList.Count; i++)
for (int i = 0; i < inDataList.Count; i++)
{
if (!inDataDic.ContainsKey (exDataList[i].fileName))
if (!exDataDic.ContainsKey (inDataList[i].fileName))
{
UnityEngine.Debug.Log("Name:"+exDataList[i].fileName);
Size = exDataList[i].size + Size;
UnityEngine.Debug.Log("NewFile: "+inDataList[i].fileName);
Size = inDataList[i].size + Size;
}else
{
if(!exDataList[i].crc.Equals(inDataDic[exDataList[i].fileName].crc))
if(!inDataList[i].crc.Equals(exDataDic[inDataList[i].fileName].crc))
{
UnityEngine.Debug.Log("Name:" + exDataList[i].fileName);
Size = exDataList[i].size + Size;
UnityEngine.Debug.Log("ModifiedFile: " + inDataList[i].fileName);
Size = inDataList[i].size + Size;
}
}
}