public override void LoadContent() { //Setup Serializer XmlSerializer xml = new XmlSerializer(typeof(SpineData.SpineDataSettings)); StreamReader reader; //Goto SpineDirectory DirectoryInfo environmentPath = new DirectoryInfo(EngineSettings.DefaultPathSpine); if (!environmentPath.Exists) //Checken ob das Directory existiert { return; } foreach (FileInfo f in environmentPath.GetFiles()) //Enthaltene Files durchgehen { if (f.Name.EndsWith(".settings")) //.sData Files heraus filtern { reader = new StreamReader(f.FullName); SpineData.SpineDataSettings settings = (SpineData.SpineDataSettings)xml.Deserialize(reader); //sData File in SpineData Object umwandeln reader.Close(); string TmpSkeletonName = f.Name.Remove(f.Name.Length - ".settings".Length); mRessourcen.Add(TmpSkeletonName, new SpineData(TmpSkeletonName, settings)); if (!SpinePool.Pools.ContainsKey(TmpSkeletonName)) { SpinePool.Pools.Add(TmpSkeletonName, new SpinePool(TmpSkeletonName)); //Legt für das SpineObject einen Pool in SpinePool.Pools an. } } } }
/// <summary> /// Läd den Ordner am DataPath neu. /// </summary> public void ReloadFolder() { mPlaying = false; mEditorForm.listBoxFadingFrom.Items.Clear(); mEditorForm.listBoxFadingTo.Items.Clear(); mEditorForm.listBoxFadingFrom.ClearSelected(); mEditorForm.listBoxFadingTo.ClearSelected(); mRessourcen.Clear(); mEditorForm.listBoxSkeletons.Items.Clear(); StreamReader reader; StreamWriter file; DirectoryInfo pathInfo = new DirectoryInfo(EngineSettings.DefaultPathSpine); foreach (FileInfo f in pathInfo.GetFiles()) //Enthaltene Files durchgehen { if (f.Name.EndsWith(".json")) //.sData Files heraus filtern { string TmpSkeletonName = f.Name.Remove(f.Name.Length - ".json".Length); if (!File.Exists(EngineSettings.DefaultPathSpine + "\\" + TmpSkeletonName + ".settings")) { SpineData.SpineDataSettings DefaultSettings = new SpineData.SpineDataSettings(); DefaultSettings.Scaling = 1.0f; DefaultSettings.AnimationFading = GetAnimationMixes(TmpSkeletonName, 0.2f); file = new StreamWriter(EngineSettings.DefaultPathSpine + "\\" + TmpSkeletonName + ".settings"); mSerializer.Serialize(file, DefaultSettings); file.Close(); } reader = new StreamReader(EngineSettings.DefaultPathSpine + "\\" + TmpSkeletonName + ".settings"); SpineData.SpineDataSettings settings = (SpineData.SpineDataSettings)mSerializer.Deserialize(reader); //sData File in SpineData Object umwandeln reader.Close(); mRessourcen.Add(TmpSkeletonName, settings); } } mEditorForm.listBoxSkeletons.Items.AddRange(mRessourcen.Keys.ToArray()); }