[Parity][inv-skills][S1][F/R] 联机物品变体图形丢失:graphicIndex 解析后没接到 UI,珠宝显示成宝石图,戒指/项链/护身符永远是第 1 个变体;另有按 id 哈希、按名字猜图 #681
Loading…
Reference in New Issue
No description provided.
Delete Branch "%!s(<nil>)"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
来源审计项:
inv-skills#3— [S1][F/R] 联机物品变体图形丢失:graphicIndex 解析后没接到 UI,珠宝显示成宝石图,戒指/项链/护身符永远是第 1 个变体;另有按 id 哈希、按名字猜图src/netproto/d2gs/items/item-bitstream.ts:326-328:解析出了graphicIndex,但通往 UI 的链路(item-bridge 在线适配 → hud-modeltoUiItem)从来不设置UiInventoryItem.variant。src/client/ui/inventory.ts:237-378(resolveItemSpriteRect的 Tier 0.5):item.id字符串哈希挑变体(310-320、333-344);Annihilus/Torch/Gheed;crs、cta或名字含Call to Arms的一律返回invcrs(376-377)。src/common/items/item-bridge.ts:553-640(resolveItemInvFile)。VarInvGfx/InvGfx1..6(V-data):invfile只是占位(V-data):jew #136=invgswe、cm1 #96=invchm、cm2 #97=invwnd、cm3 #98=invsst、rin #14=invrin、amu #12=invamu。nInvGfxIdx(V-src D2MOOD2Game/src/ITEMS/Items.cpp:748-751,ITEMS_SetVarGfxIndex(*ppUnit, ITEMS_RollLimitedRandomNumber(..., ITEMS_GetVarInvGfxCount(*ppUnit))))。D2Common/src/Items/Items.cpp:5073-5076读、6745-6761写)。客户端应按InvGfx[nInvGfxIdx]选图。invgswe(宝石图)。graphicIndex透传为variant,按 itemtypes 的InvGfx{variant+1}取图。VarInvGfx=0 时再用 invfile,或 uniqueitems/setitems 的 invfile。invcrs特判。