fix(ui): match retail item appraisal semantics

Preserve PublicWeenieDesc hook identity from CreateObject through the item model so hook appraisals suppress sentinel capacities exactly. Use appraisal-only Value and Burden presence, retain AddItemInfo paragraph and authored font-color selection, and port retail lock, page, enchantment, and spell-block formatting.

Co-authored-by: Codex <codex@openai.com>
This commit is contained in:
Erik 2026-07-23 18:04:19 +02:00
parent bc47bc4917
commit d3c5e06fdd
21 changed files with 982 additions and 145 deletions

View file

@ -54,6 +54,8 @@ public sealed class ObjectTableWiringTests
Priority = 0x00000005u,
ItemsCapacity = 0,
ContainersCapacity = 0,
HookItemTypes = (uint)ItemType.Container,
HookType = 4u,
Structure = 80,
MaxStructure = 100,
Workmanship = 4.5f,
@ -102,6 +104,8 @@ public sealed class ObjectTableWiringTests
// --- capacity ---
Assert.Equal(0, d.ItemsCapacity);
Assert.Equal(0, d.ContainersCapacity);
Assert.Equal((uint)ItemType.Container, d.HookItemTypes);
Assert.Equal(4u, d.HookType);
// --- durability ---
Assert.Equal(80, d.Structure);