Пример #1
0
 public bool DeepEquals(DestinyItemPlugDefinition?other)
 {
     return(other is not null &&
            InsertionRules.DeepEqualsList(other.InsertionRules) &&
            PlugCategoryIdentifier == other.PlugCategoryIdentifier &&
            PlugCategoryHash == other.PlugCategoryHash &&
            OnActionRecreateSelf == other.OnActionRecreateSelf &&
            InsertionMaterialRequirementHash == other.InsertionMaterialRequirementHash &&
            PreviewItemOverrideHash == other.PreviewItemOverrideHash &&
            EnabledMaterialRequirementHash == other.EnabledMaterialRequirementHash &&
            EnabledRules.DeepEqualsList(other.EnabledRules) &&
            UiPlugLabel == other.UiPlugLabel &&
            PlugStyle == other.PlugStyle &&
            PlugAvailability == other.PlugAvailability &&
            AlternateUiPlugLabel == other.AlternateUiPlugLabel &&
            AlternatePlugStyle == other.AlternatePlugStyle &&
            IsDummyPlug == other.IsDummyPlug &&
            (ParentItemOverride is not null ? ParentItemOverride.DeepEquals(other.ParentItemOverride) : other.ParentItemOverride is null) &&
            (EnergyCapacity is not null ? EnergyCapacity.DeepEquals(other.EnergyCapacity) : other.EnergyCapacity is null) &&
            (EnergyCost is not null ? EnergyCost.DeepEquals(other.EnergyCost) : other.EnergyCost is null));
 }
Пример #2
0
 public void Update(DestinyItemPlugDefinition?other)
 {
     if (other is null)
     {
         return;
     }
     if (!InsertionRules.DeepEqualsList(other.InsertionRules))
     {
         InsertionRules = other.InsertionRules;
         OnPropertyChanged(nameof(InsertionRules));
     }
     if (PlugCategoryIdentifier != other.PlugCategoryIdentifier)
     {
         PlugCategoryIdentifier = other.PlugCategoryIdentifier;
         OnPropertyChanged(nameof(PlugCategoryIdentifier));
     }
     if (PlugCategoryHash != other.PlugCategoryHash)
     {
         PlugCategoryHash = other.PlugCategoryHash;
         OnPropertyChanged(nameof(PlugCategoryHash));
     }
     if (OnActionRecreateSelf != other.OnActionRecreateSelf)
     {
         OnActionRecreateSelf = other.OnActionRecreateSelf;
         OnPropertyChanged(nameof(OnActionRecreateSelf));
     }
     if (InsertionMaterialRequirementHash != other.InsertionMaterialRequirementHash)
     {
         InsertionMaterialRequirementHash = other.InsertionMaterialRequirementHash;
         OnPropertyChanged(nameof(InsertionMaterialRequirementHash));
     }
     if (PreviewItemOverrideHash != other.PreviewItemOverrideHash)
     {
         PreviewItemOverrideHash = other.PreviewItemOverrideHash;
         OnPropertyChanged(nameof(PreviewItemOverrideHash));
     }
     if (EnabledMaterialRequirementHash != other.EnabledMaterialRequirementHash)
     {
         EnabledMaterialRequirementHash = other.EnabledMaterialRequirementHash;
         OnPropertyChanged(nameof(EnabledMaterialRequirementHash));
     }
     if (!EnabledRules.DeepEqualsList(other.EnabledRules))
     {
         EnabledRules = other.EnabledRules;
         OnPropertyChanged(nameof(EnabledRules));
     }
     if (UiPlugLabel != other.UiPlugLabel)
     {
         UiPlugLabel = other.UiPlugLabel;
         OnPropertyChanged(nameof(UiPlugLabel));
     }
     if (PlugStyle != other.PlugStyle)
     {
         PlugStyle = other.PlugStyle;
         OnPropertyChanged(nameof(PlugStyle));
     }
     if (PlugAvailability != other.PlugAvailability)
     {
         PlugAvailability = other.PlugAvailability;
         OnPropertyChanged(nameof(PlugAvailability));
     }
     if (AlternateUiPlugLabel != other.AlternateUiPlugLabel)
     {
         AlternateUiPlugLabel = other.AlternateUiPlugLabel;
         OnPropertyChanged(nameof(AlternateUiPlugLabel));
     }
     if (AlternatePlugStyle != other.AlternatePlugStyle)
     {
         AlternatePlugStyle = other.AlternatePlugStyle;
         OnPropertyChanged(nameof(AlternatePlugStyle));
     }
     if (IsDummyPlug != other.IsDummyPlug)
     {
         IsDummyPlug = other.IsDummyPlug;
         OnPropertyChanged(nameof(IsDummyPlug));
     }
     if (!ParentItemOverride.DeepEquals(other.ParentItemOverride))
     {
         ParentItemOverride.Update(other.ParentItemOverride);
         OnPropertyChanged(nameof(ParentItemOverride));
     }
     if (!EnergyCapacity.DeepEquals(other.EnergyCapacity))
     {
         EnergyCapacity.Update(other.EnergyCapacity);
         OnPropertyChanged(nameof(EnergyCapacity));
     }
     if (!EnergyCost.DeepEquals(other.EnergyCost))
     {
         EnergyCost.Update(other.EnergyCost);
         OnPropertyChanged(nameof(EnergyCost));
     }
 }