public void DisableDependencies(BuildTarget platform, DependencyManager mediation) { var destination = Utils.GetDependencyPath(name, platform); if (File.Exists(destination)) { AssetDatabase.DeleteAsset(destination); installedVersion = ""; mediation.Init(platform); } }
internal void Init(DependencyManager mediation, BuildTarget platform, bool updateContaines) { var path = Utils.GetDependencyPath(name, platform); if (File.Exists(path)) { var dependency = File.ReadAllText(path); const string line = "version=\""; var beginIndex = dependency.IndexOf(line, 45); if (beginIndex > 0) { beginIndex += line.Length; installedVersion = dependency.Substring(beginIndex, dependency.IndexOf('\"', beginIndex) - beginIndex); try { //var currVer = new Version( installedVersion ); //var targetVer = new Version( version ); //isNewer = currVer < targetVer; isNewer = installedVersion != version; } catch { isNewer = true; } mediation.installedAny = true; } if (updateContaines) { for (int i = 0; i < contains.Length; i++) { var item = mediation.Find(contains[i]); if (item != null) { item.locked = true; } } var requiredItem = mediation.Find(require); if (requiredItem != null) { requiredItem.isRequired = true; } } } }