コード例 #1
0
        protected Dictionary <string, NameValueTemplate> parseTemplate(XmlTextReader r)
        {
            NameValueTemplate template = new NameValueTemplate();

            while (r.Read())
            {
                if (r.NodeType == XmlNodeType.Whitespace)
                {
                    continue;
                }
                if (r.NodeType == XmlNodeType.Element)
                {
                    switch (r.Name)
                    {
                    case "Name":
                        template.Name = parseTextNode(r);
                        break;

                    case "Properties":
                        r.Read();
                        template.properties = parseTypeProperties(r);
                        break;

                    case "ObjectTypes":
                        r.Read();
                        parseObjectTypes(r, template);
                        break;
                    }
                }
            }
            NameValueTemplates.Add(template.Name, template);
            return(NameValueTemplates);
        }
コード例 #2
0
        private void parseObjectTypes(XmlTextReader r, NameValueTemplate template)
        {
            while (r.Read())
            {
                if (r.NodeType == XmlNodeType.Whitespace)
                {
                    continue;
                }
                if (r.NodeType == XmlNodeType.Element)
                {
                    switch (r.Name)
                    {
                    case "Marker":
                        template.Waypoint = true;
                        break;

                    case "Region":
                        template.Boundary = true;
                        break;

                    case "Road":
                        template.Road = true;
                        break;

                    case "StaticObject":
                        template.Object = true;
                        break;

                    case "SpawnGenerator":
                        template.SpawnGenerator = true;
                        break;
                    }
                }
                if (r.NodeType == XmlNodeType.EndElement)
                {
                    break;
                }
            }
        }