예제 #1
0
        private void ParseClassDefinitionMetadata(XmlNode definition)
        {
            string          worldName;
            WorldDefinition worldDefinition;

            if (definition.Attributes.GetNamedItem(XMLTags.worldAttribute) != null)
            {
                worldName       = definition.Attributes[XMLTags.worldAttribute].Value;
                worldDefinition = new WorldDefinition();
                foreach (XmlNode child in definition.ChildNodes)
                {
                    if (child.Name == XMLTags.stateVarTag)
                    {
                        worldDefinition.AddStateVar(new StateVar(child));
                    }
                    else if (child.Name == XMLTags.actionVarTag)
                    {
                        worldDefinition.AddActionVar(new ActionVar(child));
                    }
                    else if (child.Name == XMLTags.constantTag)
                    {
                        worldDefinition.AddConstant(child.Attributes[XMLTags.nameAttribute].Value);
                    }
                }

                m_worldDefinitions.Add(worldName, worldDefinition);
            }
        }