private void FixCommanders(ControlledDivision other) { //if they are on seperate command trees join them if (AreSameTeam(this, other) && this.Commander == this.DivisionId && other.Commander == other.DivisionId) { if (this.NumSoldiers > other.NumSoldiers) { other.Commander = this.DivisionId; this.AddSubordinate(new RememberedDivision(other)); } else { this.Commander = other.DivisionId; other.AddSubordinate(new RememberedDivision(this)); } } }