ModernUO/Projects/UOContent/Items/Containers
Kamron Batman 4849c80750
refactor: fold hand-written serializable property setters into field hooks
Converts 113 [SerializableProperty] members whose setters only coerce the
value, reject it, or run post-change side effects into plain
[SerializableField] declarations using allowFieldChange and fieldChanged.
Wire- and schema-neutral: the migration schema regeneration produces zero
changes.

Kept as hand-written properties: custom getters (fallback defaults, lazy or
self-healing reads), virtual/override members, pre-assignment state capture
(durability unscale/scale sandwiches), and setters with exotic semantics
(work on equal assignment, early returns that skip persistence).

Behavioral notes: generated setters skip all work when the incoming value
equals the field, and always MarkDirty on change - a handful of converted
setters previously never marked dirty (their changes only persisted if
something else dirtied the entity) or re-ran side effects on equal
assignment.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-22 18:07:47 -07:00
..
Fillable Containers feat: adopt serialization generator v4 (field-side linkage, anchored timers) (#2586) 2026-08-22 17:54:02 -07:00
BaseTreasureChest.cs feat: Adds SerializedCommandProperty (#1249) 2022-11-14 18:24:33 -08:00
Container.cs feat: Adds Feature Flag System (#2328) 2026-02-07 12:02:57 -08:00
FurnitureContainer.cs fix: Optimizes items to use default weights. (Part 1) (#2240) 2025-07-24 14:44:39 -07:00
LockableContainer.cs chore: Use var everywhere (#2294) 2025-12-27 16:47:28 -08:00
MarkContainer.cs refactor: fold hand-written serializable property setters into field hooks 2026-08-22 18:07:47 -07:00
ParagonChest.cs fix: Optimizes OPL using string interpolation (#1041) 2022-06-02 10:09:53 -07:00
SalvageBag.cs fix: Fixes container enumeration not recycling pooled arrays (#2341) 2026-02-17 09:54:32 -08:00
Strongbox.cs fix: Items dropped on the ground never decay (#2536) 2026-07-16 18:51:04 -07:00
TrappableContainer.cs feat: Adds SerializedCommandProperty (#1249) 2022-11-14 18:24:33 -08:00
TrappableContainer.ExecuteTrap.cs fix: Fixes crafter deserialize, cleans up bandages, and codegens misc items (#1350) 2023-02-25 00:54:12 -08:00
TreasureChest.cs fix: Updates serialization to use v2.0 (#998) 2022-04-17 08:02:15 -07:00
TreasureMapChest.cs feat: adopt serialization generator v4 (field-side linkage, anchored timers) (#2586) 2026-08-22 17:54:02 -07:00