diff --git a/client/event/group.go b/client/event/group.go index cb2d2e1..844f772 100644 --- a/client/event/group.go +++ b/client/event/group.go @@ -240,8 +240,10 @@ func ParseMemberIncreaseEvent(event *message.GroupChange) *GroupMemberIncrease { } func (g *GroupMemberDecrease) ResolveUin(f func(uid string, groupUin ...uint32) uint32) { - g.OperatorUin = f(g.OperatorUID, g.GroupUin) g.UserUin = f(g.UserUID, g.GroupUin) + if g.IsKicked() { + g.OperatorUin = f(g.OperatorUID, g.GroupUin) + } } func ParseMemberDecreaseEvent(event *message.GroupChange) *GroupMemberDecrease { diff --git a/client/packets/oidb/set_group_global_mute.go b/client/packets/oidb/set_group_global_mute.go index 6b90b4e..98fe1f1 100644 --- a/client/packets/oidb/set_group_global_mute.go +++ b/client/packets/oidb/set_group_global_mute.go @@ -4,6 +4,7 @@ import ( "math" "github.com/LagrangeDev/LagrangeGo/client/packets/pb/service/oidb" + "github.com/LagrangeDev/LagrangeGo/internal/proto" ) func BuildSetGroupGlobalMuteReq(groupUin uint32, isMute bool) (*Packet, error) { @@ -13,7 +14,7 @@ func BuildSetGroupGlobalMuteReq(groupUin uint32, isMute bool) (*Packet, error) { } body := &oidb.OidbSvcTrpcTcp0X89A_0{ GroupUin: groupUin, - State: &oidb.OidbSvcTrpcTcp0X89A_0State{S: s}, + State: &oidb.OidbSvcTrpcTcp0X89A_0State{S: proto.Uint32(s)}, } return BuildOidbPacket(0x89A, 0, body, false, false) } diff --git a/client/packets/pb/service/oidb/OidbSvcTrpcTcp0x89A_0.pb.go b/client/packets/pb/service/oidb/OidbSvcTrpcTcp0x89A_0.pb.go index c4b5efd..a0c2286 100644 --- a/client/packets/pb/service/oidb/OidbSvcTrpcTcp0x89A_0.pb.go +++ b/client/packets/pb/service/oidb/OidbSvcTrpcTcp0x89A_0.pb.go @@ -15,7 +15,7 @@ type OidbSvcTrpcTcp0X89A_0 struct { } type OidbSvcTrpcTcp0X89A_0State struct { - S uint32 `protobuf:"varint,17,opt"` + S proto.Option[uint32] `protobuf:"varint,17,opt"` _ [0]func() } diff --git a/client/packets/pb/service/oidb/OidbSvcTrpcTcp0x89A_0.proto b/client/packets/pb/service/oidb/OidbSvcTrpcTcp0x89A_0.proto index e7e4359..918a6ec 100644 --- a/client/packets/pb/service/oidb/OidbSvcTrpcTcp0x89A_0.proto +++ b/client/packets/pb/service/oidb/OidbSvcTrpcTcp0x89A_0.proto @@ -9,7 +9,7 @@ message OidbSvcTrpcTcp0x89A_0 { } message OidbSvcTrpcTcp0x89A_0State { - uint32 S = 17; + optional uint32 S = 17; } message OidbSvcTrpcTcp0x89A_0Response {