Beispiel #1
0
 /// <summary>
 /// 根据AppResConfig进行更新
 /// </summary>
 public void UpdateByAppResConfig(ResConfigFile _appConfig)
 {
     if (_appConfig.ResVersion < ResVersion)
     {
         return;
     }
     for (Int32 i = 0; i < _appConfig.m_assets.Count; ++i)
     {
         ResInfo localResInfo;
         var     appResInfo = _appConfig.m_assets[i];
         if (ResDictionary.TryGetValue(appResInfo.Name, out localResInfo))
         {
             if (appResInfo.Version > localResInfo.Version)
             {
                 appResInfo.CopyTo(localResInfo);
                 localResInfo.Location = AssetLocation.StreamingPath;
             }
         }
         else
         {
             localResInfo          = appResInfo.Clone();
             localResInfo.Location = AssetLocation.StreamingPath;
             m_assets.Add(localResInfo);
             ResDictionary.Add(localResInfo.Name, localResInfo);
         }
     }
     Save();
 }
Beispiel #2
0
 /// <summary>
 /// 添加或更新资源
 /// </summary>
 /// <param name="_new_res"></param>
 public void AddOrUpdateResInfo(ResInfo _new_res)
 {
     if (ResDictionary.ContainsKey(_new_res.Name))
     {
         for (int i = 0; i < m_assets.Count; i++)
         {
             if (m_assets[i].Name.Equals(_new_res.Name, StringComparison.OrdinalIgnoreCase))
             {
                 m_assets[i] = _new_res;
                 ResDictionary[_new_res.Name] = _new_res;
                 break;
             }
         }
     }
     else
     {
         ResDictionary.Add(_new_res.Name, _new_res);
         m_assets.Add(_new_res);
     }
 }