Пример #1
0
        private void bSave_Click(object sender, EventArgs e)
        {
            ClassOverview owner = Owner as ClassOverview;

            SoldierClassMetadata metadata = new SoldierClassMetadata();
            metadata.internalName = tInternalName.Text;
            metadata.displayName = tDisplayName.Text;
            metadata.description = tDescription.Text;
            metadata.iconString = tIconString.Text;

            ValidationResult allowUpdate = metadata.allowUpdate();
            if(!allowUpdate.valid)
            {
                MessageBox.Show(allowUpdate.message, "Cannot save", MessageBoxButtons.OK);
                return;
            }

            SavedSoldiersManager manager = new SavedSoldiersManager();
            manager.saveMetadata(formerInternalName, metadata);
            
            owner.updateSoldiers();
            owner.selectSoldier(metadata.internalName);
            
            Close();
        }
Пример #2
0
        public override bool Equals(object obj)
        {
            SoldierClassMetadata other = obj as SoldierClassMetadata;

            if (other == null)
            {
                return(false);
            }

            if (!String.Equals(internalName, other.internalName))
            {
                return(false);
            }

            if (!String.Equals(displayName, other.displayName))
            {
                return(false);
            }

            if (!String.Equals(description, other.description))
            {
                return(false);
            }

            if (!String.Equals(iconString, other.iconString))
            {
                return(false);
            }

            return(true);
        }
Пример #3
0
 public SoldierClassMetadata(SoldierClassMetadata other) : base()
 {
     internalName = other.internalName;
     displayName  = other.displayName;
     description  = other.description;
     iconString   = other.iconString;
 }
Пример #4
0
 public void displayMetadata(SoldierClassMetadata metadata)
 {
     laMetadataInternalName.Text = metadata.internalName;
     laMetadataDisplayName.Text  = metadata.displayName;
     laMetadataDescription.Text  = metadata.description;
     laMetadataIconString.Text   = metadata.iconString;
 }
Пример #5
0
 public SoldierClass()
 {
     metadata         = new SoldierClassMetadata();
     experience       = new SoldierClassExperience();
     equipment        = new SoldierClassEquipment();
     soldierAbilities = new List <SoldierClassAbility>();
     stats            = new List <SoldierClassStat>();
 }
Пример #6
0
        public bool saveMetadata(string internalName, SoldierClassMetadata metadata)
        {
            XElement xmlMetadata    = getClassElement(internalName, Constants.XML_METADATA);
            XElement newXmlMetadata = new XElement(Conversion.Convert.toXmlMetadata(metadata));

            xmlMetadata.ReplaceWith(newXmlMetadata);
            document.Save(fullPath);
            return(true);
        }
Пример #7
0
        private SoldierClassMetadata readMetadata(XElement metadataElement)
        {
            SoldierClassMetadata metadata = new SoldierClassMetadata();

            metadata.internalName = metadataElement.Element("internal_name").Value;
            metadata.displayName  = metadataElement.Element("display_name").Value;
            metadata.description  = metadataElement.Element("description").Value;
            metadata.iconString   = metadataElement.Element("icon_string").Value;

            return(metadata);
        }
Пример #8
0
        public SoldierClass(SoldierClass other)
        {
            metadata   = new SoldierClassMetadata(other.metadata);
            experience = new SoldierClassExperience(other.experience);
            equipment  = new SoldierClassEquipment(other.equipment);

            soldierAbilities = new List <SoldierClassAbility>();
            foreach (SoldierClassAbility soldierAbility in other.soldierAbilities)
            {
                soldierAbilities.Add(new SoldierClassAbility(soldierAbility));
            }

            stats = new List <SoldierClassStat>();
            foreach (SoldierClassStat stat in other.stats)
            {
                stats.Add(new SoldierClassStat(stat));
            }
        }
Пример #9
0
        public void updateClassMetadata(string formerInternalName, SoldierClassMetadata metadata)
        {
            XElement        parentElement   = document.Element(Constants.XML_CLASSES);
            List <XElement> soldierElements = parentElement.Elements(Constants.XML_CLASS).ToList();

            foreach (XElement soldierElement in soldierElements)
            {
                XElement metadataElement = soldierElement.Element("metadata");

                if (metadataElement.Element("internal_name").Value.Equals(formerInternalName))
                {
                    metadataElement.Element("internal_name").Value = metadata.internalName;
                    metadataElement.Element("display_name").Value  = metadata.displayName;
                    metadataElement.Element("description").Value   = metadata.description;
                    metadataElement.Element("icon_string").Value   = metadata.iconString;

                    break;
                }
            }

            document.Save(fullPath);
        }