diff --git a/Glamourer/Designs/ApplicationCollection.cs b/Glamourer/Designs/ApplicationCollection.cs index b31ff2e..0fd18f0 100644 --- a/Glamourer/Designs/ApplicationCollection.cs +++ b/Glamourer/Designs/ApplicationCollection.cs @@ -7,7 +7,7 @@ namespace Glamourer.Designs; public record struct ApplicationCollection( EquipFlag Equip, BonusItemFlag BonusItem, - CustomizeFlag Customize, + CustomizeFlag CustomizeRaw, CrestFlag Crest, CustomizeParameterFlag Parameters, MetaFlag Meta) @@ -15,10 +15,10 @@ public record struct ApplicationCollection( public static readonly ApplicationCollection All = new(EquipFlagExtensions.All, BonusExtensions.All, CustomizeFlagExtensions.AllRelevant, CrestExtensions.AllRelevant, CustomizeParameterExtensions.All, MetaExtensions.All); - public static readonly ApplicationCollection None = new(0, 0, 0, 0, 0, 0); + public static readonly ApplicationCollection None = new(0, 0, CustomizeFlag.BodyType, 0, 0, 0); public static readonly ApplicationCollection Equipment = new(EquipFlagExtensions.All, BonusExtensions.All, - 0, CrestExtensions.AllRelevant, 0, MetaFlag.HatState | MetaFlag.WeaponState | MetaFlag.VisorState); + CustomizeFlag.BodyType, CrestExtensions.AllRelevant, 0, MetaFlag.HatState | MetaFlag.WeaponState | MetaFlag.VisorState); public static readonly ApplicationCollection Customizations = new(0, 0, CustomizeFlagExtensions.AllRelevant, 0, CustomizeParameterExtensions.All, MetaFlag.Wetness); @@ -35,6 +35,12 @@ public record struct ApplicationCollection( (false, true) => Customizations, }; + public CustomizeFlag Customize + { + get => CustomizeRaw; + set => CustomizeRaw = value | CustomizeFlag.BodyType; + } + public void RemoveEquip() { Equip = 0; @@ -51,7 +57,7 @@ public record struct ApplicationCollection( } public ApplicationCollection Restrict(ApplicationCollection old) - => new(old.Equip & Equip, old.BonusItem & BonusItem, old.Customize & Customize, old.Crest & Crest, + => new(old.Equip & Equip, old.BonusItem & BonusItem, (old.Customize & Customize) | CustomizeFlag.BodyType, old.Crest & Crest, old.Parameters & Parameters, old.Meta & Meta); public ApplicationCollection CloneSecure()