合并本地领先源码:旧UI、GM疲劳燃烧、白金徽章孔、宠物修复、支援兵普攻开关

This commit is contained in:
hanfuit committed 2026-11-04 19:20:49 +08:00
1 parent f2debaf9bf
commit 70b3c5a6dc
57 files changed
+4256 -30

No files matched your search

@@ -69,6 +69,21 @@ func currentSocketAvatarSocketTypes(catalog *pvfDungeonDropCatalog, itemID int64
return socketTypes, nil
}
// currentAvatarSocketTypesForOpen applies the avatar-part socket layout that
// the PVF's [avatar type select] does not encode explicitly. Rare coat/pants
// avatars carry one platinum (0x10) socket followed by two normal C sockets;
// their PVF section only lists the two C tags, so the opener used to produce a
// two-socket result. Keep other avatar parts and explicit three-socket layouts
// untouched.
func currentAvatarSocketTypesForOpen(rule currentEquipmentPlacementRule, socketTypes []byte) []byte {
out := append([]byte(nil), socketTypes...)
if (rule.targetSlot == 3 || rule.targetSlot == 4) &&
len(out) == 2 && out[0] == 0x04 && out[1] == 0x04 {
return []byte{0x10, 0x04, 0x04}
}
return out
}
func currentSocketEmblemType(catalog *pvfDungeonDropCatalog, itemID int64) byte {
if catalog == nil || itemID <= 0 || itemID > math.MaxUint32 {
return 0