public void Update(DestinyProfileTransitoryComponent?other) { if (other is null) { return; } if (!PartyMembers.DeepEqualsList(other.PartyMembers)) { PartyMembers = other.PartyMembers; OnPropertyChanged(nameof(PartyMembers)); } if (!CurrentActivity.DeepEquals(other.CurrentActivity)) { CurrentActivity.Update(other.CurrentActivity); OnPropertyChanged(nameof(CurrentActivity)); } if (!Joinability.DeepEquals(other.Joinability)) { Joinability.Update(other.Joinability); OnPropertyChanged(nameof(Joinability)); } if (!Tracking.DeepEqualsList(other.Tracking)) { Tracking = other.Tracking; OnPropertyChanged(nameof(Tracking)); } if (LastOrbitedDestinationHash != other.LastOrbitedDestinationHash) { LastOrbitedDestinationHash = other.LastOrbitedDestinationHash; OnPropertyChanged(nameof(LastOrbitedDestinationHash)); } }
public bool DeepEquals(DestinyProfileTransitoryComponent?other) { return(other is not null && PartyMembers.DeepEqualsList(other.PartyMembers) && (CurrentActivity is not null ? CurrentActivity.DeepEquals(other.CurrentActivity) : other.CurrentActivity is null) && (Joinability is not null ? Joinability.DeepEquals(other.Joinability) : other.Joinability is null) && Tracking.DeepEqualsList(other.Tracking) && LastOrbitedDestinationHash == other.LastOrbitedDestinationHash); }