private void SetSideData(SpousesBattleRecordSide side, IBattleCombatant battleCombatant, BasicCharacterObject character, int remain, int killCount, int killed, int wounder, int wounded) { if (null != side) { side.Remain += remain; side.KillCount += killCount; side.Killed += killed; side.Wounded += wounded; side.RunAway += wounder; SpousesBattleRecordParty party = side.GetPartyByUniqueId(battleCombatant.GetHashCode() + ""); if (null == party) { party = new SpousesBattleRecordParty(battleCombatant.GetHashCode() + ""); party.Name = battleCombatant.Name.ToString(); side.Parties.Add(party); } party.Remain += remain; party.KillCount += killCount; party.Killed += killed; party.Wounded += wounded; party.RunAway += wounder; SpousesBattleRecordCharacter battleRecordCharacter = party.GetBattleRecordCharacter(character); if (null == battleRecordCharacter) { battleRecordCharacter = new SpousesBattleRecordCharacter(character); party.Characters.Add(battleRecordCharacter); } battleRecordCharacter.Remain += remain; battleRecordCharacter.KillCount += killCount; battleRecordCharacter.Killed += killed; battleRecordCharacter.Wounded += wounded; battleRecordCharacter.RunAway += wounder; } }
public SpousesBattleRecordParty GetPartyByUniqueId(String uniqueId) { SpousesBattleRecordParty result = null; if (null != uniqueId) { foreach (SpousesBattleRecordParty party in Parties) { if (uniqueId == party.UniqueId) { result = party; break; } } } return(result); }
public BattleHistorySPPartyVM(SpousesBattleRecordParty party) { this._party = party; this._score = new BattleHistorySPScoreVM(); this.Score.UpdateScores(party.Name, party.Remain, party.KillCount, party.Wounded, party.RunAway, party.Killed, 0); this._members = new MBBindingList <BattleHistorySPCharacterVM>(); if (null != this._party.Characters && this._party.Characters.Count > 0) { this._party.Characters.Sort((x, y) => { return(-1 * x.KillCount.CompareTo(y.KillCount)); }); this._party.Characters.ForEach(obj => { if (null != obj) { this._members.Add(new BattleHistorySPCharacterVM(obj)); } } ); } }