Exemplo n.º 1
0
        public void ReadXml(XmlReader reader)
        {
            name       = reader["Name"];
            components = new List <IFactoryComponent>();
            owner      = World.Instance.FactionList.GetFaction(reader["Owner"]);
            owner.AddFactoryEntity(this);
            //owner = Convert.ToInt32(reader["Z"]);
            reader.MoveToContent();
            if (reader.ReadToDescendant(typeof(IFactoryComponent).Name))
            {
                while (reader.MoveToContent() == XmlNodeType.Element && reader.LocalName == typeof(IFactoryComponent).Name)
                {
                    var component = new EmptyComponent();
                    component.ReadXml(reader);
                    components.Add(component.ActualComponent);
                }
            }
            foreach (var component in components)
            {
                component.Parent = this;
            }

            reader.Read();
        }