ModernUO/Projects/UOContent/Items/Games
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
..
Mahjong refactor: fold hand-written serializable property setters into field hooks 2026-08-22 18:07:47 -07:00
Backgammon.cs fix: Codegens games (#1058) 2022-06-13 17:31:56 -07:00
BaseBoard.cs chore: Use var everywhere (#2294) 2025-12-27 16:47:28 -08:00
BasePiece.cs fix: Codegens games (#1058) 2022-06-13 17:31:56 -07:00
CheckerBoard.cs fix: Codegens games (#1058) 2022-06-13 17:31:56 -07:00
CheckersPieces.cs fix: Codegens games (#1058) 2022-06-13 17:31:56 -07:00
Chessboard.cs fix: Codegens games (#1058) 2022-06-13 17:31:56 -07:00
ChessPieces.cs fix: Codegens games (#1058) 2022-06-13 17:31:56 -07:00
Dices.cs fix: Optimizes items to use default weights. (Part 1) (#2240) 2025-07-24 14:44:39 -07:00