public override bool Equals(object obj) { SoldierClassStat other = obj as SoldierClassStat; if (other == null) { return(false); } if (stat != other.stat) { return(false); } if (value != other.value) { return(false); } if (rank != other.rank) { return(false); } return(true); }
public bool updateStatsElement(string internalName, List <SoldierClassStat> soldierStats) { foreach (SoldierClassStat soldierStat in soldierStats) { if (!soldierStat.allowUpdate().valid) { return(false); } } XElement documentStatsElement = getClassElement(internalName, Constants.XML_STATS); List <XElement> documentStatElements = documentStatsElement.Elements(Constants.XML_STAT).ToList(); foreach (XElement documentStatElement in documentStatElements) { int?documentRank = Utils.parseStringToInt(documentStatElement.Element(Constants.XML_STAT_RANK).Value); int?documentType = Utils.parseStringToInt(documentStatElement.Element(Constants.XML_STAT_TYPE).Value); SoldierClassStat soldierStat = soldierStats.Where(x => (int)x.rank == documentRank && (int)x.stat == documentType).SingleOrDefault(); if (soldierStat == null) { documentStatElement.Element(Constants.XML_STAT_VALUE).Value = ""; } else { XElement statElement = soldierStat.getXmlElement(); documentStatElement.Element(Constants.XML_STAT_VALUE).Value = statElement.Element(Constants.XML_STAT_VALUE).Value; } } document.Save(fullPath); return(true); }
private SoldierClassStat buildSoldierStatFromControl(TextBox control, SoldierRank rank, Stat stat) { SoldierClassStat soldierStat = new SoldierClassStat(); soldierStat.rank = rank; soldierStat.stat = stat; soldierStat.value = Utils.parseStringToInt(control.Text); return(soldierStat); }
public SoldierClassStat readStat(XElement statElement) { SoldierClassStat soldierClassStat = new SoldierClassStat(); soldierClassStat.stat = (Stat)Utils.parseStringToInt(statElement.Element("type").Value); soldierClassStat.rank = (SoldierRank)Utils.parseStringToInt(statElement.Element("rank").Value); soldierClassStat.value = Utils.parseStringToInt(statElement.Element("value").Value); return(soldierClassStat); }
public int?getStatValue(SoldierRank rank, Stat stat) { SoldierClassStat classStat = stats.Where(x => x.rank == rank && x.stat == stat).SingleOrDefault(); if (classStat == null) { return(null); } return(classStat.value); }
public List <SoldierClassStat> readStats(XElement statsElement) { List <SoldierClassStat> stats = new List <SoldierClassStat>(); List <XElement> statElements = statsElement.Elements("stat").ToList(); foreach (XElement statElement in statElements) { SoldierClassStat soldierStat = readStat(statElement); if (soldierStat != null) { stats.Add(soldierStat); } } return(stats); }
public SoldierClassStat(SoldierClassStat other) : base() { stat = other.stat; value = other.value; rank = other.rank; }