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); } }