public bool Load(SecurityElement element) { if (element.Tag != "RootNode") { Debug.Log("ERROR: Element Tag is Wrong"); return(false); } if (element.Children == null) { Debug.Log("ERROR: Child Element is Null"); return(false); } foreach (SecurityElement noodElement in element.Children) { AssetWeigth assetWeigth = new AssetWeigth(); int nodeID = StrParser.ParseDecInt(noodElement.Attribute("ID"), -1); assetWeigth.id = nodeID; foreach (SecurityElement packageElement in noodElement.Children) { string assetName = StrParser.ParseStr(packageElement.Attribute("Name"), ""); int assetValue = StrParser.ParseDecInt(packageElement.Attribute("Value"), -1); assetWeigth.nodePackages.Add(assetName, assetValue); } assetWeigthDict.Add(nodeID, assetWeigth); } return(true); }
private void InitCallBack(float progress, System.Object userData) { Debug.Log("AssetPriManager Init Callback"); //Debug.Log("PROCESS:"+progress); if (progress < 1.0f) { return; } Debug.Log("AssetPriManager Init Callback Over"); //init assetPackage TextAsset assetText = _assetPackageLoader.Load() as TextAsset; SecurityParser xmlParser = new SecurityParser(); xmlParser.LoadXml(assetText.text); _assetPackageConfig = new AssetPackageConfig(); _assetPackageConfig.Load(xmlParser.ToXml()); //_assetPackage = _assetPackageConfig.AssetPackages; //init assetWeight assetText = _assetWeightLoader.Load() as TextAsset; xmlParser = new SecurityParser(); xmlParser.LoadXml(assetText.text); _assetWeightConfig = new AssetWeightConfig(); _assetWeightConfig.Load(xmlParser.ToXml()); int currentMissionNode = PlayerPrefs.GetInt("currentMissionNode", 0); AssetWeigth currentAssetWeigth = _assetWeightConfig.assetWeigthDict[currentMissionNode]; _assetPackageConfig.nodeValueUpdate(currentAssetWeigth); _assetPackage = _assetPackageConfig.AssetPackages; _initialzed = InializedState.Initialized; }
public void AssetPackageDownLoadReStart(int missNode) { StopCoroutine("AssetPackageDownLoadReStart"); AssetWeigth currentAssetWeigth = _assetWeightConfig.assetWeigthDict[missNode]; _assetPackageConfig.nodeValueUpdate(currentAssetWeigth); _assetPackage = _assetPackageConfig.AssetPackages; isStartCoroutine = false; }
//updata package value public void nodeValueUpdate(AssetWeigth assetWeigth) { foreach (KeyValuePair <string, int> kv in assetWeigth.nodePackages) { if (_assetPackageDict.ContainsKey(kv.Key)) { AssetPackage assetPackage = _assetPackageDict[kv.Key]; assetPackage.nodeValue = kv.Value; } } sortAssetPackage(_assetPackage); }