Sign in to T5DE's hub and report presence and community outfits
CI / build (push) Successful in 1m6s

Co-Authored-By: Claude Opus 5.5 <[email protected]>
This commit is contained in:
dhkatzandClaude Opus 5.5 committed 2026-10-29 03:45:55 -07:00
1 parent 50e4db8521
commit 7887eada61
9 files changed
+476 -2

No files matched your search

+7
View File
@@ -50,6 +50,11 @@ func (p *Products) interceptXMLRPC(x *proxy.Exchange) error {
case "test.avatarInfoForLogin2":
x.ModifyResponse = func(resp *http.Response, body []byte) ([]byte, error) {
p.keys.learn(body)
if m := userIDPattern.FindSubmatch(body); m != nil && p.Observer != nil {
if id, err := strconv.ParseInt(string(m[1]), 10, 64); err == nil {
p.Observer.Session(id)
}
}
return p.addToLook(body)
}
case "test.inventoryProductBatch":
@@ -90,6 +95,7 @@ func (p *Products) addToLook(body []byte) ([]byte, error) {
if mem.Name == "look" {
if look, ok := productList(mem.Value); ok {
if worn := p.wornLocal(user, look); len(worn) > 0 {
p.reportOutfit(user, worn)
v[i].Value = appendIDs(mem.Value.([]xmlrpc.Value), worn)
changed = true
}
@@ -401,6 +407,7 @@ func (p *Products) interceptBaseLook(x *proxy.Exchange) error {
return body, err
}
worn := p.wornLocal(user, ids)
p.reportOutfit(user, worn)
if len(worn) == 0 {
return body, nil
}