コード例 #1
0
 public XmlSkeletonDefElement(SkeletonDefElement element)
 {
     if (element != null) {
         Atlas = new XmlSpineAtlasElement(element.Atlas);
         Skeleton = new XmlSpineSkeletonElement(element.Skeleton);
         AnimationMap = new XmlSpineAnimationMapElement(element.AnimationMap);
         ActivityMap = new XmlActivityMapElement(element.ActivityMap);
     }
 }
コード例 #2
0
        public XmlDirectionalAnimationSetElement(DirectionalAnimationSetElement spriteElement)
        {
            if (spriteElement != null) {
                Instance = new XmlDirectionalAnimationSetInstance(spriteElement.Instance);
                Sprites = new XmlSpriteListElement(spriteElement.Sprites);

                foreach (IAnimationSetElement animationElement in spriteElement.AnimationSets) {
                    AnimationSets.Add(new XmlAnimationSetElement(animationElement));
                }

                ActivityMap = new XmlActivityMapElement(spriteElement.ActivityMap);
            }
        }
コード例 #3
0
        public void ReadXml(XmlReader reader)
        {
            reader.MoveToContent();
            if (reader.IsEmptyElement) {
                reader.ReadStartElement();
                return;
            }

            reader.ReadStartElement();
            while (!reader.EOF) {
                if (reader.IsStartElement()) {
                    switch (reader.Name) {
                        case "Atlas":
                            XmlSpineAtlasElement atlas = new XmlSpineAtlasElement();
                            atlas.ReadXml(reader);
                            Atlas = atlas;
                            break;

                        case "Skeleton":
                            XmlSpineSkeletonElement skeleton = new XmlSpineSkeletonElement();
                            skeleton.ReadXml(reader);
                            Skeleton = skeleton;
                            break;

                        case "AnimationMap":
                            XmlSpineAnimationMapElement animationMap = new XmlSpineAnimationMapElement();
                            animationMap.ReadXml(reader);
                            AnimationMap = animationMap;
                            break;

                        case "ActivityMap":
                            XmlActivityMapElement activityMap = new XmlActivityMapElement();
                            activityMap.ReadXml(reader);
                            ActivityMap = activityMap;
                            break;

                        default:
                            reader.Skip();
                            break;
                    }
                }
                else if (reader.NodeType == XmlNodeType.EndElement) {
                    reader.ReadEndElement();
                    break;
                }
                else
                    reader.Read();
            }
        }
コード例 #4
0
        public void ReadXml(XmlReader reader)
        {
            reader.MoveToContent();
            if (reader.IsEmptyElement) {
                reader.ReadStartElement();
                return;
            }

            reader.ReadStartElement();
            while (!reader.EOF) {
                if (reader.IsStartElement()) {
                    switch (reader.Name) {
                        case "Instance":
                            XmlDirectionalAnimationSetInstance instance = new XmlDirectionalAnimationSetInstance();
                            instance.ReadXml(reader);
                            Instance = instance;
                            break;

                        case "Sprites":
                            XmlSpriteListElement sprites = new XmlSpriteListElement();
                            sprites.ReadXml(reader);
                            Sprites = sprites;
                            break;

                        case "AnimationSets":
                            ReadAnimationSetsXml(reader);
                            break;

                        case "ActivityMap":
                            XmlActivityMapElement activityMap = new XmlActivityMapElement();
                            activityMap.ReadXml(reader);
                            ActivityMap = activityMap;
                            break;

                        default:
                            reader.Skip();
                            break;
                    }
                }
                else if (reader.NodeType == XmlNodeType.EndElement) {
                    reader.ReadEndElement();
                    break;
                }
                else
                    reader.Read();
            }
        }
コード例 #5
0
        public void WriteXml(XmlWriter writer)
        {
            if (Atlas != null) {
                XmlSpineAtlasElement elem = Atlas as XmlSpineAtlasElement;
                if (elem == null)
                    elem = new XmlSpineAtlasElement(Atlas);

                writer.WriteStartElement("Atlas");
                elem.WriteXml(writer);
                writer.WriteEndElement();
            }

            if (Skeleton != null) {
                XmlSpineSkeletonElement elem = Skeleton as XmlSpineSkeletonElement;
                if (elem == null)
                    elem = new XmlSpineSkeletonElement(Skeleton);

                writer.WriteStartElement("Skeleton");
                elem.WriteXml(writer);
                writer.WriteEndElement();
            }

            if (AnimationMap != null) {
                XmlSpineAnimationMapElement elem = AnimationMap as XmlSpineAnimationMapElement;
                if (elem == null)
                    elem = new XmlSpineAnimationMapElement(AnimationMap);

                writer.WriteStartElement("AnimationMap");
                elem.WriteXml(writer);
                writer.WriteEndElement();
            }

            if (ActivityMap != null) {
                XmlActivityMapElement elem = ActivityMap as XmlActivityMapElement;
                if (elem == null)
                    elem = new XmlActivityMapElement(ActivityMap);

                writer.WriteStartElement("ActivityMap");
                elem.WriteXml(writer);
                writer.WriteEndElement();
            }
        }
コード例 #6
0
        public void WriteXml(XmlWriter writer)
        {
            if (Instance != null) {
                XmlDirectionalAnimationSetInstance elem = Instance as XmlDirectionalAnimationSetInstance;
                if (elem == null)
                    elem = new XmlDirectionalAnimationSetInstance(Instance);

                writer.WriteStartElement("Instance");
                elem.WriteXml(writer);
                writer.WriteEndElement();
            }

            if (Sprites != null) {
                XmlSpriteListElement elem = Sprites as XmlSpriteListElement;
                if (elem == null)
                    elem = new XmlSpriteListElement(Sprites);

                writer.WriteStartElement("Sprites");
                elem.WriteXml(writer);
                writer.WriteEndElement();
            }

            if (AnimationSets != null) {
                writer.WriteStartElement("AnimationSets");

                foreach (IAnimationSetElement animationSet in AnimationSets) {
                    XmlAnimationSetElement elem = animationSet as XmlAnimationSetElement;
                    if (elem == null)
                        elem = new XmlAnimationSetElement(animationSet);

                    writer.WriteStartElement("AnimationSet");
                    elem.WriteXml(writer);
                    writer.WriteEndElement();
                }

                writer.WriteEndElement();
            }

            if (ActivityMap != null) {
                XmlActivityMapElement elem = ActivityMap as XmlActivityMapElement;
                if (elem == null)
                    elem = new XmlActivityMapElement(ActivityMap);

                writer.WriteStartElement("ActivityMap");
                elem.WriteXml(writer);
                writer.WriteEndElement();
            }
        }