private bool LoadStreamCacheList(Resource resource, string[] files, string cacheFile) { var cacheList = JArray.Parse(File.ReadAllText(cacheFile)); var cacheEntries = new Dictionary <string, Resource.StreamCacheEntry>(); foreach (var entry in cacheList) { var obj = entry as JObject; if (obj == null) { continue; } var newEntry = new Resource.StreamCacheEntry(); newEntry.BaseName = obj.Value <string>("BaseName"); newEntry.HashString = obj.Value <string>("Hash"); newEntry.RscFlags = obj.Value <uint>("RscFlags"); newEntry.RscVersion = obj.Value <uint>("RscVersion"); newEntry.Size = obj.Value <uint>("Size"); // viiv hacks if (newEntry.BaseName.Contains(".wpl")) { if (newEntry.BaseName.Contains("ktown_stream") || newEntry.BaseName.Contains("venice_stream") || newEntry.BaseName.Contains("santamon_stream") || newEntry.BaseName.Contains("beverly_stream") || newEntry.BaseName.Contains("sanpedro_stream") || newEntry.BaseName.Contains("airport_stream") || newEntry.BaseName.Contains("downtown_stream") || newEntry.BaseName.Contains("hollywood_stream") || newEntry.BaseName.Contains("scentral_stream") || newEntry.BaseName.Contains("indust_stream") || newEntry.BaseName.Contains("port_stream")) { continue; } } cacheEntries.Add(obj.Value <string>("BaseName"), newEntry); } if (files != null) { foreach (var file in files) { var basename = System.IO.Path.GetFileName(file); if (!cacheEntries.ContainsKey(basename)) { continue; } cacheEntries[basename].FileName = file; } } resource.StreamEntries = cacheEntries; return(true); }
private bool LoadStreamCacheList(Resource resource, string[] files, string cacheFile) { var cacheList = JArray.Parse(File.ReadAllText(cacheFile)); var cacheEntries = new Dictionary<string, Resource.StreamCacheEntry>(); foreach (var entry in cacheList) { var obj = entry as JObject; if (obj == null) { continue; } var newEntry = new Resource.StreamCacheEntry(); newEntry.BaseName = obj.Value<string>("BaseName"); newEntry.HashString = obj.Value<string>("Hash"); newEntry.RscFlags = obj.Value<uint>("RscFlags"); newEntry.RscVersion = obj.Value<uint>("RscVersion"); newEntry.Size = obj.Value<uint>("Size"); // viiv hacks if (newEntry.BaseName.Contains(".wpl")) { if (newEntry.BaseName.Contains("ktown_stream") || newEntry.BaseName.Contains("venice_stream") || newEntry.BaseName.Contains("santamon_stream") || newEntry.BaseName.Contains("beverly_stream") || newEntry.BaseName.Contains("sanpedro_stream") || newEntry.BaseName.Contains("airport_stream") || newEntry.BaseName.Contains("downtown_stream") || newEntry.BaseName.Contains("hollywood_stream") || newEntry.BaseName.Contains("scentral_stream") || newEntry.BaseName.Contains("indust_stream") || newEntry.BaseName.Contains("port_stream")) { continue; } } cacheEntries.Add(obj.Value<string>("BaseName"), newEntry); } if (files != null) { foreach (var file in files) { var basename = System.IO.Path.GetFileName(file); if (!cacheEntries.ContainsKey(basename)) { continue; } cacheEntries[basename].FileName = file; } } resource.StreamEntries = cacheEntries; return true; }