fix(ui): assess retained items on right click
Port UIElement_ItemList's physical-item right-click branch through the shared retained list. Select and appraise backpack, loot, paperdoll, and shortcut items through their canonical owners, while preventing RMB movement from lifting items or issuing appraisal requests. Co-authored-by: Codex <codex@openai.com>
This commit is contained in:
parent
5ad32d5753
commit
2dd5cb80d2
17 changed files with 264 additions and 5 deletions
|
|
@ -221,6 +221,40 @@ camera drag does not appraise the object under the release point. Acdream maps
|
|||
the configurable `SelectRight` action to the same complete-click gesture and
|
||||
keeps `SelectionExamine` independently configurable (retail default E).
|
||||
|
||||
### Retained physical-item lists
|
||||
|
||||
`UIElement_ItemList::ListenToElementMessage @ 0x004E4D50`
|
||||
|
||||
```text
|
||||
on ItemList right-click:
|
||||
item = UIItem under the mouse
|
||||
if item.itemID != 0:
|
||||
if this list uses single selection:
|
||||
update the list selection
|
||||
SetSelectedObject(item.itemID)
|
||||
ClientUISystem.ExamineObject(item.itemID)
|
||||
else if item.spellID != 0:
|
||||
ClientUISystem.ExamineSpell(item.spellID)
|
||||
```
|
||||
|
||||
`gmPaperDollUI::ListenToElementMessage @ 0x004A5C30` repeats the physical-item
|
||||
branch for a worn item resolved through the authored paperdoll click map:
|
||||
|
||||
```text
|
||||
on paperdoll right-click:
|
||||
itemID = GetPaperDollItemUnderMouse(mouse)
|
||||
if itemID != 0:
|
||||
SetSelectedObject(itemID)
|
||||
ClientUISystem.ExamineObject(itemID)
|
||||
```
|
||||
|
||||
Acdream's shared retained `UiItemList` owns the corresponding physical-item
|
||||
notice. Backpack, side-bag, external-container, paperdoll-slot, and physical
|
||||
toolbar cells provide their selection source and route the request through the
|
||||
same `ItemInteractionController` appraisal owner used by world SmartBox and
|
||||
the toolbar magnifying glass. RMB motion beyond the shared three-pixel click
|
||||
threshold neither appraises nor begins an item drag.
|
||||
|
||||
## SmartBox click lighting pulse
|
||||
|
||||
`UIElement_SmartBoxWrapper::RecvNotice_SmartBoxObjectFound @ 0x004E5AD0`
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue